Browse Source

Merge branch '20201109_pc_vue_new_branch' of http://git.shengws.com/csx/Vue_New into 20201109_pc_vue_new_branch

see999 3 years ago
parent
commit
deef19f4eb

+ 1 - 1
index.html View File

18
   </head>
18
   </head>
19
 
19
 
20
   <body>
20
   <body>
21
-    <script src="https://cdn.bootcdn.net/ajax/libs/reconnecting-websocket/1.0.0/reconnecting-websocket.min.js"></script>
21
+    <script src="https://images.shengws.com/reconnecting-websocket.min.js"></script>
22
     <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
22
     <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
23
     <script src="<%= htmlWebpackPlugin.options.path %>/tinymce4.7.5/tinymce.min.js"></script>
23
     <script src="<%= htmlWebpackPlugin.options.path %>/tinymce4.7.5/tinymce.min.js"></script>
24
     <script src="<%= htmlWebpackPlugin.options.path %>/neditor/neditor.config.js"></script>
24
     <script src="<%= htmlWebpackPlugin.options.path %>/neditor/neditor.config.js"></script>

+ 10 - 0
src/api/supply.js View File

1
+import request from '@/utils/request'
2
+
3
+export function getInitOrder(params) {
4
+  return request({
5
+    url: '/api/supply/getinitorder',
6
+    method: 'get',
7
+    params: params
8
+  })
9
+}
10
+

+ 2 - 0
src/lang/en.js View File

95
     deviceZoneManage: 'Device Zone Manage',
95
     deviceZoneManage: 'Device Zone Manage',
96
     deviceGroupManage: 'Device Group Manage',
96
     deviceGroupManage: 'Device Group Manage',
97
     stockManage: 'Stock Manage',
97
     stockManage: 'Stock Manage',
98
+    supplyManage: 'Supply Manage',
99
+    supplyQuery: 'supply query',
98
     baseInfo: 'base Info',
100
     baseInfo: 'base Info',
99
     stockIn: 'stock in',
101
     stockIn: 'stock in',
100
     stockOut: 'stock out',
102
     stockOut: 'stock out',

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

120
     orderRecord: '订单详情',
120
     orderRecord: '订单详情',
121
     recordList: '订单记录',
121
     recordList: '订单记录',
122
     stockManage: '耗材管理',
122
     stockManage: '耗材管理',
123
+    supplyManage: '采购管理',
124
+    supplyList: '供应商管理',
123
     goodType: '商品类型',
125
     goodType: '商品类型',
124
     stockIn: '入库管理',
126
     stockIn: '入库管理',
125
     stockOut: '出库管理',
127
     stockOut: '出库管理',
134
     stockOutRecord: '出库记录',
136
     stockOutRecord: '出库记录',
135
     addStockIn: '入库',
137
     addStockIn: '入库',
136
     stockQuery: '库存查询',
138
     stockQuery: '库存查询',
139
+    supplyQuery: '供应商管理',
140
+    purchaseOrderQuery: '购货订单',
141
+    addPurchaseOrder: '新增购货订单',
137
     workforce_template: '排班模板设置',
142
     workforce_template: '排班模板设置',
138
     statistics: '统计分析',
143
     statistics: '统计分析',
139
     statisticalConfig: '统计配置',
144
     statisticalConfig: '统计配置',
262
     summary_tool: '项目消费明细汇总',
267
     summary_tool: '项目消费明细汇总',
263
     labelPrint: '标签打印',
268
     labelPrint: '标签打印',
264
     faPiao: '发票设置',
269
     faPiao: '发票设置',
265
-    chargeDetailManagement:'收费明细'
270
+    chargeDetailManagement: '收费明细'
266
   },
271
   },
267
   navbar: {
272
   navbar: {
268
     logOut: '退出登录',
273
     logOut: '退出登录',

+ 12 - 16
src/router/index.js View File

31
 import hospitalStation from './modules/hospitalStation'
31
 import hospitalStation from './modules/hospitalStation'
32
 import hospitalCharges from './modules/hospitalCharges'
32
 import hospitalCharges from './modules/hospitalCharges'
33
 import hisTool from './modules/hisTool'
33
 import hisTool from './modules/hisTool'
34
-
35
-
36
-
37
-
34
+import supply from './modules/supply'
38
 
35
 
39
 // import outpatientRecord from './modules/outpatientRecord'
36
 // import outpatientRecord from './modules/outpatientRecord'
40
 import kuyiShopping from './modules/kuyiShopping'
37
 import kuyiShopping from './modules/kuyiShopping'
55
 import DepartManage from './modules/DepartManage'
52
 import DepartManage from './modules/DepartManage'
56
 import basicConfig from './modules/basicConfig'
53
 import basicConfig from './modules/basicConfig'
57
 
54
 
58
-
59
-
60
-Vue.use(Router);
55
+Vue.use(Router)
61
 
56
 
62
 /** note: submenu only apppear when children.length>=1
57
 /** note: submenu only apppear when children.length>=1
63
  *   detail see  https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
58
  *   detail see  https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
103
   path: '',
98
   path: '',
104
   component: Layout,
99
   component: Layout,
105
   redirect: '/home',
100
   redirect: '/home',
106
-  name:'home',
101
+  name: 'home',
107
   children: [{
102
   children: [{
108
     path: '/home',
103
     path: '/home',
109
     component: () => import('@/xt_pages/home/index'),
104
     component: () => import('@/xt_pages/home/index'),
118
 {
113
 {
119
   path: '/kuyiShopping',
114
   path: '/kuyiShopping',
120
   component: Layout,
115
   component: Layout,
121
-  name:'kuyiShopping',
116
+  name: 'kuyiShopping',
122
   redirct: '/kuyiShopping/index',
117
   redirct: '/kuyiShopping/index',
123
   children: [{
118
   children: [{
124
     path: '/kuyiShopping/index',
119
     path: '/kuyiShopping/index',
142
   // device,
137
   // device,
143
   // role,
138
   // role,
144
   // org
139
   // org
145
-];
140
+]
146
 
141
 
147
 var _asy_router_map = [
142
 var _asy_router_map = [
148
   patient,
143
   patient,
185
   hospitalCharges,
180
   hospitalCharges,
186
   hisTool,
181
   hisTool,
187
   integration,
182
   integration,
188
-  basicConfig
189
-];
183
+  basicConfig,
184
+  supply
185
+]
190
 
186
 
191
-var is_asy_router = process.env.NODE_ENV === 'production'; // true; 设置为 true 强制进行路由验证
187
+var is_asy_router = process.env.NODE_ENV === 'production' // true; 设置为 true 强制进行路由验证
192
 if (!is_asy_router) {
188
 if (!is_asy_router) {
193
-  _constant_router_map = _constant_router_map.concat(_asy_router_map);
189
+  _constant_router_map = _constant_router_map.concat(_asy_router_map)
194
   _asy_router_map = []
190
   _asy_router_map = []
195
 } else {
191
 } else {
196
 
192
 
197
 }
193
 }
198
 
194
 
199
-export const xt_constantRouterMap = _constant_router_map;
200
-export const xt_asyncRouterMap = _asy_router_map;
195
+export const xt_constantRouterMap = _constant_router_map
196
+export const xt_asyncRouterMap = _asy_router_map
201
 
197
 
202
 export default new Router({
198
 export default new Router({
203
   // mode: 'history', // require service support
199
   // mode: 'history', // require service support

+ 43 - 0
src/router/modules/supply.js View File

1
+import Layout from '@/views/layout/Layout'
2
+
3
+export default {
4
+  path: '/supply',
5
+  component: Layout,
6
+  redirect: 'noredirect',
7
+  name: 'supplyManage',
8
+  alwaysShow: true,
9
+  meta: {
10
+    title: 'supplyManage',
11
+    icon: 'supply',
12
+    isChild: true
13
+  },
14
+  children: [
15
+    {
16
+      path: '/supply/query',
17
+      component: () => import('@/xt_pages/supply/supplyQuery'),
18
+      name: 'supplyQuery',
19
+      meta: { title: 'supplyQuery', noCache: true }
20
+    },
21
+    {
22
+      path: '/supply/add',
23
+      component: () => import('@/xt_pages/supply/components/addSupply'),
24
+      name: 'addSupply',
25
+      hidden: true,
26
+      is_menu: false,
27
+      meta: { title: 'addSupply', noCache: true },
28
+      isChild: true
29
+    },
30
+    {
31
+      path: 'purchase/order/query',
32
+      component: () => import('@/xt_pages/supply/purchaseOrderQuery'),
33
+      name: 'purchaseOrderQuery',
34
+      meta: { title: 'purchaseOrderQuery', noCache: true }
35
+    },
36
+    {
37
+      path: '/purchase/order/add',
38
+      component: () => import('@/xt_pages/supply/components/addPurchaseOrder'),
39
+      name: 'addPurchaseOrder',
40
+      meta: { title: 'addPurchaseOrder', noCache: true }
41
+    }
42
+  ]
43
+}

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

16
           <i class="iconfont icon-computer_fill navIcon"></i>
16
           <i class="iconfont icon-computer_fill navIcon"></i>
17
           <p>透析管理</p>
17
           <p>透析管理</p>
18
         </div>
18
         </div>
19
+        <!-- <div v-if="caigouShow" :class="index == 5 ? 'navOne navActive' : 'navOne'" @click="clickActive(5,'采购管理')">
20
+          <i class="iconfont icon-kccx navIcon"></i>
21
+          <p>采购管理</p>
22
+        </div> -->
19
         <div v-if="kucunShow" :class="index == 3 ? 'navOne navActive' : 'navOne'" @click="clickActive(3,'库房管理')">
23
         <div v-if="kucunShow" :class="index == 3 ? 'navOne navActive' : 'navOne'" @click="clickActive(3,'库房管理')">
20
           <i class="iconfont icon-kccx navIcon"></i>
24
           <i class="iconfont icon-kccx navIcon"></i>
21
           <p>库房管理</p>
25
           <p>库房管理</p>
119
       kucunShow:true,
123
       kucunShow:true,
120
       peizhiShow:true,
124
       peizhiShow:true,
121
       kuyishoppingShow:true,
125
       kuyishoppingShow:true,
126
+      caigouShow:true,
122
     }
127
     }
123
   },
128
   },
124
   created(){
129
   created(){
125
-    console.log('permission_routers',this.permission_routers);
126
     let menzhen = ['hospitalStation',"hospitalRecord","hospitalCharges","hisTool",'outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord'];
130
     let menzhen = ['hospitalStation',"hospitalRecord","hospitalCharges","hisTool",'outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord'];
127
     let bingli = ['User','createPatient'];
131
     let bingli = ['User','createPatient'];
128
     let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control'];
132
     let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control'];
129
     let kucun = ['stockManage','stockDrugs','selfPreparedMedicine','otherManagement'];
133
     let kucun = ['stockManage','stockDrugs','selfPreparedMedicine','otherManagement'];
134
+    let caigou = ['supplyManage','supplyList'];
130
     let peizhi = ['system','roleManage','DepartManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config','basicConfig'];
135
     let peizhi = ['system','roleManage','DepartManage', 'bedManagement', 'dictionaryManagement', 'templateManagement','showconfig','printTemplate','integration_config','basicConfig'];
131
     let kuyishopping = ['kuyiShopping'];
136
     let kuyishopping = ['kuyiShopping'];
132
     let menzhenArr = [];
137
     let menzhenArr = [];
135
     let kucunArr = [];
140
     let kucunArr = [];
136
     let peizhiArr = [];
141
     let peizhiArr = [];
137
     let kuyishoppingArr = [];
142
     let kuyishoppingArr = [];
143
+    let caigouArr =[]
138
     this.permission_routers.map(item => {
144
     this.permission_routers.map(item => {
139
       if(menzhen.indexOf(item.name) > -1){
145
       if(menzhen.indexOf(item.name) > -1){
140
         menzhenArr.push(item)
146
         menzhenArr.push(item)
148
         peizhiArr.push(item)
154
         peizhiArr.push(item)
149
       }else if(kuyishopping.indexOf(item.name) > -1){
155
       }else if(kuyishopping.indexOf(item.name) > -1){
150
         kuyishoppingArr.push(item)
156
         kuyishoppingArr.push(item)
157
+      }else if(caigou.indexOf(item.name)>-1){
158
+         caigouArr.push(item)
151
       }
159
       }
152
     });
160
     });
153
     // console.log('menzhenArr.length',menzhenArr.length)
161
     // console.log('menzhenArr.length',menzhenArr.length)
156
     // console.log('kucunArr.length',kucunArr.length)
164
     // console.log('kucunArr.length',kucunArr.length)
157
     // console.log('peizhiArr.length',peizhiArr.length)
165
     // console.log('peizhiArr.length',peizhiArr.length)
158
     // console.log('kuyishoppingArr.length',kuyishoppingArr.length)
166
     // console.log('kuyishoppingArr.length',kuyishoppingArr.length)
167
+    console.log("cagouArr23323322323",caigouArr.length)
159
     if(menzhenArr.length == 0){
168
     if(menzhenArr.length == 0){
160
       this.menzhenShow = false
169
       this.menzhenShow = false
161
     }else if(bingliArr.length == 0){
170
     }else if(bingliArr.length == 0){
168
       this.peizhiShow = false
177
       this.peizhiShow = false
169
     }else if(kuyishoppingArr.length == 0){
178
     }else if(kuyishoppingArr.length == 0){
170
       this.kuyishoppingShow = false
179
       this.kuyishoppingShow = false
180
+    }else if(caigouArr.length == 0){
181
+      this.caigouShow = false
171
     }
182
     }
172
   },
183
   },
173
   computed: {
184
   computed: {

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

122
           }
122
           }
123
         }else if(newVal == '库房管理'){
123
         }else if(newVal == '库房管理'){
124
           let nameArr = ['stockManage','stockDrugs','selfPreparedMedicine','otherManagement'];
124
           let nameArr = ['stockManage','stockDrugs','selfPreparedMedicine','otherManagement'];
125
-          // console.log('permission_routers',this.permission_routers)
125
+          let routerArr = [];
126
+          this.permission_routers.map(item => {
127
+            if(nameArr.indexOf(item.name) > -1){
128
+              routerArr.push(item)
129
+            }
130
+          });
131
+          this.arr = routerArr;
132
+          if(this.arr.length > 0){
133
+            let a = true;
134
+            this.$emit('func',a)
135
+          }else{
136
+            let a = false;
137
+            this.$emit('func',a)
138
+          }
139
+        }else if(newVal == "采购管理"){
140
+          let nameArr = ['supplyManage','supplyList'];
126
           let routerArr = [];
141
           let routerArr = [];
127
           this.permission_routers.map(item => {
142
           this.permission_routers.map(item => {
128
             if(nameArr.indexOf(item.name) > -1){
143
             if(nameArr.indexOf(item.name) > -1){

+ 93 - 28
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue View File

75
                        type="primary">挂号
75
                        type="primary">挂号
76
             </el-button>
76
             </el-button>
77
 
77
 
78
-
78
+            <el-button v-loading="loadingone" size="small"
79
+                       @click="open(20)"
80
+                       type="primary">查询备案信息
81
+            </el-button>
79
             <el-button size="small" @click="open(5)" type="primary"
82
             <el-button size="small" @click="open(5)" type="primary"
80
                        v-if="this.radio == 2  && this.hisPatientInfo.id > 0 && this.order.id > 0 &&  this.order.order_status == 2">
83
                        v-if="this.radio == 2  && this.hisPatientInfo.id > 0 && this.order.id > 0 &&  this.order.order_status == 2">
81
               退费
84
               退费
170
                             items.curPrescriptions.order.medfee_sumamt ? items.curPrescriptions.order.medfee_sumamt.toFixed(2) : getTotalFour(items.prescriptions) ? getTotalFour(items.prescriptions) : ''
173
                             items.curPrescriptions.order.medfee_sumamt ? items.curPrescriptions.order.medfee_sumamt.toFixed(2) : getTotalFour(items.prescriptions) ? getTotalFour(items.prescriptions) : ''
171
                           }}元</span></span>
174
                           }}元</span></span>
172
                         <span>基金支付金额:<span
175
                         <span>基金支付金额:<span
173
-                            style="color:red;">{{ items.curPrescriptions.order.hifp_pay ? items.curPrescriptions.order.hifp_pay.toFixed(2) : '' }}元</span></span>
176
+                            style="color:red;">{{
177
+                            items.curPrescriptions.order.hifp_pay ? items.curPrescriptions.order.hifp_pay.toFixed(2) : ''
178
+                          }}元</span></span>
174
                         <span>个人账户支付金额:<span
179
                         <span>个人账户支付金额:<span
175
-                            style="color:red;">{{ items.curPrescriptions.order.acct_pay ? items.curPrescriptions.order.acct_pay.toFixed(2) : '' }}元</span></span>
180
+                            style="color:red;">{{
181
+                            items.curPrescriptions.order.acct_pay ? items.curPrescriptions.order.acct_pay.toFixed(2) : ''
182
+                          }}元</span></span>
176
                         <span v-if="hisPatientInfo.balance_accounts_type != 2">个人支付金额:<span
183
                         <span v-if="hisPatientInfo.balance_accounts_type != 2">个人支付金额:<span
177
-                            style="color:red;">{{ items.curPrescriptions.order.psn_cash_pay ? items.curPrescriptions.order.psn_cash_pay.toFixed(2) : '' }}元</span></span>
184
+                            style="color:red;">{{
185
+                            items.curPrescriptions.order.psn_cash_pay ? items.curPrescriptions.order.psn_cash_pay.toFixed(2) : ''
186
+                          }}元</span></span>
178
                         <span v-if="hisPatientInfo.balance_accounts_type == 2">个人支付金额:<span
187
                         <span v-if="hisPatientInfo.balance_accounts_type == 2">个人支付金额:<span
179
-                            style="color:red;">{{ items.curPrescriptions.order.medfee_sumamt.toFixed(2) }}元</span></span>
188
+                            style="color:red;">{{
189
+                            items.curPrescriptions.order.medfee_sumamt.toFixed(2)
190
+                          }}元</span></span>
180
 
191
 
181
                         <span>个人账户金额:<span
192
                         <span>个人账户金额:<span
182
-                            style="color:red;">{{ items.curPrescriptions.order.balc ? items.curPrescriptions.order.balc.toFixed(2) : '' }}元</span></span>
193
+                            style="color:red;">{{
194
+                            items.curPrescriptions.order.balc ? items.curPrescriptions.order.balc.toFixed(2) : ''
195
+                          }}元</span></span>
183
 
196
 
184
                         <span v-if="items.curPrescriptions.order_status  == 1">待结算</span>
197
                         <span v-if="items.curPrescriptions.order_status  == 1">待结算</span>
185
                         <span v-if="items.curPrescriptions.order_status  == 2">已结算</span>
198
                         <span v-if="items.curPrescriptions.order_status  == 2">已结算</span>
356
                             items.curMonthPrescriptions.order.medfee_sumamt ? items.curMonthPrescriptions.order.medfee_sumamt.toFixed(2) : getTotalFour(items.month_prescriptions) ? getTotalFour(items.month_prescriptions) : ''
369
                             items.curMonthPrescriptions.order.medfee_sumamt ? items.curMonthPrescriptions.order.medfee_sumamt.toFixed(2) : getTotalFour(items.month_prescriptions) ? getTotalFour(items.month_prescriptions) : ''
357
                           }}元</span></span>
370
                           }}元</span></span>
358
                         <span>基金支付金额:<span
371
                         <span>基金支付金额:<span
359
-                            style="color:red;">{{ items.curMonthPrescriptions.order.hifp_pay ? items.curMonthPrescriptions.order.hifp_pay.toFixed(2) : '' }}元</span></span>
372
+                            style="color:red;">{{
373
+                            items.curMonthPrescriptions.order.hifp_pay ? items.curMonthPrescriptions.order.hifp_pay.toFixed(2) : ''
374
+                          }}元</span></span>
360
                         <span>个人账户支付金额:<span
375
                         <span>个人账户支付金额:<span
361
-                            style="color:red;">{{ items.curMonthPrescriptions.order.acct_pay ? items.curMonthPrescriptions.order.acct_pay.toFixed(2) : '' }}元</span></span>
376
+                            style="color:red;">{{
377
+                            items.curMonthPrescriptions.order.acct_pay ? items.curMonthPrescriptions.order.acct_pay.toFixed(2) : ''
378
+                          }}元</span></span>
362
                         <!--<span>个人支付金额:<span style="color:red;">{{ items.curMonthPrescriptions.order.psn_cash_pay?items.curMonthPrescriptions.order.psn_cash_pay:''}}元</span></span>-->
379
                         <!--<span>个人支付金额:<span style="color:red;">{{ items.curMonthPrescriptions.order.psn_cash_pay?items.curMonthPrescriptions.order.psn_cash_pay:''}}元</span></span>-->
363
 
380
 
364
                         <span v-if="hisPatientInfo.balance_accounts_type != 2">个人支付金额:<span
381
                         <span v-if="hisPatientInfo.balance_accounts_type != 2">个人支付金额:<span
365
-                            style="color:red;">{{ items.curMonthPrescriptions.order.psn_cash_pay ? items.curMonthPrescriptions.order.psn_cash_pay.toFixed(2) : '' }}元</span></span>
382
+                            style="color:red;">{{
383
+                            items.curMonthPrescriptions.order.psn_cash_pay ? items.curMonthPrescriptions.order.psn_cash_pay.toFixed(2) : ''
384
+                          }}元</span></span>
366
                         <span v-if="hisPatientInfo.balance_accounts_type == 2">个人支付金额:<span
385
                         <span v-if="hisPatientInfo.balance_accounts_type == 2">个人支付金额:<span
367
                             style="color:red;">{{ items.curMonthPrescriptions.order.medfee_sumamt.toFixed(2) }}元</span></span>
386
                             style="color:red;">{{ items.curMonthPrescriptions.order.medfee_sumamt.toFixed(2) }}元</span></span>
368
 
387
 
369
 
388
 
370
                         <span>个人账户金额:<span
389
                         <span>个人账户金额:<span
371
-                            style="color:red;">{{ items.curMonthPrescriptions.order.account_price ? items.curMonthPrescriptions.order.account_price.toFixed(2) : '' }}元</span></span>
390
+                            style="color:red;">{{
391
+                            items.curMonthPrescriptions.order.account_price ? items.curMonthPrescriptions.order.account_price.toFixed(2) : ''
392
+                          }}元</span></span>
372
 
393
 
373
                       </div>
394
                       </div>
374
 
395
 
468
         width="30%"
489
         width="30%"
469
     >
490
     >
470
       <span>是否修改医疗类型</span>
491
       <span>是否修改医疗类型</span>
471
-      <el-select style="width:50%;" v-model="temp_med_type" placeholder="医疗类型" @change="changevalue">
492
+      <el-select v-if="this.$store.getters.xt_user.org_id == 10188" style="width:50%;" v-model="temp_med_type"
493
+                 placeholder="医疗类型" @change="changevalue">
494
+        <el-option
495
+            v-for="(item,index) in registerThree"
496
+            :key="index"
497
+            :label="item.label"
498
+            :value="item.value">
499
+        </el-option>
500
+      </el-select>
501
+
502
+      <el-select v-if="this.$store.getters.xt_user.org_id != 10188" style="width:50%;" v-model="temp_med_type"
503
+                 placeholder="医疗类型" @change="changevalue">
472
         <el-option
504
         <el-option
473
             v-for="(item,index) in register"
505
             v-for="(item,index) in register"
474
             :key="index"
506
             :key="index"
598
         sick_type: '',
630
         sick_type: '',
599
         diagnosis: [],
631
         diagnosis: [],
600
         medical_care: '',
632
         medical_care: '',
601
-        diagnosis_time: "",
633
+        diagnosis_time: ''
602
       },
634
       },
603
       current_med_type: '',
635
       current_med_type: '',
604
       rules: {
636
       rules: {
633
       //   { value: '91', label: '新冠肺炎门诊' },
665
       //   { value: '91', label: '新冠肺炎门诊' },
634
 
666
 
635
       // ],
667
       // ],
636
-
637
       register: [
668
       register: [
638
         { value: 11, label: '普通门诊' },
669
         { value: 11, label: '普通门诊' },
639
-        // { value: 12, label: '门诊挂号' },
640
-        // { value: 13, label: '急诊' },
641
         { value: 14, label: '门诊特殊病' },
670
         { value: 14, label: '门诊特殊病' },
642
         { value: '1111', label: '精一' },
671
         { value: '1111', label: '精一' },
643
         { value: '1112', label: '精二' }
672
         { value: '1112', label: '精二' }
644
-        // { value: 15, label: '门诊统筹' },
645
-        // { value: 16, label: '门诊慢性病' },
646
-        // { value: 21, label: '普通住院' }
673
+      ],
674
+
675
+      registerThree: [
676
+        { value: 11, label: '普通门诊' },
677
+        { value: 14, label: '门诊特殊病' },
678
+        { value: '1111', label: '精一' },
679
+        { value: '1112', label: '精二' },
680
+        { value: '9933', label: '门诊特殊病(9933)' },
681
+        { value: '990602', label: '门诊特殊病(990602)' },
682
+        { value: '1402', label: '门诊特殊病(1402)' }
647
 
683
 
648
       ],
684
       ],
649
       register_two: [
685
       register_two: [
650
         { value: '11', label: '普通门诊' },
686
         { value: '11', label: '普通门诊' },
651
-        // { value: '12', label: '门诊挂号' },
652
-        // { value: '13', label: '急诊' },
653
-        { value: '14', label: '门诊特殊病' }
654
-        // { value: '15', label: '门诊统筹' },
655
-        // { value: '16', label: '门诊慢性病' },
656
-        // { value: '21', label: '普通住院' }
687
+        { value: '14', label: '门诊特殊病' },
688
+        { value: '9933', label: '门诊特殊病(9933)' },
689
+        { value: '990602', label: '门诊特殊病(990602)' },
690
+        { value: '1402', label: '门诊特殊病(1402)' }
657
 
691
 
658
       ],
692
       ],
659
       loading: false,
693
       loading: false,
756
     var nowMinutes = nowDate.getMinutes()
790
     var nowMinutes = nowDate.getMinutes()
757
     var nowSeconds = nowDate.getSeconds()
791
     var nowSeconds = nowDate.getSeconds()
758
 
792
 
759
-
760
     this.record_date =
793
     this.record_date =
761
         nowYear +
794
         nowYear +
762
         '-' +
795
         '-' +
764
         '-' +
797
         '-' +
765
         (nowDay < 10 ? '0' + nowDay : nowDay)
798
         (nowDay < 10 ? '0' + nowDay : nowDay)
766
 
799
 
767
-    this.form.diagnosis_time =  nowYear +
800
+    this.form.diagnosis_time = nowYear +
768
         '-' +
801
         '-' +
769
         (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
802
         (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
770
         '-' +
803
         '-' +
771
-        (nowDay < 10 ? '0' + nowDay : nowDay) +" " + (nowHours < 10 ? '0' + nowHours : nowHours) +
804
+        (nowDay < 10 ? '0' + nowDay : nowDay) + ' ' + (nowHours < 10 ? '0' + nowHours : nowHours) +
772
         ':' +
805
         ':' +
773
-        (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes) +":"+ (nowSeconds < 10 ? '0' + nowSeconds : nowSeconds)
806
+        (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes) + ':' + (nowSeconds < 10 ? '0' + nowSeconds : nowSeconds)
774
 
807
 
775
     this.getInitData()
808
     this.getInitData()
776
     //获取患者信息
809
     //获取患者信息
2400
             })
2433
             })
2401
             .catch(function(error) {
2434
             .catch(function(error) {
2402
             })
2435
             })
2436
+      } else if (index == 20) {
2437
+        var that = this
2438
+        let params = {
2439
+          'patient_id': this.patientInfo.id,
2440
+          'admin_user_id': this.$store.getters.xt_user.user.id
2441
+        }
2442
+        axios.get('http://127.0.0.1:9532/api/psn/info', {
2443
+          params: params
2444
+        })
2445
+            .then(function(response) {
2446
+              if (response.data.state == 0) {
2447
+                that.$message.error(response.data.msg)
2448
+                return false
2449
+              } else {
2450
+                that.$confirm(response.data.data.result, '备案信息', {
2451
+                  confirmButtonText: '确 定',
2452
+                  type: 'warning'
2453
+                }).then(() => {
2454
+
2455
+                }).catch(() => {
2456
+                })
2457
+              }
2458
+            })
2459
+            .catch(function(error) {
2460
+            })
2461
+
2403
       }
2462
       }
2404
     },
2463
     },
2405
     choosePatient() {
2464
     choosePatient() {
3352
           break
3411
           break
3353
         case 1112:
3412
         case 1112:
3354
           return '精二' + '处方' + index
3413
           return '精二' + '处方' + index
3414
+        case 9933:
3415
+          return '门诊特殊病(9933)' + '处方' + index
3416
+        case 990602:
3417
+          return '门诊特殊病(990602)' + '处方' + index
3418
+        case 1402:
3419
+          return '门诊特殊病(1402)' + '处方' + index
3355
           break
3420
           break
3356
       }
3421
       }
3357
     }, unique_four(array) {
3422
     }, unique_four(array) {

+ 31 - 23
src/xt_pages/stock/detail/cancelStockDetail.vue View File

344
       return name;
344
       return name;
345
     },
345
     },
346
     search: function() {
346
     search: function() {
347
-      const Params = {
348
-        page: this.page,
349
-        limit: this.limit,
350
-        start_time: this.start_time,
351
-        end_time: this.end_time,
352
-        type: this.type,
353
-        keywords: this.searchKey
354
-      };
355
-     
356
-      this.cancelStockDate = [];
357
-      getStockDetail(Params).then(response => {
358
-        if (response.data.state == 0) {
359
-          this.$message.error(response.data.msg);
360
-          return false;
361
-        } else {
362
-          this.total = response.data.data.total;
363
-          for (let i = 0; i < response.data.data.list.length; i++) {
364
-            this.cancelStockDate.push(response.data.data.list[i]);
365
-          }
366
-        }
367
-      });
347
+      this.GetCancelStock()
348
+      // const Params = {
349
+      //   page: this.page,
350
+      //   limit: this.limit,
351
+      //   start_time: this.start_time,
352
+      //   end_time: this.end_time,
353
+      //   type: this.type,
354
+      //   keywords: this.searchKey
355
+      // };
356
+      // console.log("param2332233223",Params)
357
+      // this.cancelStockDate = [];
358
+      // getStockDetail(Params).then(response => {
359
+      //   if (response.data.state == 0) {
360
+      //     this.$message.error(response.data.msg);
361
+      //     return false;
362
+      //   } else {
363
+      //     this.total = response.data.data.total;
364
+      //     console.log("list322232232",response.data.data.list)
365
+      //     for (let i = 0; i < response.data.data.list.length; i++) {
366
+      //       var obj = response.data.data.list[i];
367
+      //       response.data.data.list[i].total = (response.data.data.list[i].price * response.data.data.list[i].count).toFixed(2)
368
+      //       total += response.data.data.list[i].price * response.data.data.list[i].count
369
+      //       obj["is_total"] = 0;
370
+      //       this.cancelStockDate.push(obj);
371
+      //       this.cancelStockDate.push(response.data.data.list[i])
372
+      //     }
373
+         
374
+      //   }
375
+      // });
368
     },
376
     },
369
     AddNewOrder: function() {
377
     AddNewOrder: function() {
370
       this.$router.push({
378
       this.$router.push({
384
         dealer: this.dealer_id,
392
         dealer: this.dealer_id,
385
         keywords: this.searchKey
393
         keywords: this.searchKey
386
       };
394
       };
387
-      console.log("Params23232233223232332",Params)
395
+      // console.log("Params23232233223232332",Params)
388
       this.cancelStockDate = [];
396
       this.cancelStockDate = [];
389
       getStockDetail(Params).then(response => {
397
       getStockDetail(Params).then(response => {
390
         if (response.data.state == 0) {
398
         if (response.data.state == 0) {
392
           return false;
400
           return false;
393
         } else {
401
         } else {
394
           this.total = response.data.data.total;
402
           this.total = response.data.data.total;
395
-          console.log("数据源头",response.data.data.list)
403
+          // console.log("数据源头",response.data.data.list)
396
           var total = 0
404
           var total = 0
397
           for (let i = 0; i < response.data.data.list.length; i++) {
405
           for (let i = 0; i < response.data.data.list.length; i++) {
398
             
406
             

+ 2 - 1
src/xt_pages/stock/drugs/drugStockInOrderAdd.vue View File

588
         tempObj['dealer'] = ''
588
         tempObj['dealer'] = ''
589
         tempObj['manufacturer'] = ''
589
         tempObj['manufacturer'] = ''
590
         tempObj['min_unit'] = ''
590
         tempObj['min_unit'] = ''
591
+        tempObj['max_unit'] = ''
591
         tempObj["drug_type"] = ''
592
         tempObj["drug_type"] = ''
592
         tempObj['batch_number'] = ''
593
         tempObj['batch_number'] = ''
593
         tempObj['dose']= ''
594
         tempObj['dose']= ''
846
         this.currentIndex = val
847
         this.currentIndex = val
847
       },
848
       },
848
       handleSelect(val){
849
       handleSelect(val){
849
-         console.log("val233232323223",val)
850
+         
850
          for(let i=0;i<this.recordInfo.recordData.length;i++){
851
          for(let i=0;i<this.recordInfo.recordData.length;i++){
851
            if(i == this.currentIndex){
852
            if(i == this.currentIndex){
852
              this.recordInfo.recordData[i].drug_id  = val.id
853
              this.recordInfo.recordData[i].drug_id  = val.id

+ 1 - 0
src/xt_pages/stock/drugs/drugStockInOrderEdit.vue View File

156
                     v-model="scope.row.warehousing_count"
156
                     v-model="scope.row.warehousing_count"
157
                     style="width:80px"
157
                     style="width:80px"
158
                   ></el-input>
158
                   ></el-input>
159
+                   <!-- {{scope.row.max_unit}} -->
159
                    <el-select v-model="scope.row.max_unit" filterable placeholder="请选择单位" style="width:80px">
160
                    <el-select v-model="scope.row.max_unit" filterable placeholder="请选择单位" style="width:80px">
160
                     <el-option
161
                     <el-option
161
                       v-for="(option, index) in unitList"
162
                       v-for="(option, index) in unitList"

+ 10 - 6
src/xt_pages/stock/drugs/drugStockOutOrder.vue View File

906
          id:id,
906
          id:id,
907
          start_time:start_time,
907
          start_time:start_time,
908
        }
908
        }
909
+      console.log("is_sys22222",is_sys) 
909
      getSinleOrderDetail(params).then(response=>{
910
      getSinleOrderDetail(params).then(response=>{
910
         if(response.data.state == 1){
911
         if(response.data.state == 1){
911
           this.tableShow = true
912
           this.tableShow = true
928
             this.drugFlowList = drugFlowList
929
             this.drugFlowList = drugFlowList
929
          }
930
          }
930
          if(is_sys == 0){
931
          if(is_sys == 0){
931
-            for(let i=0;i<list.length;i++){
932
-              if(list[i].count_unit == list[i].max_unit){
933
-                  list[i].count = list[i].count * list[i].min_number
932
+            var flowlist = response.data.data.flowlist
933
+            this.drugFlowList = []
934
+            for(let i=0;i<flowlist.length;i++){
935
+              if(flowlist[i].count_unit == flowlist[i].max_unit){
936
+                  flowlist[i].count = flowlist[i].count * list[i].min_number
934
               }
937
               }
935
-              if(list[i].count_unit == list[i].min_unit){
936
-                  list[i].count = list[i].count 
938
+              if(flowlist[i].count_unit == flowlist[i].min_unit){
939
+                  flowlist[i].count = flowlist[i].count 
937
               }
940
               }
938
             }
941
             }
939
-            this.drugFlowList = list
942
+            this.drugFlowList = flowlist
940
          }
943
          }
941
 
944
 
942
          for(let i=0;i<list.length;i++){
945
          for(let i=0;i<list.length;i++){
1070
          return str + min_str
1073
          return str + min_str
1071
       },
1074
       },
1072
       getTotalCountOne(id,min_number,max_unit,min_unit){
1075
       getTotalCountOne(id,min_number,max_unit,min_unit){
1076
+        console.log("hhhahdhhff",this.drugFlowList)
1073
         var arr = []
1077
         var arr = []
1074
         for(let i=0;i<this.drugFlowList.length;i++){
1078
         for(let i=0;i<this.drugFlowList.length;i++){
1075
           if(id == this.drugFlowList[i].drug_id){
1079
           if(id == this.drugFlowList[i].drug_id){

+ 2 - 0
src/xt_pages/stock/drugs/drugStockOutOrderAdd.vue View File

422
       tempObj["batch_number"] = ""
422
       tempObj["batch_number"] = ""
423
       tempObj["max_unit"] = ""
423
       tempObj["max_unit"] = ""
424
       tempObj["warehouse_info_id"] = 0
424
       tempObj["warehouse_info_id"] = 0
425
+      tempObj["dealer"] = ""
426
+      tempObj['manufacturer'] = ''
425
       this.recordInfo.recordData.push(tempObj);
427
       this.recordInfo.recordData.push(tempObj);
426
     },
428
     },
427
     handleDelete: function(index, row) {
429
     handleDelete: function(index, row) {

+ 2 - 1
src/xt_pages/stock/stockInOrderAdd.vue View File

494
           }
494
           }
495
         }
495
         }
496
         return name
496
         return name
497
-      }, handleEdit: function(index, row) {
497
+      }, 
498
+      handleEdit: function(index, row) {
498
         const tempObj = {}
499
         const tempObj = {}
499
         tempObj['good_type_id'] = 0
500
         tempObj['good_type_id'] = 0
500
         tempObj['good_id'] = 0
501
         tempObj['good_id'] = 0

+ 0 - 3
src/xt_pages/stock/stockQuery.vue View File

109
        <el-table-column label="出库数量" align="center" v-if="showOne">
109
        <el-table-column label="出库数量" align="center" v-if="showOne">
110
          <template slot-scope="scope">
110
          <template slot-scope="scope">
111
           <span v-if="org_id == 9671 || org_id == 10138 || org_id == 10028 || org_id == 9675 || org_id == 4 || org_id == 3877 || org_id == 10243 || org_id == 10088 || org_id== 10245 || org_id == 9779 || org_id == 10106 || org_id == 9504 || org_id ==  10215 || org_id ==  10088 || org_id == 10191 || org_id == 9919 || org_id == 10265 || org_id == 10164 || org_id ==10290 ">
111
           <span v-if="org_id == 9671 || org_id == 10138 || org_id == 10028 || org_id == 9675 || org_id == 4 || org_id == 3877 || org_id == 10243 || org_id == 10088 || org_id== 10245 || org_id == 9779 || org_id == 10106 || org_id == 9504 || org_id ==  10215 || org_id ==  10088 || org_id == 10191 || org_id == 9919 || org_id == 10265 || org_id == 10164 || org_id ==10290 ">
112
-            <!-- <span>
113
-              {{getWareInfo(scope.row.xt_warehouse_info) - getOverFlushInfo(scope.row.xt_warehouse_info) + getCancelSotckInfo(scope.row.cancel_stock_info) }}
114
-            </span> -->
115
              <span>
112
              <span>
116
               {{getWareInfo(scope.row.xt_warehouse_info) - getOverFlushInfo(scope.row.xt_warehouse_info)}}
113
               {{getWareInfo(scope.row.xt_warehouse_info) - getOverFlushInfo(scope.row.xt_warehouse_info)}}
117
             </span>
114
             </span>

+ 484 - 0
src/xt_pages/supply/components/addPurchaseOrder.vue View File

1
+<template>
2
+<div class="main-contain">
3
+<div class="position">
4
+    <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+</div>
6
+<div class="app-container ">
7
+    <div style="justify-content: space-between;margin: 0px 0 12px 0;display: flex;align-items: center;">
8
+    <div>
9
+        <el-select v-model="supplier_name" style="width:140px;margin-right:10px;" placeholder="请选择"
10
+        @change="changeTypeName">
11
+        <el-option
12
+            v-for="item in supplyList"
13
+            :key="item.id"
14
+            :label="item.supplier_name"
15
+            :value="item.id">
16
+        </el-option>
17
+        </el-select>
18
+        <el-date-picker
19
+        size="small"
20
+        v-model="start_time"
21
+        prefix-icon="el-icon-date"
22
+        :editable="false"
23
+        style="width: 196px;"
24
+        type="date"
25
+        placeholder="选择日期时间"
26
+        align="right"
27
+        format="yyyy-MM-dd"
28
+        value-format="yyyy-MM-dd"
29
+        @change="startTimeChange"
30
+        ></el-date-picker>-
31
+        <el-date-picker
32
+            size="small"
33
+            v-model="end_time"
34
+            prefix-icon="el-icon-date"
35
+            :editable="false"
36
+            style="width: 196px;"
37
+            type="date"
38
+            placeholder="选择日期时间"
39
+            align="right"
40
+            format="yyyy-MM-dd"
41
+            value-format="yyyy-MM-dd"
42
+            @change="endTimeChange"
43
+        ></el-date-picker>
44
+        <el-input
45
+        size="small"
46
+        style="width: 200px;margin-left:10px;"
47
+        class="filter-item"
48
+        v-model.trim="keywords"
49
+        placeholder="耗材名称"
50
+        />
51
+        <el-button
52
+        size="small"
53
+        class="filter-item"
54
+        type="primary"
55
+        icon="el-icon-search"
56
+        @click="search"
57
+        >搜索</el-button
58
+        >
59
+    </div>
60
+    <div>
61
+        <el-button size="small" type="primary" @click="savePurchaseOrder">保存</el-button>
62
+    </div>
63
+    </div>
64
+
65
+
66
+    <el-table
67
+    :row-style="{ color: '#303133' }"
68
+    :header-cell-style="{
69
+        backgroundColor: 'rgb(245, 247, 250)',
70
+        color: '#606266'
71
+    }"
72
+    :data="tableList"
73
+    :class="signAndWeighBoxPatients"
74
+    border
75
+    style="width: 100%"
76
+    max-height="450"
77
+    >
78
+    <el-table-column label="商品" align="center" width="200px">
79
+        <template slot-scope="scope">
80
+            <el-select v-model="scope.row.name" style="width:160px;" filterable placeholder="请选择" @change="changeName"   @input="changeGoodName(scope.$index)">
81
+            <el-option
82
+                v-for="(item,index) in tabList"
83
+                :key="index"
84
+                :label="item.supply_name"
85
+                :value="item">
86
+            </el-option>
87
+            </el-select>
88
+        </template>
89
+    </el-table-column>
90
+    <el-table-column label="商品类别" align="center" width="150px">
91
+        <template slot-scope="scope">
92
+            <el-input v-model="scope.row.supply_type" style="width:120px" :disabled="true"></el-input>
93
+        </template>
94
+    </el-table-column>
95
+    <el-table-column label="规格&单位" align="center" width="200px">
96
+        <template slot-scope="scope">
97
+            <el-input v-model="scope.row.supply_specification_name" style="width:150px" :disabled="true"></el-input>
98
+        </template>
99
+        </el-table-column>
100
+    <el-table-column label="可用库存" align="center" width="130px">
101
+        <template slot-scope="scope">
102
+            <el-input v-model="scope.row.supply_total" style="width:100px" :disabled="true"></el-input>
103
+        </template>
104
+    </el-table-column>
105
+    <el-table-column label="数量" align="center" width="120px">
106
+        <template slot-scope="scope">
107
+        <el-input v-model="scope.row.supply_count" style="width:80px"></el-input>
108
+        </template>
109
+    </el-table-column>
110
+
111
+    <el-table-column label="购货单价" align="center" width="120px">
112
+        <template slot-scope="scope">
113
+        <el-input v-model="scope.row.supply_price" style="width:80px"></el-input>
114
+        </template>
115
+    </el-table-column>
116
+
117
+    <el-table-column label="购货金额" align="center" width="120px">
118
+        <template slot-scope="scope">
119
+          {{calculate(scope.row.supply_count * scope.row.supply_price)}}
120
+        </template>
121
+    </el-table-column>
122
+    
123
+    <el-table-column label="生产厂商" align="center" width="200px">
124
+        <template slot-scope="scope">
125
+        <el-input v-model="scope.row.supply_manufacturer" style="width:160px" :disabled="true"></el-input>
126
+        </template>
127
+    </el-table-column>
128
+    
129
+
130
+    <el-table-column label="批准文号" align="center" width="200px">
131
+        <template slot-scope="scope">
132
+        <el-input v-model="scope.row.supply_license_number" style="width:160px"></el-input>
133
+        </template>
134
+    </el-table-column>
135
+
136
+    <el-table-column label="备注" align="center" width="200px">
137
+        <template slot-scope="scope">
138
+        <el-input v-model="scope.row.supply_remake" style="width:160px"></el-input>
139
+        </template>
140
+    </el-table-column>
141
+
142
+    <el-table-column label="操作" align="center" width="150px" fixed="right" >
143
+        <template slot-scope="scope">
144
+        <el-tooltip class="item" effect="dark" content="新增" placement="top" >
145
+            <el-button
146
+                size="mini"
147
+                type="primary"
148
+                icon="el-icon-circle-plus-outline"
149
+                @click="handleEdit(scope.$index, scope.row)">
150
+            </el-button>
151
+       </el-tooltip>
152
+       <el-tooltip class="item" effect="dark" content="删除" placement="top">
153
+            <el-button
154
+                size="mini"
155
+                type="danger"
156
+                icon="el-icon-delete"
157
+                @click="handleDelete(scope.$index, scope.row)">
158
+            </el-button>
159
+        </el-tooltip>
160
+
161
+        </template>
162
+    </el-table-column>
163
+  </el-table>
164
+    
165
+</div>
166
+</div>
167
+</template>
168
+
169
+<script>
170
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
171
+
172
+import {getInitOrder} from "@/api/supply"
173
+export default {
174
+name: "addPurchaseOrder",
175
+created() {
176
+this.org_id =  this.$store.getters.xt_user.org_id
177
+
178
+var start_time =  window.sessionStorage.getItem('start_time')
179
+var end_time =  window.sessionStorage.getItem('end_time')
180
+
181
+if(start_time !=null){
182
+    this.start_time = start_time
183
+}
184
+if(end_time!=null){
185
+    this.end_time = end_time
186
+}
187
+window.sessionStorage.removeItem('start_time')
188
+window.sessionStorage.removeItem('end_time')
189
+},
190
+components: {
191
+BreadCrumb
192
+},
193
+data() {
194
+return {
195
+    crumbs: [
196
+    { path: false, name: "购货订单" },
197
+    { path: "/spply/query", name: "新增购货订单" }
198
+    ],
199
+    keywords: "",
200
+    total: 0,
201
+    multipleSelection: [],
202
+    signAndWeighBoxPatients: "sign-and-weigh-box-patients",
203
+    start_time: "",
204
+    end_time: "",
205
+    page: 1,
206
+    limit: 10,
207
+    goodType: [],
208
+    goodInfo: [],
209
+    org_id:0,
210
+    types:[],
211
+    tableList:[],
212
+    tyep_name:"",
213
+    form:{
214
+    manufacturer_id:"",
215
+    },
216
+    tabList:[],
217
+    manufactuerList:[],
218
+    currentIndex: 0,
219
+    goodTypeList:[],
220
+    drugTypeList:[],
221
+    supplier_name:"",
222
+    supplyList:[],
223
+};
224
+},
225
+methods:{
226
+getInitOrder(){
227
+    getInitOrder().then(response=>{
228
+    if(response.data.state == 1){
229
+        var drugList = response.data.data.drugList
230
+        this.manufactuerList = response.data.data.manufactuerList
231
+        this.goodTypeList = response.data.data.goodTypeList
232
+        this.drugTypeList = response.data.data.drugTypeList
233
+        this.supplyList = response.data.data.supplyList
234
+       for(let i=0;i<drugList.length;i++){
235
+          for(let z=0;z<drugList[i].drug_warehouse_info.length;z++){
236
+            drugList[i].drug_warehouse_info[z].stock_max_number = drugList[i].drug_warehouse_info[z].stock_max_number * drugList[i].min_number
237
+          }   
238
+        for(let j=0;j<this.manufactuerList.length;j++){
239
+            if(drugList[i].manufacturer == this.manufactuerList[j].id){
240
+                drugList[i].manufacturer = this.manufactuerList[j].manufacturer_name
241
+            }
242
+        }  
243
+        for(let y=0;y<this.drugTypeList.length;y++){
244
+            if(drugList[i].drug_type == this.drugTypeList[y].value){
245
+            drugList[i].drug_type = this.drugTypeList[y].name
246
+            }
247
+        }
248
+        drugList[i].supply_name =  drugList[i].drug_name + " " + drugList[i].dose +drugList[i].dose_unit+"*"+drugList[i].min_number+ drugList[i].min_unit+"/"+drugList[i].max_unit + " " + drugList[i].manufacturer
249
+        drugList[i].supply_type = drugList[i].drug_type
250
+        drugList[i].supply_specification_name = drugList[i].dose +drugList[i].dose_unit+"*"+drugList[i].min_number+ drugList[i].min_unit+"/"+drugList[i].max_unit
251
+        drugList[i].supply_total = this.getWarehoseInfo(drugList[i].drug_warehouse_info,drugList[i].max_unit,drugList[i].min_unit,drugList[i].min_number)
252
+        drugList[i].supply_count = ""
253
+        drugList[i].supply_total_price = ""
254
+        drugList[i].supply_manufacturer=  drugList[i].manufacturer
255
+        drugList[i].supply_license_number= drugList[i].number
256
+        drugList[i].supply_remake = ""
257
+        drugList[i].type = 1
258
+        drugList[i].supply_price = ""
259
+        drugList[i].name = drugList[i].drug_name
260
+
261
+        this.tabList.push(drugList[i])
262
+        }
263
+        
264
+        var goodList =  response.data.data.goodList
265
+        for(let i=0;i<goodList.length;i++){
266
+        for(let j=0;j<this.manufactuerList.length;j++){
267
+            if(goodList[i].manufacturer == this.manufactuerList[j].id){
268
+                goodList[i].manufacturer = this.manufactuerList[j].manufacturer_name
269
+            }
270
+        }   
271
+        for(let y=0;y<this.goodTypeList.length;y++){
272
+            if(goodList[i].good_type_id == this.goodTypeList[y].id){
273
+                goodList[i].good_type_id = this.goodTypeList[y].type_name
274
+            }
275
+        } 
276
+        goodList[i].supply_name = goodList[i].good_name + " " + goodList[i].specification_name + " " +goodList[i].manufacturer
277
+        goodList[i].supply_type = goodList[i].good_type_id
278
+        goodList[i].supply_specification_name =goodList[i].specification_name
279
+        goodList[i].supply_price = ""
280
+        goodList[i].supply_total = this.getTotalStockCount(goodList[i].good_warehouse_info)
281
+        goodList[i].supply_count = ""
282
+        goodList[i].supply_total_price = ""
283
+        goodList[i].supply_manufacturer = goodList[i].manufacturer
284
+        goodList[i].supply_license_number = ""
285
+        goodList[i].supply_remake = ""
286
+        goodList[i].type = 2   
287
+        goodList[i].name = goodList[i].good_name
288
+
289
+        this.tabList.push(goodList[i]) 
290
+        }
291
+    }
292
+    })  
293
+},
294
+changeGoodName(val){
295
+    console.log("9媚23323232",val)  
296
+    this.currentIndex = val
297
+},
298
+changeName(val){
299
+    console.log("val23322323",val)
300
+    
301
+    for(let i=0;i<this.tableList.length;i++){
302
+    if(this.currentIndex == i){
303
+        this.tableList[i].id = val.id
304
+        this.tableList[i].type = val.type
305
+        this.tableList[i].name = val.name
306
+        this.tableList[i].supply_name = val.supply_name
307
+        this.tableList[i].supply_type = val.supply_type
308
+        this.tableList[i].supply_specification_name = val.supply_specification_name
309
+        this.tableList[i].supply_total = val.supply_total
310
+        this.tableList[i].supply_count = val.supply_count
311
+        this.tableList[i].supply_price = val.supply_price
312
+        this.tableList[i].supply_total_price = val.supply_total_price
313
+        this.tableList[i].supply_manufacturer = val.supply_manufacturer
314
+        this.tableList[i].supply_license_number = val.supply_license_number
315
+        this.tableList[i].supply_remake = val.supply_remake
316
+    }
317
+    }
318
+    console.log("表哥332322332232323",this.tableList)
319
+},
320
+handleEdit(){
321
+    const tempObj = {}
322
+    tempObj["id"] = ""
323
+    tempObj["name"] = ""
324
+    tempObj['supply_name'] = ""
325
+    tempObj['supply_type'] = ""
326
+    tempObj['supply_specification_name'] = ''
327
+    tempObj['supply_total'] = ''
328
+    tempObj['supply_count'] = ''
329
+    tempObj['supply_price'] = ''
330
+    tempObj['supply_total_price'] = ''
331
+    tempObj['supply_manufacturer'] = ''
332
+    tempObj['supply_license_number'] = ''
333
+    tempObj['supply_remake'] = ''
334
+    tempObj['type'] = 0
335
+    this.tableList.push(tempObj)  
336
+},
337
+handleDelete: function(index, row) {
338
+  if (this.tableList.length <= 1) {
339
+        this.$message.error('只有一条记录的时候无法删除')
340
+        return
341
+   } else {
342
+        this.tableList.splice(index, 1)
343
+   }
344
+},
345
+savePurchaseOrder(){
346
+    console.log("param323322332",this.tableList)
347
+    savePurchaseOrder().then(response=>{
348
+
349
+    })  
350
+},
351
+
352
+changeTypeName(){
353
+
354
+},
355
+startTimeChange(){
356
+
357
+},
358
+endTimeChange(){
359
+
360
+},
361
+search(){
362
+    
363
+},
364
+
365
+getWarehoseInfo(arr,max_unit,min_unit,min_number){
366
+    var total = 0
367
+    var max_str=  ""
368
+    var min_str = ""
369
+    if (arr.length > 0) {
370
+      for(let i=0;i<arr.length;i++){
371
+        total += parseInt(arr[i].stock_max_number)
372
+      }
373
+    }
374
+    if (total < min_number){
375
+        min_str = total + min_unit
376
+    }
377
+    if (total == 0) {
378
+        min_str = ""
379
+        max_str = ""
380
+    }
381
+   if (total >=min_number) {
382
+    if(parseInt(total/min_number)!=0){
383
+        max_str = parseInt(total/min_number) + max_unit
384
+    }
385
+    if(total%min_number!=0){
386
+       min_str = total%min_number + min_unit
387
+    }
388
+  }
389
+ return max_str + min_str
390
+ }, 
391
+getTotalStockCount(arr){
392
+  var total_count = 0
393
+  for(let i=0;i<arr.length;i++){
394
+    total_count += arr[i].stock_count
395
+  }
396
+  return total_count
397
+},
398
+calculate: function(val) {
399
+    if (isNaN(val)) {
400
+        return "";
401
+    }
402
+    if (val == 0) {
403
+        return "";
404
+    }
405
+    return Math.round(parseFloat(val) * 100) / 100;
406
+  },
407
+},
408
+created(){
409
+    const tempObj = {}
410
+    tempObj["id"] = ""
411
+    tempObj["name"] = ""
412
+    tempObj['supply_name'] = ""
413
+    tempObj['supply_type'] = ""
414
+    tempObj['supply_specification_name'] = ''
415
+    tempObj['supply_total'] = ''
416
+    tempObj['supply_count'] = ''
417
+    tempObj['supply_price'] = ''
418
+    tempObj['supply_total_price'] = ''
419
+    tempObj['supply_manufacturer'] = ''
420
+    tempObj['supply_license_number'] = ''
421
+    tempObj['supply_remake'] = ''
422
+    tempObj['type'] = 0
423
+    this.tableList.push(tempObj)  
424
+    this.getInitOrder()  
425
+}
426
+};
427
+</script>
428
+
429
+<style rel="stylesheet/css" lang="scss" scoped>
430
+.information {
431
+border: 1px #dcdfe6 solid;
432
+padding: 30px 20px 30px 20px;
433
+
434
+.border {
435
+border-bottom: 1px #dcdfe6 solid;
436
+margin: 0px 0 20px 0;
437
+}
438
+}
439
+
440
+.title {
441
+background: #409eff;
442
+height: 44px;
443
+line-height: 44px;
444
+padding: 0 0 0 10px;
445
+color: #fff;
446
+margin: 0 0 10px 0;
447
+}
448
+
449
+.edit_separater {
450
+border-top: 1px solid rgb(233, 233, 233);
451
+margin-top: 15px;
452
+margin-bottom: 15px;
453
+}
454
+</style>
455
+
456
+<style>
457
+.sign-and-weigh-box .sign-and-weigh-box-patients .cell {
458
+font-size: 12px;
459
+}
460
+
461
+.sign-and-weigh-box .sign-and-weigh-box-patients .current-row > td {
462
+background: #6fb5fa;
463
+}
464
+
465
+.count {
466
+color: #bd2c00;
467
+}
468
+.el-table td,
469
+.el-table th.is-leaf,
470
+.el-table--border,
471
+.el-table--group {
472
+border-color: #d0d3da;
473
+}
474
+.el-table--border::after,
475
+.el-table--group::after,
476
+.el-table::before {
477
+background-color: #d0d3da;
478
+}
479
+.el-table__fixed-right{
480
+  width:150px;
481
+  bottom: 20px; 
482
+  height: 200px; 
483
+}
484
+</style>

+ 32 - 0
src/xt_pages/supply/components/addSupply.vue View File

1
+<template>
2
+    <el-dialog
3
+    title="提示"
4
+    :visible.sync="dialogVisible"
5
+    width="30%"
6
+    :before-close="handleClose">
7
+    <span>这是一段信息</span>
8
+    <span slot="footer" class="dialog-footer">
9
+        <el-button @click="dialogVisible = false">取 消</el-button>
10
+        <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
11
+    </span>
12
+    </el-dialog>
13
+</template>
14
+
15
+<script>
16
+export default {
17
+    
18
+    data(){
19
+        return{
20
+           dialogVisible:false, 
21
+        }
22
+    },
23
+    methods:{
24
+      show(){
25
+        this.dialogVisible = true  
26
+      }
27
+    },
28
+    created(){
29
+
30
+    }
31
+}
32
+</script>

+ 0 - 0
src/xt_pages/supply/components/editSupply.vue View File


+ 277 - 0
src/xt_pages/supply/purchaseOrderQuery.vue View File

1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div class="app-container ">
7
+      <div style="justify-content: space-between;margin: 0px 0 12px 0;display: flex;align-items: center;">
8
+        <div>
9
+          <el-select v-model="type_name" style="width:140px;margin-right:10px;" placeholder="请选择"
10
+          @change="changeTypeName">
11
+            <el-option
12
+              v-for="item in types"
13
+              :key="item.id"
14
+              :label="item.type_name"
15
+              :value="item.id">
16
+            </el-option>
17
+          </el-select>
18
+          <el-date-picker
19
+            size="small"
20
+            v-model="start_time"
21
+            prefix-icon="el-icon-date"
22
+            :editable="false"
23
+            style="width: 196px;"
24
+            type="date"
25
+            placeholder="选择日期时间"
26
+            align="right"
27
+            format="yyyy-MM-dd"
28
+            value-format="yyyy-MM-dd"
29
+            @change="startTimeChange"
30
+           ></el-date-picker>-
31
+            <el-date-picker
32
+              size="small"
33
+              v-model="end_time"
34
+              prefix-icon="el-icon-date"
35
+              :editable="false"
36
+              style="width: 196px;"
37
+              type="date"
38
+              placeholder="选择日期时间"
39
+              align="right"
40
+              format="yyyy-MM-dd"
41
+              value-format="yyyy-MM-dd"
42
+              @change="endTimeChange"
43
+          ></el-date-picker>
44
+          <el-input
45
+            size="small"
46
+            style="width: 200px;margin-left:10px;"
47
+            class="filter-item"
48
+            v-model.trim="keywords"
49
+            placeholder="耗材名称"
50
+          />
51
+          <el-button
52
+            size="small"
53
+            class="filter-item"
54
+            type="primary"
55
+            icon="el-icon-search"
56
+            @click="search"
57
+            >搜索</el-button
58
+          >
59
+        </div>
60
+        <div>
61
+          <el-button size="small" type="primary" @click="toAdd">新增</el-button>
62
+        </div>
63
+      </div>
64
+
65
+
66
+       <el-table
67
+        :row-style="{ color: '#303133' }"
68
+        :header-cell-style="{
69
+          backgroundColor: 'rgb(245, 247, 250)',
70
+          color: '#606266'
71
+        }"
72
+        :data="tableList"
73
+        :class="signAndWeighBoxPatients"
74
+        border
75
+      >
76
+        <el-table-column label="订单日期" align="center">
77
+          <template slot-scope="scope">
78
+            <span></span>
79
+         </template>
80
+        </el-table-column>
81
+        <el-table-column label="订单编号" align="center">
82
+          <template slot-scope="scope">
83
+          
84
+          </template>
85
+        </el-table-column>
86
+        <el-table-column label="供应商" align="center">
87
+            <template slot-scope="scope">
88
+              <span></span>
89
+            </template>
90
+         </el-table-column>
91
+        <el-table-column label="关联购货订单" align="center">
92
+          <template slot-scope="scope">
93
+            
94
+          </template>
95
+        </el-table-column>
96
+        <el-table-column label="购物金额" align="center">
97
+          <template slot-scope="scope">
98
+           
99
+          </template>
100
+        </el-table-column>
101
+
102
+       <el-table-column label="数量" align="center">
103
+         <template slot-scope="scope">
104
+           
105
+         </template>
106
+       </el-table-column>
107
+
108
+       <el-table-column label="订单状态" align="center">
109
+         <template slot-scope="scope">
110
+         
111
+        
112
+         </template>
113
+       </el-table-column>
114
+      
115
+        <el-table-column label="交货日期" align="center">
116
+         <template slot-scope="scope">
117
+         
118
+         </template>
119
+       </el-table-column>
120
+        
121
+    
122
+      <el-table-column label="制单人" align="center">
123
+         <template slot-scope="scope">
124
+       
125
+         </template>
126
+       </el-table-column>
127
+
128
+      <el-table-column label="审核人" align="center">
129
+         <template slot-scope="scope">
130
+       
131
+         </template>
132
+       </el-table-column>
133
+
134
+       <el-table-column label="操作" align="center" width="260px">
135
+          <template slot-scope="scope">
136
+              <el-button
137
+                size="small"
138
+                type="primary"
139
+                @click="toClick(scope.row)"
140
+              >库存流水
141
+              </el-button>
142
+              <el-button
143
+                size="small"
144
+                type="primary"
145
+                @click="toClickOne(scope.row)"
146
+              >批次
147
+              </el-button>
148
+          </template>
149
+        </el-table-column>
150
+      </el-table>
151
+      <el-pagination
152
+        @size-change="handleSizeChange"
153
+        @current-change="handleCurrentChange"
154
+        :page-sizes="[10, 50, 100,200,500,1000]"
155
+        :page-size="10"
156
+        background
157
+        align="right"
158
+        style="margin-top:20px;"
159
+        layout="total, sizes, prev, pager, next, jumper"
160
+        :total="total"
161
+      >
162
+      </el-pagination>
163
+
164
+       <add-supply ref="addSupply"></add-supply>
165
+    </div>
166
+  </div>
167
+</template>
168
+
169
+<script>
170
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
171
+import addSupply from "./components/addSupply.vue"
172
+
173
+export default {
174
+  name: "stockIn",
175
+   components: {
176
+     addSupply
177
+   },
178
+  created() {
179
+    this.org_id =  this.$store.getters.xt_user.org_id
180
+
181
+    var start_time =  window.sessionStorage.getItem('start_time')
182
+    var end_time =  window.sessionStorage.getItem('end_time')
183
+
184
+    if(start_time !=null){
185
+      this.start_time = start_time
186
+    }
187
+    if(end_time!=null){
188
+      this.end_time = end_time
189
+    }
190
+    window.sessionStorage.removeItem('start_time')
191
+    window.sessionStorage.removeItem('end_time')
192
+  },
193
+  components: {
194
+    BreadCrumb
195
+  },
196
+  data() {
197
+    return {
198
+      crumbs: [
199
+        { path: false, name: "采购管理" },
200
+        { path: "/spply/query", name: "供应商管理" }
201
+      ],
202
+      keywords: "",
203
+      total: 0,
204
+      multipleSelection: [],
205
+      signAndWeighBoxPatients: "sign-and-weigh-box-patients",
206
+      start_time: "",
207
+      end_time: "",
208
+      page: 1,
209
+      limit: 10,
210
+      goodType: [],
211
+      goodInfo: [],
212
+      org_id:0,
213
+      types:[],
214
+      tableList:[],
215
+      tyep_name:"",
216
+    };
217
+  },
218
+  methods:{
219
+     toAdd(){
220
+       console.log("res32323232323223",this.$refs)  
221
+       this.$refs.addSupply.show()  
222
+     } 
223
+  }
224
+};
225
+</script>
226
+
227
+<style rel="stylesheet/css" lang="scss" scoped>
228
+.information {
229
+  border: 1px #dcdfe6 solid;
230
+  padding: 30px 20px 30px 20px;
231
+
232
+  .border {
233
+    border-bottom: 1px #dcdfe6 solid;
234
+    margin: 0px 0 20px 0;
235
+  }
236
+}
237
+
238
+.title {
239
+  background: #409eff;
240
+  height: 44px;
241
+  line-height: 44px;
242
+  padding: 0 0 0 10px;
243
+  color: #fff;
244
+  margin: 0 0 10px 0;
245
+}
246
+
247
+.edit_separater {
248
+  border-top: 1px solid rgb(233, 233, 233);
249
+  margin-top: 15px;
250
+  margin-bottom: 15px;
251
+}
252
+</style>
253
+
254
+<style>
255
+.sign-and-weigh-box .sign-and-weigh-box-patients .cell {
256
+  font-size: 12px;
257
+}
258
+
259
+.sign-and-weigh-box .sign-and-weigh-box-patients .current-row > td {
260
+  background: #6fb5fa;
261
+}
262
+
263
+.count {
264
+  color: #bd2c00;
265
+}
266
+.el-table td,
267
+.el-table th.is-leaf,
268
+.el-table--border,
269
+.el-table--group {
270
+  border-color: #d0d3da;
271
+}
272
+.el-table--border::after,
273
+.el-table--group::after,
274
+.el-table::before {
275
+  background-color: #d0d3da;
276
+}
277
+</style>

+ 272 - 0
src/xt_pages/supply/supplyQuery.vue View File

1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+    <div class="app-container ">
7
+      <div style="justify-content: space-between;margin: 0px 0 12px 0;display: flex;align-items: center;">
8
+        <div>
9
+          <el-select v-model="type_name" style="width:140px;margin-right:10px;" placeholder="请选择"
10
+          @change="changeTypeName">
11
+            <el-option
12
+              v-for="item in types"
13
+              :key="item.id"
14
+              :label="item.type_name"
15
+              :value="item.id">
16
+            </el-option>
17
+          </el-select>
18
+          <el-date-picker
19
+            size="small"
20
+            v-model="start_time"
21
+            prefix-icon="el-icon-date"
22
+            :editable="false"
23
+            style="width: 196px;"
24
+            type="date"
25
+            placeholder="选择日期时间"
26
+            align="right"
27
+            format="yyyy-MM-dd"
28
+            value-format="yyyy-MM-dd"
29
+            @change="startTimeChange"
30
+           ></el-date-picker>-
31
+            <el-date-picker
32
+              size="small"
33
+              v-model="end_time"
34
+              prefix-icon="el-icon-date"
35
+              :editable="false"
36
+              style="width: 196px;"
37
+              type="date"
38
+              placeholder="选择日期时间"
39
+              align="right"
40
+              format="yyyy-MM-dd"
41
+              value-format="yyyy-MM-dd"
42
+              @change="endTimeChange"
43
+          ></el-date-picker>
44
+          <el-input
45
+            size="small"
46
+            style="width: 200px;margin-left:10px;"
47
+            class="filter-item"
48
+            v-model.trim="keywords"
49
+            placeholder="耗材名称"
50
+          />
51
+          <el-button
52
+            size="small"
53
+            class="filter-item"
54
+            type="primary"
55
+            icon="el-icon-search"
56
+            @click="search"
57
+            >搜索</el-button
58
+          >
59
+        </div>
60
+        <div>
61
+          <el-button size="small" type="primary" @click="toAdd">新增</el-button>
62
+        </div>
63
+      </div>
64
+
65
+
66
+       <el-table
67
+        :row-style="{ color: '#303133' }"
68
+        :header-cell-style="{
69
+          backgroundColor: 'rgb(245, 247, 250)',
70
+          color: '#606266'
71
+        }"
72
+        :data="tableList"
73
+        :class="signAndWeighBoxPatients"
74
+        border
75
+      >
76
+        <el-table-column label="供应商类别" align="center">
77
+          <template slot-scope="scope">
78
+            <span></span>
79
+         </template>
80
+        </el-table-column>
81
+        <el-table-column label="供应商编码" align="center">
82
+          <template slot-scope="scope">
83
+          
84
+          </template>
85
+        </el-table-column>
86
+        <el-table-column label="供应商名称" align="center">
87
+            <template slot-scope="scope">
88
+              <span></span>
89
+            </template>
90
+         </el-table-column>
91
+        <el-table-column label="首要联系人" align="center">
92
+          <template slot-scope="scope">
93
+            
94
+          </template>
95
+        </el-table-column>
96
+        <el-table-column label="增值税税率(%)" align="center">
97
+          <template slot-scope="scope">
98
+           
99
+          </template>
100
+        </el-table-column>
101
+       <el-table-column label="银行账号" align="center">
102
+         <template slot-scope="scope">
103
+           
104
+         </template>
105
+       </el-table-column>
106
+       <el-table-column label="开户银行" align="center" v-if="showOne">
107
+         <template slot-scope="scope">
108
+         
109
+          </span>
110
+        
111
+         </template>
112
+       </el-table-column>
113
+      
114
+        <el-table-column label="纳税人识别号" align="center" v-if="showThree">
115
+         <template slot-scope="scope">
116
+         
117
+         </template>
118
+       </el-table-column>
119
+        
120
+    
121
+      <el-table-column label="手机" align="center" v-if="showFour">
122
+         <template slot-scope="scope">
123
+       
124
+         </template>
125
+       </el-table-column>
126
+
127
+    
128
+
129
+       <el-table-column label="操作" align="center" width="260px">
130
+          <template slot-scope="scope">
131
+              <el-button
132
+                size="small"
133
+                type="primary"
134
+                @click="toClick(scope.row)"
135
+              >库存流水
136
+              </el-button>
137
+              <el-button
138
+                size="small"
139
+                type="primary"
140
+                @click="toClickOne(scope.row)"
141
+              >批次
142
+              </el-button>
143
+          </template>
144
+        </el-table-column>
145
+      </el-table>
146
+      <el-pagination
147
+        @size-change="handleSizeChange"
148
+        @current-change="handleCurrentChange"
149
+        :page-sizes="[10, 50, 100,200,500,1000]"
150
+        :page-size="10"
151
+        background
152
+        align="right"
153
+        style="margin-top:20px;"
154
+        layout="total, sizes, prev, pager, next, jumper"
155
+        :total="total"
156
+      >
157
+      </el-pagination>
158
+
159
+       <add-supply ref="addSupply"></add-supply>
160
+    </div>
161
+  </div>
162
+</template>
163
+
164
+<script>
165
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
166
+import addSupply from "./components/addSupply.vue"
167
+
168
+export default {
169
+  name: "stockIn",
170
+   components: {
171
+     addSupply
172
+   },
173
+  created() {
174
+    this.org_id =  this.$store.getters.xt_user.org_id
175
+
176
+    var start_time =  window.sessionStorage.getItem('start_time')
177
+    var end_time =  window.sessionStorage.getItem('end_time')
178
+
179
+    if(start_time !=null){
180
+      this.start_time = start_time
181
+    }
182
+    if(end_time!=null){
183
+      this.end_time = end_time
184
+    }
185
+    window.sessionStorage.removeItem('start_time')
186
+    window.sessionStorage.removeItem('end_time')
187
+  },
188
+  components: {
189
+    BreadCrumb
190
+  },
191
+  data() {
192
+    return {
193
+      crumbs: [
194
+        { path: false, name: "采购管理" },
195
+        { path: "/spply/query", name: "供应商管理" }
196
+      ],
197
+      keywords: "",
198
+      total: 0,
199
+      multipleSelection: [],
200
+      signAndWeighBoxPatients: "sign-and-weigh-box-patients",
201
+      start_time: "",
202
+      end_time: "",
203
+      page: 1,
204
+      limit: 10,
205
+      goodType: [],
206
+      goodInfo: [],
207
+      org_id:0,
208
+      types:[],
209
+      tableList:[],
210
+      tyep_name:"",
211
+    };
212
+  },
213
+  methods:{
214
+     toAdd(){
215
+       console.log("res32323232323223",this.$refs)  
216
+       this.$refs.addSupply.show()  
217
+     } 
218
+  }
219
+};
220
+</script>
221
+
222
+<style rel="stylesheet/css" lang="scss" scoped>
223
+.information {
224
+  border: 1px #dcdfe6 solid;
225
+  padding: 30px 20px 30px 20px;
226
+
227
+  .border {
228
+    border-bottom: 1px #dcdfe6 solid;
229
+    margin: 0px 0 20px 0;
230
+  }
231
+}
232
+
233
+.title {
234
+  background: #409eff;
235
+  height: 44px;
236
+  line-height: 44px;
237
+  padding: 0 0 0 10px;
238
+  color: #fff;
239
+  margin: 0 0 10px 0;
240
+}
241
+
242
+.edit_separater {
243
+  border-top: 1px solid rgb(233, 233, 233);
244
+  margin-top: 15px;
245
+  margin-bottom: 15px;
246
+}
247
+</style>
248
+
249
+<style>
250
+.sign-and-weigh-box .sign-and-weigh-box-patients .cell {
251
+  font-size: 12px;
252
+}
253
+
254
+.sign-and-weigh-box .sign-and-weigh-box-patients .current-row > td {
255
+  background: #6fb5fa;
256
+}
257
+
258
+.count {
259
+  color: #bd2c00;
260
+}
261
+.el-table td,
262
+.el-table th.is-leaf,
263
+.el-table--border,
264
+.el-table--group {
265
+  border-color: #d0d3da;
266
+}
267
+.el-table--border::after,
268
+.el-table--group::after,
269
+.el-table::before {
270
+  background-color: #d0d3da;
271
+}
272
+</style>

+ 11 - 3
src/xt_pages/workforce/components/tableData.vue View File

619
 <script>
619
 <script>
620
 import { uParseTime } from "@/utils/tools";
620
 import { uParseTime } from "@/utils/tools";
621
 import print from 'print-js'
621
 import print from 'print-js'
622
-
622
+const moment = require('moment')
623
 import {
623
 import {
624
   CancelSchedule,
624
   CancelSchedule,
625
   ChangeSchedule,
625
   ChangeSchedule,
695
       partitions: [],
695
       partitions: [],
696
       jihaos: [],
696
       jihaos: [],
697
       weekTitle: ["", "", "", "", "", "", ""],
697
       weekTitle: ["", "", "", "", "", "", ""],
698
+      weekList: ["", "", "", "", "", "", ""],
698
       weekDays: ["", "", "", "", "", "", ""],
699
       weekDays: ["", "", "", "", "", "", ""],
699
       currentData: {
700
       currentData: {
700
         id: 0,
701
         id: 0,
1165
       getSchedulesOne(params).then(response => {
1166
       getSchedulesOne(params).then(response => {
1166
         if (response.data.state == 1) {
1167
         if (response.data.state == 1) {
1167
           this.weekTitle = response.data.data.weekTitle;
1168
           this.weekTitle = response.data.data.weekTitle;
1169
+
1168
           this.weekDays = response.data.data.days;
1170
           this.weekDays = response.data.data.days;
1169
           this.toDay = response.data.data.today;
1171
           this.toDay = response.data.data.today;
1170
           var theSchedules = response.data.data.schdules;
1172
           var theSchedules = response.data.data.schdules;
2110
     },
2112
     },
2111
     search: function() {
2113
     search: function() {
2112
       let week_type = 0
2114
       let week_type = 0
2115
+      var weeklist = moment().format('E');//计算今天是这周第几天
2116
+      var first_monday = moment().subtract(weeklist-1, 'days').format('YYYY-MM-DD');//周一日期
2117
+      var end_monday = moment().add(7-weeklist, 'days').format('YYYY-MM-DD')
2113
       if (this.weekTime == 'thisWeek'){
2118
       if (this.weekTime == 'thisWeek'){
2114
         week_type = 1
2119
         week_type = 1
2115
       }else if(this.weekTime == 'nextWeek'){
2120
       }else if(this.weekTime == 'nextWeek'){
2117
       }else if(this.weekTime == 'nextTwoWeek'){
2122
       }else if(this.weekTime == 'nextTwoWeek'){
2118
         week_type = 3
2123
         week_type = 3
2119
       }
2124
       }
2120
-
2121
-
2125
+     
2122
       const params = {
2126
       const params = {
2123
         keywords: this.keywords,
2127
         keywords: this.keywords,
2124
         week_type: week_type,
2128
         week_type: week_type,
2129
+        start_sch:first_monday,
2130
+        end_sch:end_monday,
2125
       };
2131
       };
2132
+      console.log("params",params)
2126
       getSearchResult(params).then(response => {
2133
       getSearchResult(params).then(response => {
2127
         if (response.data.state == 1) {
2134
         if (response.data.state == 1) {
2128
           this.schedulePatients = response.data.data.schdules;
2135
           this.schedulePatients = response.data.data.schdules;
2300
   //    this.tableContainHeight = window.innerHeight - this.$refs.table.$el.offsetTop - 160
2307
   //    this.tableContainHeight = window.innerHeight - this.$refs.table.$el.offsetTop - 160
2301
   // },
2308
   // },
2302
   created() {
2309
   created() {
2310
+    
2303
     this.getAllZones()
2311
     this.getAllZones()
2304
  
2312
  
2305
     this.changeScheduleType(1)
2313
     this.changeScheduleType(1)