From b06a903d08d6f5432105d12686ccaf074b45323a Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期四, 24 十月 2024 08:58:35 +0800 Subject: [PATCH] lkk 10.24 --- src/views/system/bill/index.vue | 466 ++++++++++------ dist.zip | 0 vue.config.js | 3 src/views/hosp/history/index.vue | 9 src/views/system/tijian/index.vue | 3 src/views/system/user/index.vue | 4 src/views/doctor/checkAll/index.vue | 209 ++++++- src/views/hosp/order/index.vue | 7 src/api/sampling/sampling.js | 39 + package.json | 1 src/components/jianqianwenzhen/index.vue | 120 ++- src/views/system/biol/index.vue | 2 src/api/doctor/checkAll.js | 9 src/views/hosp/customer/index.vue | 11 src/views/sampling/sampling/index.vue | 490 ++++++++++++++++- src/views/doctor/bgsh/index.vue | 208 ++++++- 16 files changed, 1,208 insertions(+), 373 deletions(-) diff --git a/dist.zip b/dist.zip index ab4f73e..b19637d 100644 --- a/dist.zip +++ b/dist.zip Binary files differ diff --git a/package.json b/package.json index e3e97e0..4d4fb32 100644 --- a/package.json +++ b/package.json @@ -48,6 +48,7 @@ "highlight.js": "9.18.5", "js-beautify": "1.13.0", "js-cookie": "3.0.1", + "jsbarcode": "^3.11.6", "jsencrypt": "3.0.0-rc.1", "moment": "^2.29.4", "nprogress": "0.2.0", diff --git a/src/api/doctor/checkAll.js b/src/api/doctor/checkAll.js index 690d0a3..de7fa9e 100644 --- a/src/api/doctor/checkAll.js +++ b/src/api/doctor/checkAll.js @@ -9,6 +9,15 @@ }) } +// 浣撴绉戝鍒楄〃鏄剧ず鎺ュ彛 +export function getBghsList(query) { + return request({ + url: '/check/getBghsList', + method: 'get', + params: query + }) +} + //鎬绘鐐瑰嚮浣撴淇℃伅璇︽儏 export function getupdateCheckType(tjNumber) { return request({ diff --git a/src/api/sampling/sampling.js b/src/api/sampling/sampling.js index 578a4cb..deee9d8 100644 --- a/src/api/sampling/sampling.js +++ b/src/api/sampling/sampling.js @@ -12,9 +12,27 @@ // 鏌ヨ浣撴閲囨牱绠$悊鍒楄〃 export function getList(query) { return request({ - url: '/sampling/sampling/getList', + url: '/sampling/sampling/getCusList', method: 'get', params: query + }) +} + +// export function getCusCyList(cusId) { +// return request({ +// url: '/sampling/sampling/getCusCyList?cusId=' + cusId, +// method: 'get' +// }) +// } + +export function getCusCyList(cusId, isSignFor) { + return request({ + url: '/sampling/sampling/getCusCyList', + method: 'get', + params: { + cusId: cusId, + isSignFor: isSignFor + } }) } @@ -60,3 +78,22 @@ method: 'delete' }) } + + +// 閲囨牱鐧昏鍚堝苟椤圭洰鎺ュ彛 +export function mergeCaiYang(data) { + return request({ + url: '/sampling/sampling/mergeCaiYang', + method: 'post', + data: data + }) +} + +// 鎾ら攢閲囨牱鐧昏鍚堝苟椤圭洰鎺ュ彛 +export function chexiaoCaiYang(data) { + return request({ + url: '/sampling/sampling/chexiaoCaiYang', + method: 'post', + data: data + }) +} \ No newline at end of file diff --git a/src/components/jianqianwenzhen/index.vue b/src/components/jianqianwenzhen/index.vue index 5b28fb0..c82e398 100644 --- a/src/components/jianqianwenzhen/index.vue +++ b/src/components/jianqianwenzhen/index.vue @@ -1,6 +1,6 @@ <template> <div> - <span class="txt">闂瘖淇℃伅</span> + <span class="txt"></span> <el-form ref="form" :model="form" @@ -274,21 +274,21 @@ </el-table-column> <el-table-column label="鐤剧梾id" prop="icdId" v-if="false"> <!-- <template slot-scope="scope"> --> - <el-select - :remote-method="getRemoteData" - v-model="icdId" - remote - filterable - placeholder="璇烽�夋嫨鐥呯鍚�" - clearable - > - <el-option - v-for="dict in rulesList" - :key="dict.id" - :label="dict.icdname" - :value="dict.id" - /> - </el-select> + <el-select + :remote-method="getRemoteData" + v-model="icdId" + remote + filterable + placeholder="璇烽�夋嫨鐥呯鍚�" + clearable + > + <el-option + v-for="dict in rulesList" + :key="dict.id" + :label="dict.icdname" + :value="dict.id" + /> + </el-select> <!-- </template> --> </el-table-column> <el-table-column label="鐤剧梾鍚嶇О" prop="diseaseName"> @@ -436,21 +436,21 @@ </el-table-column> <el-table-column label="鐤剧梾id" prop="icdId" v-if="false"> <!-- <template slot-scope="scope"> --> - <el-select - :remote-method="getRemoteData" - v-model="icdId" - remote - filterable - placeholder="璇烽�夋嫨鐥呯鍚�" - clearable - > - <el-option - v-for="dict in rulesList" - :key="dict.id" - :label="dict.icdname" - :value="dict.id" - /> - </el-select> + <el-select + :remote-method="getRemoteData" + v-model="icdId" + remote + filterable + placeholder="璇烽�夋嫨鐥呯鍚�" + clearable + > + <el-option + v-for="dict in rulesList" + :key="dict.id" + :label="dict.icdname" + :value="dict.id" + /> + </el-select> <!-- </template> --> </el-table-column> <el-table-column label="鐤剧梾鍚嶇О" prop="diseaseName"> @@ -699,8 +699,8 @@ } }; return { - zhiyebingshi:true, - jiwangbingshi:true, + zhiyebingshi: true, + jiwangbingshi: true, diseaseNames: "", zhenghuzangList: [], options: [ @@ -821,6 +821,10 @@ if (this.form.yinjiuyear == null) { this.form.yinjiuyear = "0"; } + // 璁剧疆榛樿鍊� + if (this.form.gongLing == null) { + this.form.gongLing = 1; // 宸ラ緞榛樿鍊� + } this.form.tjAskHistorysList = response.data.tjAskHistorysList; // this.isdisabled= true }); @@ -843,15 +847,15 @@ } else { this.sex = false; } - if (this.form.tjLx === "02") { - this.zhiye = true; - this.zhiyebingshi = true; - this.jiwangbingshi = false; - } else { - this.zhiye = false; - this.zhiyebingshi = false; - this.jiwangbingshi = true; - } + if (this.form.tjLx === "02") { + this.zhiye = true; + this.zhiyebingshi = true; + this.jiwangbingshi = false; + } else { + this.zhiye = false; + this.zhiyebingshi = false; + this.jiwangbingshi = true; + } if (this.form.xiyan == null) { this.form.xiyan = "1"; } @@ -968,11 +972,11 @@ this.icdId = item.id; } }); - this.form.tjAskHistorysList.forEach(item => { - if(item.diseaseName == sel){ - item.icdId = this.icdId + this.form.tjAskHistorysList.forEach((item) => { + if (item.diseaseName == sel) { + item.icdId = this.icdId; } - }) + }); }, // 鎼滅储 getRemoteData(query) { @@ -1025,7 +1029,7 @@ this.chageall = selection; }, /** 鎻愪氦鎸夐挳 */ - submitForm() { + /* submitForm() { // this.form.tjAskHistorysList.forEach(element=>{ // element.icdId = this.icdId; // }) @@ -1033,7 +1037,27 @@ this.$modal.msgSuccess("淇敼鎴愬姛"); this.form = response.data; }); - }, + }, */ + submitForm() { + this.$refs.form.validate((valid) => { + if (valid) { + this.$emit('submitLoading', true); + updateHistory(this.form) + .then((response) => { + this.$message.success("淇敼鎴愬姛"); + this.form = response.data; // 鏇存柊琛ㄥ崟鏁版嵁 + }) + .catch((error) => { + this.$message.error("淇敼澶辫触"); + }) + .finally(() => { + this.$emit('submitLoading', false); + }); + } else { + this.$message.error("璇锋鏌ヨ〃鍗曞唴瀹�"); + } + }); + } }, }; </script> diff --git a/src/views/doctor/bgsh/index.vue b/src/views/doctor/bgsh/index.vue index 1a3692f..e615e8c 100644 --- a/src/views/doctor/bgsh/index.vue +++ b/src/views/doctor/bgsh/index.vue @@ -1,49 +1,132 @@ <template> <div> - <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px"> + <el-form + :model="queryParams" + ref="tableList" + :inline="true" + label-width="76px" + style="margin-top: 10px" + > <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="queryParams.name" style="width: 120px" placeholder="璇疯緭鍏ュ鍚�" clearable - @keyup.enter.native="handleQuery"></el-input> + <el-input + v-model="queryParams.name" + style="width: 120px" + placeholder="璇疯緭鍏ュ鍚�" + clearable + @keyup.enter.native="handleQuery" + ></el-input> </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNumber"> - <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 180px" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable - @keyup.enter.native="submitForm" @blur="hb"></el-input> + <el-input + ref="inputName" + v-model="queryParams.tjNumber" + style="width: 180px" + placeholder="璇疯緭鍏ヤ綋妫�鍙�" + clearable + @keyup.enter.native="submitForm" + @blur="hb" + ></el-input> </el-form-item> <el-form-item label="浣撴鏃堕棿" prop="tjTime"> - <el-date-picker v-model="startTime" type="datetimerange" align="right" :picker-options="pickerOptions" - style="width: 310px" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" :default-time="['00:00:00', '23:00:00']" - format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" @change="dateChangebirthday1"> - </el-date-picker> </el-form-item> - <el-form-item label="鍗曚綅鍚嶇О" prop="tjCompName" style="margin-left: 20px;"> - <el-select :remote-method="getRemoteData" v-model="queryParams.tjCompName" value-key="drugManufacturerId" - style="width: 180px" remote filterable placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" clearable @change="searchSelect"> - <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName" :value="dict" /> + <el-date-picker + v-model="startTime" + type="datetimerange" + align="right" + :picker-options="pickerOptions" + style="width: 310px" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + :default-time="['00:00:00', '23:00:00']" + format="yyyy-MM-dd HH:mm" + value-format="yyyy-MM-dd HH:mm" + @change="dateChangebirthday1" + > + </el-date-picker> + </el-form-item> + <el-form-item + label="鍗曚綅鍚嶇О" + prop="tjCompName" + style="margin-left: 20px" + > + <el-select + :remote-method="getRemoteData" + v-model="queryParams.tjCompName" + value-key="drugManufacturerId" + style="width: 180px" + remote + filterable + placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" + clearable + @change="searchSelect" + > + <el-option + v-for="dict in CompanyList" + :key="dict.drugManufacturerId" + :label="dict.cnName" + :value="dict" + /> </el-select> </el-form-item> <el-form-item> - <el-button type="primary" size="mini" @click="submitForm" style="margin-right:15px;">鎼滅储</el-button> + <el-button + type="primary" + size="mini" + @click="submitForm" + style="margin-right: 15px" + >鎼滅储</el-button + > <el-button size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> - - <el-row :gutter="10" class="mb8" style="margin-left:14px ;"> + <el-row :gutter="10" class="mb8" style="margin-left: 14px"> <el-col :span="1.5"> - <el-button type="primary" size="mini" @click="radioChange" >鏍告敹</el-button> + <el-button type="primary" size="mini" @click="radioChange" + >鏍告敹</el-button + > </el-col> </el-row> <template> - <el-table v-loading="loading" :data="checkList" ref="table" border @selection-change="handleSelectionChange" - style="margin: 20px; width: 98%"> - <el-table-column type="selection" width="40px" align="center" fixed="left" /> + <el-table + v-loading="loading" + :data="checkList" + ref="table" + border + @selection-change="handleSelectionChange" + style="margin: 20px; width: 98%" + > + <el-table-column + type="selection" + width="40px" + align="center" + fixed="left" + /> <!-- <template slot="empty">鏁版嵁姝e湪鍔犺浇涓�</template> --> - <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" :show-overflow-tooltip="true" width="160px" - fixed="left" /> - <el-table-column label="濮撳悕" align="center" prop="cusName" :show-overflow-tooltip="true" width="100px" - fixed="left" /> + <el-table-column + label="浣撴鍙�" + align="center" + prop="tjNumber" + :show-overflow-tooltip="true" + width="160px" + fixed="left" + /> + <el-table-column + label="濮撳悕" + align="center" + prop="cusName" + :show-overflow-tooltip="true" + width="100px" + fixed="left" + /> - <el-table-column label="鎬у埆" align="center" prop="cusSex" :show-overflow-tooltip="true" width="55px"> + <el-table-column + label="鎬у埆" + align="center" + prop="cusSex" + :show-overflow-tooltip="true" + width="55px" + > <template slot-scope="scope"> <span v-if="scope.row.cusSex == '0'">鐢�</span> <span v-if="scope.row.cusSex == '1'">濂�</span> @@ -51,23 +134,63 @@ <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span> </template> </el-table-column> - <el-table-column label="鍑虹敓鏃ユ湡" align="center" prop="cusBrithday" :show-overflow-tooltip="true" width="110px" /> - <el-table-column label="鐢佃瘽" align="center" prop="cusPhone" :show-overflow-tooltip="true" width="130px" /> + <el-table-column + label="鍑虹敓鏃ユ湡" + align="center" + prop="cusBrithday" + :show-overflow-tooltip="true" + width="110px" + /> + <el-table-column + label="鐢佃瘽" + align="center" + prop="cusPhone" + :show-overflow-tooltip="true" + width="130px" + /> - <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime" :show-overflow-tooltip="true" width="110px" /> - <el-table-column label="瀹屾垚鏃堕棿" align="center" prop="finishTime" :show-overflow-tooltip="true" width="160px" /> - <el-table-column label="鐘舵��" align="center" prop="tjStatus" :show-overflow-tooltip="true" width="50px"> + <el-table-column + label="浣撴鏃堕棿" + align="center" + prop="tjTime" + :show-overflow-tooltip="true" + width="110px" + /> + <el-table-column + label="瀹屾垚鏃堕棿" + align="center" + prop="finishTime" + :show-overflow-tooltip="true" + width="160px" + /> + <el-table-column + label="鐘舵��" + align="center" + prop="tjStatus" + :show-overflow-tooltip="true" + width="50px" + > <template slot-scope="scope"> <span>{{ scope.row.tjStatus == "1" ? "宸叉" : "鏈" }}</span> </template> </el-table-column> - <el-table-column label="鍗曚綅鍚嶇О" align="center" prop="tjCompName" :show-overflow-tooltip="true" /> + <el-table-column + label="鍗曚綅鍚嶇О" + align="center" + prop="tjCompName" + :show-overflow-tooltip="true" + /> </el-table> <div class="pag"> <div class="pag1"> - <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize" - @pagination="getList" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.page" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> </div> </div> </template> @@ -76,7 +199,7 @@ <script> -import { getcheckList, heXiaoByIds } from "@/api/doctor/checkAll"; +import { getBghsList, heXiaoByIds } from "@/api/doctor/checkAll"; import { getCompany, queryCompany } from "@/api/team/tuanti"; import ViewPdf from "@/components/ViewPdf"; import { getNewDateList } from "@/api/hosp/order"; @@ -153,7 +276,7 @@ created() { // this.getNowTime(); - + this.getdate(); }, @@ -216,7 +339,7 @@ } // 椤甸潰鏁版嵁 - getcheckList(this.queryParams).then((response) => { + getBghsList(this.queryParams).then((response) => { if (response.code == 200) { this.loading = false; if (response.data) { @@ -231,7 +354,6 @@ this.checkList = []; } } - }), // 鑾峰彇鍗曚綅淇℃伅闆嗗悎 getCompany(this.queryParam).then((response) => { @@ -247,12 +369,12 @@ // 鍗曢�夋寜閽� radioChange() { + this.loading = true; heXiaoByIds(this.orderIds).then((response) => { - if(response.code == 200){ + if (response.code == 200) { this.$modal.msgSuccess("鎶ュ憡宸叉牳鏀讹紒璇峰墠寰�鎶ュ憡鎵撳嵃椤甸潰鏌ョ湅锛�"); this.getList(); } - }); }, @@ -275,9 +397,9 @@ dateChangebirthday1(val) { this.startTime = val; }, - hb(){ + hb() { console.log(this.queryParams.tjNumber); - if (this.queryParams.tjNumber != "") { + if (this.queryParams.tjNumber != "") { this.submitForm(); } }, @@ -295,7 +417,7 @@ } // 椤甸潰鏁版嵁 - getcheckList(this.queryParams).then((response) => { + getBghsList(this.queryParams).then((response) => { if (response.data.customers != null) { this.checkList = response.data.customers; this.checkList.forEach((item) => { @@ -310,7 +432,7 @@ }, // 閲嶇疆 resetQuery() { - this.startTime=[] + this.startTime = []; this.resetForm("tableList"); this.submitForm(); }, diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index b01db8c..ef48f09 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -493,9 +493,7 @@ </div> <div v-else> <table style="width: 100%" v-if="tjproject != '1'"> - <tr - style="border: 1px solid #dfe6ec; " - > + <tr style="border: 1px solid #dfe6ec"> <td style=" border: 1px solid #dfe6ec; @@ -506,7 +504,10 @@ > 妫�鏌ユ墍瑙侊細 </td> - <td style="border: 1px solid #dfe6ec; height: 52px;" colspan="2"> + <td + style="border: 1px solid #dfe6ec; height: 52px" + colspan="2" + > <textarea placeholder="璇疯緭鍏ュ唴瀹�" :autosize="{ minRows: 3, maxRows: 4 }" @@ -1151,6 +1152,9 @@ name: "checkAll", data() { return { + // 鏇存柊鎬绘寤鸿 + initialTotalCheckAdvice: "", + initialState: "", preObj: {}, baogao: [], flags: false, @@ -1698,6 +1702,21 @@ } }, + /* changRed(row) { + if (row.label === "鈫�") { + return { + color: "green", // 璁剧疆涓婄澶翠负缁胯壊 + }; + } else if (row.label === "鈫�") { + return { + color: "red", // 璁剧疆涓嬬澶翠负绾㈣壊 + }; + } + // 榛樿棰滆壊 + return { + color: "black", + }; + }, */ handleCurrentChange(val) { if (val != null) { this.handleClick(val); @@ -1709,15 +1728,7 @@ this.$refs.Pre.open = false; this.tableAll = row; this.tjproject = "0"; - // if (this.tableAll.cusSex === 0) { - // this.tableAll.cusSex = "鐢�"; - // } - // if (this.tableAll.cusSex === 1) { - // this.tableAll.cusSex = "濂�"; - // } - // if (this.tableAll.cusSex === 2) { - // this.tableAll.cusSex = "鏈煡"; - // } + this.tjNumber = this.tableAll.tjNumber; getState(this.tjNumber).then((res) => { this.status = res.data; @@ -1737,8 +1748,17 @@ this.changedate = response.data; if (this.changedate) { this.changedate.forEach((item) => { - this.textarea1 = item.checkAdvice; + this.textarea1 = item.checkAdvice || ""; }); + + // 杩欓噷璁剧疆鍒濆鍊� + this.initialTotalCheckAdvice = this.textarea1; // 淇濆瓨鎬绘寤鸿 + + // 淇濆瓨鍒濆鐘舵�� + this.initialState = JSON.parse( + JSON.stringify(this.changedate) + ); + for (let i = 0; i < this.changedate.length; i++) { this.remark = this.changedate[i].remark; } @@ -1791,8 +1811,12 @@ for (let i = 0; i < this.changedate.length; i++) { this.remark = this.changedate[i].remark; } + this.initialState = JSON.parse( + JSON.stringify(this.changedate) + ); + this.changedate.forEach((item) => { - this.textarea1 = item.checkAdvice; + this.textarea1 = item.checkAdvice || ""; // this.remark = item.remark; // item.sons.forEach((item3) => { @@ -1805,6 +1829,11 @@ // }); // item.remark = ""; }); + + // 淇濆瓨鎬绘寤鸿 + this.totalCheckAdvice = this.changedate.map( + (item) => item.totalCheckAdvice + ); } else { this.$message({ type: "warning ", @@ -1855,29 +1884,44 @@ if (this.loading) { return; } - this.$confirm("纭畾瑕佹彁浜ゅ悧锛�") - .then((_) => { - this.loading = true; - this.timer = setTimeout(() => { - done(); - this.determine(); - // 鍔ㄧ敾鍏抽棴闇�瑕佷竴瀹氱殑鏃堕棿 - setTimeout(() => { - this.loading = false; - }, 400); - }, 2000); - }) - .catch((_) => { - this.drawer = false; - let data = { - userId: this.userId, - tjNumber: this.tjNumber, - state: 1, - id: this.MsgId, - }; - getfiedState(data).then((res) => {}); - this.submitForm(); - }); + + // 妫�鏌ユ槸鍚︽湁淇敼 + let isModified = + JSON.stringify(this.changedate) !== JSON.stringify(this.initialState) || + (this.textarea1 !== this.initialTotalCheckAdvice && + this.textarea1 !== null); + console.log("Initial Total Check Advice:", this.initialTotalCheckAdvice); + + console.log("Current textarea1:", this.textarea1); + if (isModified) { + // 濡傛灉鏈変慨鏀癸紝寮瑰嚭纭妗� + this.$confirm("妫�娴嬪唴瀹规湁淇敼锛岀‘瀹氳鎻愪氦鍚楋紵") + .then(() => { + this.loading = true; + this.timer = setTimeout(() => { + done(); + this.determine(); + setTimeout(() => { + this.loading = false; + }, 400); + }, 2000); + }) + .catch(() => { + // 鐢ㄦ埛鍙栨秷鎿嶄綔 + this.drawer = false; + let data = { + userId: this.userId, + tjNumber: this.tjNumber, + state: 1, + id: this.MsgId, + }; + getfiedState(data).then((res) => {}); + this.submitForm(); + }); + } else { + // 濡傛灉娌℃湁淇敼锛岀洿鎺ュ叧闂� + done(); + } }, handleClose1() { this.jianqians = false; @@ -1904,7 +1948,7 @@ // } // }, change(vale) {}, - determine() { + /* determine() { let tjNumber = this.tableAll.tjNumber; let advice = this.textarea1; let data = { @@ -1912,6 +1956,7 @@ advice, checkStatus: 1, }; + this.loading = true; getTjdetailList(data).then((response) => { if (response.code === 200) { this.$modal.msgSuccess("鎻愪氦鎴愬姛"); @@ -1930,7 +1975,7 @@ this.$modal.msgError( "鎵撳嵃鎶ュ憡澶辫触锛岃鍓嶅線鎶ュ憡鎵撳嵃椤甸潰琛ユ墦鎶ュ憡锛�" ); - }); + }) getfiedState(data).then((res) => { this.drawer = false; }); @@ -1938,7 +1983,6 @@ this.queryParams.pageSize = 10; this.submitForm(); this.$forceUpdate(); - } }); for (let i = 0; i < this.changedate.length; i++) { @@ -1958,6 +2002,89 @@ // this.proIds = item.parentId; // // this.remark = item.remark; // }); + }, */ + determine() { + let tjNumber = this.tableAll.tjNumber; + let advice = this.textarea1; + let data = { + tjNumber, + advice, + checkStatus: 1, + }; + + // 寮�濮嬪姞杞� + this.loading = true; + + // 鎻愪氦鏁版嵁 + getTjdetailList(data) + .then((response) => { + if (response.code === 200) { + this.$modal.msgSuccess("鎻愪氦鎴愬姛"); + + // 鍑嗗鐢熸垚鎶ュ憡鐨勮姹傛暟鎹� + let reportData = { + userId: this.userId, + tjNumber: tjNumber, + state: 1, + id: this.MsgId, + }; + + // 鐢熸垚鎶ュ憡骞朵繚鎸� loading 鎵撳紑 + const reportPromise = gettoPdf(tjNumber) + .then((res) => { + this.$modal.msgSuccess("宸茬敓鎴愭姤鍛婏紒璇峰墠寰�鎶ュ憡鏍告敹椤甸潰纭锛�"); + }) + .catch((error) => { + this.$modal.msgError( + "鎵撳嵃鎶ュ憡澶辫触锛岃鍓嶅線鎶ュ憡鎵撳嵃椤甸潰琛ユ墦鎶ュ憡锛�" + ); + }); + + // 鏇存柊鐘舵�佸苟鎻愪氦淇敼璇锋眰 + const statePromise = getfiedState(reportData).then((res) => { + this.drawer = false; + }); + + // 澶勭悊鍏朵粬淇敼鎿嶄綔 + const updatePromises = this.changedate.map((item) => { + this.proIds = item.parentId; + let remarks = item.remark; + let updateOrderRemarkVos = [ + { + tjNumber, + proId: this.proIds.toString(), + remarks, + }, + ]; + return getModified(updateOrderRemarkVos); // 杩斿洖 Promise + }); + + // 绛夊緟鎵�鏈夎姹傚畬鎴� + Promise.all([reportPromise, statePromise, ...updatePromises]) + .then(() => { + // 鎵�鏈夎姹傚畬鎴愶紝鍏抽棴 loading + this.loading = false; + // 鏇存柊鍒嗛〉淇℃伅 + this.queryParams.page = 1; + this.queryParams.pageSize = 10; + this.submitForm(); + this.$forceUpdate(); + }) + .catch((error) => { + // 澶勭悊閿欒鎯呭喌 + this.loading = false; + console.error("鍙戠敓閿欒:", error); + }); + } else { + // 鎻愪氦澶辫触锛屽叧闂� loading + this.loading = false; + } + }) + .catch((error) => { + // 鎻愪氦璇锋眰澶辫触锛屽叧闂� loading + this.loading = false; + console.error("鎻愪氦璇锋眰澶辫触:", error); + }); }, }, }; diff --git a/src/views/hosp/customer/index.vue b/src/views/hosp/customer/index.vue index f7ae839..a783e3d 100644 --- a/src/views/hosp/customer/index.vue +++ b/src/views/hosp/customer/index.vue @@ -17,17 +17,6 @@ @keyup.enter.native="handleQuery" /> </el-form-item> - <!-- <el-form-item label="鎬у埆" prop="cusSex"> - <el-select v-model="queryParams.cusSex" placeholder="璇烽�夋嫨鎬у埆" clearable style="width:120px"> - <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label" :value="dict.value"/> - </el-select> - </el-form-item> --> - <!-- <el-form-item label="鍑虹敓鏃ユ湡" prop="cusBrithday"> - <el-date-picker clearable v-model="queryParams.cusBrithday" type="date" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨鍑虹敓鏃ユ湡"></el-date-picker> - </el-form-item> --> - <!-- <el-form-item label="鐜颁綇鍧�" prop="cusAddr"> - <el-input v-model="queryParams.cusAddr" placeholder="璇疯緭鍏ョ幇灞呬綇鍦板潃" clearable @keyup.enter.native="handleQuery"/> - </el-form-item> --> <el-form-item label="鑱旂郴鐢佃瘽" prop="cusPhone"> <el-input v-model="queryParams.cusPhone" diff --git a/src/views/hosp/history/index.vue b/src/views/hosp/history/index.vue index 24f32e0..154a1d9 100644 --- a/src/views/hosp/history/index.vue +++ b/src/views/hosp/history/index.vue @@ -138,7 +138,7 @@ </div> </div> <div class="hist3"> - <jianqianwenzhen :jianqianwenzhendata="jianqianwenzhendata"></jianqianwenzhen> + <jianqianwenzhen @submitLoading="handleLoading" :jianqianwenzhendata="jianqianwenzhendata"></jianqianwenzhen> </div> </div> @@ -217,6 +217,7 @@ activeName: "1", // 閬僵灞� loading: true, + tableLoading: false, isdisabled: false, // 閫変腑鏁扮粍 ids: [], @@ -404,6 +405,8 @@ }); let tjNumber = selection.map((item) => item.tjNumber); this.jianqianwenzhendata = tjNumber; + + // getInfoById(tjNumber).then((response) => { // this.jianqianwenzhendata = response.data; // if (this.form.xiyan == null) { @@ -436,7 +439,9 @@ } }, - + handleLoading(isLoading) { + this.loading = isLoading; + } diff --git a/src/views/hosp/order/index.vue b/src/views/hosp/order/index.vue index 5ea424e..a2d0947 100644 --- a/src/views/hosp/order/index.vue +++ b/src/views/hosp/order/index.vue @@ -246,8 +246,9 @@ :show-overflow-tooltip="true" > <template slot-scope="scope"> - <span v-if="scope.row.tjType == '2'">涓汉</span> - <span v-if="scope.row.tjType == '1'">鍥㈤槦</span> + <dict-tag :options="dict.type.dict_team" :value="scope.row.tjType" /> + <!-- <span v-if="scope.row.tjType == '2'">涓汉</span> + <span v-if="scope.row.tjType == '1'">鍥㈤槦</span> --> </template> </el-table-column> <el-table-column @@ -1425,7 +1426,7 @@ components: { ViewPdf, }, - dicts: ["dict_pay_type"], + dicts: ["dict_pay_type","dict_team"], name: "Order", data() { return { diff --git a/src/views/sampling/sampling/index.vue b/src/views/sampling/sampling/index.vue index 29cedaf..2d42182 100644 --- a/src/views/sampling/sampling/index.vue +++ b/src/views/sampling/sampling/index.vue @@ -67,13 +67,13 @@ @click="handleQuery" >鏌ヨ</el-button > - <el-button + <!-- <el-button type="primary" icon="el-icon-thumb" size="mini" style="margin:0 15px;" @click="Confirmreceipt" >纭閲囨牱</el-button - > + > --> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" >閲嶇疆</el-button > @@ -90,9 +90,43 @@ <el-radio-button label="0">宸查噰鏍�</el-radio-button> </el-radio-group> </el-col> - <el-col :span="12" v-if="tableList.length > 1 && tjStatus == 0"> - <el-button type="primary" plain v-hasPermi="['hosp:detail:add']" - >鍚堝苟鏍锋湰</el-button + <el-col + :span="12" + style="margin: 10px 15px" + v-if="samplingList.length > 0 && tjStatus == 1" + > + <el-button type="primary" @click="Merging">鍚堝苟椤圭洰</el-button> + <el-button + type="primary" + icon="el-icon-thumb" + style="margin: 0 15px" + v-hasPermi="['hosp:detail:add']" + @click="Confirmreceipt" + >纭閲囨牱</el-button + > + <el-button type="primary" :disabled="!disabled" @click="Cancellation" + >鎾ら攢鍚堝苟</el-button + > + <el-button + type="primary" + :disabled="!selectList.length" + @click="Collection" + >閲囨牱鎵撶爜</el-button + > + </el-col> + <el-col + :span="12" + style="margin: 10px 15px" + v-show="samplingList.length > 0 && tjStatus == 0" + > + <el-button + type="primary" + :disabled="!selectList.length" + @click="Collection" + >琛ユ墦鏉$爜</el-button + > + <el-button type="primary" :disabled="!disabled" @click="Cancellation" + >鎾ら攢鍚堝苟</el-button > </el-col> </el-row> @@ -101,7 +135,7 @@ <div style="width: 40%; margin-right: 20px"> <el-table id="ta" - v-loading="loading" + v-loading="loading1" ref="tb" :data="samplingList" @selection-change="handleSelectionChange" @@ -113,19 +147,19 @@ <el-table-column label="浣撴鍙�" align="center" - prop="customer.tjNumber" + prop="tjNumber" width="160px" /> <el-table-column label="濮撳悕" align="center" - prop="customer.cusName" + prop="cusName" width="80px" /> <el-table-column label="鎬у埆" align="center" - prop="customer.cusSex" + prop="cusSex" width="60px" > <!-- <template slot-scope="scope"> @@ -140,17 +174,17 @@ <el-table-column label="鎵嬫満鍙�" align="center" - prop="customer.cusPhone" + prop="cusPhone" width="120px" /> <el-table-column label="鐢宠鏃堕棿" align="center" - prop="customer.applicationTime" + prop="applicationTime" width="210" > <template slot-scope="scope"> - <span>{{ parseTime(scope.row.customer.applicationTime) }}</span> + <span>{{ parseTime(scope.row.applicationTime) }}</span> </template> </el-table-column> </el-table> @@ -180,34 +214,37 @@ prop="specimenType" width="120" > - <template slot-scope="scope"> - <dict-tag - :options="dict.type.sys_dict_specimen" - :value="scope.row.specimenType" - /> - </template> </el-table-column> - <el-table-column label="椤圭洰鍚嶇О" align="center" prop="proName" /> <el-table-column + label="閲囨牱缂栧彿" + align="center" + prop="jyxh" + :show-overflow-tooltip="true" + width="120" + /> + <el-table-column label="椤圭洰鍚嶇О" align="center" prop="proName" /> + <!-- <el-table-column label="鎬у埆" align="center" prop="proSex" width="90" - /> + /> --> <el-table-column - label="绌鸿吂" + label="鏄惁鍚堝苟" align="center" - prop="proCheckMethod" + prop="isMerge" width="90" - /> - <el-table-column - label="閲囨牱缂栧彿" - align="center" - prop="samplingNumber" - :show-overflow-tooltip="true" - width="120" - /> - <el-table-column + > + <template slot-scope="scope"> + <span + :style="{ color: scope.row.isMerge === 0 ? '' : '#409EFF' }" + > + {{ scope.row.isMerge === 0 ? "鏈悎骞�" : "宸插悎骞�" }} + </span> + </template> + </el-table-column> + + <!-- <el-table-column label="閲囨牱鐘舵��" align="center" prop="isSignFor" @@ -219,7 +256,7 @@ :value="scope.row.isSignFor" /> </template> - </el-table-column> + </el-table-column> --> <!-- <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" @@ -231,6 +268,29 @@ </template> </el-table-column> --> </el-table> + </div> + + <div id="printSection" style="display: none"> + <!-- 鍔ㄦ�佺敓鎴愬涓潯褰㈢爜鐨勫鍣� --> + <div v-for="(item, index) in selectList" :key="index"> + <svg :id="'barcode' + index"></svg> + <div class="name">{{ item.proName }}</div> + <div class="last"> + <p>{{ item.cusName }}</p> + <div> + <span>{{ item.customer.cusSex == 0 ? "鐢�" : "濂�" }}</span> + <span>{{ item.customer.age }}</span> + </div> + </div> + <div class="tj"> + <span>浣撴涓績</span> + <span>{{ item.cardId.substring(0, 14) }}</span> + </div> + <div class="tj"> + <span>{{ item.jyxh }}</span> + <span>{{ formatDate(item.applicationTime) }}</span> + </div> + </div> </div> </div> <!-- @@ -284,9 +344,13 @@ addSampling, updateSampling, confirmSampling, + getCusCyList, + mergeCaiYang, + chexiaoCaiYang, } from "@/api/sampling/sampling"; import { getNewDateList } from "@/api/hosp/order"; import moment from "moment"; +import ItemVue from "../../../layout/components/Sidebar/Item.vue"; export default { dicts: [ @@ -300,10 +364,12 @@ data() { return { list: [], - selectList: "", + selectList: [], + selectedRows: [], createTimeList: [], // 閬僵灞� loading: true, + loading1: true, // 閫変腑鏁扮粍 ids: [], // 缁戝畾鍗曢�夋寜閽� @@ -380,13 +446,21 @@ }, created() { // this.getNowTime(); - + this.getdate(); }, mounted() { this.$nextTick(() => { this.$refs.inputName.focus(); }); + }, + computed: { + disabled() { + return ( + this.selectList.length > 0 && + this.selectList[this.selectList.length - 1].isMerge === 1 + ); + }, }, methods: { getdate() { @@ -429,19 +503,53 @@ dateChangebirthday1(val) { this.createTimeList = val; }, + formatDate(applicationTime) { + // 纭繚 applicationTime 鏄湁鏁堢殑瀛楃涓� + if (applicationTime) { + return applicationTime.split(" ")[0]; // 閫氳繃绌烘牸鍒嗛殧鏃ユ湡鍜屾椂闂达紝鍙繑鍥炴棩鏈熼儴鍒� + } + return ""; // 濡傛灉 applicationTime 鏃犳晥锛岃繑鍥炵┖瀛楃涓� + }, /** 鏌ヨ浣撴閲囨牱绠$悊鍒楄〃 */ getList() { - this.loading = true; + this.loading1 = true; this.queryParams.isSignFor = this.tjStatus; - if(this.createTimeList){ + + if (this.createTimeList) { this.queryParams.beginTime = this.createTimeList[0]; - this.queryParams.endTime = this.createTimeList[1]; - }else if(this.createTimeList == null){ + this.queryParams.endTime = this.createTimeList[1]; + } else if (this.createTimeList == null) { this.queryParams.beginTime = null; - this.queryParams.endTime = null; + this.queryParams.endTime = null; } - getList(this.queryParams).then((response) => { + this.loading1 = false; + if (response.data) { + if (!response.data.list || response.data.list.length === 0) { + this.samplingList = []; + this.tableList = []; + this.loading1 = false; + this.loading = false; + return; + } else { + this.samplingList = response.data.list; + console.log(this.samplingList, 888); + // 鍒ゆ柇鏄惁闇�瑕佸埛鏂板彸杈硅〃鏍� + this.$nextTick(() => { + this.$refs.tb.toggleRowSelection(this.samplingList[0], true); + this.fetchData(this.samplingList[0].cusId); + }); + } + this.total = response.data.total; + this.loading1 = false; + } else { + this.samplingList = []; + this.tableList = []; + this.loading1 = false; + } + }); + + /* getList(this.queryParams).then((response) => { if (response.data) { if (response.data.list == null) { this.samplingList = []; @@ -449,6 +557,8 @@ this.loading = false; } else { this.samplingList = response.data.list; + console.log(this.samplingList,888); + this.loading = false; if (this.samplingList.length != 0) { this.$nextTick(() => { @@ -465,9 +575,8 @@ this.tableList = []; this.loading = false; } - }); + }); */ }, - // 鍙栨秷鎸夐挳 cancel() { this.open = false; @@ -506,15 +615,17 @@ }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { - this.createTimeList=[] + this.createTimeList = []; this.resetForm("queryForm"); this.handleQuery(); }, // 鍗曢�夋閫変腑鏁版嵁 - handleSelectionChange(selection) { + /* handleSelectionChange(selection) { this.selectList = selection; selection.forEach((element) => { this.tableList = element.list; + console.log(this.tableList, 111); + if (this.tableList.length != 0) { this.$nextTick(() => { this.$refs.tab1.toggleAllSelection(this.tableList, true); @@ -530,7 +641,272 @@ } this.single = selection.length !== 1; this.multiple = !selection.length; + }, */ + + handleSelectionChange(selection) { + // 娓呯┖鍙充晶琛ㄦ牸鐨勬暟鎹� + this.tableList = []; + + // 鍙湁涓�涓汉琚�変腑鏃惰繘琛屾搷浣� + if (selection.length === 1) { + const selectedPerson = selection[0]; // 鑾峰彇閫変腑鐨勯偅涓汉 + const cusId = selectedPerson.cusId; // 鍋囪cusId鍦ㄩ�変腑鐨勫璞′腑 + + this.fetchData(cusId); + } else { + // 濡傛灉閫変腑澶氫汉锛屽垯鍙栨秷閫変腑 + if (selection.length > 1) { + let del_row = selection.shift(); + this.$refs.tb.toggleRowSelection(del_row, false); // 璁剧疆杩欎竴琛屽彇娑堥�変腑 + } + } + + // 鏇存柊閫夋嫨鐘舵�� + this.single = selection.length === 1; + this.multiple = selection.length === 0; + + this.selectedRows = selection; }, + + fetchData(cusId) { + this.loading = true; // 鏄剧ず鍔犺浇鐘舵�� + + console.log(this.tjStatus, 999); + + getCusCyList(cusId, this.tjStatus) // 璋冪敤API鑾峰彇鏁版嵁 + .then((response) => { + if (response.data) { + this.tableList = response.data; // 纭 list 瀛樺湪鍚庡啀杩涜璧嬪�� + console.log(this.tableList, 123); + } else { + // 濡傛灉娌℃湁鏁版嵁鎴� list 涓虹┖锛屾竻绌鸿〃鏍煎苟鎻愮ず + this.tableList = []; + } + }) + .catch((error) => { + console.error("Error fetching data:", error); + }) + .finally(() => { + this.loading = false; // 闅愯棌鍔犺浇鐘舵�� + }); + }, + + /* 鐐瑰嚮鍚堝苟鎸夐挳 */ + /* Merging() { + // 妫�鏌ユ槸鍚﹂�変腑浜嗘暟鎹� + if (this.selectedRows.length === 0) { + this.$message.error("鑷冲皯閫変腑涓�涓汉"); + return; + } + + if (this.selectList.length === 0) { + this.$message.error("璇烽�夋嫨瑕佸悎骞堕」鐩�"); + return; + } + + // 鑾峰彇 tableList 绗竴琛岀殑 specimenTypeCode 浣滀负鍩哄噯 + const baseSpecimenTypeCode = this.selectList[0].specimenTypeCode; + + // 妫�鏌� specimenTypeCode 鏄惁涓�鑷� + const canMergeBySpecimenTypeCode = this.selectList.every( + (row) => row.specimenTypeCode === baseSpecimenTypeCode + ); + + // 鏍规嵁 canMergeBySpecimenTypeCode 鍒ゆ柇鏄惁鍚堝苟 + if (canMergeBySpecimenTypeCode) { + this.$message.success("鍚堝苟鎴愬姛銆�"); + console.log("鍚堝苟鐨勮:", this.selectedRows); + } else { + this.$message.error("椤圭洰鐨� 涓嶄竴鑷达紝鏃犳硶鍚堝苟锛�"); + } + }, */ + /* 鐐瑰嚮鍚堝苟鎸夐挳 */ + Merging() { + // 妫�鏌ユ槸鍚﹂�変腑浜嗘暟鎹� + if (this.selectedRows.length === 0) { + this.$message.error("鑷冲皯閫変腑涓�涓汉"); + return; + } + if (this.selectList.length === 0) { + this.$message.error("璇烽�夋嫨瑕佸悎骞堕」鐩�"); + return; + } + if (this.selectList.every((item) => item.isMerge === 0)) { + const baseSpecimenTypeCode = this.selectList[0].specimenTypeCode; + + // 妫�鏌� specimenTypeCode 鏄惁涓�鑷� + const canMergeBySpecimenTypeCode = this.selectList.every( + (row) => row.specimenTypeCode === baseSpecimenTypeCode + ); + + // 鏍规嵁 canMergeBySpecimenTypeCode 鍒ゆ柇鏄惁鍚堝苟 + if (canMergeBySpecimenTypeCode) { + let data = this.ids; + + mergeCaiYang(data).then((response) => { + this.$message.success("鍚堝苟鎴愬姛銆�"); + console.log("鍚堝苟鐨勮:", this.selectedRows); + // this.getList(); + this.fetchData(this.selectedRows[0].cusId); + }); + } else { + this.$message.error("鏍囨湰绫诲瀷涓嶄竴鑷达紝鏃犳硶鍚堝苟锛�"); + } + } else { + this.$message.error("璇ラ」鐩凡鍚堝苟"); + } + }, + + /** 鐐瑰嚮鎾ら攢鎸夐挳 **/ + Cancellation() { + let data = this.ids; + console.log("鎾ら攢"); + if (data.length === 0) { + // 濡傛灉娌℃湁宸插悎骞剁殑椤圭洰锛岀粰鍑烘彁绀轰俊鎭� + this.$message.error("娌℃湁宸插悎骞剁殑椤圭洰鍙互鎾ら攢锛�"); + return; + } + + console.log("鎾ら攢鐨勫凡鍚堝苟椤圭洰ID:", data); + + // 璋冪敤鎾ら攢閲囨牱鐨勬帴鍙� + chexiaoCaiYang(data) + .then((res) => { + if (res && res.code === 200) { + this.$message.success("鎾ら攢鎴愬姛锛�"); + // 鍒锋柊鏁版嵁鍒楄〃鎴栬繘琛屽叾浠栨搷浣� + // this.getList(); + this.fetchData(this.selectedRows[0].cusId); + } else { + this.$message.error(res.msg || "鎾ら攢澶辫触锛岃閲嶈瘯锛�"); + } + }) + .catch((error) => { + this.$message.error("璇锋眰澶辫触锛岃閲嶈瘯锛�"); + }); + + // chexiaoCaiYang(data).then((res) => {}); + }, + + /** 鐐瑰嚮琛ユ墦鏉$爜鎸夐挳 **/ + Collection() { + const jyxh = this.selectList.map((item) => item.jyxh); + // const selectedData = this.selectList.map((item) => ({ + // jyxh: item.jyxh, + // })); + console.log(this.selectList, 999); + // console.log(selectedData, 888); + + this.$nextTick(() => { + jyxh.forEach((number, index) => { + const barcodeContent = number; // 纭繚 jyxh 鏄湁鏁堢殑 + if (barcodeContent && barcodeContent !== "鏈彁渚涗綋妫�鍙�") { + JsBarcode(`#barcode${index}`, barcodeContent, { + format: "CODE128", + width: 2, + height: 50, + displayValue: false, + }); + } else { + console.log(`鏉″舰鐮佸唴瀹规棤鏁�: ${barcodeContent}`); // 璋冭瘯杈撳嚭 + } + }); + }); + + this.$nextTick(() => { + const barcodeElement = document.querySelector("#barcode"); + // const barcodeElements = selectedData.map((_, index) => + // document.querySelector(`#barcode${index}`) + // ); + + if (barcodeElement) { + barcodeElement.forEach((element) => { + if (element) { + console.log(element.innerHTML); // 鎵撳嵃鏉″舰鐮佺殑鍐呭锛岀湅鐪嬫槸鍚︾敓鎴愭垚鍔� + } + }); + } else { + console.log("鏉″舰鐮佸厓绱犳湭鎵惧埌"); + } + const newWindow = window.open("", "_blank", "width=800,height=600"); + const printContents = document.getElementById("printSection").innerHTML; + + console.log(printContents); + newWindow.document.write(` + <html> + <head> + <title>Print Barcode</title> + <style> + @media print { + * { + margin: 0; + padding: 0; /* 閲嶇疆鎵�鏈夊厓绱犵殑 margin 鍜� padding */ + box-sizing: border-box; /* 浣垮唴杈硅窛鍜岃竟妗嗗寘鍚湪鍏冪礌鐨勬�诲搴﹀拰楂樺害鍐� */ + } + body { + margin: 0; + padding: 0; + } + .barcode-container { + width: 100%; /* 鏍规嵁闇�瑕佽皟鏁� */ + text-align: center; /* 纭繚鏉″舰鐮佸眳涓� */ + } + .name { + padding: 0; + margin: -5px auto 0; + padding-left: 20px; + font-size: 18px; + width: 90%; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + overflow: hidden; + white-space: normal; + } + p { + margin: 0; + padding: 0; + } + svg { + display: block; + width: 70%; + margin: 0 auto; + height: auto; + margin-bottom: 0; + } + .last { + width: 66%; + display: flex; + font-size: 19px; + margin-left: 20px; + justify-content: space-between; + } + .last div span{ + margin-left: 10px + } + .tj{ + width: 70%; + display: flex; + font-size: 19px; + margin-left: 10px; + justify-content: space-between; + } + .tj span{ + margin-left:10px; + } + } + </style> + </head> + <body>${printContents}</body> + </html> + `); + newWindow.document.close(); + newWindow.focus(); + newWindow.print(); + newWindow.close(); + }); + }, + tableRowClassName({ row, rowIndex }) { for (let i = 0; i < this.selectList.length; i++) { if (row === this.selectList[i]) { @@ -540,7 +916,16 @@ }, handleChange(selection) { + console.log(selection); + selection.forEach((item, index) => { + if (item.cusSex == 0) { + item.cusSex = "鐢�"; + } else if (item.cusSex == 1) { + item.cusSex = "濂�"; + } + }); this.selectList = selection; + this.ids = selection.map((item) => item.id); }, @@ -559,6 +944,11 @@ // 纭閲囨牱 Confirmreceipt() { let data = this.ids; + if (data.length === 0) { + // 濡傛灉娌℃湁宸插悎骞剁殑椤圭洰锛岀粰鍑烘彁绀轰俊鎭� + this.$message.error("娌℃湁宸插悎骞剁殑椤圭洰鍙互鎾ら攢锛�"); + return; + } confirmSampling(data).then((res) => { this.$modal.msgSuccess("閲囨牱鎴愬姛"); this.getList(); @@ -629,6 +1019,16 @@ } .el-table .warning-row { - background: #e5f3ff !important; + background-color: #e5f3ff !important; } +/* .last { + display: flex; + justify-content: space-around; + justify-content: space-evenly; + background-color:aqua +} */ +/* .last p:nth-child(2) { + margin: 20px; + font-size: 16px; +} */ </style> diff --git a/src/views/system/bill/index.vue b/src/views/system/bill/index.vue index e59b977..ed34e17 100644 --- a/src/views/system/bill/index.vue +++ b/src/views/system/bill/index.vue @@ -18,7 +18,7 @@ </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNum"> <el-input - ref="inputName" + ref="inputName" style="width: 170px" v-model="queryParams.tjNum" placeholder="璇疯緭鍏ヤ綋妫�鍙�" @@ -73,7 +73,8 @@ <el-button type="primary" icon="el-icon-search" - size="mini" style="margin-right:15px;" + size="mini" + style="margin-right: 15px" @click="handleQuery" >鎼滅储</el-button > @@ -84,27 +85,35 @@ </el-form-item> </el-form> - <el-row :gutter="10" class="mb8" style="margin-left:10px"> + <el-row :gutter="10" class="mb8" style="margin-left: 10px"> <el-col :span="1.5"> <el-button - type="primary" - @click="handleReport" - :disabled="single" - size="mini" - v-hasPermi="['hosp:order:export']" - >琛ユ墦瀵兼鍗�</el-button - > + type="primary" + @click="handleReport" + :disabled="single" + size="mini" + v-hasPermi="['hosp:order:export']" + >琛ユ墦瀵兼鍗�</el-button + > </el-col> - <el-col :span="1.5"> + <!-- <el-col :span="1.5"> <el-button - type="primary" - size="mini" - @click="Collection" - :disabled="single" - >鏉$爜鐢熸垚</el-button - > - </el-col> - + type="primary" + size="mini" + @click="Collection" + :disabled="single" + >鏉$爜鐢熸垚</el-button + > + </el-col> --> + <div id="printSection" style="display: none"> + <svg id="barcode"></svg> + </div> + <!-- <img id="base64Image" alt="Base64 Image" /> --> + <!-- 鐢ㄤ簬鏄剧ず鏉″舰鐮佺殑瀹瑰櫒 --> + <!-- <div id="printArea"> + <svg id="barcode" v-if="barcodeVisible"></svg> + </div> --> + <!-- <el-button type="primary" size="mini" :disabled="multiple" @click="viewReport">浣撴鎶ュ憡</el-button> <el-button type="primary" size="mini" :disabled="multiple" @click="printHandle">鎵撳嵃灏忕エ</el-button> --> <!-- <el-col :span="1.5"> @@ -126,145 +135,144 @@ 娴嬭瘯 </div> --> - - <el-table - border - style="margin: 14px; width: 99%" - v-loading="loading" - :default-sort="{ prop: 'createTime', order: 'descending' }" - :data="orderList" - @selection-change="handleSelectionChange" - ref="multipleTable" + <el-table + border + style="margin: 14px; width: 99%" + v-loading="loading" + :default-sort="{ prop: 'createTime', order: 'descending' }" + :data="orderList" + @selection-change="handleSelectionChange" + ref="multipleTable" + > + <el-table-column + type="selection" + width="40px" + align="center" + height="10px" + fixed="left" + /> + <el-table-column + label="搴忓彿" + align="center" + prop="newID" + width="50px" + fixed="left" + height="10px" + /> + <el-table-column + label="濮撳悕" + align="center" + prop="tjCustomerName" + height="10px" + width="90px" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鎬у埆" + align="center" + prop="tjCustomerSex" + width="55px" + height="10px" + :show-overflow-tooltip="true" > - <el-table-column - type="selection" - width="40px" - align="center" - height="10px" - fixed="left" - /> - <el-table-column - label="搴忓彿" - align="center" - prop="newID" - width="50px" - fixed="left" - height="10px" - /> - <el-table-column - label="濮撳悕" - align="center" - prop="tjCustomerName" - height="10px" - width="90px" - :show-overflow-tooltip="true" - /> - <el-table-column - label="鎬у埆" - align="center" - prop="tjCustomerSex" - width="55px" - height="10px" - :show-overflow-tooltip="true" - > - <template slot-scope="scope"> - <span v-if="scope.row.tjCustomerSex == '0'">鐢�</span> - <span v-if="scope.row.tjCustomerSex == '1'">濂�</span> - <span v-if="scope.row.tjCustomerSex == '2'">鏈煡</span> - </template> - </el-table-column> - <el-table-column - label="骞撮緞" - align="center" - prop="tjCustomerAge" - height="10px" - width="60px" - :show-overflow-tooltip="true" - /> - <el-table-column - label="鐢佃瘽" - align="center" - prop="tjCustomerPhone" - :show-overflow-tooltip="true" - height="10px" - width="110px" - /> - <el-table-column - label="浣撴绫诲瀷" - align="center" - prop="tjType" - height="10px" - width="80px" - :show-overflow-tooltip="true" - > - <template slot-scope="scope"> - <span v-if="scope.row.tjType == '2'">涓汉</span> - <span v-if="scope.row.tjType == '1'">鍥㈤槦</span> - </template> - </el-table-column> - <el-table-column - label="浣撴鍙�" - align="center" - prop="tjNumber" - :show-overflow-tooltip="true" - width="160px" - /> - <el-table-column - label="鎵�閫夊椁�" - align="center" - prop="pacName" - height="10px" - :show-overflow-tooltip="true" - width="140px" - /> - <el-table-column - label="鐧昏浜�" - align="center" - prop="createBy" - height="10px" - :show-overflow-tooltip="true" - width="100px" - /> - <el-table-column - label="鐧昏鏃堕棿" - align="center" - prop="createTime" - width="155px" - height="10px" - sortable - :show-overflow-tooltip="true" - > - <template slot-scope="scope"> - <span>{{ parseTime(scope.row.createTime) }}</span> - </template> - </el-table-column> - <!-- <el-table-column label="瀹屾垚鏃堕棿" align="center" prop="finishTime" width="155px" height="10px" + <template slot-scope="scope"> + <span v-if="scope.row.tjCustomerSex == '0'">鐢�</span> + <span v-if="scope.row.tjCustomerSex == '1'">濂�</span> + <span v-if="scope.row.tjCustomerSex == '2'">鏈煡</span> + </template> + </el-table-column> + <el-table-column + label="骞撮緞" + align="center" + prop="tjCustomerAge" + height="10px" + width="60px" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鐢佃瘽" + align="center" + prop="tjCustomerPhone" + :show-overflow-tooltip="true" + height="10px" + width="110px" + /> + <el-table-column + label="浣撴绫诲瀷" + align="center" + prop="tjType" + height="10px" + width="80px" + :show-overflow-tooltip="true" + > + <template slot-scope="scope"> + <span v-if="scope.row.tjType == '2'">涓汉</span> + <span v-if="scope.row.tjType == '1'">鍥㈤槦</span> + </template> + </el-table-column> + <el-table-column + label="浣撴鍙�" + align="center" + prop="tjNumber" + :show-overflow-tooltip="true" + width="160px" + /> + <el-table-column + label="鎵�閫夊椁�" + align="center" + prop="pacName" + height="10px" + :show-overflow-tooltip="true" + width="140px" + /> + <el-table-column + label="鐧昏浜�" + align="center" + prop="createBy" + height="10px" + :show-overflow-tooltip="true" + width="100px" + /> + <el-table-column + label="鐧昏鏃堕棿" + align="center" + prop="createTime" + width="155px" + height="10px" + sortable + :show-overflow-tooltip="true" + > + <template slot-scope="scope"> + <span>{{ parseTime(scope.row.createTime) }}</span> + </template> + </el-table-column> + <!-- <el-table-column label="瀹屾垚鏃堕棿" align="center" prop="finishTime" width="155px" height="10px" :show-overflow-tooltip="true"> <template slot-scope="scope"> <span>{{ parseTime(scope.row.finishTime) }}</span> </template> </el-table-column> --> - <!-- <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reportTime" width="155px" height="10px" + <!-- <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reportTime" width="155px" height="10px" :show-overflow-tooltip="true"> <template slot-scope="scope"> <span>{{ parseTime(scope.row.reportTime) }}</span> </template> </el-table-column> --> - <el-table-column - label="澶囨敞" - align="center" - prop="remark" - height="10px" - :show-overflow-tooltip="true" - /> - <!-- <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding fixed-width" height="10px" + <el-table-column + label="澶囨敞" + align="center" + prop="remark" + height="10px" + :show-overflow-tooltip="true" + /> + <!-- <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding fixed-width" height="10px" width="60px"> <template slot-scope="scope"> <el-button size="mini" type="text" icon="el-icon-document" @click="investigation(scope.row)" v-hasPermi="['hosp:order:edit']" title="璇︽儏" style="margin-right: 15px"></el-button> </template> </el-table-column> --> - </el-table> + </el-table> <div class="pag"> <div class="pag1"> @@ -459,7 +467,7 @@ </template> <script> -import print from "print-js"; + import { listOrder, getNumber, @@ -468,12 +476,13 @@ hasReport, hasPrintCode, getOrderList, - getNewDateList + getNewDateList, } from "@/api/hosp/order"; import moment from "moment"; import ViewPdf from "@/components/ViewPdf"; import { projectGetList, getOrder } from "@/api/system/tijian"; import { SubmitCompany, getCompany, queryCompany } from "@/api/team/tuanti"; +import JsBarcode from "jsbarcode"; export default { components: { ViewPdf, @@ -631,19 +640,32 @@ }, ], }, + barcode: "", // 瀛樺偍鏉$爜鍊� + barcodeVisible: false, // 鎺у埗鏉″舰鐮佹槸鍚﹀彲瑙� + single: false, // 鎺у埗鎸夐挳鏄惁绂佺敤鐨勬潯浠� }; }, created() { // this.getNowTime(); - + this.Company(); this.getdate(); }, - mounted() { - this.$nextTick(() => { - this.$refs.inputName.focus(); - }); - }, + // mounted() { + // // const base64String = + // // "data:image/jpeg;base64,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"; + // // const binaryString = atob(base64String.split(",")[1]); + // // // 灏嗕簩杩涘埗鏁版嵁杞崲涓� Blob 瀵硅薄 + // // const blob = new Blob([binaryString], { type: "image/png" }); + // // // 鍒涘缓 URL 瀵硅薄骞跺皢鍏跺垎閰嶇粰鍥惧儚鐨� src 灞炴�� + // // const image = document.getElementById("base64Image"); + // // console.log(image, 1111); + // // // image.src = URL.createObjectURL(blob); + // // image.src = base64String; + // // this.$nextTick(() => { + // // this.$refs.inputName.focus(); + // // }); + // }, methods: { getdate() { getNewDateList().then((res) => { @@ -803,37 +825,88 @@ }); }, // 閲囪鍗� - Collection() { - let tjNumber = this.barcode; - hasPrintCode(tjNumber).then((response) => { - this.$message({ - showClose: true, - message: "鏉$爜宸茬敓鎴愶紒", - type: "success", - }); - }); - }, - - // onSubmit() { - // console.log("submit!"); + // Collection() { + // let tjNumber = this.barcode; + // hasPrintCode(tjNumber).then((response) => { + // this.$message({ + // showClose: true, + // message: "鏉$爜宸茬敓鎴愶紒", + // type: "success", + // }); + // }); // }, + // Collection() { + // let tjNumber = this.barcode; + // JsBarcode("#barcode", tjNumber, { + // format: "CODE128", + // width: 2, + // height: 100, + // displayValue: true, + // }); + + // this.$nextTick(() => { + // const barcodeElement = document.querySelector("#barcode"); + // if (barcodeElement) { + // console.log(barcodeElement.innerHTML); // 鎵撳嵃鏉″舰鐮佺殑鍐呭锛岀湅鐪嬫槸鍚︾敓鎴愭垚鍔� + // } else { + // console.log("鏉″舰鐮佸厓绱犳湭鎵惧埌"); + // } + + // const printContents = document.getElementById("printSection").innerHTML; + // const newWindow = window.open("", "_blank", "width=800,height=600"); + // console.log(printContents); + // newWindow.document.write(` + // <html> + // <head> + // <title>Print Barcode</title> + // <style> + // @media print { + // body { + // width: 80mm; + // margin: 0; + // padding: 0; + // height: 25mm; + // } + // /* 灏嗘潯褰㈢爜灞呬腑 */ + // #barcode { + // display: block; + // // margin-left: 50%; + // text-align: center; + // width: 100%; + // height: auto; + // } + // /* 璁╂潯褰㈢爜鍦ㄦ墦鍗版椂鏄剧ず */ + // svg { + // display: block; + // } + // </style> + // </head> + // <body>${printContents}</body> + // </html> + // `); + // newWindow.document.close(); + // newWindow.focus(); + // newWindow.print(); + // newWindow.close(); + // }); + // }, + dateChangebirthday1(val) { this.startTime = val; }, /** 鏌ヨ浣撴璁板綍鍒楄〃 */ getList() { - if(this.createTimeList){ + if (this.createTimeList) { this.queryParams.djbeginTime = this.createTimeList[0]; - this.queryParams.djendTime = this.createTimeList[1]; - }else if(this.createTimeList == null){ + this.queryParams.djendTime = this.createTimeList[1]; + } else if (this.createTimeList == null) { this.queryParams.djbeginTime = null; - this.queryParams.djendTime = null; - }else{ + this.queryParams.djendTime = null; + } else { this.queryParams.djbeginTime = this.startTime[0]; - this.queryParams.djendTime = this.startTime[1]; + this.queryParams.djendTime = this.startTime[1]; } - - + this.loading = true; getOrderList(this.queryParams).then((response) => { this.orderList = response.data.list; @@ -900,9 +973,9 @@ }; this.resetForm("form"); }, - hb(){ + hb() { // console.log(this.queryParams.tjNum); - if (this.queryParams.tjNum != undefined) { + if (this.queryParams.tjNum != undefined) { this.handleQuery(); } }, @@ -913,7 +986,7 @@ }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { - this.createTimeList=[] + this.createTimeList = []; this.resetForm("queryForm"); this.handleQuery(); }, @@ -1075,7 +1148,7 @@ }, }; </script> -<style lang="scss"> +<style lang="scss" scoped> .pag { width: 100%; display: flex; @@ -1173,4 +1246,49 @@ display: flex; justify-content: center; } + +.print-container { + width: 300px; /* 璁惧畾瀹藉害浠ョ‘淇濇墦鍗版椂甯冨眬鍚堥�� */ + padding: 10px; + border: 1px solid #000; /* 鍙�夛細缁欐墦鍗板尯鍩熷姞涓�涓竟妗� */ + font-family: Arial, sans-serif; +} + +.barcode-section { + text-align: center; + margin-bottom: 10px; +} + +.info-section { + font-size: 14px; + line-height: 1.5; +} + +.info-section p { + margin: 2px 0; /* 鎺у埗淇℃伅闂寸殑闂磋窛 */ +} + +#barcode { + display: block; + margin: 0 auto; +} + +.info-section p { + margin: 2px 0; + font-size: 14px; +} + +/* 鎵撳嵃鏃堕殣钘忔墍鏈夊叾浠栧唴瀹� */ +// @media print { +// #barcode { +// width: 58mm; +// height: auto; +// } +// #printSection { +// display: flex; +// justify-content: center; +// align-items: center; +// height: 100vh; /* 鐖跺鍣ㄩ珮搴︿负鍏ㄩ〉楂樺害 */ +// } +// } </style> diff --git a/src/views/system/biol/index.vue b/src/views/system/biol/index.vue index 10ee5ba..896284f 100644 --- a/src/views/system/biol/index.vue +++ b/src/views/system/biol/index.vue @@ -27,7 +27,7 @@ @blur="hb" /> </el-form-item> - <el-form-item label="鎶ュ憡鏃堕棿" prop="createTimeList"> + <el-form-item label="鐧昏鏃堕棿" prop="createTimeList"> <el-date-picker clearable v-model="createTimeList" diff --git a/src/views/system/tijian/index.vue b/src/views/system/tijian/index.vue index f84b262..a0587e3 100644 --- a/src/views/system/tijian/index.vue +++ b/src/views/system/tijian/index.vue @@ -2192,7 +2192,8 @@ this.discount = this.form.discount; } if (this.form.tjType === null) { - this.form.tjType = "2"; + // this.form.tjType = "2"; + this.form.tjType = "3"; } if (this.form.reservationId != null) { if (this.form.groupingId) { diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue index 5e0ed5e..7ad4673 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/user/index.vue @@ -642,7 +642,7 @@ </div> <!-- 鐢ㄦ埛瀵煎叆瀵硅瘽妗� --> - <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body> + <!-- <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body> <el-upload ref="upload" :limit="1" accept=".xlsx, .xls" :headers="upload.headers" :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag> @@ -662,7 +662,7 @@ <el-button type="primary" @click="submitFileForm">纭� 瀹�</el-button> <el-button @click="upload.open = false">鍙� 娑�</el-button> </div> - </el-dialog> + </el-dialog> --> <!-- 閲嶇疆瀵嗙爜瀵硅瘽妗� --> <el-dialog title="鎻愮ず" :visible.sync="dialogVisible1" width="30%" :before-close="handleClose"> diff --git a/vue.config.js b/vue.config.js index 0bcde09..e5ab00d 100644 --- a/vue.config.js +++ b/vue.config.js @@ -53,7 +53,8 @@ // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { // target: `https://ltpeis.xaltjdkj.cn:5801/`, - target: `http://192.168.1.113:5011`, + target: `http://192.168.1.3:5011`, + // target: `http://192.168.1.113:5011`, // // target: `http://192.168.0.99:8080/ltkj-admin`, // target: `https://ltpeis.xaltjdkj.cn:5011/ltkj-admin`, // target: `http://10.168.0.9:5011`, -- Gitblit v1.8.0