Bladeren bron

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

XMLWAN 2 jaren geleden
bovenliggende
commit
a8c6d7a846
33 gewijzigde bestanden met toevoegingen van 2497 en 516 verwijderingen
  1. 1 1
      index.html
  2. 1 0
      src/lang/en.js
  3. 3 0
      src/lang/zh.js
  4. 2 0
      src/router/index.js
  5. 64 0
      src/router/modules/DepositManagement.js
  6. 1 1
      src/views/layout/Layout.vue
  7. 1 1
      src/views/layout/components/Sidebar/index.vue
  8. 109 0
      src/xt_pages/DepositManagement/DeductionDetailsSummary.vue
  9. 254 0
      src/xt_pages/DepositManagement/DepositRefund.vue
  10. 127 0
      src/xt_pages/DepositManagement/DepositSearch.vue
  11. 109 0
      src/xt_pages/DepositManagement/RechargeDetailsSummary.vue
  12. 137 0
      src/xt_pages/DepositManagement/Template/DeductionDetails.vue
  13. 118 0
      src/xt_pages/DepositManagement/Template/DeductionSummary.vue
  14. 130 0
      src/xt_pages/DepositManagement/Template/DepositDetails.vue
  15. 166 0
      src/xt_pages/DepositManagement/Template/RechargeDetails.vue
  16. 121 0
      src/xt_pages/DepositManagement/Template/RechargeSummary.vue
  17. 42 0
      src/xt_pages/DepositManagement/Template/add_page.vue
  18. 42 0
      src/xt_pages/DepositManagement/Template/refundAdd.vue
  19. 102 0
      src/xt_pages/DepositManagement/print/printindex.vue
  20. 17 0
      src/xt_pages/dialysis/PatientBox.vue
  21. 2 0
      src/xt_pages/dialysis/schedualPatient.vue
  22. 1 1
      src/xt_pages/hospitalStation/invoicePrint.vue
  23. 28 10
      src/xt_pages/hospitalStation/invoiceTemplate/printTwo.vue
  24. 8 8
      src/xt_pages/hospitalStation/statementTemplate/printOne.vue
  25. 223 65
      src/xt_pages/outpatientCharges/outpatientChargesManagement.vue
  26. 6 3
      src/xt_pages/outpatientCharges/statementTemplate/printThree.vue
  27. 8 8
      src/xt_pages/outpatientCharges/statementTemplate/privateChargePrint.vue
  28. 9 9
      src/xt_pages/outpatientDoctorStation/checkPrint.vue
  29. 6 2
      src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue
  30. 6 6
      src/xt_pages/outpatientDoctorStation/components/prescriptionTable.vue
  31. 2 3
      src/xt_pages/stock/inventoryTransfer/index.vue
  32. 626 396
      src/xt_pages/stock/stockQuery.vue
  33. 25 2
      src/xt_pages/user/components/PatientForm.vue

+ 1 - 1
index.html Bestand weergeven

@@ -19,7 +19,7 @@
19 19
 
20 20
   <body>
21 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://images.shengws.com/jquery.min.js"></script>
23 23
     <script src="<%= htmlWebpackPlugin.options.path %>/tinymce4.7.5/tinymce.min.js"></script>
24 24
     <script src="<%= htmlWebpackPlugin.options.path %>/neditor/neditor.config.js"></script>
25 25
     <script src="<%= htmlWebpackPlugin.options.path %>/neditor/neditor.all.min.js"></script>

+ 1 - 0
src/lang/en.js Bestand weergeven

@@ -87,6 +87,7 @@ export default {
87 87
     data_dictionary: 'data_dictionary',
88 88
     field_config: 'field_config',
89 89
     template: 'Template',
90
+    DepositManagement:'Deposit Management',
90 91
     workforce: 'workforce',
91 92
     appointment: 'appointment',
92 93
     sign: 'sign',

+ 3 - 0
src/lang/zh.js Bestand weergeven

@@ -174,6 +174,7 @@ export default {
174 174
     selfPreparedMedicineIndex: '自备药管理',
175 175
     selfPreparedMedicine: '自备药管理',
176 176
     wareHouseManage:'仓库管理',
177
+    
177 178
     inventoryTransfer:'库存调拨',
178 179
 
179 180
     consumablesManagement: '耗材管理',
@@ -270,6 +271,8 @@ export default {
270 271
     hisTool: 'HIS工具',
271 272
     hospitalCharges: '住院收费',
272 273
 
274
+    DepositManagement:'押金管理',
275
+
273 276
     summary_tool: '项目消费明细汇总',
274 277
     labelPrint: '标签打印',
275 278
     faPiao: '发票设置',

+ 2 - 0
src/router/index.js Bestand weergeven

@@ -32,6 +32,7 @@ import outpatientPharmacy from './modules/outpatientPharmacy'
32 32
 import hospitalRecord from './modules/hospitalRecord'
33 33
 import hospitalStation from './modules/hospitalStation'
34 34
 import hospitalCharges from './modules/hospitalCharges'
35
+import DepositManagement from './modules/DepositManagement'
35 36
 import hisTool from './modules/hisTool'
36 37
 import supply from './modules/supply'
37 38
 
@@ -153,6 +154,7 @@ var _asy_router_map = [
153 154
   drugs,
154 155
   selfPreparedMedicine,  //自备药管理模块
155 156
   wareHouseManage,  //仓库管理模块
157
+  DepositManagement, //押金管理模块
156 158
   inventoryTransfer,    //库存调拨模块
157 159
   otherManagement,
158 160
   qcd,

+ 64 - 0
src/router/modules/DepositManagement.js Bestand weergeven

@@ -0,0 +1,64 @@
1
+import Layout from '@/views/layout/Layout'
2
+
3
+export default {
4
+    path: '/DepositManagement',
5
+    component: Layout,
6
+    redirect: 'noredirect',
7
+    name: 'DepositManagement',
8
+    alwaysShow: true,
9
+    meta: {
10
+        title: 'DepositManagement',
11
+        icon: 'stock',
12
+        isChild: true
13
+    },
14
+    children: [
15
+        {
16
+            path: '/DepositManagement/DepositSearch',
17
+            component: () => import('@/xt_pages/DepositManagement/DepositSearch'),
18
+            name: 'DepositSearch',
19
+            meta: { title: '押金查询', noCache: true }
20
+        },
21
+
22
+        {
23
+            path: '/DepositManagement/RechargeDetailsSummary',
24
+            component: () => import('@/xt_pages/DepositManagement/RechargeDetailsSummary'),
25
+            name: 'RechargeDetailsSummary',
26
+            meta: { title: '押金充值明细汇总', noCache: true }
27
+        },
28
+        {
29
+            path: '/DepositManagement/DeductionDetailsSummary',
30
+            component: () => import('@/xt_pages/DepositManagement/DeductionDetailsSummary'),
31
+            name: 'DeductionDetailsSummary',
32
+            meta: { title: '押金扣费明细汇总', noCache: true }
33
+        },
34
+        {
35
+            path: '/DepositManagement/DepositRefund',
36
+            component: () => import('@/xt_pages/DepositManagement/DepositRefund'),
37
+            name: 'DepositRefund',
38
+            meta: { title: '押金退款', noCache: true }
39
+        },
40
+        {
41
+            path: '/DepositManagement/DepositDetails',
42
+            component: () => import('@/xt_pages/DepositManagement/Template/DepositDetails'),
43
+            hidden: true,
44
+            is_menu: false,
45
+            name: 'DepositDetails',
46
+            meta: {
47
+                title: '流水详情',
48
+                noCache: true
49
+            }
50
+        },
51
+        {
52
+            path: '/DepositManagement/printindex',
53
+            component: () => import('@/xt_pages/DepositManagement/print/printindex'),
54
+            hidden: true,
55
+            is_menu: false,
56
+            name: 'printindex',
57
+            meta: {
58
+                title: '打印凭证',
59
+                noCache: true
60
+            }
61
+        }
62
+
63
+    ]
64
+}

+ 1 - 1
src/views/layout/Layout.vue Bestand weergeven

@@ -127,7 +127,7 @@ export default {
127 127
     }
128 128
   },
129 129
   created(){
130
-    let menzhen = ['hospitalStation',"hospitalRecord","hospitalCharges","hisTool",'outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord'];
130
+    let menzhen = ['hospitalStation',"hospitalRecord","hospitalCharges","DepositManagement","hisTool",'outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord'];
131 131
     let bingli = ['User','createPatient'];
132 132
     let touxi = ['home','workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'device', 'quality_control'];
133 133
     let kucun = ['stockManage','stockDrugs','selfPreparedMedicine','inventoryTransfer','wareHouseManage','otherManagement'];

+ 1 - 1
src/views/layout/components/Sidebar/index.vue Bestand weergeven

@@ -69,7 +69,7 @@ export default {
69 69
     navTitle:{
70 70
       handler(newVal,oldVal){
71 71
         if(newVal == 'HIS管理'){
72
-          let nameArr = ['hospitalStation','hospitalRecord','hospitalCharges','hisTool','outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord',];
72
+          let nameArr = ['hospitalStation','hospitalRecord','hospitalCharges','DepositManagement','hisTool','outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy','outpatientRecord',];
73 73
           // console.log('permission_routers',this.permission_routers)
74 74
           let routerArr = [];
75 75
           this.permission_routers.map(item => {

+ 109 - 0
src/xt_pages/DepositManagement/DeductionDetailsSummary.vue Bestand weergeven

@@ -0,0 +1,109 @@
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="width: 100%">
8
+        <el-tabs v-model="activeName" @tab-click="handleClick">
9
+          <el-tab-pane label="扣费明细" name="first">
10
+            <DeductionDetails></DeductionDetails>
11
+          </el-tab-pane>
12
+          <el-tab-pane label="扣费汇总" name="second">
13
+            <DeductionSummary></DeductionSummary>
14
+          </el-tab-pane>
15
+        </el-tabs>
16
+        <div
17
+          style="position: absolute; top: 80px; right: 40px"
18
+          v-if="activeName == 'first'"
19
+        >
20
+          <el-button size="small" type="primary" @click="Add()">
21
+            新增
22
+          </el-button>
23
+        </div>
24
+      </div>
25
+      <el-dialog
26
+        title="新增押金"
27
+        :visible.sync="dialogVisible"
28
+        width="30%"
29
+        :show-close="close"
30
+      >
31
+        <!-- <span>这是一段信息</span> -->
32
+        <RechangeAd></RechangeAd>
33
+        <span slot="footer" class="dialog-footer">
34
+          <el-button @click="pass">审核通过</el-button>
35
+          <el-button type="primary" @click="Submit">提 交</el-button>
36
+        </span>
37
+      </el-dialog>
38
+    </div>
39
+  </div>
40
+</template>
41
+<script>
42
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
43
+import DeductionDetails from "./Template/DeductionDetails.vue";
44
+import DeductionSummary from "./Template/DeductionSummary.vue";
45
+import RechangeAd from "./Template/add_page.vue";
46
+export default {
47
+  components: {
48
+    BreadCrumb,
49
+    DeductionDetails,
50
+    DeductionSummary,
51
+    RechangeAd,
52
+  },
53
+  data() {
54
+    return {
55
+      crumbs: [
56
+        { path: false, name: "押金管理" },
57
+        { path: "/DepositManagement/DepositSearch", name: "充值详情" },
58
+      ],
59
+      activeName: "first",
60
+      tableData: [{}, {}],
61
+      total: 0,
62
+      page: 1,
63
+      limit: 10,
64
+      keywords: "",
65
+      dialogVisible: false,
66
+      close: false,
67
+    };
68
+  },
69
+
70
+  methods: {
71
+    // 初始化数据
72
+    init() {},
73
+
74
+    // 查询操作
75
+    search() {},
76
+    // 切换明细
77
+    handleClick(tab, event) {
78
+      console.log(tab, event);
79
+    },
80
+    // 页表操作
81
+    handleSizeChange(val) {
82
+      this.limit = val;
83
+      this.init();
84
+    },
85
+    handleCurrentChange(val) {
86
+      this.page = val;
87
+      this.init();
88
+    },
89
+
90
+    // 流水详情
91
+    toDetails() {
92
+      this.$router.push({ path: "/DepositManagement/DepositDetails" });
93
+    },
94
+
95
+    // 新增
96
+    Add() {
97
+      this.dialogVisible = true;
98
+    },
99
+
100
+    // 审核通过
101
+    pass() {},
102
+
103
+    // 提交
104
+    Submit() {},
105
+  },
106
+};
107
+</script>
108
+<style>
109
+</style>

+ 254 - 0
src/xt_pages/DepositManagement/DepositRefund.vue Bestand weergeven

@@ -0,0 +1,254 @@
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="width: 100%">
8
+        <div class="Top">
9
+          <div>退款列表</div>
10
+          <div class="btn_list">
11
+            <el-button size="small" type="primary" @click="to_add">
12
+              新增
13
+            </el-button>
14
+            <el-button size="small" type="primary" @click="pass_exam">
15
+              审核通过
16
+            </el-button>
17
+            <el-button size="small" type="warning" @click="reject_exam">
18
+              审核拒绝
19
+            </el-button>
20
+          </div>
21
+        </div>
22
+        <div
23
+          style="
24
+            justify-content: flex-start;
25
+            margin: 0px 0 12px 0;
26
+            display: flex;
27
+            align-items: center;
28
+          "
29
+        >
30
+          <div style="display: flex">
31
+            <div style="width: 250px">
32
+              <el-input
33
+                size="small"
34
+                style="width: 200px; margin-left: 10px"
35
+                class="filter-item"
36
+                placeholder="请输入编号/患者名称"
37
+                v-model.trim="keywords"
38
+              />
39
+            </div>
40
+
41
+            <div style="margin-right: 30px">
42
+              退款类型:
43
+              <el-select v-model="value" placeholder="请选择">
44
+                <el-option
45
+                  v-for="item in [1, 2]"
46
+                  :key="item"
47
+                  :label="item"
48
+                  :value="item"
49
+                >
50
+                </el-option>
51
+              </el-select>
52
+            </div>
53
+
54
+            <div style="margin-right: 30px">
55
+              审核状态:
56
+              <el-select v-model="status" placeholder="请选择">
57
+                <el-option
58
+                  v-for="item in [1, 2]"
59
+                  :key="item"
60
+                  :label="item"
61
+                  :value="item"
62
+                >
63
+                </el-option>
64
+              </el-select>
65
+            </div>
66
+
67
+            <div style="width: 465px">
68
+              <span>日期查询:</span>
69
+              <el-date-picker
70
+                v-model="date"
71
+                type="daterange"
72
+                range-separator="至"
73
+                start-placeholder="开始日期"
74
+                end-placeholder="结束日期"
75
+              >
76
+              </el-date-picker>
77
+            </div>
78
+            <el-button
79
+              size="small"
80
+              class="filter-item"
81
+              type="primary"
82
+              icon="el-icon-search"
83
+              @click="search"
84
+              >查询</el-button
85
+            >
86
+          </div>
87
+        </div>
88
+        <el-table
89
+          ref="multipleTable"
90
+          :header-cell-style="{
91
+            backgroundColor: 'rgb(245, 247, 250)',
92
+            color: '#606266',
93
+          }"
94
+          :data="tableData"
95
+          @selection-change="handleSelectionChange"
96
+          border
97
+        >
98
+          <el-table-column type="selection" width="55"> </el-table-column>
99
+
100
+          <el-table-column label="申请编号" align="center">
101
+            <template slot-scope="scope">
102
+              <span></span>
103
+            </template>
104
+          </el-table-column>
105
+          <el-table-column label="患者名称" align="center">
106
+            <template slot-scope="scope">
107
+              <span></span>
108
+            </template>
109
+          </el-table-column>
110
+
111
+          <el-table-column label="退款类型" align="center">
112
+            <template slot-scope="scope">
113
+              <span></span>
114
+            </template>
115
+          </el-table-column>
116
+          <el-table-column label="退款金额" align="center">
117
+            <template slot-scope="scope">
118
+              <span></span>
119
+            </template>
120
+          </el-table-column>
121
+          <el-table-column label="退款状态" align="center">
122
+            <template slot-scope="scope">
123
+              <span></span>
124
+            </template>
125
+          </el-table-column>
126
+          <el-table-column label="备注" align="center">
127
+            <template slot-scope="scope">
128
+              <span></span>
129
+            </template>
130
+          </el-table-column>
131
+          <el-table-column label="申请人" align="center">
132
+            <template slot-scope="scope">
133
+              <span></span>
134
+            </template>
135
+          </el-table-column>
136
+          <el-table-column label="申请时间" align="center">
137
+            <template slot-scope="scope">
138
+              <span></span>
139
+            </template>
140
+          </el-table-column>
141
+          <el-table-column label="操作" align="center" width="350px">
142
+            <template slot-scope="scope">
143
+              <el-button
144
+                size="small"
145
+                type="primary"
146
+                icon="el-icon-edit-outline"
147
+                @click="edit(scope.row, scope.row.$index)"
148
+              >
149
+              </el-button>
150
+              <el-button
151
+                size="small"
152
+                type="danger"
153
+                icon="el-icon-delete"
154
+                @click="toDelete(scope.row, scope.row.$index)"
155
+              >
156
+              </el-button>
157
+            </template>
158
+          </el-table-column>
159
+        </el-table>
160
+        <div>充值金额合计:<span></span></div>
161
+      </div>
162
+
163
+      <el-dialog
164
+        title="申请退款"
165
+        :visible.sync="dialogVisible"
166
+        width="30%"
167
+        :show-close="close"
168
+      >
169
+        <refundAdd></refundAdd>
170
+        <span slot="footer" class="dialog-footer">
171
+          <el-button @click="pass">审核通过</el-button>
172
+          <el-button type="primary" @click="Submit">保 存</el-button>
173
+        </span>
174
+      </el-dialog>
175
+    </div>
176
+  </div>
177
+</template>
178
+<script>
179
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
180
+import refundAdd from "./Template/refundAdd.vue";
181
+export default {
182
+  components: {
183
+    BreadCrumb,
184
+    refundAdd,
185
+  },
186
+  data() {
187
+    return {
188
+      status: "",
189
+      value: "",
190
+      crumbs: [
191
+        { path: false, name: "押金管理" },
192
+        { path: "/DepositManagement/DepositSearch", name: "充值详情" },
193
+      ],
194
+      tableData: [{}, {}],
195
+      total: 0,
196
+      page: 1,
197
+      limit: 10,
198
+      keywords: "",
199
+      dialogVisible: false,
200
+      close: false,
201
+      date:""
202
+    };
203
+  },
204
+
205
+  methods: {
206
+    // 初始化数据
207
+    init() {},
208
+
209
+    // 查询操作
210
+    search() {},
211
+
212
+    // 新增
213
+    to_add() {
214
+      this.dialogVisible = true;
215
+    },
216
+
217
+    // 编辑
218
+    edit(){},
219
+
220
+    // 删除
221
+    toDelete(){},
222
+
223
+    // 审核通过
224
+    pass_exam() {},
225
+
226
+    // 审核拒绝
227
+    reject_exam() {},
228
+
229
+    // 提交
230
+    Submit() {},
231
+
232
+    // 退款申请审核
233
+    pass(){},
234
+
235
+    // 列表选择
236
+    handleSelectionChange(){}
237
+  },
238
+};
239
+</script>
240
+<style scoped>
241
+.Top {
242
+  width: 100%;
243
+  height: 40px;
244
+  display: flex;
245
+  justify-content: space-between;
246
+  align-items: center;
247
+  border-bottom: 1px solid #e5e5e5;
248
+  margin-bottom: 10px;
249
+}
250
+.btn_list {
251
+  display: flex;
252
+}
253
+</style>>
254
+

+ 127 - 0
src/xt_pages/DepositManagement/DepositSearch.vue Bestand weergeven

@@ -0,0 +1,127 @@
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
8
+        style="
9
+          justify-content: flex-start;
10
+          margin: 0px 0 12px 0;
11
+          display: flex;
12
+          align-items: center;
13
+        "
14
+      >
15
+        <div>
16
+          <el-input
17
+            size="small"
18
+            style="width: 200px; margin-left: 10px"
19
+            class="filter-item"
20
+            placeholder="请输入患者名称"
21
+            v-model.trim="keywords"
22
+          />
23
+          <el-button
24
+            size="small"
25
+            class="filter-item"
26
+            type="primary"
27
+            icon="el-icon-search"
28
+            @click="search"
29
+            >查询</el-button
30
+          >
31
+        </div>
32
+      </div>
33
+
34
+      <el-table
35
+        :header-cell-style="{
36
+          backgroundColor: 'rgb(245, 247, 250)',
37
+          color: '#606266',
38
+        }"
39
+        :data="tableData"
40
+        border
41
+      >
42
+        <el-table-column type="index" label="序号" align="center" width="200">
43
+        </el-table-column>
44
+        <el-table-column label="患者名称" align="center">
45
+          <template slot-scope="scope">
46
+            <span></span>
47
+          </template>
48
+        </el-table-column>
49
+        <el-table-column label="可用金额" align="center">
50
+          <template slot-scope="scope">
51
+            <span>{{ scope.row.drug_spec ? scope.row.drug_spec : "" }}</span>
52
+          </template>
53
+        </el-table-column>
54
+        <el-table-column label="操作" align="center" width="450px">
55
+          <template slot-scope="scope">
56
+            <el-button
57
+              size="small"
58
+              type="primary"
59
+              @click="toDetails(scope.row, scope.row.$index)"
60
+            >
61
+              流水详情
62
+            </el-button>
63
+          </template>
64
+        </el-table-column>
65
+      </el-table>
66
+
67
+      <el-pagination
68
+        @size-change="handleSizeChange"
69
+        @current-change="handleCurrentChange"
70
+        :page-sizes="[10, 50, 100, 200, 500, 1000]"
71
+        :page-size="10"
72
+        background
73
+        align="right"
74
+        style="margin-top: 20px"
75
+        layout="total, sizes, prev, pager, next, jumper"
76
+        :total="total"
77
+      >
78
+      </el-pagination>
79
+    </div>
80
+  </div>
81
+</template>
82
+<script>
83
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
84
+export default {
85
+  components: {
86
+    BreadCrumb,
87
+  },
88
+  data() {
89
+    return {
90
+      crumbs: [
91
+        { path: false, name: "押金管理" },
92
+        { path: "/DepositManagement/DepositSearch", name: "押金查询" },
93
+      ],
94
+      tableData: [{}, {}],
95
+      total: 0,
96
+      page: 1,
97
+      limit: 10,
98
+      keywords:''
99
+    };
100
+  },
101
+
102
+  methods: {
103
+    // 初始化数据
104
+    init() {},
105
+
106
+    // 查询操作
107
+    search() {},
108
+
109
+    // 页表操作
110
+    handleSizeChange(val) {
111
+      this.limit = val;
112
+      this.init();
113
+    },
114
+    handleCurrentChange(val) {
115
+      this.page = val;
116
+      this.init();
117
+    },
118
+
119
+    // 流水详情
120
+    toDetails() {
121
+      this.$router.push({ path: "/DepositManagement/DepositDetails" });
122
+    },
123
+  },
124
+};
125
+</script>
126
+<style>
127
+</style>

+ 109 - 0
src/xt_pages/DepositManagement/RechargeDetailsSummary.vue Bestand weergeven

@@ -0,0 +1,109 @@
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="width: 100%">
8
+        <el-tabs v-model="activeName" @tab-click="handleClick">
9
+          <el-tab-pane label="充值明细" name="first">
10
+            <RechangeDetails></RechangeDetails>
11
+          </el-tab-pane>
12
+          <el-tab-pane label="充值汇总" name="second">
13
+            <RechargeSummary></RechargeSummary>
14
+          </el-tab-pane>
15
+        </el-tabs>
16
+        <div
17
+          style="position: absolute; top: 80px; right: 40px"
18
+          v-if="activeName == 'first'"
19
+        >
20
+          <el-button size="small" type="primary" @click="Add()">
21
+            新增
22
+          </el-button>
23
+        </div>
24
+      </div>
25
+      <el-dialog
26
+        title="新增押金"
27
+        :visible.sync="dialogVisible"
28
+        width="30%"
29
+        :show-close="close"
30
+      >
31
+        <!-- <span>这是一段信息</span> -->
32
+        <RechangeAd></RechangeAd>
33
+        <span slot="footer" class="dialog-footer">
34
+          <el-button @click="pass">审核通过</el-button>
35
+          <el-button type="primary" @click="Submit">提 交</el-button>
36
+        </span>
37
+      </el-dialog>
38
+    </div>
39
+  </div>
40
+</template>
41
+<script>
42
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
43
+import RechangeDetails from "./Template/RechargeDetails.vue";
44
+import RechargeSummary from "./Template/RechargeSummary.vue";
45
+import RechangeAd from "./Template/add_page.vue";
46
+export default {
47
+  components: {
48
+    BreadCrumb,
49
+    RechangeDetails,
50
+    RechargeSummary,
51
+    RechangeAd,
52
+  },
53
+  data() {
54
+    return {
55
+      crumbs: [
56
+        { path: false, name: "押金管理" },
57
+        { path: "/DepositManagement/DepositSearch", name: "充值详情" },
58
+      ],
59
+      activeName: "first",
60
+      tableData: [{}, {}],
61
+      total: 0,
62
+      page: 1,
63
+      limit: 10,
64
+      keywords: "",
65
+      dialogVisible: false,
66
+      close: false,
67
+    };
68
+  },
69
+
70
+  methods: {
71
+    // 初始化数据
72
+    init() {},
73
+
74
+    // 查询操作
75
+    search() {},
76
+    // 切换明细
77
+    handleClick(tab, event) {
78
+      console.log(tab, event);
79
+    },
80
+    // 页表操作
81
+    handleSizeChange(val) {
82
+      this.limit = val;
83
+      this.init();
84
+    },
85
+    handleCurrentChange(val) {
86
+      this.page = val;
87
+      this.init();
88
+    },
89
+
90
+    // 流水详情
91
+    toDetails() {
92
+      this.$router.push({ path: "/DepositManagement/DepositDetails" });
93
+    },
94
+
95
+    // 新增
96
+    Add() {
97
+      this.dialogVisible = true;
98
+    },
99
+
100
+    // 审核通过
101
+    pass() {},
102
+
103
+    // 提交
104
+    Submit() {},
105
+  },
106
+};
107
+</script>
108
+<style>
109
+</style>

+ 137 - 0
src/xt_pages/DepositManagement/Template/DeductionDetails.vue Bestand weergeven

@@ -0,0 +1,137 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="app-container">
4
+      <div
5
+        style="
6
+          justify-content: flex-start;
7
+          margin: 0px 0 12px 0;
8
+          display: flex;
9
+          align-items: center;
10
+        "
11
+      >
12
+        <div style="display: flex">
13
+          <div style="width: 250px">
14
+            <el-input
15
+              size="small"
16
+              style="width: 200px; margin-left: 10px"
17
+              class="filter-item"
18
+              placeholder="请输入编号/患者名称"
19
+              v-model.trim="keywords"
20
+            />
21
+          </div>
22
+
23
+          <div style="width: 465px">
24
+            <span>日期查询:</span>
25
+            <el-date-picker
26
+              v-model="value1"
27
+              type="daterange"
28
+              range-separator="至"
29
+              start-placeholder="开始日期"
30
+              end-placeholder="结束日期"
31
+            >
32
+            </el-date-picker>
33
+          </div>
34
+          <el-button
35
+            size="small"
36
+            class="filter-item"
37
+            type="primary"
38
+            icon="el-icon-search"
39
+            @click="search"
40
+            >查询</el-button
41
+          >
42
+        </div>
43
+      </div>
44
+
45
+      <el-table
46
+        :header-cell-style="{
47
+          backgroundColor: 'rgb(245, 247, 250)',
48
+          color: '#606266',
49
+        }"
50
+        :data="tableData"
51
+        border
52
+      >
53
+        <el-table-column type="index" label="序号" align="center" width="100">
54
+        </el-table-column>
55
+        <el-table-column label="就诊号" align="center" width="300">
56
+          <template slot-scope="scope">
57
+            <span></span>
58
+          </template>
59
+        </el-table-column>
60
+        <el-table-column label="患者名称" align="center">
61
+          <template slot-scope="scope">
62
+            <span></span>
63
+          </template>
64
+        </el-table-column>
65
+
66
+        <el-table-column label="医收费类型" align="center">
67
+          <template slot-scope="scope">
68
+            <span></span>
69
+          </template>
70
+        </el-table-column>
71
+        <el-table-column label="医疗费总额" align="center">
72
+          <template slot-scope="scope">
73
+            <span></span>
74
+          </template>
75
+        </el-table-column>
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
+            <span></span>
84
+          </template>
85
+        </el-table-column>
86
+        <el-table-column label="操作" align="center" width="350px">
87
+          <template slot-scope="scope">
88
+            <el-button
89
+              size="small"
90
+              type="primary"
91
+              @click="Details(scope.row, scope.row.$index)"
92
+            >
93
+              查看详情
94
+            </el-button>
95
+          </template>
96
+        </el-table-column>
97
+      </el-table>
98
+
99
+      <div>押金支付金额合计:<span></span></div>
100
+    </div>
101
+  </div>
102
+</template>
103
+<script>
104
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
105
+export default {
106
+  components: {
107
+    BreadCrumb,
108
+  },
109
+  data() {
110
+    return {
111
+      crumbs: [
112
+        { path: false, name: "押金管理" },
113
+        { path: "/DepositManagement/DepositSearch", name: "押金查询" },
114
+      ],
115
+      tableData: [{}, {}],
116
+      total: 0,
117
+      page: 1,
118
+      limit: 10,
119
+      keywords: "",
120
+      value1: "",
121
+    };
122
+  },
123
+
124
+  methods: {
125
+    // 初始化数据
126
+    init() {},
127
+
128
+    // 查询操作
129
+    search() {},
130
+
131
+    // 查看详情
132
+    Details() {},
133
+  },
134
+};
135
+</script>
136
+<style>
137
+</style>

+ 118 - 0
src/xt_pages/DepositManagement/Template/DeductionSummary.vue Bestand weergeven

@@ -0,0 +1,118 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="app-container">
4
+      <div
5
+        style="
6
+          justify-content: flex-start;
7
+          margin: 0px 0 12px 0;
8
+          display: flex;
9
+          align-items: center;
10
+        "
11
+      >
12
+        <div style="display: flex">
13
+          <div style="width: 250px">
14
+            <el-input
15
+              size="small"
16
+              style="width: 200px; margin-left: 10px"
17
+              class="filter-item"
18
+              placeholder="请输入编号/患者名称"
19
+              v-model.trim="keywords"
20
+            />
21
+          </div>
22
+
23
+          <div style="width: 465px">
24
+            <span>日期查询:</span>
25
+            <el-date-picker
26
+              v-model="value1"
27
+              type="daterange"
28
+              range-separator="至"
29
+              start-placeholder="开始日期"
30
+              end-placeholder="结束日期"
31
+            >
32
+            </el-date-picker>
33
+          </div>
34
+          <el-button
35
+            size="small"
36
+            class="filter-item"
37
+            type="primary"
38
+            icon="el-icon-search"
39
+            @click="search"
40
+            >查询</el-button
41
+          >
42
+        </div>
43
+      </div>
44
+
45
+      <el-table
46
+        :header-cell-style="{
47
+          backgroundColor: 'rgb(245, 247, 250)',
48
+          color: '#606266',
49
+        }"
50
+        :data="tableData"
51
+        border
52
+      >
53
+        <el-table-column type="index" label="序号" align="center" width="200">
54
+        </el-table-column>
55
+
56
+        <el-table-column label="患者名称" align="center">
57
+          <template slot-scope="scope">
58
+            <span></span>
59
+          </template>
60
+        </el-table-column>
61
+
62
+        <el-table-column label="医疗费总额" align="center">
63
+          <template slot-scope="scope">
64
+            <span></span>
65
+          </template>
66
+        </el-table-column>
67
+        <el-table-column label="押金支付金额" align="center">
68
+          <template slot-scope="scope">
69
+            <span></span>
70
+          </template>
71
+        </el-table-column>
72
+      </el-table>
73
+
74
+      <div>押金支付金额合计:<span></span></div>
75
+    </div>
76
+  </div>
77
+</template>
78
+<script>
79
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
80
+export default {
81
+  components: {
82
+    BreadCrumb,
83
+  },
84
+  data() {
85
+    return {
86
+      crumbs: [
87
+        { path: false, name: "押金管理" },
88
+        { path: "/DepositManagement/DepositSearch", name: "押金查询" },
89
+      ],
90
+      tableData: [{}, {}],
91
+      total: 0,
92
+      page: 1,
93
+      limit: 10,
94
+      keywords: "",
95
+      value1: "",
96
+    };
97
+  },
98
+
99
+  methods: {
100
+    // 初始化数据
101
+    init() {},
102
+
103
+    // 查询操作
104
+    search() {},
105
+
106
+    // 删除
107
+    toDelete() {},
108
+
109
+    // 审核
110
+    examine() {},
111
+
112
+    // 打印凭证
113
+    print() {},
114
+  },
115
+};
116
+</script>
117
+<style>
118
+</style>

+ 130 - 0
src/xt_pages/DepositManagement/Template/DepositDetails.vue Bestand weergeven

@@ -0,0 +1,130 @@
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
8
+        style="
9
+          justify-content: flex-start;
10
+          margin: 0px 0 12px 0;
11
+          display: flex;
12
+          align-items: center;
13
+        "
14
+      >
15
+        <div style="width: 200px">
16
+          <span>患者名称:</span>
17
+        </div>
18
+        <div style="width: 200px">
19
+          <span>可用金额:</span>
20
+        </div>
21
+      </div>
22
+      <div
23
+        style="
24
+          justify-content: flex-start;
25
+          margin: 0px 0 12px 0;
26
+          display: flex;
27
+          align-items: center;
28
+        "
29
+      >
30
+        <div style="width: 550px">
31
+          <span>日期查询:</span>
32
+          <el-date-picker
33
+            v-model="value1"
34
+            type="daterange"
35
+            range-separator="至"
36
+            start-placeholder="开始日期"
37
+            end-placeholder="结束日期"
38
+          >
39
+          </el-date-picker>
40
+        </div>
41
+        <div style="width: 300px">
42
+          <span>押金类型:</span>
43
+          <el-select v-model="value" placeholder="请选择">
44
+            <el-option
45
+              v-for="item in [1,2]"
46
+              :key="item"
47
+              :label="item"
48
+              :value="item"
49
+            >
50
+            </el-option>
51
+          </el-select>
52
+        </div>
53
+      </div>
54
+
55
+      <el-table
56
+        :header-cell-style="{
57
+          backgroundColor: 'rgb(245, 247, 250)',
58
+          color: '#606266',
59
+        }"
60
+        :data="tableData"
61
+        border
62
+      >
63
+        <el-table-column type="index" label="序号" align="center" width="100">
64
+        </el-table-column>
65
+        <el-table-column label="押金类型" align="center">
66
+          <template slot-scope="scope">
67
+            <span></span>
68
+          </template>
69
+        </el-table-column>
70
+        <el-table-column label="充值/扣费单据编码" align="center">
71
+          <template slot-scope="scope">
72
+            <span></span>
73
+          </template>
74
+        </el-table-column>
75
+        <el-table-column label="充值金额" align="center">
76
+          <template slot-scope="scope">
77
+            <span></span>
78
+          </template>
79
+        </el-table-column>
80
+        <el-table-column label="扣费金额" align="center">
81
+          <template slot-scope="scope">
82
+            <span></span>
83
+          </template>
84
+        </el-table-column>
85
+        <el-table-column label="可用金额" align="center">
86
+          <template slot-scope="scope">
87
+            <span></span>
88
+          </template>
89
+        </el-table-column>
90
+       
91
+      </el-table>
92
+
93
+    </div>
94
+  </div>
95
+</template>
96
+<script>
97
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
98
+export default {
99
+  components: {
100
+    BreadCrumb,
101
+  },
102
+  data() {
103
+    return {
104
+      crumbs: [
105
+        { path: false, name: "押金管理" },
106
+        { path: "/DepositManagement/DepositSearch", name: "流水详情" },
107
+      ],
108
+      tableData: [{}, {}],
109
+      total: 0,
110
+      page: 1,
111
+      limit: 10,
112
+      keywords: "",
113
+      value1:""
114
+    };
115
+  },
116
+
117
+  methods: {
118
+    // 初始化数据
119
+    init() {},
120
+
121
+    // 查询操作
122
+    search() {},
123
+  },
124
+};
125
+</script>
126
+<style scoped>
127
+/deep/ .el-range-separator {
128
+  width: 10%;
129
+}
130
+</style>

+ 166 - 0
src/xt_pages/DepositManagement/Template/RechargeDetails.vue Bestand weergeven

@@ -0,0 +1,166 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="app-container">
4
+      <div
5
+        style="
6
+          justify-content: flex-start;
7
+          margin: 0px 0 12px 0;
8
+          display: flex;
9
+          align-items: center;
10
+        "
11
+      >
12
+        <div style="display: flex">
13
+          <div style="width: 250px">
14
+            <el-input
15
+              size="small"
16
+              style="width: 200px; margin-left: 10px"
17
+              class="filter-item"
18
+              placeholder="请输入编号/患者名称"
19
+              v-model.trim="keywords"
20
+            />
21
+          </div>
22
+
23
+          <div style="width: 465px">
24
+            <span>日期查询:</span>
25
+            <el-date-picker
26
+              v-model="value1"
27
+              type="daterange"
28
+              range-separator="至"
29
+              start-placeholder="开始日期"
30
+              end-placeholder="结束日期"
31
+            >
32
+            </el-date-picker>
33
+          </div>
34
+          <el-button
35
+            size="small"
36
+            class="filter-item"
37
+            type="primary"
38
+            icon="el-icon-search"
39
+            @click="search"
40
+            >查询</el-button
41
+          >
42
+        </div>
43
+      </div>
44
+
45
+      <el-table
46
+        :header-cell-style="{
47
+          backgroundColor: 'rgb(245, 247, 250)',
48
+          color: '#606266',
49
+        }"
50
+        :data="tableData"
51
+        border
52
+      >
53
+        <el-table-column type="index" label="序号" align="center" width="200">
54
+        </el-table-column>
55
+        <el-table-column label="单据编号" align="center">
56
+          <template slot-scope="scope">
57
+            <span></span>
58
+          </template>
59
+        </el-table-column>
60
+        <el-table-column label="患者名称" align="center">
61
+          <template slot-scope="scope">
62
+            <span></span>
63
+          </template>
64
+        </el-table-column>
65
+
66
+        <el-table-column label="充值金额" align="center">
67
+          <template slot-scope="scope">
68
+            <span></span>
69
+          </template>
70
+        </el-table-column>
71
+        <el-table-column label="审核状态" align="center">
72
+          <template slot-scope="scope">
73
+            <span></span>
74
+          </template>
75
+        </el-table-column>
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
+            <span></span>
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" width="350px">
92
+          <template slot-scope="scope">
93
+            <el-button
94
+              size="small"
95
+              type="primary"
96
+              @click="examine(scope.row, scope.row.$index)"
97
+            >
98
+              审核
99
+            </el-button>
100
+            <el-button
101
+              size="small"
102
+              type="primary"
103
+              @click="print(scope.row, scope.row.$index)"
104
+            >
105
+              打印凭证
106
+            </el-button>
107
+            <el-button
108
+              size="small"
109
+              type="danger"
110
+              @click="toDelete(scope.row, scope.row.$index)"
111
+            >
112
+              删除
113
+            </el-button>
114
+          </template>
115
+        </el-table-column>
116
+      </el-table>
117
+
118
+      <div>
119
+          充值金额合计:<span></span>
120
+      </div>
121
+    </div>
122
+  </div>
123
+</template>
124
+<script>
125
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
126
+export default {
127
+  components: {
128
+    BreadCrumb,
129
+  },
130
+  data() {
131
+    return {
132
+      crumbs: [
133
+        { path: false, name: "押金管理" },
134
+        { path: "/DepositManagement/DepositSearch", name: "押金查询" },
135
+      ],
136
+      tableData: [{}, {}],
137
+      total: 0,
138
+      page: 1,
139
+      limit: 10,
140
+      keywords: "",
141
+      value1:""
142
+    };
143
+  },
144
+
145
+  methods: {
146
+    // 初始化数据
147
+    init() {},
148
+
149
+    // 查询操作
150
+    search() {},
151
+
152
+    // 删除
153
+    toDelete() {},
154
+
155
+    // 审核
156
+    examine() {},
157
+
158
+    // 打印凭证
159
+    print(){
160
+      this.$router.push({path:"/DepositManagement/printindex"})
161
+    }
162
+  },
163
+};
164
+</script>
165
+<style>
166
+</style>

+ 121 - 0
src/xt_pages/DepositManagement/Template/RechargeSummary.vue Bestand weergeven

@@ -0,0 +1,121 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="app-container">
4
+      <div
5
+        style="
6
+          justify-content: flex-start;
7
+          margin: 0px 0 12px 0;
8
+          display: flex;
9
+          align-items: center;
10
+        "
11
+      >
12
+        <div style="display: flex">
13
+          <div style="width: 250px">
14
+            <el-input
15
+              size="small"
16
+              style="width: 200px; margin-left: 10px"
17
+              class="filter-item"
18
+              placeholder="请输入编号/患者名称"
19
+              v-model.trim="keywords"
20
+            />
21
+          </div>
22
+
23
+          <div style="width: 465px">
24
+            <span>日期查询:</span>
25
+            <el-date-picker
26
+              v-model="value1"
27
+              type="daterange"
28
+              range-separator="至"
29
+              start-placeholder="开始日期"
30
+              end-placeholder="结束日期"
31
+            >
32
+            </el-date-picker>
33
+          </div>
34
+          <el-button
35
+            size="small"
36
+            class="filter-item"
37
+            type="primary"
38
+            icon="el-icon-search"
39
+            @click="search"
40
+            >查询</el-button
41
+          >
42
+        </div>
43
+      </div>
44
+
45
+      <el-table
46
+        :header-cell-style="{
47
+          backgroundColor: 'rgb(245, 247, 250)',
48
+          color: '#606266',
49
+        }"
50
+        :data="tableData"
51
+        border
52
+      >
53
+        <el-table-column type="index" label="序号" align="center" width="200">
54
+        </el-table-column>
55
+        
56
+        <el-table-column label="患者名称" align="center">
57
+          <template slot-scope="scope">
58
+            <span></span>
59
+          </template>
60
+        </el-table-column>
61
+
62
+        <el-table-column label="充值金额" align="center">
63
+          <template slot-scope="scope">
64
+            <span></span>
65
+          </template>
66
+        </el-table-column>
67
+        <el-table-column label="押金余额" align="center">
68
+          <template slot-scope="scope">
69
+            <span></span>
70
+          </template>
71
+        </el-table-column>
72
+        
73
+      </el-table>
74
+
75
+      <div>
76
+          充值金额合计:<span></span>
77
+      </div>
78
+    </div>
79
+  </div>
80
+</template>
81
+<script>
82
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
83
+export default {
84
+  components: {
85
+    BreadCrumb,
86
+  },
87
+  data() {
88
+    return {
89
+      crumbs: [
90
+        { path: false, name: "押金管理" },
91
+        { path: "/DepositManagement/DepositSearch", name: "押金查询" },
92
+      ],
93
+      tableData: [{}, {}],
94
+      total: 0,
95
+      page: 1,
96
+      limit: 10,
97
+      keywords: "",
98
+      value1:""
99
+    };
100
+  },
101
+
102
+  methods: {
103
+    // 初始化数据
104
+    init() {},
105
+
106
+    // 查询操作
107
+    search() {},
108
+
109
+    // 删除
110
+    toDelete() {},
111
+
112
+    // 审核
113
+    examine() {},
114
+
115
+    // 打印凭证
116
+    print(){}
117
+  },
118
+};
119
+</script>
120
+<style>
121
+</style>

+ 42 - 0
src/xt_pages/DepositManagement/Template/add_page.vue Bestand weergeven

@@ -0,0 +1,42 @@
1
+<template>
2
+  <div>
3
+    <el-form ref="form" :model="form" label-width="80px">
4
+      <el-form-item label="押金编号">
5
+        <span>{{form.id}}</span>
6
+      </el-form-item>
7
+      <el-form-item label="患者名称">
8
+        <el-input v-model="form.patient_name"></el-input>
9
+      </el-form-item>
10
+      <el-form-item label="押金金额">
11
+        <el-input v-model="form.money"></el-input>
12
+      </el-form-item>
13
+      <el-form-item label="备注">
14
+        <el-input type="textarea" v-model="form.remarks"></el-input>
15
+      </el-form-item>
16
+    </el-form>
17
+  </div>
18
+</template>
19
+<script>
20
+export default {
21
+  data() {
22
+    return {
23
+      form: {
24
+        remarks:"",
25
+        id:"HSG47565",
26
+        patient_name:"",
27
+        money:0
28
+      },
29
+    };
30
+  },
31
+};
32
+</script>
33
+
34
+<style scoped>
35
+.el-input{
36
+    width: 50%;
37
+}
38
+
39
+.el-textarea{
40
+    width: 65%;
41
+}
42
+</style>

+ 42 - 0
src/xt_pages/DepositManagement/Template/refundAdd.vue Bestand weergeven

@@ -0,0 +1,42 @@
1
+<template>
2
+  <div>
3
+    <el-form ref="form" :model="form" label-width="80px">
4
+      <el-form-item label="申请编号">
5
+        <span>{{form.id}}</span>
6
+      </el-form-item>
7
+      <el-form-item label="患者名称">
8
+        <el-input v-model="form.patient_name"></el-input>
9
+      </el-form-item>
10
+      <el-form-item label="押金余额">
11
+        <span>{{form.id}}</span>
12
+      </el-form-item>
13
+     <el-form-item label="退款金额">
14
+        <el-input v-model="form.patient_name"></el-input>元
15
+      </el-form-item>
16
+    </el-form>
17
+  </div>
18
+</template>
19
+<script>
20
+export default {
21
+  data() {
22
+    return {
23
+      form: {
24
+        remarks:"",
25
+        id:"HSG47565",
26
+        patient_name:"",
27
+        money:0
28
+      },
29
+    };
30
+  },
31
+};
32
+</script>
33
+
34
+<style scoped>
35
+.el-input{
36
+    width: 50%;
37
+}
38
+
39
+.el-textarea{
40
+    width: 65%;
41
+}
42
+</style>

+ 102 - 0
src/xt_pages/DepositManagement/print/printindex.vue Bestand weergeven

@@ -0,0 +1,102 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+    </div>
6
+
7
+    <div class="app-container">
8
+      <div class="btn">
9
+        <el-button type="primary" @click="to_print">打印</el-button>
10
+      </div>
11
+      <div id="dialysis-print-box">
12
+        <div class="dialysis-print-order">
13
+          <div class="print">
14
+            <h2>收据凭证</h2>
15
+            <p>收款日期: 2022年4月27日</p>
16
+            <div class="content">
17
+              <div style="display: flex; padding: 0 30px">
18
+                <div style="display: flex">
19
+                  <div>收款单位:</div>
20
+                  <div
21
+                    style="min-width: 224px; border-bottom: 1px solid #000"
22
+                  ></div>
23
+                </div>
24
+                <div style="display: flex">
25
+                  <div>收款方式:</div>
26
+                  <div
27
+                    style="min-width: 224px; border-bottom: 1px solid #000"
28
+                  ></div>
29
+                </div>
30
+              </div>
31
+              <div style="display: flex; padding: 0 30px">
32
+                <div>人民币:</div>
33
+                ¥
34
+                <div
35
+                  style="min-width: 225px; border-bottom: 1px solid #000"
36
+                ></div>
37
+              </div>
38
+              <div style="display: flex; padding: 0 30px">
39
+                <div>收款是由:</div>
40
+                <div style="width: 86%; border-bottom: 1px solid #000"></div>
41
+              </div>
42
+            </div>
43
+          </div>
44
+        </div>
45
+      </div>
46
+    </div>
47
+  </div>
48
+</template>
49
+<script>
50
+import BreadCrumb from "@/xt_pages/components/bread-crumb";
51
+export default {
52
+  components: {
53
+    BreadCrumb,
54
+  },
55
+  data() {
56
+    return {
57
+      crumbs: [
58
+        { path: false, name: "押金管理" },
59
+        { path: "/DepositManagement/DepositSearch", name: "打印凭证" },
60
+      ],
61
+    };
62
+  },
63
+  methods: {
64
+    to_print() {
65
+      const style =
66
+        '@media print {.dialysis-print-order{width:960px;margin:0 auto} .print h2{text-align: center;} .print p{width: 85%;text-align: right;} .content{width: 70%;height: 250px;border: 1px solid #000;margin: 20px auto;display: flex;flex-direction: column;justify-content: space-evenly;}';
67
+      printJS({
68
+        printable: "dialysis-print-box",
69
+        type: "html",
70
+        style: style,
71
+        scanStyles: false,
72
+      });
73
+    },
74
+  },
75
+};
76
+</script>
77
+
78
+<style scoped>
79
+.btn {
80
+  position: absolute;
81
+  top: 60px;
82
+  right: 40px;
83
+}
84
+
85
+.print h2 {
86
+  text-align: center;
87
+}
88
+
89
+.print p {
90
+  width: 85%;
91
+  text-align: right;
92
+}
93
+.content {
94
+  width: 70%;
95
+  height: 250px;
96
+  border: 1px solid #000;
97
+  margin: 20px auto;
98
+  display: flex;
99
+  flex-direction: column;
100
+  justify-content: space-evenly;
101
+}
102
+</style>

+ 17 - 0
src/xt_pages/dialysis/PatientBox.vue Bestand weergeven

@@ -41,6 +41,10 @@
41 41
               <span :class="stateColor(schedule)">{{ stateText(schedule) }}</span>
42 42
             </span>
43 43
           </div>
44
+
45
+          <div class="difficult">
46
+            疑难内瘘
47
+          </div>
44 48
         </div>
45 49
         </div>
46 50
         <div>
@@ -824,4 +828,17 @@ export default {
824 828
 #modePurple{
825 829
   color: #53b86e;
826 830
 }
831
+
832
+.difficult{
833
+  width: 100px;
834
+  height: 40px;
835
+  border-radius: 0 0 0 30px;
836
+  background: #78d660;
837
+  text-align: center;
838
+  line-height: 40px;
839
+  position: relative;
840
+  bottom: 64px;
841
+  left: 179px;
842
+  color: white;
843
+}
827 844
 </style>

+ 2 - 0
src/xt_pages/dialysis/schedualPatient.vue Bestand weergeven

@@ -79,6 +79,7 @@
79 79
       <el-input size="small" style="width: 180px;" @keyup.enter.native='searchAction' v-model.trim="search_input" class="filter-item"/>
80 80
       <el-button size="small" class="filter-item" type="primary" icon="el-icon-search" @click="searchAction">搜索</el-button>
81 81
     </div>
82
+
82 83
     <div style="display:flex;justify-content: space-between;">
83 84
       <div :class="queueConfig.txglsyxs != 1 ? 'PatientArea' : 'PatientArea smallWidth'">
84 85
         <div v-for="zone_schedule in allPatient" :key="zone_schedule.zone_id" class="list clearfix">
@@ -86,6 +87,7 @@
86 87
           <div v-if="zone_schedule.schedules.length > 0 && patientStateVal != 1" style="font-size:16px;font-weight: bold;color: #34495e;margin-right:10px;line-height:30px;">{{zone_schedule.zone_name}}</div>
87 88
           <patient-box :schedules="zone_schedule.schedules" :patientStateVal='patientStateVal' style="flex:1"></patient-box>
88 89
         </div>
90
+        
89 91
         <div class="NoData" v-show="filtedSchedules.length == 0">
90 92
           <img src="@/assets/img/data.jpg" alt="">
91 93
         </div>

+ 1 - 1
src/xt_pages/hospitalStation/invoicePrint.vue Bestand weergeven

@@ -14,7 +14,7 @@
14 14
     <div class="app-container" style="padding-top:40px;">
15 15
         <div class='dialysisPage'>
16 16
             <printOne v-if="org_id != 10215 && org_id != 10265 && org_id !=0" :paramsObj="invoiceParams"></printOne>
17
-            <printTwo v-if="org_id == 10215  " :paramsObj="invoiceParams"></printTwo>
17
+            <printTwo v-if="org_id == 10215  || org_id == 0 " :paramsObj="invoiceParams"></printTwo>
18 18
             <printThree v-if="org_id == 10265" :paramsObj="invoiceParams"></printThree>
19 19
         </div>
20 20
     </div>

+ 28 - 10
src/xt_pages/hospitalStation/invoiceTemplate/printTwo.vue Bestand weergeven

@@ -6,14 +6,14 @@
6 6
         </div>
7 7
         <div style="display:flex;justify-content: space-between;">
8 8
             <!-- <div>{{ list.department_name }}</div> -->
9
-            <div  style="position: absolute;top:50px;left:260px">{{ list.his_hospital_record.id_card_no?list.order.certno:''}}</div>
9
+            <div  style="position: absolute;top:50px;left:260px">{{id_card_no?id_card_no:list.order.certno}}</div>
10 10
             <div></div>
11 11
         </div>
12 12
         <div style="display:flex;justify-content: space-between;">
13 13
             <!-- <div>{{ list.department_name }}</div> -->
14 14
             <div  style="position: absolute;top:70px;left:90px">门诊</div>
15 15
             <div></div>
16
-            <div  style="position: absolute;top:70px;left:240px">{{ list.his_hospital_record.number?list.order.mdtrt_id:''}}</div>
16
+            <div  style="position: absolute;top:70px;left:240px">{{ number?number:list.order.mdtrt_id}}</div>
17 17
             <div  style="position: absolute;left:470px;top:70px;">
18 18
                 <span>{{  paramsObj.setl_time ? paramsObj.setl_time.split(' ')[0].slice(0,4) : getTime(list.date, '{y}-{m}-{d}').slice(0,4) }}</span>
19 19
             </div>
@@ -33,10 +33,11 @@
33 33
         </div>
34 34
         <div style="display:flex;justify-content: space-between;">
35 35
             <!-- <div>{{ paramsObj.gend == 1 ? '男' : '女' }}</div> -->
36
-            <div v-if="paramsObj.gend == 1" style="position: absolute;top:110px;left:100px;">√</div>
36
+            <div v-if=" gend == 1" style="position: absolute;top:110px;left:100px;">√</div>
37 37
             <div v-else style="position: absolute;top:110px;left:140px;">√</div>
38
-            <div style="position: absolute;top:110px;left:260px;">{{ list.his_hospital_record.number.length <= 13 ? (totalPrice - list.order.psn_cash_pay).toFixed(2) : '0.00' }}</div>
39
-            <div style="position: absolute;top:110px;left:420px;">{{ list.his_hospital_record.number.length <= 13 ? list.order.psn_cash_pay.toFixed(2) : (totalPrice - list.psn_cash_money).toFixed(2) }}</div>
38
+
39
+            <div style="position: absolute;top:110px;left:260px;">{{ number.length <= 13 ? (totalPrice - list.order.psn_cash_pay).toFixed(2) : '0.00' }}</div>
40
+            <div style="position: absolute;top:110px;left:420px;">{{ number.length <= 13 ? list.order.psn_cash_pay.toFixed(2) : (totalPrice - list.psn_cash_money).toFixed(2) }}</div>
40 41
             <div style="position: absolute;top:110px;left:540px;">现金</div>
41 42
         </div>
42 43
         <div style="display:flex;justify-content: space-between;">
@@ -73,8 +74,10 @@
73 74
             <div style="position: absolute;top:210px;left:50px"></div>
74 75
             <div style="position: absolute;top:210px;left:130px"></div>
75 76
             <div style="position: absolute;top:210px;left:180px"></div>
76
-            <div style="position: absolute;top:210px;left:260px">{{ list.psn_cash_money ? list.psn_cash_money.toFixed(2) : '' }}</div>
77
-            <div style="position: absolute;top:210px;left:340px"></div>
77
+            <div style="position: absolute;top:210px;left:260px" v-if="balance_accounts_type != 2">{{ list.psn_cash_money ? list.psn_cash_money.toFixed(2) : '' }}</div>
78
+          <div style="position: absolute;top:210px;left:260px" v-else>{{ list.order.medfee_sumamt ? list.order.medfee_sumamt : '' }}</div>
79
+
80
+          <div style="position: absolute;top:210px;left:340px"></div>
78 81
             <div style="position: absolute;top:210px;left:420px"></div>
79 82
             <div style="position: absolute;top:210px;left:480px"></div>
80 83
             <div style="position: absolute;top:210px;left:540px"></div>
@@ -157,7 +160,12 @@ export default {
157 160
             org_id:'',
158 161
             org_name:'',
159 162
             in_hosptial_time:'',
160
-            out_hosptial_time:''
163
+            out_hosptial_time:'',
164
+            id_card_no:'',
165
+           number:'',
166
+          balance_accounts_type:"",
167
+          gend:"",
168
+
161 169
         }
162 170
     },
163 171
     created(){
@@ -188,8 +196,18 @@ export default {
188 196
                 var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
189 197
                 var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
190 198
                 this.printDate = data.getFullYear() + "-" + month + "-" + date;
191
-                this.in_hosptial_time = this.list.his_hospital_record.in_hosptial_time.split(' ')[0]
192
-                this.out_hosptial_time = this.list.his_hospital_record.out_hosptial_time.split(' ')[0]
199
+                if(this.list.his.id > 0){
200
+                  this.in_hosptial_time = this.getTime()
201
+                  this.out_hosptial_time = this.list.order.setl_time.split(' ')[0]
202
+                }else{
203
+                  this.in_hosptial_time = this.list.his_hospital_record.in_hosptial_time.split(' ')[0]
204
+                  this.out_hosptial_time = this.list.his_hospital_record.out_hosptial_time.split(' ')[0]
205
+                }
206
+
207
+              this.id_card_no = this.list.his_hospital_record.id_card_no
208
+              this.number = this.list.his_hospital_record.number
209
+              this.balance_accounts_type = this.list.his_hospital_record.balance_accounts_type
210
+              this.gend= this.list.his_hospital_record.gend
193 211
             })
194 212
         },
195 213
         smalltoBIG(n) {

+ 8 - 8
src/xt_pages/hospitalStation/statementTemplate/printOne.vue Bestand weergeven

@@ -365,14 +365,14 @@
365 365
         let yy = new Date().getFullYear();
366 366
         let mm = new Date().getMonth() + 1;
367 367
         let dd = new Date().getDate();
368
-        let hh = new Date().getHours();
369
-        let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
370
-          :
371
-          new Date().getMinutes();
372
-        let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
373
-          :
374
-          new Date().getSeconds();
375
-        dateTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss;
368
+        // let hh = new Date().getHours();
369
+        // let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
370
+        //   :
371
+        //   new Date().getMinutes();
372
+        // let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
373
+        //   :
374
+        //   new Date().getSeconds();
375
+        dateTime = yy + '-' + mm + '-' + dd
376 376
         return dateTime
377 377
       },
378 378
 

+ 223 - 65
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue Bestand weergeven

@@ -46,7 +46,7 @@
46 46
           </el-button>
47 47
         </div>
48 48
         <div>
49
-          <el-table  :data="patientTableData" :height="tableHeight" border style="width: 100%;"
49
+          <el-table :data="patientTableData" :height="tableHeight" border style="width: 100%;"
50 50
                     :row-style="{ color: '#303133' }"
51 51
 
52 52
                     :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"
@@ -61,20 +61,20 @@
61 61
             </el-table-column>
62 62
           </el-table>
63 63
 
64
-<!--          <el-table v-else :data="monthChargePatientTableData" :height="tableHeight" border style="width: 100%;"-->
65
-<!--                    :row-style="{ color: '#303133' }"-->
66
-
67
-<!--                    :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"-->
68
-<!--                    highlight-current-row ref="tab"-->
69
-<!--                    @current-change="handleCurrentChange">-->
70
-<!--            <el-table-column align="center" prop="name" label="姓名" wdith='89'>-->
71
-<!--              <template slot-scope="scope">{{ scope.row.name }}</template>-->
72
-<!--            </el-table-column>-->
73
-<!--            <el-table-column align="center" prop="name" label="就诊号" width="110">-->
74
-<!--              <template slot-scope="scope">{{ scope.row.number ? scope.row.number : '' }}-->
75
-<!--              </template>-->
76
-<!--            </el-table-column>-->
77
-<!--          </el-table>-->
64
+          <!--          <el-table v-else :data="monthChargePatientTableData" :height="tableHeight" border style="width: 100%;"-->
65
+          <!--                    :row-style="{ color: '#303133' }"-->
66
+
67
+          <!--                    :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}"-->
68
+          <!--                    highlight-current-row ref="tab"-->
69
+          <!--                    @current-change="handleCurrentChange">-->
70
+          <!--            <el-table-column align="center" prop="name" label="姓名" wdith='89'>-->
71
+          <!--              <template slot-scope="scope">{{ scope.row.name }}</template>-->
72
+          <!--            </el-table-column>-->
73
+          <!--            <el-table-column align="center" prop="name" label="就诊号" width="110">-->
74
+          <!--              <template slot-scope="scope">{{ scope.row.number ? scope.row.number : '' }}-->
75
+          <!--              </template>-->
76
+          <!--            </el-table-column>-->
77
+          <!--          </el-table>-->
78 78
 
79 79
         </div>
80 80
       </div>
@@ -85,6 +85,22 @@
85 85
 
86 86
 
87 87
           <div>
88
+<!--            <el-button size="small"-->
89
+<!--                       @click="openZb(1)"-->
90
+<!--                       type="primary">登记-->
91
+<!--            </el-button>-->
92
+
93
+<!--            <el-button  size="small"-->
94
+<!--                       @click="openZb(2)"-->
95
+<!--                       type="primary">记账-->
96
+<!--            </el-button>-->
97
+
98
+<!--            <el-button   size="small"-->
99
+<!--                       @click="openZb(3)"-->
100
+<!--                       type="primary">撤销记账-->
101
+<!--            </el-button>-->
102
+
103
+
88 104
             <el-button v-loading="loadingone" size="small"
89 105
                        @click="open(6)"
90 106
                        type="primary">挂号
@@ -381,10 +397,10 @@
381 397
                               </el-button>
382 398
 
383 399
                               <el-button
384
-                                         v-if="(hisPatientInfo.id > 0 && items.curMonthPrescriptions.order.id == 0) || items.curMonthPrescriptions.order.order_status == 1 ||  items.curMonthPrescriptions.order.order_status == 3"
385
-                                         size="small"
386
-                                         @click="open(4,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions)"
387
-                                         type="primary">收费
400
+                                  v-if="(hisPatientInfo.id > 0 && items.curMonthPrescriptions.order.id == 0) || items.curMonthPrescriptions.order.order_status == 1 ||  items.curMonthPrescriptions.order.order_status == 3"
401
+                                  size="small"
402
+                                  @click="open(4,items.med_type,items.curMonthPrescriptions.order,items.month_prescriptions)"
403
+                                  type="primary">收费
388 404
                               </el-button>
389 405
                             </div>
390 406
                           </div>
@@ -575,32 +591,32 @@
575 591
                                 type="primary"
576 592
                             >修改医疗类型
577 593
                             </el-button>
578
-<!--                            <div style="margin-bottom:10px;float: right">-->
579
-<!--                              <div>-->
580
-<!--                                <el-button-->
581
-<!--                                    v-if="(hisPatientInfo.id > 0 &&  items.prescriptions[0].order.id == 0)"-->
582
-<!--                                    size="small"-->
583
-<!--                                    @click="open(8,items.med_type,items.prescriptions[0].order,items.prescriptions)"-->
584
-<!--                                    type="primary"-->
585
-<!--                                >预结算-->
586
-<!--                                </el-button>-->
587
-<!--                                <el-button-->
588
-<!--                                    v-if="items.curPrescriptions.order.order_status == 1 && hisPatientInfo.balance_accounts_type != 2"-->
589
-<!--                                    size="small"-->
590
-<!--                                    @click="open(11,items.med_type,items.prescriptions[0].order,items.prescriptions)"-->
591
-<!--                                    type="primary"-->
592
-<!--                                >撤销明细-->
593
-<!--                                </el-button>-->
594
-
595
-
596
-<!--                                <el-button v-loading="loadingtwo"-->
597
-<!--                                           v-if="(hisPatientInfo.id > 0 && items.curPrescriptions.order.id == 0) || items.curPrescriptions.order.order_status == 1 ||  items.curPrescriptions.order.order_status == 3"-->
598
-<!--                                           size="small"-->
599
-<!--                                           @click="open(4,items.med_type,items.curPrescriptions.order,items.prescriptions)"-->
600
-<!--                                           type="primary">收费-->
601
-<!--                                </el-button>-->
602
-<!--                              </div>-->
603
-<!--                            </div>-->
594
+                            <!--                            <div style="margin-bottom:10px;float: right">-->
595
+                            <!--                              <div>-->
596
+                            <!--                                <el-button-->
597
+                            <!--                                    v-if="(hisPatientInfo.id > 0 &&  items.prescriptions[0].order.id == 0)"-->
598
+                            <!--                                    size="small"-->
599
+                            <!--                                    @click="open(8,items.med_type,items.prescriptions[0].order,items.prescriptions)"-->
600
+                            <!--                                    type="primary"-->
601
+                            <!--                                >预结算-->
602
+                            <!--                                </el-button>-->
603
+                            <!--                                <el-button-->
604
+                            <!--                                    v-if="items.curPrescriptions.order.order_status == 1 && hisPatientInfo.balance_accounts_type != 2"-->
605
+                            <!--                                    size="small"-->
606
+                            <!--                                    @click="open(11,items.med_type,items.prescriptions[0].order,items.prescriptions)"-->
607
+                            <!--                                    type="primary"-->
608
+                            <!--                                >撤销明细-->
609
+                            <!--                                </el-button>-->
610
+
611
+
612
+                            <!--                                <el-button v-loading="loadingtwo"-->
613
+                            <!--                                           v-if="(hisPatientInfo.id > 0 && items.curPrescriptions.order.id == 0) || items.curPrescriptions.order.order_status == 1 ||  items.curPrescriptions.order.order_status == 3"-->
614
+                            <!--                                           size="small"-->
615
+                            <!--                                           @click="open(4,items.med_type,items.curPrescriptions.order,items.prescriptions)"-->
616
+                            <!--                                           type="primary">收费-->
617
+                            <!--                                </el-button>-->
618
+                            <!--                              </div>-->
619
+                            <!--                            </div>-->
604 620
                           </el-tab-pane>
605 621
 
606 622
 
@@ -746,7 +762,8 @@
746 762
         width="30%"
747 763
     >
748 764
       <span>是否修改医疗类型</span>
749
-      <el-select v-if="this.$store.getters.xt_user.org_id == 10188 || this.$store.getters.xt_user.org_id == 10217" style="width:50%;" v-model="temp_med_type"
765
+      <el-select v-if="this.$store.getters.xt_user.org_id == 10188 || this.$store.getters.xt_user.org_id == 10217"
766
+                 style="width:50%;" v-model="temp_med_type"
750 767
                  placeholder="医疗类型" @change="changevalue">
751 768
         <el-option
752 769
             v-for="(item,index) in registerThree"
@@ -756,7 +773,8 @@
756 773
         </el-option>
757 774
       </el-select>
758 775
 
759
-      <el-select v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217" style="width:50%;" v-model="temp_med_type"
776
+      <el-select v-if="this.$store.getters.xt_user.org_id != 10188 && this.$store.getters.xt_user.org_id != 10217"
777
+                 style="width:50%;" v-model="temp_med_type"
760 778
                  placeholder="医疗类型" @change="changevalue">
761 779
         <el-option
762 780
             v-for="(item,index) in register"
@@ -855,8 +873,7 @@ import {
855 873
   Refund,
856 874
   refundNumber,
857 875
   register,
858
-  upload,
859
-
876
+  upload
860 877
 } from '@/api/his/his'
861 878
 import RegisterDialog from './components/registerDialog'
862 879
 import treatPrint from './treatPrint'
@@ -890,9 +907,9 @@ export default {
890 907
   },
891 908
   data() {
892 909
     return {
893
-      monthChargePatientTableData:[],
894
-      invoiceVisible:false,
895
-      invoiceParams:null,
910
+      monthChargePatientTableData: [],
911
+      invoiceVisible: false,
912
+      invoiceParams: null,
896 913
       temp_med_type: '',
897 914
       dialogVisible: false,
898 915
       pwdFormVisible: false,
@@ -957,7 +974,6 @@ export default {
957 974
         { value: '1402', label: '门诊特殊病(1402)' },
958 975
         { value: '0', label: '自费' }
959 976
 
960
-
961 977
       ],
962 978
       register_two: [
963 979
         { value: '11', label: '普通门诊' },
@@ -986,7 +1002,7 @@ export default {
986 1002
 
987 1003
       other_start_time_two: moment(new Date()).subtract(30, 'days').format('YYYY-MM-DD'),
988 1004
       other_end_time_two: moment(new Date()).add('year', 0).format('YYYY-MM-DD'),
989
-      adminUserOptions:[],
1005
+      adminUserOptions: [],
990 1006
       curMonthPrescriptions: null,
991 1007
       newCurMonthPrescriptions: null,
992 1008
       big_month_prescriptions: [],
@@ -1310,8 +1326,6 @@ export default {
1310 1326
         }
1311 1327
       })
1312 1328
 
1313
-
1314
-
1315 1329
     },
1316 1330
     changeEndTime(val) {
1317 1331
       const params = {
@@ -2673,6 +2687,151 @@ export default {
2673 2687
       if (tab == 'more') {
2674 2688
         return false
2675 2689
       }
2690
+    }, openZb(index) {
2691
+      switch (index) {
2692
+        case 1:
2693
+          if(this.patientInfo.id == 0){
2694
+            this.$message.error("请需要选择挂号的患者")
2695
+            return
2696
+          }
2697
+          if(this.big_prescriptions.length == 0){
2698
+            this.$message.error("处方不能为空")
2699
+            return
2700
+          }
2701
+          if(this.form.diagnosis.length == 0){
2702
+            this.$message.error("诊断不能为空")
2703
+            return
2704
+          }
2705
+          var that = this
2706
+          let obj = {
2707
+            patient_id: this.patientInfo.id,
2708
+            diagnosis_time: this.form.diagnosis_time,
2709
+            record_date: this.record_date,
2710
+            admin_user_id: this.$store.getters.xt_user.user.id,
2711
+            org_id: this.$store.getters.xt_user.org_id
2712
+
2713
+          }
2714
+          axios.get(process.env.BASE_API +'/coordinate/register', {
2715
+            params: obj
2716
+          })
2717
+              .then(function(response) {
2718
+                if (response.data.state == 0) {
2719
+                  that.$message.error(response.data.msg)
2720
+                  that.loadingtwo = false
2721
+                  return false
2722
+                } else {
2723
+                  if (response.data.data.failed_code == -10) {
2724
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
2725
+                      confirmButtonText: '确 定',
2726
+                      type: 'warning'
2727
+                    }).then(() => {
2728
+
2729
+                    }).catch(() => {
2730
+                    })
2731
+
2732
+                  } else {
2733
+                    that.radio = 1
2734
+                    that.changeRadioAndPatient(1)
2735
+                    that.$message({ message: '挂号成功', type: 'success', duration: 5000 })
2736
+                  }
2737
+
2738
+                }
2739
+              })
2740
+              .catch(function(error) {
2741
+
2742
+              })
2743
+
2744
+          break
2745
+        case 2:
2746
+          var that = this
2747
+          var obj2 = {
2748
+            id: this.patientInfo.id,
2749
+            record_time: this.record_date,
2750
+            his_patient_id: this.hisPatientInfo.id,
2751
+            org_id: this.$store.getters.xt_user.org_id,
2752
+            p_type:14,
2753
+
2754
+          }
2755
+          obj2['diagnosis'] = this.form.diagnosis.join(',')
2756
+          obj2['sick_type'] = this.form.sick_type
2757
+          if (this.activeName == 'first') {
2758
+            obj2['settle_accounts_type'] = 1
2759
+          } else if (this.activeName == 'second') {
2760
+            obj2['start_time'] = this.other_start_time
2761
+            obj2['end_time'] = this.other_end_time
2762
+            obj2['settle_accounts_type'] = 2
2763
+          }
2764
+          axios.get(process.env.BASE_API  + '/coordinate/opKeepAccounts', {
2765
+            params: obj2
2766
+          })
2767
+              .then(function(response) {
2768
+                if (response.data.state == 0) {
2769
+                  that.$message.error(response.data.msg)
2770
+                  that.loadingtwo = false
2771
+                  return false
2772
+                } else {
2773
+                  if (response.data.data.failed_code == -10) {
2774
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
2775
+                      confirmButtonText: '确 定',
2776
+                      type: 'warning'
2777
+                    }).then(() => {
2778
+
2779
+                    }).catch(() => {
2780
+                    })
2781
+
2782
+                  } else {
2783
+                    that.radio = 1
2784
+                    that.changeRadioAndPatient(1)
2785
+                    that.$message({ message: '记账成功', type: 'success', duration: 5000 })
2786
+                  }
2787
+
2788
+                }
2789
+              })
2790
+              .catch(function(error) {
2791
+
2792
+              })
2793
+
2794
+          break
2795
+        case 3:
2796
+          var that = this
2797
+          let obj3 = {
2798
+            order_id:this.order.id,
2799
+            admin_user_id: this.$store.getters.xt_user.user.id,
2800
+            org_id: this.$store.getters.xt_user.org_id
2801
+          }
2802
+          axios.get(process.env.BASE_API + '/coordinate/opCancelKeepAccounts', {
2803
+            params: obj3
2804
+          })
2805
+              .then(function(response) {
2806
+                if (response.data.state == 0) {
2807
+                  that.$message.error(response.data.msg)
2808
+                  that.loadingtwo = false
2809
+                  return false
2810
+                } else {
2811
+                  if (response.data.data.failed_code == -10) {
2812
+                    that.$confirm(response.data.data.msg, '医保错误信息', {
2813
+                      confirmButtonText: '确 定',
2814
+                      type: 'warning'
2815
+                    }).then(() => {
2816
+
2817
+                    }).catch(() => {
2818
+                    })
2819
+
2820
+                  } else {
2821
+                    that.radio = 1
2822
+                    that.changeRadioAndPatient(1)
2823
+                    that.$message({ message: '撤销记账成功', type: 'success', duration: 5000 })
2824
+                  }
2825
+
2826
+                }
2827
+              })
2828
+              .catch(function(error) {
2829
+
2830
+              })
2831
+
2832
+          break
2833
+
2834
+      }
2676 2835
     },
2677 2836
     open(index, med_type, order, prescriptions) {
2678 2837
       this.other_prescriptions = prescriptions
@@ -2937,7 +3096,6 @@ export default {
2937 3096
         // this.$refs.print.getInfo(this.order.id)
2938 3097
       } else if (index == 10) {
2939 3098
 
2940
-
2941 3099
         if (this.hisPatientInfo.balance_accounts_type == 2) {
2942 3100
           this.$confirm('是否退号', '退号', {
2943 3101
             confirmButtonText: '确 定',
@@ -2960,8 +3118,8 @@ export default {
2960 3118
           }).catch(() => {
2961 3119
           })
2962 3120
         } else {
2963
-          if(this.$store.getters.xt_user.org_id == 10215 && this.order.id > 0){
2964
-            this.$message.error("该就诊号尚未撤销明细或者退费无法进行退号操作")
3121
+          if (this.$store.getters.xt_user.org_id == 10215 && this.order.id > 0) {
3122
+            this.$message.error('该就诊号尚未撤销明细或者退费无法进行退号操作')
2965 3123
             return
2966 3124
           }
2967 3125
           var that = this
@@ -3058,7 +3216,7 @@ export default {
3058 3216
             .catch(function(error) {
3059 3217
             })
3060 3218
 
3061
-      } else if(index == 30){
3219
+      } else if (index == 30) {
3062 3220
 
3063 3221
         let paramsObj = {
3064 3222
           order_id: this.order.id,
@@ -3572,11 +3730,11 @@ export default {
3572 3730
         num = num.substring(0)
3573 3731
       }
3574 3732
       return parseFloat(num).toFixed(decimal)
3575
-    },getMonthChargePatientList(){
3733
+    }, getMonthChargePatientList() {
3576 3734
       let params = {
3577 3735
         'record_date': this.record_date,
3578
-        'start_time':this.other_start_time,
3579
-        'end_time':this.other_end_time,
3736
+        'start_time': this.other_start_time,
3737
+        'end_time': this.other_end_time
3580 3738
       }
3581 3739
       getChargeHisPatientList(params).then(response => {
3582 3740
         if (response.data.state == 0) {
@@ -3593,7 +3751,7 @@ export default {
3593 3751
     getPatientList() {
3594 3752
       let params = {
3595 3753
         'record_date': this.record_date,
3596
-        'type': this.radio,
3754
+        'type': this.radio
3597 3755
       }
3598 3756
       getChargeHisPatientList(params).then(response => {
3599 3757
         if (response.data.state == 0) {
@@ -4198,7 +4356,7 @@ export default {
4198 4356
             } else {
4199 4357
               this.form.p_type = 14
4200 4358
               this.form.sick_type = this.sick[0].id
4201
-              if (response.data.data.last_info.diagnoses.length == 0) {
4359
+              if (response.data.data.last_info.id == 0) {
4202 4360
                 this.form.diagnosis = []
4203 4361
               } else {
4204 4362
                 for (let i = 0; i < response.data.data.last_info.diagnosis.split(',').length; i++) {

+ 6 - 3
src/xt_pages/outpatientCharges/statementTemplate/printThree.vue Bestand weergeven

@@ -128,7 +128,9 @@
128 128
 
129 129
                             </div>
130 130
                             <div style="display:flex;flez-wrap:wrap;font-size:16px;">
131
-                                <div style="width:33%;">个人支付金额:{{ info.psn_pay?info.psn_pay:0 }}元</div>
131
+                              <div style="width:33%;">医疗救助基金金额:{{info.maf_pay?info.maf_pay:0}}元</div>
132
+
133
+                              <div style="width:33%;">个人支付金额:{{ info.psn_pay?info.psn_pay:0 }}元</div>
132 134
                                 <div style="width:33%;">个人账户金额:{{info.balc >= 0 ? info.balc : 0 }}元</div>
133 135
                             </div>
134 136
                         </td>
@@ -149,7 +151,7 @@
149 151
         <div v-else id='prescription-print' class="prescription-print" style="position: relative;">
150 152
             <img style="width:100%;height:80px" v-if="$store.getters.xt_user.org_id == 10138" src="https://kuyi.shengws.com/bailin/bltotle.jpg" alt="">
151 153
             <img style="width:100%;height:80px" v-if="$store.getters.xt_user.org_id == 10278" src="https://kuyi.shengws.com/beierlog.png" alt="">
152
-           
154
+
153 155
             <div class="printTitle" style="position: absolute;left: 40%;top: 50px;">门诊收费清单</div>
154 156
             <div style="display:flex;">
155 157
                 <div>单据号:<span style="display:inline-block;width:200px;">{{balanceAccounts.his.number ? balanceAccounts.his.number : ''}}</span>
@@ -269,7 +271,8 @@
269 271
 
270 272
                             </div>
271 273
                             <div style="display:flex;flez-wrap:wrap;">
272
-                                <div style="width:33%;">
274
+                              <div style="width:33%;">医疗救助基金金额:0元</div>
275
+                              <div style="width:33%;">
273 276
                                     个人支付金额:{{balanceAccounts.order.medfee_sumamt?balanceAccounts.order.medfee_sumamt:0}}元
274 277
                                 </div>
275 278
                                 <div style="width:33%;">个人账户金额:0元</div>

+ 8 - 8
src/xt_pages/outpatientCharges/statementTemplate/privateChargePrint.vue Bestand weergeven

@@ -299,14 +299,14 @@ export default {
299 299
       let yy = new Date().getFullYear();
300 300
       let mm = new Date().getMonth() + 1;
301 301
       let dd = new Date().getDate();
302
-      let hh = new Date().getHours();
303
-      let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
304
-          :
305
-          new Date().getMinutes();
306
-      let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
307
-          :
308
-          new Date().getSeconds();
309
-      dateTime = yy + '-' + mm + '-' + dd + ' ' + hh + ':' + mf + ':' + ss;
302
+      // let hh = new Date().getHours();
303
+      // let mf = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes()
304
+      //     :
305
+      //     new Date().getMinutes();
306
+      // let ss = new Date().getSeconds() < 10 ? '0' + new Date().getSeconds()
307
+      //     :
308
+      //     new Date().getSeconds();
309
+      dateTime = yy + '-' + mm + '-' + dd
310 310
       return dateTime
311 311
     },
312 312
 

+ 9 - 9
src/xt_pages/outpatientDoctorStation/checkPrint.vue Bestand weergeven

@@ -11,9 +11,9 @@
11 11
           >打印</el-button
12 12
         >
13 13
       </template> -->
14
-            
14
+
15 15
       <div class='dialysisPage' style="padding-top:40px;">
16
-        <printOne v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
16
+        <printOne :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
17 17
       </div>
18 18
   </div>
19 19
 </template>
@@ -66,16 +66,16 @@ export default {
66 66
                 scanStyles: false
67 67
             });
68 68
         },500)
69
-        
69
+
70 70
     },
71 71
     getAllDoctorList(){
72 72
       getAllDoctorList().then(response=>{
73 73
         if(response.data.state == 1){
74 74
                var doctor =  response.data.data.doctor
75
-               
75
+
76 76
                this.doctorList = doctor
77 77
              }
78
-         })   
78
+         })
79 79
      },
80 80
     getAllHisPatientList(){
81 81
          const params = {
@@ -101,7 +101,7 @@ export default {
101 101
             // console.log(this.patientTableData[0])
102 102
             // this.choosePatient(this.patientTableData[0])
103 103
             this.cal_one = cal_one
104
-            this.cal_two = cal_two   
104
+            this.cal_two = cal_two
105 105
          }
106 106
       })
107 107
     },
@@ -135,7 +135,7 @@ export default {
135 135
     searchAction(){
136 136
 
137 137
     }
138
-    
138
+
139 139
   },
140 140
 
141 141
   created() {
@@ -159,7 +159,7 @@ export default {
159 159
         var prescription_id = this.paramsObj.prescription_id
160 160
         this.prescription_id = prescription_id
161 161
         this.ids = this.paramsObj.ids
162
-        
162
+
163 163
       },
164 164
       deep:true
165 165
     }
@@ -332,7 +332,7 @@ export default {
332 332
   .dialysisPage::-webkit-scrollbar {
333 333
     height: 15px;
334 334
   }
335
-  
335
+
336 336
   .el-date-editor{
337 337
     .el-input__inner{
338 338
       padding-right:0px;

+ 6 - 2
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue Bestand weergeven

@@ -1860,6 +1860,10 @@
1860 1860
           this.order_status = '已退费'
1861 1861
         }
1862 1862
 
1863
+        if (this.curPrescriptions.order_status == 5) {
1864
+          this.order_status = '已记账'
1865
+        }
1866
+
1863 1867
       },
1864 1868
       clearData() {
1865 1869
         this.curPrescriptions = []
@@ -2490,8 +2494,8 @@
2490 2494
 
2491 2495
       },
2492 2496
       removeTab(targetName) {
2493
-        if (this.curPrescriptions.order_status == 2) {
2494
-          this.$message.error('该处方已经结算,无法删除')
2497
+        if (this.curPrescriptions.order_status == 2 || this.curPrescriptions.order_status == 5) {
2498
+          this.$message.error('该处方已经结算或者记账,无法删除')
2495 2499
           return
2496 2500
         }
2497 2501
         this.$confirm('处方删除后不可恢复,是否确认删除', '删除', {

+ 6 - 6
src/xt_pages/outpatientDoctorStation/components/prescriptionTable.vue Bestand weergeven

@@ -275,8 +275,8 @@
275 275
         cb(results)
276 276
       },
277 277
       delAddition(index, addition) {
278
-        if (this.prescription.order_status == 2) {
279
-          this.$message.error('该处方已经结算,无法删除')
278
+        if (this.prescription.order_status == 2 || this.prescription.order_status == 5) {
279
+          this.$message.error('该处方已经结算或记账,无法删除')
280 280
           return
281 281
         }
282 282
         this.$confirm('附加费删除后不可恢复,是否确认删除', '删除', {
@@ -323,8 +323,8 @@
323 323
         })
324 324
 
325 325
       }, deleteDrug: function(index, row) {
326
-        if (this.prescription.order_status == 2) {
327
-          this.$message.error('该处方已经结算,无法删除')
326
+        if (this.prescription.order_status == 2 ||  this.prescription.order_status ==5) {
327
+          this.$message.error('该处方已经结算或记账,无法删除')
328 328
           return
329 329
         }
330 330
         this.$confirm('药品删除后不可恢复,是否确认删除', '删除', {
@@ -394,8 +394,8 @@
394 394
         return name
395 395
       },
396 396
       deleteProject(row, i) {
397
-        if (this.prescription.order_status == 2) {
398
-          this.$message.error('该处方已经结算,无法删除')
397
+        if (this.prescription.order_status == 2  || this.prescription.order_status == 5) {
398
+          this.$message.error('该处方已经结算或记账,无法删除')
399 399
           return
400 400
         }
401 401
         this.$confirm('项目删除后不可恢复,是否确认删除', '删除', {

+ 2 - 3
src/xt_pages/stock/inventoryTransfer/index.vue Bestand weergeven

@@ -53,11 +53,10 @@
53 53
           color: '#606266',
54 54
         }"
55 55
         :data="tableData"
56
-        :class="signAndWeighBoxPatients"
57 56
         border
58 57
         @selection-change="handleSelectionChange"
59 58
       >
60
-        >
59
+        
61 60
         <el-table-column type="selection" width="55"> </el-table-column>
62 61
         <el-table-column label="单据编号" align="center">
63 62
           <template slot-scope="scope">
@@ -110,7 +109,6 @@
110 109
               >
111 110
               </el-button>
112 111
             </el-tooltip>
113
-
114 112
             <el-tooltip class="item" content="删除" placement="top-start">
115 113
               <el-button
116 114
                 icon="el-icon-delete"
@@ -133,6 +131,7 @@
133 131
           </template>
134 132
         </el-table-column>
135 133
       </el-table>
134
+
136 135
       <el-pagination
137 136
         @size-change="handleSizeChange"
138 137
         @current-change="handleCurrentChange"

Diff onderdrukt omdat het te groot bestand
+ 626 - 396
src/xt_pages/stock/stockQuery.vue


+ 25 - 2
src/xt_pages/user/components/PatientForm.vue Bestand weergeven

@@ -296,7 +296,7 @@
296 296
               </el-col>
297 297
 
298 298
 
299
-              <el-col :span="8" :style="isEdit ? 'width:360px' : ''" v-show="showLapseto">
299
+              <el-col :span="24" :style="isEdit ? 'width:360px' : ''" v-show="showLapseto">
300 300
                 <el-form-item
301 301
                   label="治疗状态(转归) : "
302 302
                   class="is-required"
@@ -314,7 +314,7 @@
314 314
                 </el-form-item>
315 315
               </el-col>
316 316
 
317
-              <el-col :span="24">
317
+              <el-col :span="8">
318 318
                 <el-form-item label="传染病 : " prop="contagions">
319 319
                   <el-radio-group v-model="form.is_infectious" @change="changeInfectious">
320 320
                     <el-radio :label="1">阴性</el-radio>
@@ -336,6 +336,29 @@
336 336
                   </el-checkbox-group>
337 337
                 </el-form-item>
338 338
               </el-col>
339
+              
340
+              <el-col :span="8">
341
+                <el-form-item label="疑难内瘘 : " prop="contagions">
342
+                  <el-radio-group v-model="form.is_infectious" @change="changeInfectious">
343
+                    <el-radio :label="1">是</el-radio>
344
+                    <el-radio :label="2">否</el-radio>
345
+                  </el-radio-group>
346
+                  <el-checkbox-group
347
+                    v-model="form.contagions"
348
+                    v-if="form.is_infectious == '2'"
349
+                  >
350
+                    <el-checkbox
351
+                      v-for="item in contagionList"
352
+                      v-if="item.type == 2"
353
+                      :label="item.id"
354
+                      :key="item.id"
355
+                      name="contagions"
356
+                      :value="item.id"
357
+                      >{{ item.name }}</el-checkbox
358
+                    >
359
+                  </el-checkbox-group>
360
+                </el-form-item>
361
+              </el-col>
339 362
 
340 363
               <el-col :span="16" v-if="!isEdit">
341 364
                 <el-form-item label="检查结果日期 : ">