Browse Source

HIS 系统提交

XMLWAN 4 years ago
parent
commit
d6d9ecee4f

+ 1 - 0
src/lang/zh.js View File

@@ -230,6 +230,7 @@ export default {
230 230
     dictionaryManagement:'字典管理',
231 231
     templateManagement:'模板管理',
232 232
     drugStockUserDetail:"出库人明细",
233
+    DepartManage:"部门管理"
233 234
 
234 235
   },
235 236
   navbar: {

+ 2 - 0
src/router/index.js View File

@@ -42,6 +42,7 @@ import dataPrint from './modules/dataPrint'
42 42
 import bedManagement from './modules/bedManagement'
43 43
 import dictionaryManagement from './modules/dictionaryManagement'
44 44
 import templateManagement from './modules/templateManagement'
45
+import DepartManage from './modules/DepartManage'
45 46
 
46 47
 Vue.use(Router)
47 48
 
@@ -151,6 +152,7 @@ var _asy_router_map = [
151 152
   shop,
152 153
   
153 154
   systems,
155
+  DepartManage,
154 156
   roleManage,
155 157
   bedManagement,
156 158
   dictionaryManagement,

+ 1 - 1
src/views/layout/Layout.vue View File

@@ -127,7 +127,7 @@ export default {
127 127
     let bingli = ['User','createPatient']
128 128
     let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control']
129 129
     let kucun = ['stockManage','stockDrugs','selfPreparedMedicine','otherManagement']
130
-    let peizhi = ['system','roleManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config']
130
+    let peizhi = ['system','roleManage','DepartManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config']
131 131
     let kuyishopping = ['kuyiShopping']
132 132
     let menzhenArr = []
133 133
     let bingliArr = []

+ 1 - 1
src/views/layout/components/Sidebar/index.vue View File

@@ -138,7 +138,7 @@ export default {
138 138
             this.$emit('func',a)
139 139
           }
140 140
         }else if(newVal == '配置管理'){
141
-          let nameArr = ['system','roleManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config']
141
+          let nameArr = ['system','roleManage','DepartManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config']
142 142
           // console.log('permission_routers',this.permission_routers)
143 143
           let routerArr = []
144 144
           this.permission_routers.map(item => {

+ 3 - 2
src/xt_pages/data/components/addConfigure.vue View File

@@ -6,7 +6,7 @@
6 6
         :before-close="_close"
7 7
     >
8 8
         <div>
9
-            <el-form :model="form" :rules="rules" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
9
+            <el-form :model="form" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
10 10
                 <el-form-item label="名称:" prop="name" style="width:50%">
11 11
                     <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
12 12
                 </el-form-item>
@@ -20,7 +20,7 @@
20 20
         </div>
21 21
         <div slot="footer" class="dialog-footer">
22 22
             <el-button @click="hide">取 消</el-button>
23
-            <el-button type="primary" :loading="submitLoading" @click="submitAction()">保 存</el-button>
23
+            <el-button type="primary"  @click="submitAction()">保 存</el-button>
24 24
         </div>
25 25
     </el-dialog>         
26 26
 </template>
@@ -33,6 +33,7 @@ export default {
33 33
             form:{
34 34
                 name:''
35 35
             },
36
+            remark:"",
36 37
             submitLoading:false,
37 38
             parentid:0,
38 39
             

+ 3 - 2
src/xt_pages/data/components/addDrugs.vue View File

@@ -339,7 +339,7 @@
339 339
         visible: false,
340 340
         formTitle: '',
341 341
         activeName: 'first',
342
-        manufacturers:[],
342
+        // manufacturers:[],
343 343
         sign: [
344 344
           { id: 1, name: '透析模式' },
345 345
           { id: 2, name: '特殊护理' },
@@ -522,7 +522,8 @@
522 522
       hide() {
523 523
         // this.clear()
524 524
         this.visible = false
525
-      },getValue: function() {
525
+      },
526
+      getValue: function() {
526 527
         const form = {}
527 528
         form['id'] = this.form.id
528 529
         form['drug_name'] = this.form.drug_name

+ 80 - 47
src/xt_pages/data/components/addInspection.vue View File

@@ -7,31 +7,31 @@
7 7
     >
8 8
         <div>
9 9
             <el-form :model="form" :rules="rules" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
10
-                <el-form-item label="组套名称 : " prop="name" style="width:100%">
11
-                    <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
10
+                <el-form-item label="组套名称 : " prop="project_team" style="width:100%">
11
+                    <el-input v-model="form.project_team" placeholder="" maxlength="30"></el-input>
12 12
                 </el-form-item>
13
-                <el-form-item label="组套价格 : " prop="name" style="width:100%">
14
-                    <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
13
+                <el-form-item label="组套价格 : " prop="price" style="width:100%">
14
+                    <el-input v-model="form.price" placeholder="" maxlength="30"></el-input>
15 15
                 </el-form-item>
16
-                <el-form-item label="拼音 : " prop="name" style="width:50%">
17
-                    <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
16
+                <el-form-item label="拼音 : " prop="pinyin" style="width:50%">
17
+                    <el-input v-model="form.pinyin" placeholder="" maxlength="30"></el-input>
18 18
                 </el-form-item>
19
-                <el-form-item label="五笔 : " prop="name" style="width:50%">
20
-                    <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
19
+                <el-form-item label="五笔 : " prop="wubi" style="width:50%">
20
+                    <el-input v-model="form.wubi" placeholder="" maxlength="30"></el-input>
21 21
                 </el-form-item>
22 22
                 
23
-                <el-form-item label="试管颜色 : " prop="name" style="width:50%">
24
-                    <el-select v-model="value" style="width:100%;" placeholder="请选择">
23
+                <el-form-item label="试管颜色 : " prop="tube_color" style="width:50%">
24
+                    <el-select v-model="form.tube_color" style="width:160px;" placeholder="请选择">
25 25
                         <el-option
26
-                        v-for="item in options"
27
-                        :key="item.value"
28
-                        :label="item.label"
29
-                        :value="item.value">
26
+                         v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
27
+                         :key="index"
28
+                         :label="item.name"
29
+                         :value="item.id">
30 30
                         </el-option>
31
-                    </el-select>
31
+                  </el-select>
32 32
                 </el-form-item>
33
-                <el-form-item label="组套类型 : " prop="name" style="width:50%">
34
-                    <el-select v-model="value" style="width:100%;" placeholder="请选择">
33
+                <el-form-item label="组套类型 : " prop="team_type" style="width:50%">
34
+                    <el-select v-model="form.team_type" style="width:100%;" placeholder="请选择">
35 35
                         <el-option
36 36
                         v-for="item in options"
37 37
                         :key="item.value"
@@ -41,7 +41,7 @@
41 41
                     </el-select>
42 42
                 </el-form-item>
43 43
                 <el-form-item label="备注 : " prop="name" style="width:100%;">
44
-                    <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="textarea"></el-input>
44
+                    <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
45 45
                 </el-form-item>
46 46
             </el-form>
47 47
         </div>
@@ -49,12 +49,14 @@
49 49
 
50 50
         <div slot="footer" class="dialog-footer">
51 51
             <el-button @click="hide">取 消</el-button>
52
-            <el-button type="primary" :loading="submitLoading" @click="submitAction()">保 存</el-button>
52
+            <el-button type="primary"  @click="submitAction('form')">保 存</el-button>
53 53
         </div>
54 54
   </el-dialog>
55 55
 </template>
56 56
 
57 57
 <script>
58
+import { getDictionaryDataConfig,getDataConfig } from "@/utils/data";
59
+import { saveProjectTeam } from "@/api/project/project"
58 60
 export default {
59 61
     data(){
60 62
         return{
@@ -62,31 +64,37 @@ export default {
62 64
             formTitle:'',
63 65
             activeName:'first',
64 66
             form:{
65
-                name:''
67
+              project_team:'',
68
+              price:"",
69
+              pinyin:"",
70
+              wubi:"",
71
+              tube_color:"",
72
+              team_type:"",
73
+              remark:""
66 74
             },
67
-            options: [{
68
-            value: '选项1',
69
-            label: '黄金糕'
70
-            }, {
71
-            value: '选项2',
72
-            label: '双皮奶'
73
-            }, {
74
-            value: '选项3',
75
-            label: '蚵仔煎'
76
-            }, {
77
-            value: '选项4',
78
-            label: '龙须面'
79
-            }, {
80
-            value: '选项5',
81
-            label: '北京烤鸭'
82
-            }],
75
+            options: [
76
+            {value: 1,label: '是'},
77
+            {value: 2,label: '否'}
78
+            ],
83 79
             value: '',
84
-            radio:'1'
80
+            radio:'1',
81
+            rules: {
82
+              project_team: [{ required: true, message: '请填写组套名称', trigger: 'blur'  }],
83
+              pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
84
+              wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
85
+              price: [{ required: true, message: '请填写价格', trigger: 'change' }],
86
+              team_type: [{ required:true,message:'请填写组套类型',trigger:'change' }]
87
+           }
85 88
         }
86 89
     },
87 90
     methods:{
91
+        getDataConfig(module, filed_name){
92
+            return getDataConfig(module, filed_name)
93
+        },
94
+            getDictionaryDataConfig(module, filed_name) {
95
+            return getDictionaryDataConfig(module, filed_name)
96
+        },
88 97
         _close: function(done) {
89
-            // this.clear()
90 98
             done()
91 99
         },
92 100
         clear: function() {
@@ -95,18 +103,43 @@ export default {
95 103
             this.form.intro = "";
96 104
         },
97 105
         show(id) {
98
-            // this.clear()
99 106
             this.visible = true
100
-            if(id == 0){
101
-                this.formTitle = '新增'
102
-            }else{
103
-                this.formTitle = '编辑'
104
-            }
105
-        },
107
+            this.formTitle = '新增' 
108
+         },
106 109
         hide() {
107
-            // this.clear()
108
-            this.visible = false
110
+         this.visible = false
109 111
         },
112
+        submitAction(formName){
113
+           this.$refs[formName].validate((valid)=>{
114
+               var params = {
115
+                 project_team:this.form.project_team,
116
+                 price:this.form.price,
117
+                 pinyin:this.form.pinyin,
118
+                 wubi:this.form.wubi,
119
+                 tube_color:this.form.tube_color,
120
+                 team_type:this.form.team_type,
121
+                 remark:this.form.remark
122
+               }
123
+               console.log("params",params)
124
+              saveProjectTeam(params).then(response=>{
125
+                 if(response.data.state == 1){
126
+                   var projectTeam = response.data.data.projectTeam
127
+                   console.log("projectTeam",projectTeam)
128
+                   this.$message.success("保存成功")
129
+                  
130
+                   this.visible = false
131
+                   this.form.project_team = "",
132
+                   this.form.price = "",
133
+                   this.form.pinyin = "",
134
+                   this.form.wubi = "",
135
+                   this.form.tube_color = "",
136
+                   this.form.team_type = "",
137
+                   this.form.remark = ""
138
+                   this.$parent.getlist()
139
+                 }
140
+              }) 
141
+           })
142
+        }
110 143
     }
111 144
 }
112 145
 </script>

+ 194 - 110
src/xt_pages/data/components/addProject.vue View File

@@ -5,74 +5,74 @@
5 5
         :visible.sync="visible"
6 6
         :before-close="_close"
7 7
     >
8
-        <el-tabs v-model="activeName" @tab-click="handleClick">
8
+        <el-tabs v-model="activeName">
9 9
             <el-tab-pane label="基础数据" name="first">
10 10
                 <div>
11 11
                     <el-form :model="form" :rules="rules" ref="form" label-width="100px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
12
-                        <el-form-item label="耗材名称 : " prop="name" style="width:100%">
13
-                            <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
12
+                        <el-form-item label="项目名称 : "  prop="project_name" style="width:100%" >
13
+                            <el-input v-model="form.project_name" placeholder="" maxlength="30"></el-input>
14 14
                         </el-form-item>
15
-                        <el-form-item label="拼音 : " prop="name" style="width:100%">
16
-                            <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
15
+                        <el-form-item label="拼音 : " prop="pinyin" style="width:100%">
16
+                            <el-input v-model="form.pinyin" placeholder="" maxlength="30"></el-input>
17 17
                         </el-form-item>
18
-                        <el-form-item label="五笔 : " prop="name" style="width:100%">
19
-                            <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
18
+                        <el-form-item label="五笔 : " prop="wubi" style="width:100%">
19
+                            <el-input v-model="form.wubi" placeholder="" maxlength="30"></el-input>
20 20
                         </el-form-item>
21
-                        <el-form-item label="价格(元) : " prop="name">
22
-                            <el-input v-model="form.name" placeholder="" maxlength="30"></el-input>
21
+                        <el-form-item label="价格(元) : " prop="price">
22
+                            <el-input v-model="form.price" placeholder="" maxlength="30"></el-input>
23 23
                         </el-form-item>
24
-                        <el-form-item label="单位 : " prop="name">
25
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
26
-                                <el-option
27
-                                v-for="item in options"
28
-                                :key="item.value"
29
-                                :label="item.label"
30
-                                :value="item.value">
31
-                                </el-option>
24
+                        <el-form-item label="单位 : " prop="unit">
25
+                            <el-select v-model="form.unit" style="width:160px;" placeholder="请选择">
26
+                              <el-option
27
+                                v-for="(item,index) in getDataConfig('hemodialysis','units')"
28
+                                :key="index"
29
+                                :label="item.name"
30
+                                :value="item.name">
31
+                             </el-option>
32 32
                             </el-select>
33 33
                         </el-form-item>
34
-                        <el-form-item label="费用类别 : " prop="name">
35
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
34
+                        <el-form-item label="费用类别 : " prop="cost_classify">
35
+                            <el-select v-model="form.cost_classify" style="width:160px;" placeholder="请选择">
36 36
                                 <el-option
37
-                                v-for="item in options"
38
-                                :key="item.value"
39
-                                :label="item.label"
40
-                                :value="item.value">
37
+                                v-for="(item,index) in getDictionaryDataConfig('system','cost_classify')"
38
+                                :key="index"
39
+                                :label="item.name"
40
+                                :value="item.id">
41 41
                                 </el-option>
42 42
                             </el-select>
43 43
                         </el-form-item>
44
-                        <el-form-item label="执行科室 : " prop="name">
45
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
44
+                        <el-form-item label="执行科室 : " prop="executive_section">
45
+                            <el-select v-model="form.executive_section" style="width:160px;" placeholder="请选择">
46 46
                                 <el-option
47
-                                v-for="item in options"
48
-                                :key="item.value"
49
-                                :label="item.label"
50
-                                :value="item.value">
47
+                                v-for="(item,index) in getDictionaryDataConfig('system','executive_section')"
48
+                                :key="index"
49
+                                :label="item.name"
50
+                                :value="item.id">
51 51
                                 </el-option>
52 52
                             </el-select>
53 53
                         </el-form-item>
54
-                        <el-form-item label="医保等级 : " prop="name">
55
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
56
-                                <el-option
57
-                                v-for="item in options"
58
-                                :key="item.value"
59
-                                :label="item.label"
60
-                                :value="item.value">
61
-                                </el-option>
54
+                        <el-form-item label="医保等级 : " prop="medical_coverage">
55
+                            <el-select v-model="form.medical_coverage" style="width:160px;" placeholder="请选择">
56
+                               <el-option
57
+                                 v-for="(item,index) in getDictionaryDataConfig('system','medical_insurance_level')"
58
+                                 :key="index"
59
+                                 :label="item.name"
60
+                                 :value="item.id">
61
+                               </el-option>
62 62
                             </el-select>
63 63
                         </el-form-item>
64
-                        <el-form-item label="统计分类 : " prop="name">
65
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
64
+                        <el-form-item label="统计分类 : " prop="statistical_classification">
65
+                            <el-select v-model="form.statistical_classification" style="width:160px;" placeholder="请选择">
66 66
                                 <el-option
67
-                                v-for="item in options"
68
-                                :key="item.value"
69
-                                :label="item.label"
70
-                                :value="item.value">
67
+                                v-for="(item,index) in getDictionaryDataConfig('system','statistics_category')"
68
+                                :key="index"
69
+                                :label="item.name"
70
+                                :value="item.id">
71 71
                                 </el-option>
72 72
                             </el-select>
73 73
                         </el-form-item>
74
-                        <el-form-item label="是否特病目录:" prop="name">
75
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
74
+                        <el-form-item label="是否特病目录:" prop="disease_directory">
75
+                            <el-select v-model="form.disease_directory" style="width:160px;" placeholder="请选择">
76 76
                                 <el-option
77 77
                                 v-for="item in options"
78 78
                                 :key="item.value"
@@ -81,8 +81,8 @@
81 81
                                 </el-option>
82 82
                             </el-select>
83 83
                         </el-form-item>
84
-                        <el-form-item label="是否备案 : " prop="name">
85
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
84
+                        <el-form-item label="是否备案 : " prop="is_record">
85
+                            <el-select v-model="form.is_record" style="width:160px;" placeholder="请选择">
86 86
                                 <el-option
87 87
                                 v-for="item in options"
88 88
                                 :key="item.value"
@@ -91,48 +91,48 @@
91 91
                                 </el-option>
92 92
                             </el-select>
93 93
                         </el-form-item>
94
-                        <el-form-item label="医保编码 : " prop="name">
95
-                            <el-input v-model="form.name" style="width:160px;" placeholder="" maxlength="30"></el-input>
94
+                        <el-form-item label="医保编码 : " prop="medical_code">
95
+                            <el-input v-model="form.medical_code" style="width:160px;" placeholder="" maxlength="30"></el-input>
96 96
                         </el-form-item>
97
-                        <el-form-item label="试管颜色 : " prop="name">
98
-                            <el-select v-model="value" style="width:160px;" placeholder="请选择">
99
-                                <el-option
100
-                                v-for="item in options"
101
-                                :key="item.value"
102
-                                :label="item.label"
103
-                                :value="item.value">
97
+                        <el-form-item label="试管颜色 : " prop="tube_color">
98
+                            <el-select v-model="form.tube_color" style="width:160px;" placeholder="请选择">
99
+                              <el-option
100
+                                v-for="(item,index) in getDictionaryDataConfig('system','tube_color')"
101
+                                :key="index"
102
+                                :label="item.name"
103
+                                :value="item.id">
104 104
                                 </el-option>
105 105
                             </el-select>
106 106
                         </el-form-item>
107
-                        <el-form-item label="状态 : " prop="name" style="width:100%;">
108
-                            <el-radio-group v-model="radio">
107
+                        <el-form-item label="状态 : " prop="medical_status" style="width:100%;">
108
+                            <el-radio-group v-model="form.medical_status">
109 109
                                 <el-radio :label="1">停用</el-radio>
110 110
                                 <el-radio :label="2">收费</el-radio>
111 111
                             </el-radio-group>
112 112
                         </el-form-item>
113
-                        <el-form-item label="备注 : " prop="name" style="width:100%;">
114
-                            <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="textarea"></el-input>
113
+                        <el-form-item label="备注 : " prop="remark" style="width:100%;">
114
+                            <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
115 115
                         </el-form-item>
116 116
                     </el-form>
117 117
                 </div>
118 118
             </el-tab-pane>
119 119
             <el-tab-pane label="扩展数据" name="second">
120
-                <el-form :model="form" :rules="rules" ref="form" label-width="120px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
121
-                    <el-form-item label="标签 : " prop="name">
122
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
120
+                <el-form :model="form"  label-width="120px" style="display: flex;flex-wrap: wrap;justify-content: space-between;">
121
+                    <el-form-item label="标签 : " prop="sign">
122
+                        <el-select v-model="form.sign" style="width:160px;" placeholder="请选择">
123 123
                             <el-option
124
-                            v-for="item in options"
125
-                            :key="item.value"
126
-                            :label="item.label"
127
-                            :value="item.value">
124
+                            v-for="(item,index) in getDictionaryDataConfig('system','sign')"
125
+                            :key="index"
126
+                            :label="item.name"
127
+                            :value="item.id">
128 128
                             </el-option>
129 129
                         </el-select>
130 130
                     </el-form-item>
131
-                    <el-form-item label="默认使用数量:" prop="name">
132
-                        <el-input v-model="form.name" style="width:160px;" placeholder="" maxlength="30"></el-input>
131
+                    <el-form-item label="默认使用数量:" prop="default_number">
132
+                        <el-input v-model="form.default_number" style="width:160px;" placeholder="" maxlength="30"></el-input>
133 133
                     </el-form-item>
134
-                    <el-form-item label="是否默认:" prop="name">
135
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
134
+                    <el-form-item label="是否默认:" prop="is_default">
135
+                        <el-select v-model="form.is_default" style="width:160px;" placeholder="请选择">
136 136
                             <el-option
137 137
                             v-for="item in options"
138 138
                             :key="item.value"
@@ -141,8 +141,8 @@
141 141
                             </el-option>
142 142
                         </el-select>
143 143
                     </el-form-item>
144
-                    <el-form-item label="是否收费常用项:" prop="name">
145
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
144
+                    <el-form-item label="是否收费常用项:" prop="is_charge">
145
+                        <el-select v-model="form.is_charge" style="width:160px;" placeholder="请选择">
146 146
                             <el-option
147 147
                             v-for="item in options"
148 148
                             :key="item.value"
@@ -151,8 +151,8 @@
151 151
                             </el-option>
152 152
                         </el-select>
153 153
                     </el-form-item>
154
-                    <el-form-item label="是否收费预估项:" prop="name">
155
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
154
+                    <el-form-item label="是否收费预估项:" prop="is_estimate">
155
+                        <el-select v-model="form.is_estimate" style="width:160px;" placeholder="请选择">
156 156
                             <el-option
157 157
                             v-for="item in options"
158 158
                             :key="item.value"
@@ -161,8 +161,8 @@
161 161
                             </el-option>
162 162
                         </el-select>
163 163
                     </el-form-item>
164
-                    <el-form-item label="是否统计工作量:" prop="name">
165
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
164
+                    <el-form-item label="是否统计工作量:" prop="is_workload">
165
+                        <el-select v-model="form.is_workload" style="width:160px;" placeholder="请选择">
166 166
                             <el-option
167 167
                             v-for="item in options"
168 168
                             :key="item.value"
@@ -171,11 +171,11 @@
171 171
                             </el-option>
172 172
                         </el-select>
173 173
                     </el-form-item>
174
-                    <el-form-item label="收费项目排序:" prop="name">
175
-                        <el-input v-model="form.name" style="width:160px;" placeholder="" maxlength="30"></el-input>
174
+                    <el-form-item label="收费项目排序:" prop="sort">
175
+                        <el-input v-model="form.sort" style="width:160px;" placeholder="" maxlength="30"></el-input>
176 176
                     </el-form-item>
177
-                    <el-form-item label="是否常用医嘱:" prop="name">
178
-                        <el-select v-model="value" style="width:160px;" placeholder="请选择">
177
+                    <el-form-item label="是否常用医嘱:" prop="is_advice">
178
+                        <el-select v-model="form.is_advice" style="width:160px;" placeholder="请选择">
179 179
                             <el-option
180 180
                             v-for="item in options"
181 181
                             :key="item.value"
@@ -183,51 +183,67 @@
183 183
                             :value="item.value">
184 184
                             </el-option>
185 185
                         </el-select>
186
-                    </el-form-item>
187
-                    <el-form-item label="收费项目排序:" prop="name" style="visibility: hidden;">
188
-                        <el-input style="width:160px;" placeholder="" maxlength="30"></el-input>
189
-                    </el-form-item>
190
-                        
186
+                    </el-form-item>       
191 187
                 </el-form>
192 188
             </el-tab-pane>
193 189
         </el-tabs>
194
-
195
-
196 190
         <div slot="footer" class="dialog-footer">
197 191
             <el-button @click="hide">取 消</el-button>
198
-            <el-button type="primary" :loading="submitLoading" @click="submitAction()">保 存</el-button>
192
+            <el-button type="primary" @click="submitAction('form')">保 存</el-button>
199 193
         </div>
200 194
   </el-dialog>
201 195
 </template>
202 196
 
203 197
 <script>
198
+import { getDictionaryDataConfig,getDataConfig } from "@/utils/data";
199
+import { saveProject } from "@/api/project/project"
204 200
 export default {
205 201
     data(){
206 202
         return{
207 203
             visible:false,
208 204
             formTitle:'',
209 205
             activeName:'first',
206
+            options: [
207
+             {value: 1,label: '是'},
208
+             {value: 2,label: '否'}
209
+             ],
210
+            value: '',
211
+            radio:'1',
210 212
             form:{
211
-                name:''
213
+              project_name:"",
214
+              pinyin:"",
215
+              wubi:"", 
216
+              price:"", 
217
+              unit:"",
218
+              cost_classify:"",
219
+              executive_section:"",
220
+              medical_coverage:"",
221
+              statistical_classification:"",
222
+              disease_directory:"",
223
+              is_record:"",
224
+              medical_code:"",
225
+              tube_color:"",
226
+              medical_status:"",
227
+              remark:"",
228
+              sign:"",
229
+              default_number:"",
230
+              is_default:"",
231
+              is_charge:"",
232
+              is_estimate:"",
233
+              is_workload:"",
234
+              sort:"",
235
+              is_advice:"",
212 236
             },
213
-            options: [{
214
-            value: '选项1',
215
-            label: '黄金糕'
216
-            }, {
217
-            value: '选项2',
218
-            label: '双皮奶'
219
-            }, {
220
-            value: '选项3',
221
-            label: '蚵仔煎'
222
-            }, {
223
-            value: '选项4',
224
-            label: '龙须面'
225
-            }, {
226
-            value: '选项5',
227
-            label: '北京烤鸭'
228
-            }],
229
-            value: '',
230
-            radio:'1'
237
+            rules: {
238
+                project_name: [{ required: true, message: '请填写项目名称', trigger: 'blur'  }],
239
+                pinyin: [{ required: true, message: '请填写拼音' , trigger: 'blur' }],
240
+                wubi: [{ required: true, message: '请填写五笔' , trigger: 'blur' }],
241
+                price: [{ required: true, message: '请填写价格', trigger: 'change' }],
242
+                unit: [{ required: true, message: '请填写单位',trigger: 'blur' }],
243
+                cost_classify: [{ required: true, message: '请填写费用类别',trigger: 'blur' }],
244
+                executive_section: [{ required: true, message: '请填写执行科室',trigger: 'blur'  }],
245
+                medical_coverage: [{ required: true, message: '请填写医保等级',trigger: 'blur' }],
246
+           }
231 247
         }
232 248
     },
233 249
     methods:{
@@ -250,9 +266,77 @@ export default {
250 266
             }
251 267
         },
252 268
         hide() {
253
-            // this.clear()
254
-            this.visible = false
269
+         this.visible = false
255 270
         },
271
+       getDataConfig(module, filed_name){
272
+         return getDataConfig(module, filed_name)
273
+       },
274
+        getDictionaryDataConfig(module, filed_name) {
275
+          return getDictionaryDataConfig(module, filed_name)
276
+       },
277
+       submitAction(formName){
278
+          this.$refs[formName].validate((valid)=>{
279
+            if(valid){
280
+                 var params = {
281
+                    project_name:this.form.project_name,
282
+                    pinyin:this.form.pinyin,
283
+                    wubi:this.form.wubi,
284
+                    price:this.form.price,
285
+                    unit:this.form.unit,
286
+                    cost_classify:this.form.cost_classify,
287
+                    executive_section:this.form.executive_section,
288
+                    medical_coverage:this.form.medical_coverage,
289
+                    statistical_classification:this.form.statistical_classification,
290
+                    disease_directory:this.form.disease_directory,
291
+                    is_record:this.form.is_record,
292
+                    medical_code:this.form.medical_code,
293
+                    tube_color:this.form.tube_color,
294
+                    medical_status:this.form.medical_status,
295
+                    remark:this.form.remark,
296
+                    sign:this.form.sign,
297
+                    default_number:this.form.default_number,
298
+                    is_charge:this.form.is_charge,
299
+                    is_estimate:this.form.is_estimate,
300
+                    is_workload:this.form.is_workload,
301
+                    sort:this.form.sort,
302
+                    is_advice:this.form.is_advice,
303
+                    is_default:this.form.is_default
304
+               }
305
+           
306
+              saveProject(params).then(response=>{
307
+                 if(response.data.state == 1){
308
+                   var hisProject = response.data.data.hisProject
309
+                   this.$parent.getlist()
310
+                   this.$message.success('保存成功')
311
+                   this.visible = false
312
+                   this.form.project_name = ""
313
+                   this.form.pinyin = ""
314
+                   this.form.wubi = ""
315
+                   this.form.price = ""
316
+                   this.form.unit = ""
317
+                   this.form.cost_classify = ""
318
+                   this.form.executive_section = ""
319
+                   this.form.medical_coverage = ""
320
+                   this.form.statistical_classification = ""
321
+                   this.form.disease_directory = ""
322
+                   this.form.is_record = ""
323
+                   this.form.medical_code = ""
324
+                   this.form.tube_color = ""
325
+                   this.form.medical_status = ""
326
+                   this.form.remark = ""
327
+                   this.form.sign = ""
328
+                   this.form.default_number = ""
329
+                   this.form.is_charge = ""
330
+                   this.form.is_estimate = ""
331
+                   this.form.is_workload = ""
332
+                   this.form.sort = ""
333
+                   this.form.is_advice = ""
334
+                   this.form.is_default = ""
335
+                 }
336
+              })
337
+            }
338
+          })
339
+       }
256 340
     }
257 341
 }
258 342
 </script>

+ 1 - 0
src/xt_pages/data/components/drugs.vue View File

@@ -243,6 +243,7 @@
243 243
         current_id: 0,
244 244
 
245 245
         search_input: '',
246
+        total:0,
246 247
         options: [
247 248
           {
248 249
             value: '0',

+ 99 - 27
src/xt_pages/data/components/inspection.vue View File

@@ -17,29 +17,69 @@
17 17
             <el-button type="primary" @click="openForm(0)">新增</el-button>
18 18
         </div>
19 19
         <el-table :data="tableData" border style="width: 100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}">
20
-            <el-table-column prop="date" label="自编码" width="80" align="center"></el-table-column>
21
-            <el-table-column prop="date" label="名称" align="center"></el-table-column>
22
-            <el-table-column prop="date" label="拼音助记符" width="140" align="center"></el-table-column>
23
-            <el-table-column prop="date" label="五笔助记符" width="140" align="center"></el-table-column>
24
-            <el-table-column label="价格" width="60" align="center"></el-table-column>
25
-            <el-table-column prop="date" label="备注" align="center"></el-table-column>
20
+            <el-table-column prop="date" label="序号" width="80" align="center">
21
+                <template slot-scope="scope">
22
+                    {{scope.$index + 1}}
23
+                </template>
24
+            </el-table-column>
25
+            <el-table-column prop="date" label="名称" align="center">
26
+                <template slot-scope="scope">
27
+                    {{scope.row.project_team}}
28
+                </template>
29
+            </el-table-column>
30
+            <el-table-column prop="date" label="拼音助记符" width="140" align="center">
31
+                <template slot-scope="scope">
32
+                    {{scope.row.pinyin}}
33
+                </template>
34
+            </el-table-column>
35
+            <el-table-column prop="date" label="五笔助记符" width="140" align="center">
36
+                <template slot-scope="scope">
37
+                   {{scope.row.wubi}}
38
+                </template>
39
+            </el-table-column>
40
+            <el-table-column label="价格" width="60" align="center">
41
+                <template slot-scope="scope">
42
+                   {{scope.row.price}}
43
+                </template>
44
+            </el-table-column>
45
+            <el-table-column prop="date" label="备注" align="center">
46
+                <template slot-scope="scope">
47
+                   {{scope.row.remark}}
48
+                </template>
49
+            </el-table-column>
26 50
             <el-table-column prop="date" label="操作" width="300" align="center">
27 51
                 <template slot-scope="scope">
28
-                    <el-button @click="openForm(scope.row)" type="primary" size="small">编辑</el-button>
29
-                    <el-button type="primary" size="small" @click="clickSelfPayment">自付比例</el-button>
30
-                    <el-button type="danger" size="small">删除</el-button>
52
+                    <el-button @click="editProjectTeam(scope.row.id)" type="primary" size="small">编辑</el-button>
53
+                    <el-button type="danger" size="small" @click="DeleteProjectTeam(scope.row.id,scope.$index)">删除</el-button>
31 54
                 </template>
32 55
             </el-table-column>
33 56
         </el-table>
57
+          <el-pagination
58
+            @size-change="handleSizeChange"
59
+            @current-change="handleCurrentChange"
60
+            :page-sizes="[10, 50, 100]"
61
+            :page-size="10"
62
+            background
63
+            align="right"
64
+            style="margin-top:20px;"
65
+            layout="total, sizes, prev, pager, next, jumper"
66
+            :total="total"
67
+         >
68
+        </el-pagination>
69
+
34 70
         <add-inspection ref="addInspection"></add-inspection>
71
+        <edit-inspection ref="editInspection"></edit-inspection>
35 72
     </div>
36 73
 </template>
37 74
 
38 75
 <script>
39 76
 import addInspection from './addInspection'
77
+import editInspection from './editInspection'
78
+import { getProjectTeamList,DeleteProjectTeam } from "@/api/project/project"
40 79
 export default {
41 80
     components:{
42
-        addInspection
81
+        addInspection,
82
+        editInspection
43 83
     },
44 84
     data(){
45 85
         return{
@@ -52,27 +92,22 @@ export default {
52 92
             label: '否'
53 93
             },],
54 94
             value: '',
55
-            tableData: [{
56
-            date: '2016-05-02',
57
-            name: '王小虎',
58
-            address: '上海市普陀区金沙江路 1518 弄'
59
-            }, {
60
-            date: '2016-05-04',
61
-            name: '王小虎',
62
-            address: '上海市普陀区金沙江路 1517 弄'
63
-            }, {
64
-            date: '2016-05-01',
65
-            name: '王小虎',
66
-            address: '上海市普陀区金沙江路 1519 弄'
67
-            }, {
68
-            date: '2016-05-03',
69
-            name: '王小虎',
70
-            address: '上海市普陀区金沙江路 1516 弄'
71
-            }]
95
+            tableData: [],
96
+            limit:20,
97
+            page:1,
98
+            total:0
72 99
             
73 100
         }
74 101
     },
75 102
     methods:{
103
+      handleSizeChange(val) {
104
+        this.limit = val
105
+        this.getlist()
106
+      },
107
+      handleCurrentChange(val) {
108
+        this.page = val
109
+        this.getlist()
110
+      },
76 111
         searchAction(){},
77 112
         clickSelfPayment(){
78 113
             this.$refs.selfPayment.show();
@@ -82,7 +117,44 @@ export default {
82 117
         },
83 118
         openForm(id){
84 119
             this.$refs.addInspection.show(id);
120
+        },
121
+        editProjectTeam(id){
122
+           this.$refs.editInspection.show(id)
123
+        },
124
+        getlist(){
125
+            const params = {
126
+               limit:this.limit,
127
+               page:this.page,
128
+            }
129
+          getProjectTeamList(params).then(response=>{
130
+             if(response.data.state == 1){
131
+               var projectTeamList =  response.data.data.projectTeamList
132
+               console.log("projectteamlist",projectTeamList)
133
+               this.tableData = projectTeamList
134
+               var total  =  response.data.data.total
135
+               this.total = total
136
+             }
137
+          })
138
+        },
139
+        DeleteProjectTeam(id,index){
140
+          this.$confirm("确认删除此项目组套吗?", "删除", {
141
+            confirmButtonText: "确 定",
142
+            cancelButtonText: "取 消",
143
+            type: "warning"
144
+           }).then(() => {
145
+            DeleteProjectTeam(id,index).then(response => {
146
+               if (response.data.state == 1) {
147
+                 var msg = response.data.data.msg
148
+                 this.$message.success("删除成功")
149
+                this.tableData.splice(index, 1);
150
+                }
151
+            });
152
+            })
153
+            .catch(() => {});   
85 154
         }
155
+    },
156
+    created(){
157
+       this.getlist()  
86 158
     }
87 159
 }
88 160
 </script>

+ 126 - 30
src/xt_pages/data/components/project.vue View File

@@ -26,29 +26,72 @@
26 26
             <el-button type="primary" @click="openForm(0)">新增</el-button>
27 27
         </div>
28 28
         <el-table :data="tableData" border style="width: 100%" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}">
29
-            <el-table-column prop="date" label="自编码" width="80" align="center"></el-table-column>
30
-            <el-table-column prop="date" label="名称" align="center"></el-table-column>
31
-            <el-table-column prop="date" label="费用类型" align="center"></el-table-column>
32
-            <el-table-column prop="date" label="医计科室" width="140" align="center"></el-table-column>
33
-            <el-table-column label="医保编码" width="140" align="center"></el-table-column>
34
-            <el-table-column label="状态" width="60" align="center"></el-table-column>
29
+            <el-table-column prop="date" label="序号" width="80" align="center">
30
+                 <template  slot-scope="scope">
31
+                      {{scope.$index+1}}
32
+                 </template>
33
+            </el-table-column>
34
+            <el-table-column prop="date" label="名称" align="center">
35
+                <template  slot-scope="scope">
36
+                    {{scope.row.project_name}}
37
+                </template>
38
+            </el-table-column>
39
+            <el-table-column prop="date" label="费用类别" align="center">
40
+                  <template  slot-scope="scope">
41
+                     {{getCostClassify(scope.row.cost_classify)}}
42
+                  </template>
43
+            </el-table-column>
44
+            <el-table-column prop="date" label="执行科室" width="140" align="center">
45
+                <template  slot-scope="scope">
46
+                    {{getExecutiveSection(scope.row.executive_section)}}
47
+                </template>
48
+            </el-table-column>
49
+            <el-table-column label="医保编码" width="140" align="center">
50
+                <template  slot-scope="scope">
51
+                   {{scope.row.medical_code}}
52
+                </template>
53
+            </el-table-column>
54
+            <el-table-column label="状态" width="60" align="center">
55
+                <template slot-scope="scope">
56
+                  <span v-if="scope.row.medical_status ==0"></span>
57
+                  <span v-if="scope.row.medical_status ==1">停用</span>
58
+                  <span v-if="scope.row.medical_status ==2">收费</span>
59
+                </template>
60
+            </el-table-column>
35 61
             <el-table-column prop="date" label="操作" width="300" align="center">
36 62
                 <template slot-scope="scope">
37
-                    <el-button @click="openForm(scope.row)" type="primary" size="small">编辑</el-button>
38
-                    <el-button type="primary" size="small" @click="clickSelfPayment">自付比例</el-button>
39
-                    <el-button type="danger" size="small">删除</el-button>
63
+                    <el-button @click="editHisProject(scope.row.id)" type="primary" size="small">编辑</el-button>
64
+                    <el-button type="danger" size="small" @click="deleteProject(scope.row.id,scope.$index)">删除</el-button>
40 65
                 </template>
41 66
             </el-table-column>
42 67
         </el-table>
68
+         <el-pagination
69
+            @size-change="handleSizeChange"
70
+            @current-change="handleCurrentChange"
71
+            :page-sizes="[10, 50, 100]"
72
+            :page-size="10"
73
+            background
74
+            align="right"
75
+            style="margin-top:20px;"
76
+            layout="total, sizes, prev, pager, next, jumper"
77
+            :total="total"
78
+         >
79
+        </el-pagination>
80
+
43 81
         <add-project ref="addProject"></add-project>
82
+        <editProject ref="editProject"></editProject>
44 83
     </div>
45 84
 </template>
46 85
 
47 86
 <script>
48 87
 import addProject from './addProject'
88
+import editProject from './editProject'
89
+import { getProjectList,deleteHisProject } from "@/api/project/project"
90
+import { getDictionaryDataConfig } from "@/utils/data";
49 91
 export default {
50 92
     components:{
51
-        addProject
93
+        addProject,
94
+        editProject
52 95
     },
53 96
     data(){
54 97
         return{
@@ -61,37 +104,90 @@ export default {
61 104
             label: '否'
62 105
             },],
63 106
             value: '',
64
-            tableData: [{
65
-            date: '2016-05-02',
66
-            name: '王小虎',
67
-            address: '上海市普陀区金沙江路 1518 弄'
68
-            }, {
69
-            date: '2016-05-04',
70
-            name: '王小虎',
71
-            address: '上海市普陀区金沙江路 1517 弄'
72
-            }, {
73
-            date: '2016-05-01',
74
-            name: '王小虎',
75
-            address: '上海市普陀区金沙江路 1519 弄'
76
-            }, {
77
-            date: '2016-05-03',
78
-            name: '王小虎',
79
-            address: '上海市普陀区金沙江路 1516 弄'
80
-            }]
81
-            
107
+            limit:20,
108
+            page:1,
109
+            total:0,
110
+            tableData: []
82 111
         }
83 112
     },
84 113
     methods:{
114
+        handleSizeChange(val) {
115
+            this.limit = val
116
+            this.getlist()
117
+        },
118
+        handleCurrentChange(val) {
119
+            this.page = val
120
+            this.getlist()
121
+        },
85 122
         searchAction(){},
86 123
         clickSelfPayment(){
87 124
             this.$refs.selfPayment.show();
88 125
         },
89 126
         clickMainTain(){
90
-            // this.$refs.maintain.show();
91 127
         },
92 128
         openForm(id){
93
-            this.$refs.addProject.show(id);
129
+           this.$refs.addProject.show(id);
130
+        },
131
+        editHisProject(id){
132
+           this.$refs.editProject.show(id)
133
+        },
134
+        getCostClassify(id){
135
+          var costClassify = getDictionaryDataConfig('system','cost_classify')
136
+          var name = ""
137
+          for(let i=0;i<costClassify.length;i++){
138
+             if(id == costClassify[i].id){
139
+               name = costClassify[i].name
140
+             }
141
+          }
142
+          return name
143
+        },
144
+        getExecutiveSection(id){
145
+          var executiveSection =  getDictionaryDataConfig('system','executive_section')
146
+          var name = ""
147
+          for(let i=0;i<executiveSection.length;i++){
148
+            if(id == executiveSection[i].id){
149
+               name = executiveSection[i].name
150
+            }
151
+          }
152
+          return name
153
+        },
154
+      
155
+        getlist(){
156
+            var params = {
157
+               limit:this.limit,
158
+               page:this.page,
159
+            }
160
+          getProjectList(params).then(response=>{
161
+             if(response.data.state == 1){
162
+               var projecList = response.data.data.projecList
163
+               console.log('projectlist',projecList)
164
+               this.tableData = projecList
165
+               var total = response.data.data.total
166
+               this.total = total
167
+             }
168
+          })  
169
+        },
170
+        deleteProject(id,index){
171
+            this.$confirm("确认删除此项目吗?", "删除", {
172
+            confirmButtonText: "确 定",
173
+            cancelButtonText: "取 消",
174
+            type: "warning"
175
+           }).then(() => {
176
+            deleteHisProject(id).then(response => {
177
+               if (response.data.state == 1) {
178
+                 var msg = response.data.data.msg
179
+                 this.$message.success("删除成功")
180
+                this.tableData.splice(index, 1);
181
+                }
182
+             });
183
+            })
184
+            .catch(() => {});
94 185
         }
186
+        
187
+    },
188
+    created(){
189
+      this.getlist()
190
+     
95 191
     }
96 192
 }
97 193
 </script>

+ 1 - 1
src/xt_pages/data/components/selfPayment.vue View File

@@ -17,7 +17,7 @@
17 17
 
18 18
     <div slot="footer" class="dialog-footer">
19 19
       <el-button @click="hide">取 消</el-button>
20
-      <el-button type="primary" :loading="submitLoading" @click="submitAction()">保 存</el-button>
20
+      <el-button type="primary"  @click="submitAction()">保 存</el-button>
21 21
     </div>
22 22
   </el-dialog>
23 23
 </template>

+ 7 - 7
src/xt_pages/data/specialDictionary.vue View File

@@ -4,19 +4,19 @@
4 4
       <bread-crumb :crumbs="crumbs"></bread-crumb>
5 5
     </div>
6 6
     <div class="app-container">
7
-      <el-tabs v-model="activeName" @tab-click="handleClick">
7
+      <el-tabs v-model="activeName">
8 8
         <el-tab-pane label="药品" name="1">
9 9
           <drugs></drugs>
10 10
         </el-tab-pane>
11 11
         <el-tab-pane label="耗材" name="2">
12 12
           <consumables></consumables>
13 13
         </el-tab-pane>
14
-        <!--<el-tab-pane label="项目" name="3">-->
15
-        <!--<project></project>-->
16
-        <!--</el-tab-pane>-->
17
-        <!--<el-tab-pane label="检验检查项目" name="4">-->
18
-        <!--<inspection></inspection>-->
19
-        <!--</el-tab-pane>-->
14
+        <el-tab-pane label="项目" name="3">
15
+        <project></project>
16
+        </el-tab-pane>
17
+        <el-tab-pane label="项目组套" name="4">
18
+        <inspection></inspection>
19
+        </el-tab-pane>
20 20
         <el-tab-pane label="生产厂商" name="5">
21 21
           <!--<manufacturer></manufacturer>-->
22 22
           <manufacturer></manufacturer>

+ 3 - 1
src/xt_pages/dialysis/details/index.vue View File

@@ -1300,6 +1300,7 @@ export default {
1300 1300
       })
1301 1301
     },
1302 1302
     changePatient(schedual) {
1303
+      console.log("schedual",schedual)
1303 1304
       this.patient_id = schedual.patient_id
1304 1305
       this.date = schedual.schedule_date
1305 1306
       // this.getScheduleDetail();
@@ -1312,7 +1313,8 @@ export default {
1312 1313
         query: {
1313 1314
           patient_id: patient_id,
1314 1315
           date: date,
1315
-          patient_name: schedual.patient.name
1316
+          patient_name: schedual.patient.name,
1317
+          mode_id:schedual.mode_id
1316 1318
         }
1317 1319
       })
1318 1320
     },