From 8022f7036945b75f82f2dfc43055623f81ed98f6 Mon Sep 17 00:00:00 2001 From: yxh <172933527@qq.com> Date: 星期五, 23 五月 2025 22:42:56 +0800 Subject: [PATCH] yxh --- src/views/project/donationdetails/index.vue | 308 +++++++++++++++++++++++++++++++++------------------ 1 files changed, 200 insertions(+), 108 deletions(-) diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue index a95f530..6d1dd35 100644 --- a/src/views/project/donationdetails/index.vue +++ b/src/views/project/donationdetails/index.vue @@ -1324,7 +1324,7 @@ prop="organno" /> <el-table-column - label="绯荤粺缂栧彿" + label="鍒嗛厤绯荤粺缂栧彿" align="center" width="120" prop="caseno" @@ -1332,12 +1332,12 @@ <template slot-scope="scope"> <el-input v-model="scope.row.caseno" - placeholder="绯荤粺缂栧彿" + placeholder="鍒嗛厤绯荤粺缂栧彿" /> </template> </el-table-column> <el-table-column - label="鎺ユ敹鏃堕棿" + label="鍒嗛厤鎺ユ敹鏃堕棿" align="center" width="200" prop="applicanttime" @@ -1350,7 +1350,7 @@ v-model="scope.row.applicanttime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" - placeholder="閫夋嫨鎺ユ敹鏃堕棿" + placeholder="閫夋嫨鍒嗛厤鎺ユ敹鏃堕棿" > </el-date-picker> </template> @@ -1379,6 +1379,7 @@ <org-selecter ref="tranHosSelect" :org-type="'4'" + :dataList="dataList" v-model="scope.row.transplanthospitalno" /> </div> @@ -1788,6 +1789,7 @@ <org-selecter ref="tranHosSelect" :org-type="'4'" + :dataList="dataList" v-model="scope.row.gainhospitalno" /> </div> @@ -2022,12 +2024,13 @@ align="center" width="220" prop="hospitalno" - v-if="actives == 6" + > <template slot-scope="scope"> <org-selecter ref="tranHosSelect" :org-type="'4'" + :dataList="dataList" v-model="scope.row.hospitalno" style="width: 100%" /> @@ -2401,7 +2404,8 @@ addDonatebaseinfo, updateDonatebaseinfo, getDonatebaseinfoflow, - fileCase + fileCase, + getDonationNumber } from "@/api/project/donatebaseinfo"; import { listMedicalevaluation, @@ -2485,6 +2489,7 @@ infoid: 736, drawer: false, form: {}, + istb: false, activeName: "", tableDatafile: [ { @@ -2494,6 +2499,7 @@ type: "success" } ], + dataList: [], medicineform: { infoid: null }, @@ -2750,6 +2756,7 @@ created() { this.Getnetworkheader(); + this.getdataList(); this.infoid = this.$route.query.id; }, mounted() { @@ -2789,6 +2796,7 @@ } }); + // 琛ㄥ崟鏁版嵁 getDonatebaseinfo(this.infoid).then(response => { this.form = response.data; @@ -2797,10 +2805,14 @@ } else { this.showTerminationBtn = 0; } + + this.actives = response.data.workflow; this.workflow = response.data.workflow; response.data.sex = parseInt(response.data.sex); this.form.id = response.data.id; + + this.form.diseasetype = this.form.diseasetype.split(","); this.form.infectious = this.form.infectious.split(","); this.form.selfwill = this.form.selfwill.split(","); @@ -2808,6 +2820,8 @@ this.form.infosources = this.form.infosources.split(","); this.form.kinship = this.form.kinship.split(","); this.form.patientstate = this.form.patientstate.split(","); + + this.open = true; this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃"; this.registerAddresss.sheng = response.data.registerprovincename; @@ -2816,6 +2830,8 @@ this.residenceAddresss.shi = response.data.residencecityname; this.residenceAddresss.qu = response.data.residencetownname; this.registerAddresss.qu = response.data.registertownname; + + // 鑾峰彇浜岀骇琛� this.GetAttacheddata(); }); @@ -2825,6 +2841,7 @@ let searchParam = { infoid: this.infoid }; + console.log(this.procureddata, "procureddata"); if (this.actives == 1) { this.activetele = "鍖诲璇勪及"; @@ -2893,21 +2910,32 @@ // ); } }); - } else if (this.actives == 5 && !this.witnessform.id) { + } else if (this.actives == 5) { // 涓嶅瓨鍦ㄦ椂鑾峰彇鍣ㄥ畼淇℃伅 - if (this.witnessform.id) { + if (this.procureddata[0] && !this.istb) { return; } + listDonationwitnessorgan(searchParam).then(res => { if (res.code == 200) { if (res.rows[0]) { this.procureddata = res.rows; - this.procureddata.infoid = this.infoid; + // this.procureddata.infoid = this.infoid; } else { this.procureddata = this.allocateddata.filter( - obj => obj.organname !== "宸﹀崐鑲�" && obj.organname !== "鍙冲崐鑲�" + obj => + obj.organname !== "宸﹀崐鑲�" && + obj.organname !== "鍙冲崐鑲�" && + obj.organname !== "宸﹀鍙�" && + obj.organname !== "鍙充笁鍙�" && + obj.organname !== "宸﹁倽" && + obj.organname !== "鍙宠倽" ); - this.procureddata.infoid = this.infoid; + this.procureddata = this.procureddata.map(obj => { + obj.id = null; + return obj; + }); + // this.procureddata.infoid = this.infoid; } this.organList.organprocured = []; for (let i = 0; i < this.procureddata.length; i++) { @@ -2926,6 +2954,7 @@ if (response.data) { this.witnessform = response.data; this.witnessform.infoid = this.infoid; + this.istb = false; } } else { // this.$modal.msgError( @@ -2935,35 +2964,50 @@ }); } else if (this.actives == 6) { this.activetele = "瀹屾垚鐧昏"; - if (this.accomplishform.id) { + if (this.transplantdata[0] && !this.istb) { return; } + console.log("瀹屾垚鐧昏鍔犺浇鏁版嵁..."); - if (!this.organList.organtransplant[0]) { - listDonatecomporgan(searchParam).then(res => { - if (res.code == 200) { - if (res.rows[0]) { - this.transplantdata = res.rows; - this.transplantdata.infoid = this.infoid; - } else { - this.transplantdata = this.allocateddata; - this.transplantdata.infoid = this.infoid; - } - for (let i = 0; i < this.transplantdata.length; i++) { - this.organList.organtransplant.push( - this.transplantdata[i].organno - ); - } + listDonatecomporgan(searchParam).then(res => { + if (res.code == 200) { + console.log("listDonatecomporgan 鏁版嵁锛�", res.rows); + + if (res.rows[0]) { + this.transplantdata = res.rows; + // this.transplantdata.infoid = this.infoid; } else { - // this.$modal.msgError( - // "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall) - // ); + this.transplantdata = this.allocateddata; + this.transplantdata = this.transplantdata.map(obj => { + obj.id = null; + if ( + obj.organname == "宸︾溂瑙掕啘" || + obj.organname == "鍙崇溂瑙掕啘" + ) { + obj.transplantstate = 2; + } + return obj; + }); + + this.transplantdata.infoid = this.infoid; } - }); - } + for (let i = 0; i < this.transplantdata.length; i++) { + this.organList.organtransplant.push( + this.transplantdata[i].organno + ); + } + } else { + // this.$modal.msgError( + // "鍣ㄥ畼鍒楄〃鑾峰彇澶辫触锛�" + JSON.stringify(resall) + // ); + } + }); + // 鑾峰彇瀹屾垚鐧昏淇℃伅 listDonatecompletioninfo(searchParam).then(response => { - if (response.code == 200 && response.rows.length) { + if (response.code == 200 && response.rows.length) { + console.log("listDonatecompletioninfo 鏁版嵁锛�", response.rows[0]); + this.accomplishform = response.rows[0]; this.accomplishform.infoid = this.infoid; } else { @@ -2972,6 +3016,22 @@ }); } else if (this.actives == 0) { this.activetele = "娼滃湪鎹愮尞"; + } + if (!this.allocateddata[0]) { + listDonateorgan(searchParam).then(res => { + if (res.code == 200) { + console.log("listDonateorgan 鏁版嵁锛�", res.rows); + if (res.rows[0]) { + this.allocateddata = res.rows; + this.allocateddataform.allocateddata = this.allocateddata; + } + this.organList.organallocated = []; + for (let i = 0; i < res.rows.length; i++) { + this.organList.organallocated.push(this.allocateddata[i].organno); + } + } else { + } + }); } }, /** 淇濆瓨涓昏〃鎸夐挳 */ @@ -2983,7 +3043,9 @@ this.form.birthday = this.$moment(this.form.birthday).format( "YYYY-MM-DD HH:mm:ss" ); + this.form.diseasetype = this.form.diseasetype.join(","); + this.form.infectious = this.form.infectious.join(","); this.form.selfwill = this.form.selfwill.join(","); this.form.othercases = this.form.othercases.join(","); @@ -3041,7 +3103,9 @@ } updateDonatebaseinfo(this.form).then(response => { this.$modal.msgSuccess("淇濆瓨鎴愬姛"); - Modifydonationattachment(this.donatelist).then(res => {}); + Modifydonationattachment(this.donatelist).then(res => { + this.listDonateannex(); + }); this.Getbasicinformation(); // this.Processvalidation(); this.open = false; @@ -3051,7 +3115,9 @@ addDonatebaseinfo(this.form).then(response => { if (response.code == 200) { this.$modal.msgSuccess("鏂板鎴愬姛"); - Modifydonationattachment(this.donatelist).then(res => {}); + Modifydonationattachment(this.donatelist).then(res => { + this.listDonateannex(); + }); this.Getbasicinformation(); // this.Processvalidation(); this.open = false; @@ -3066,11 +3132,11 @@ // 淇濆瓨浜岀骇琛ㄦ寜閽� Savethedetails() { console.log(this.actives); - this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); if (this.actives == 1) { this.medicineform.infoid = this.infoid; this.$refs["medicineform"].validate(valid => { if (valid) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); if (this.medicineform.id != null) { updateMedicalevaluation(this.medicineform).then(response => { this.$modal.msgSuccess("鍖诲璇勪及淇℃伅淇敼鎴愬姛"); @@ -3091,6 +3157,7 @@ this.affirmform.kinship = this.kinship.join(","); this.$refs["affirmform"].validate(valid => { if (valid) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); if (this.affirmform.id != null) { this.affirmform.residenceprovincename = this.defultAddresss.sheng; this.affirmform.residencecityname = this.defultAddresss.shi; @@ -3115,6 +3182,7 @@ this.ethicform.infoid = this.infoid; this.$refs["ethicform"].validate(valid => { if (valid) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); if (this.ethicform.id != null) { // updateDonateflowchart(this.ethicform).then(response => { updateEthicalreviewopinions(this.ethicform).then(res => { @@ -3132,27 +3200,20 @@ } }); } else if (this.actives == 4) { - this.procureddata.infoid = this.infoid; + // this.procureddata.infoid = this.infoid; this.$refs["allocateddataform"].validate(valid => { - /** - let rows = []; - this.allocateddata.map(item => { - if (item.id) { - item.applicanttime = formatDate(item.applicanttime); - updateDonateorgan(item).then(response => { }); - } else { - item.infoid=this.infoid; - rows.push(item); - } - }); - if (rows.length) { - addOrganallocation(rows).then(res => { - this.$modal.msgSuccess("鍣ㄥ畼鎹愮尞淇℃伅鏂板鎴愬姛"); - }); - } - */ + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); + this.allocateddata.map(item => { item.applicanttime = formatDate(item.applicanttime); + }); + this.allocateddata.forEach(item => { + const objs = this.dataList.find( + obj => obj.organizationid == item.transplanthospitalno + ); + if (objs) { + item.transplanthospitalname = objs.organizationname; + } }); saveDonateorgan(this.allocateddata).then(res => { if (res.code == 200) { @@ -3173,6 +3234,7 @@ coordinatedusernameIndex ].reportName; } + //鍗忚皟鍛�2 let coordinatedusernametIndex = this.coordinatorlist1.findIndex( item => this.witnessform.coordinateduseridt == item.reportNo @@ -3184,79 +3246,106 @@ } if (valid) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); + if (this.witnessform.id != null) { updateDonationwitness(this.witnessform).then(response => { this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅淇敼鎴愬姛"); - this.$modal.closeLoading(); + this.form.donationcategory = this.witnessform.donationcategory; + this.Processvalidation(); + + this.procureddata.forEach(item => { + const objs = this.dataList.find( + obj => obj.organizationid == item.gainhospitalno + ); + if (objs) { + item.gainhospitalname = objs.organizationname; + } + }); + //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹� + saveDonationwitnessorgan(this.procureddata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); + } + this.$modal.closeLoading(); + }); }); } else { addDonationwitness(this.witnessform).then(response => { - this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅鏂板鎴愬姛"); - this.$modal.closeLoading(); + if (response.code === 200) { + this.$modal.msgSuccess("鑾峰彇瑙佽瘉淇℃伅鏂板鎴愬姛"); + this.form.donationcategory = this.witnessform.donationcategory; + let data = JSON.parse(JSON.stringify(this.form)); + data.diseasetype = ""; + data.infectious = data.infectious.join(","); + data.selfwill = data.selfwill.join(","); + data.othercases = data.othercases.join(","); + data.infosources = data.infosources.join(","); + data.kinship = data.kinship.join(","); + data.patientstate = data.patientstate.join(","); + // 鑾峰彇鎹愮尞缂栧彿 + getDonationNumber(data).then(res => { + this.form.donorno = res.msg; + this.istb = true; + this.Processvalidation(); + }); + //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹� + saveDonationwitnessorgan(this.procureddata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); + } + this.$modal.closeLoading(); + }); + } else { + this.$modal.msgError("鑾峰彇瑙佽瘉淇℃伅鏂板澶辫触"); + this.$modal.closeLoading(); + } }); } - - //淇濆瓨鍣ㄥ畼鑾峰彇琛ㄦ暟鎹� - this.procureddata.infoid = this.infoid; - saveDonationwitnessorgan(this.procureddata).then(res => { - if (res == 200) { - this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); - } - }); - - this.form.donationcategory = this.witnessform.donationcategory; - this.Processvalidation(); } }); } else if (this.actives == 6) { this.accomplishform.infoid = this.infoid; this.$refs["accomplishform"].validate(valid => { if (valid) { - // 淇濆瓨鎹愮尞鍣ㄥ畼绉绘淇℃伅 - this.transplantdata.infoid = this.infoid; - console.log(this.form); - this.transplantdata.forEach(item => { - listDonorchargeorgan({ - infoid: item.infoid, - organno: item.organno - }).then(res => { - console.log("aaa"); - if (res.rows[0]) { - let objfn = res.rows[0]; - console.log(objfn, "sass"); + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); - objfn.caseno = item.caseno; - objfn.hospitalno = item.hospitalno; - objfn.name = item.name; - objfn.receiveTime = item.transplanttime; - console.log(objfn, "sass"); - updateDonorchargeorgan(objfn).then(res1 => {}); - } else { - item.id = null; - addDonorchargeorgan(item).then(res2 => {}); - } - }); + this.transplantdata.forEach(item => { + item.donorname = this.form.name; }); - saveDonatecomporgan(this.transplantdata).then(res => { - if (res == 200) { - this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鑾峰彇淇℃伅淇濆瓨鎴愬姛锛�"); - } else { - this.$modal.msgSuccess(res.msg); - return; + this.transplantdata.forEach(item => { + const objs = this.dataList.find( + obj => obj.organizationid == item.hospitalno + ); + if (objs) { + item.hospitalname = objs.organizationname; } }); - - console.log(this.accomplishform.id, "瀹屾垚id"); // 淇濆瓨纭淇℃伅 if (this.accomplishform.id) { updateDonatecompletioninfo(this.accomplishform).then(response => { this.$modal.msgSuccess("瀹屾垚鐧昏淇℃伅淇敼鎴愬姛"); - this.$modal.closeLoading(); + saveDonatecomporgan(this.transplantdata).then(res => { + if (res == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鐧昏淇℃伅淇濆瓨鎴愬姛锛�"); + } else { + this.$modal.msgSuccess(res.msg); + } + this.$modal.closeLoading(); + }); }); } else { addDonatecompletioninfo(this.accomplishform).then(response => { this.$modal.msgSuccess("瀹屾垚鐧昏鎴愬姛"); - this.$modal.closeLoading(); + saveDonatecomporgan(this.transplantdata).then(res => { + if (res.code == 200) { + this.$modal.msgSuccess("鎹愮尞鍣ㄥ畼鐧昏淇℃伅淇濆瓨鎴愬姛锛�"); + } else { + this.$modal.msgError(res.msg); + } + this.$modal.closeLoading(); + }); + this.istb = true; // this.$modal // .confirm("妗堜緥宸插畬鎴愭槸鍚﹁烦杞渚嬭垂鐢ㄩ〉闈㈣繘琛岃垂鐢ㄥ崟淇濆瓨锛�") // .then(() => { @@ -3286,6 +3375,10 @@ this.$modal.msgWarning("璇峰厛瀹屾垚鍓嶉儴姝ラ"); } // } + }, + // 鑾峰彇閮ㄩ棬鏁版嵁缂撳瓨 + getdataList() { + this.$store.dispatch("getdataList").then(() => {}); }, // 鍣ㄥ畼鍒嗛厤鏍忕洰鎺у埗 changeorganState(value) { @@ -3514,8 +3607,8 @@ }, // 鏇存敼杩涚▼鏁堥獙 Processvalidation() { - if (this.form.workflow + 1 == this.actives || this.actives == 6) { - if (this.form.workflow <= 6) { + if (this.form.workflow + 1 == this.actives) { + if (this.form.workflow < 6) { this.form.workflow++; } else { } @@ -3523,8 +3616,7 @@ // this.GetAttacheddata(); } else if (this.form.workflow > this.actives) { this.submitForm(); - Modifydonationattachment(this.donatelist).then(res => {}); - this.listDonateannex(); + // Modifydonationattachment(this.donatelist).then(res => {}); // this.GetAttacheddata(); } else { this.submitForm(); @@ -3534,8 +3626,8 @@ }, // 鎻愪氦褰掓。 Reportforreview() { - if (this.form.workflow == 9) { - this.form.workflow = 8; + if (this.form.workflow == 8) { + this.form.workflow = 7; this.submitForm(); this.$router.go(-1); this.$message({ @@ -3553,7 +3645,7 @@ if (res.code == 500) { this.$message.error(res.msg); } else { - this.form.workflow = 9; + this.form.workflow = 8; this.submitForm(); this.$message({ type: "success", -- Gitblit v1.9.3