From 57318307b301d2b0d63f8a91fe6a03fa4982a972 Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期四, 03 四月 2025 17:46:35 +0800 Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb --- src/views/doctor/checkAll/index.vue | 1228 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 800 insertions(+), 428 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index cd5b5d4..695b888 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -152,6 +152,7 @@ width="110px" /> --> <el-table-column + v-if="tjStatus === '1'" label="瀹℃牳鏃堕棿" align="center" prop="shsj" @@ -159,9 +160,17 @@ width="180px" /> <el-table-column + v-if="tjStatus === '0'" label="瀹屾垚鏃堕棿" align="center" prop="finishTime" + :show-overflow-tooltip="true" + width="160px" + /> + <el-table-column + label="濂楅鍚嶇О" + align="center" + prop="pacName" :show-overflow-tooltip="true" width="160px" /> @@ -190,16 +199,13 @@ /> </template> </el-table-column> - <el-table-column label="鎿嶄綔" align="center" width="90px" fixed="right"> + <el-table-column + label="鎿嶄綔" + align="center" + width="120px" + fixed="right" + > <template slot-scope="scope"> - <el-button - fixed="right" - title="澶勬柟" - type="text" - size="mini" - @click.stop="rowClick(scope.row)" - icon="el-icon-edit-outline" - ></el-button> <el-button fixed="right" title="璇︽儏" @@ -208,6 +214,24 @@ @click.stop="handleClick(scope.row)" icon="el-icon-document-copy" ></el-button> + <el-button + fixed="right" + title="鍚屾" + type="text" + size="mini" + @click.stop="tongbu(scope.row)" + v-if="scope.row.tjStatus != '1'" + icon="el-icon-upload2" + ></el-button> + <el-button + fixed="right" + title="澶勬柟" + type="text" + size="mini" + @click.stop="rowClick(scope.row)" + icon="el-icon-edit-outline" + ></el-button> + <!-- <el-button type="text" size="mini" @click="generate(scope.row)" v-if="scope.row.tjStatus=='1'">鐢熸垚</el-button> --> <el-button type="text" @@ -242,14 +266,14 @@ </div> </template> - <!-- 鐐瑰嚮寮瑰嚭妗� --> + <!-- 鐐瑰嚮寮瑰嚭妗� show-close="true"--> <el-drawer custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" size="100%" - show-close="true" + > <div class="top"> <table @@ -350,274 +374,287 @@ </div> </div> <div class="box"> - <div - class="left" - style=" - font-size: 14px; - width: 1100px; - margin-left: 10px; - padding: 0 0 50px; - " - > - <div v-for="(item, index) in changedate" :key="index"> - <div - style=" - text-align: center; - background-color: #aad8df; - margin-top: 10px; - " - > - {{ item.parent || "" }} - </div> - <div v-if="item.xmlb == '0'"> - <el-table - :data="item.sons" - border - style="width: 100%" - :row-style="changRed" - :header-cell-style="{ background: '#aad8df' }" + <div class="left-container"> + <div class="left"> + <div v-for="(item, index) in changedate" :key="index"> + <div + style=" + text-align: center; + background-color: #aad8df; + margin-top: 10px; + " > - <el-table-column align="center" label="妫�娴嬮」鐩�" width="464"> - <template slot-scope="scope"> - <div>{{ scope.row.proName }}</div> - </template> - </el-table-column> - <el-table-column - align="center" - prop="proResult" - label="妫�娴嬬粨鏋�" - width="180" + {{ item.parent || "" }} + </div> + <div v-if="item.xmlb == '0'"> + <el-table + :data="item.sons" + border + style="width: 100%" + :row-style="changRed" + :header-cell-style="{ background: '#aad8df' }" > - </el-table-column> - <el-table-column align="center" prop="" label="鍗曚綅"> - <template slot-scope="scope"> - <div v-if="scope.row.project != null"> - {{ scope.row.standard.company || "" }} - </div> - <div v-else>{{ scope.row.proAdvice }}</div> - </template> - </el-table-column> - <el-table-column align="center" prop="" label=" 鍙傝�冭寖鍥�"> - <template slot-scope="scope"> - <div v-if="scope.row.project != null"> - {{ - scope.row.standard.tjStandardGtValue || - "/" + "-" + scope.row.standard.tjStandardLtValue || - "/" - }} - </div> - <div v-else>{{ scope.row.stanId || "/" }}</div> - </template> - </el-table-column> - </el-table> - <table style="width: 100%" v-if="tjproject != '1'"> - <tr - style="border: 1px solid #dfe6ec; border-collapse: collapse" - > - <td - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 7%; - " + <el-table-column align="center" label="妫�娴嬮」鐩�" width="464"> + <template slot-scope="scope"> + <div>{{ scope.row.proName }}</div> + </template> + </el-table-column> + <el-table-column + align="center" + prop="proResult" + label="妫�娴嬬粨鏋�" + width="180" > - 灏忕粨锛� - </td> - <td style="border: 1px solid #dfe6ec; width: 45%"> - <el-input v-model="item.remark" disabled></el-input> - </td> - <td - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 15%; - " - > - 涓绘鍖诲笀锛� - </td> - <td + </el-table-column> + <el-table-column align="center" prop="" label="鍗曚綅"> + <template slot-scope="scope"> + <div v-if="scope.row.project != null"> + {{ scope.row.standard.company || "" }} + </div> + <div v-else>{{ scope.row.proAdvice }}</div> + </template> + </el-table-column> + <el-table-column + align="center" + prop="conclusion" + label="寮傚父" + width="180" + ></el-table-column> + <el-table-column align="center" prop="" label=" 鍙傝�冭寖鍥�"> + <template slot-scope="scope"> + <div v-if="scope.row.project != null"> + {{ + scope.row.standard.tjStandardGtValue || + "/" + "-" + scope.row.standard.tjStandardLtValue || + "/" + }} + </div> + <div v-else>{{ scope.row.stanId || "/" }}</div> + </template> + </el-table-column> + </el-table> + <table style="width: 100%" v-if="tjproject != '1'"> + <tr style="border: 1px solid #dfe6ec; border-collapse: collapse" - colspan="2" > - {{ item.doctorName }} - </td> - </tr> - <tr - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 200px; - " - > - <td + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 7%; + " + > + 灏忕粨锛� + </td> + <td style="border: 1px solid #dfe6ec; width: 45%"> + <el-input v-model="item.remark" disabled></el-input> + </td> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + " + > + 涓绘鍖诲笀锛� + </td> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + " + colspan="2" + > + {{ item.doctorName }} + </td> + </tr> + <tr style=" border: 1px solid #dfe6ec; border-collapse: collapse; - width: 240px; + width: 200px; " > - 澶囨敞锛� - </td> - <td + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 240px; + " + > + 澶囨敞锛� + </td> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + " + colspan="3" + > + <el-input + type="textarea" + autosize + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="changedate[index].remark" + v-on:input="change" + style="width: 100%" + > + </el-input> + <!-- <textarea + placeholder="璇疯緭鍏ュ唴瀹�" + :autosize="{ minRows: 2 }" + style="width: 100%; height: 240px; resize: none" + v-model="changedate[index].remark" + v-on:input="change" + ></textarea> --> + </td> + </tr> + </table> + </div> + <div v-else> + <table style="width: 100%" v-if="tjproject != '1'"> + <tr style="border: 1px solid #dfe6ec"> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + height: auto; + " + > + 妫�鏌ユ墍瑙侊細 + </td> + <td + style="border: 1px solid #dfe6ec; height: auto" + colspan="2" + > + <el-input + type="textarea" + autosize + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="item.jgbx" + style="width: 100%" + > + </el-input> + <!-- <textarea + placeholder="璇疯緭鍏ュ唴瀹�" + :autosize="{ minRows: 3}" + style="width: 100%; height: auto; resize: none" + v-model="item.jgbx" + ></textarea> --> + </td> + </tr> + <tr style="border: 1px solid #dfe6ec; border-collapse: collapse" - colspan="3" > - <el-input - type="textarea" - autosize - placeholder="璇疯緭鍏ュ唴瀹�" - v-model="changedate[index].remark" - v-on:input="change" - style="width: 100%" + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + " > - </el-input> - <!-- <textarea - placeholder="璇疯緭鍏ュ唴瀹�" - :autosize="{ minRows: 2 }" - style="width: 100%; height: 240px; resize: none" - v-model="changedate[index].remark" - v-on:input="change" - ></textarea> --> - </td> - </tr> - </table> - </div> - <div v-else> - <table style="width: 100%" v-if="tjproject != '1'"> - <tr style="border: 1px solid #dfe6ec"> - <td - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 15%; - height: auto; - " - > - 妫�鏌ユ墍瑙侊細 - </td> - <td - style="border: 1px solid #dfe6ec; height: auto" - colspan="2" - > - <el-input - type="textarea" - autosize - placeholder="璇疯緭鍏ュ唴瀹�" - v-model="item.jgbx" - style="width: 100%" + 妫�鏌ユ彁绀猴細 + </td> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + " + colspan="2" > - </el-input> - <!-- <textarea - placeholder="璇疯緭鍏ュ唴瀹�" - :autosize="{ minRows: 3}" - style="width: 100%; height: auto; resize: none" - v-model="item.jgbx" - ></textarea> --> - </td> - </tr> - <tr - style="border: 1px solid #dfe6ec; border-collapse: collapse" - > - <td - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 15%; - " - > - 妫�鏌ユ彁绀猴細 - </td> - <td - style="border: 1px solid #dfe6ec; border-collapse: collapse" - colspan="2" - > - <el-input - type="textarea" - autosize - placeholder="璇疯緭鍏ュ唴瀹�" - v-model="item.remark" - style="width: 100%" - > - </el-input> - <!-- <textarea + <el-input + type="textarea" + autosize + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="item.remark" + style="width: 100%" + > + </el-input> + <!-- <textarea - placeholder="璇疯緭鍏ュ唴瀹�" - style="width: 100%; resize: none" - v-model="item.remark" - ></textarea> --> - </td> - </tr> - <tr - style=" - border: 1px solid #dfe6ec; - border-collapse: collapse; - width: 200px; - " - > - <td + placeholder="璇疯緭鍏ュ唴瀹�" + style="width: 100%; resize: none" + v-model="item.remark" + ></textarea> --> + </td> + </tr> + <tr style=" border: 1px solid #dfe6ec; border-collapse: collapse; - width: 15%; + width: 200px; " > - 涓绘鍖诲笀锛� - </td> - <td - style="border: 1px solid #dfe6ec; border-collapse: collapse" - colspan="2" - > - {{ item.doctorName }} - </td> - </tr> - </table> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + " + > + 涓绘鍖诲笀锛� + </td> + <td + style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + " + colspan="2" + > + {{ item.doctorName }} + </td> + </tr> + </table> + </div> </div> - </div> - <div style="margin: 0 0px 10px 15px" v-if="tjproject != '1'"> - <el-button type="primary" @click="propoChange">蹇嵎寤鸿</el-button> - <el-button type="primary" @click="proposalChange" - >鐢熸垚寤鸿</el-button - > - </div> - - <el-form - ref="numberValidateForm" - label-width="80px" - class="demo-ruleForm" - v-if="tjproject != '1'" - > - <el-form-item label="鎬绘寤鸿"> - <el-input - type="textarea" - placeholder="璇疯緭鍏ュ唴瀹�" - v-model="textarea1" - :rows="3" - style="width: 96%" + <div style="margin: 0 0px 10px 15px" v-if="tjproject != '1'"> + <el-button type="primary" @click="propoChange" + >蹇嵎寤鸿</el-button > - </el-input> - </el-form-item> - </el-form> - <div slot="footer" class="dialog-footers"> - <el-button type="primary" @click.stop="guanbi">鍙栨秷</el-button> - <el-button - v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" - type="primary" - @click.stop="rowClick" - icon="el-icon-edit-outline" - >寮�澶勬柟</el-button + <el-button type="primary" @click="proposalChange" + >鐢熸垚寤鸿</el-button + > + </div> + + <el-form + ref="numberValidateForm" + label-width="80px" + class="demo-ruleForm" + v-if="tjproject != '1'" > - <div v-if="tjproject == '0'"> + <el-form-item label="鎬绘寤鸿"> + <el-input + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="textarea1" + :rows="3" + style="width: 96%" + > + </el-input> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footers"> + <el-button type="primary" @click.stop="guanbi">鍙栨秷</el-button> <el-button + v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" type="primary" - @click="determine" - :disabled="isdisabled" - >鎻愪氦骞剁敓鎴愭姤鍛�</el-button + @click.stop="rowClick" + icon="el-icon-edit-outline" + >寮�澶勬柟</el-button > + <div v-if="tjproject == '0'"> + <el-button + type="primary" + @click="determine" + :disabled="isdisabled" + >鎻愪氦骞剁敓鎴愭姤鍛�</el-button + > + </div> </div> </div> </div> - <div class="rightbox"> <div class="right"> <template v-if="status1 == 0"> @@ -644,27 +681,77 @@ > <el-table-column type="expand"> <template slot-scope="props"> - <div - v-if=" - props.row.advices && props.row.advices.length > 0 - " - > + <div style="padding: 10px"> + <!-- 鍐呭鍖哄煙 --> <div - v-for="(jianyi, index1) in props.row.advices" - :key="index1" - style="padding: 0 10px; margin-bottom: 10px" + v-if=" + props.row.advices && props.row.advices.length > 0 + " > - <div>鏍囬锛歿{ jianyi.bt || "" }}</div> - <div>鍐呭锛歿{ jianyi.nr || "" }}</div> + <div + v-for="(jianyi, index1) in props.row.advices" + :key="index1" + style="margin-bottom: 10px" + > + <div> + 鏍囬锛� + <el-input + v-model="jianyi.bt" + size="small" + type="textarea" + autosize + ></el-input> + </div> + <div> + 鍐呭锛� + <el-input + v-model="jianyi.nr" + size="small" + type="textarea" + autosize + ></el-input> + </div> + </div> + </div> + + <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> + <div v-else> + <div> + 鏍囬锛� + <el-input + v-model="emptyAdvice.bt" + size="small" + type="textarea" + autosize + ></el-input> + </div> + <div> + 鍐呭锛� + <el-input + v-model="emptyAdvice.nr" + size="small" + type="textarea" + autosize + ></el-input> + </div> + </div> + + <div style="margin-top: 10px"> + <el-button + @click="shanchu(props.row)" + type="danger" + size="small" + >鍒犻櫎</el-button + > </div> </div> - <div v-else style="padding: 0 10px">鏆傛棤鍐呭</div> </template> </el-table-column> <el-table-column align="center" label="妫�娴嬮」鐩�" + :show-overflow-tooltip="true" width="353" > <template slot-scope="scope"> @@ -709,21 +796,70 @@ > <el-table-column type="expand"> <template slot-scope="props"> - <div - v-if=" - props.row.advices && props.row.advices.length > 0 - " - > + <div style="padding: 10px"> + <!-- 鍐呭鍖哄煙 --> <div - v-for="(jianyi, index1) in props.row.advices" - :key="index1" - style="padding: 0 10px; margin-bottom: 10px" + v-if=" + props.row.advices && props.row.advices.length > 0 + " > - <div>鏍囬锛歿{ jianyi.bt || "" }}</div> - <div>鍐呭锛歿{ jianyi.nr || "" }}</div> + <div + v-for="(jianyi, index1) in props.row.advices" + :key="index1" + style="margin-bottom: 10px" + > + <div> + 鏍囬锛� + <el-input + v-model="jianyi.bt" + size="small" + type="textarea" + autosize + ></el-input> + </div> + <div> + 鍐呭锛� + <el-input + v-model="jianyi.nr" + size="small" + type="textarea" + autosize + ></el-input> + </div> + </div> + </div> + + <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> + <div v-else> + <div> + 鏍囬锛� + <el-input + v-model="emptyAdvice.bt" + size="small" + type="textarea" + autosize + ></el-input> + </div> + <div> + 鍐呭锛� + <el-input + v-model="emptyAdvice.nr" + size="small" + type="textarea" + autosize + ></el-input> + </div> + </div> + + <div style="margin-top: 10px"> + <el-button + @click="shanchu(props.row)" + type="danger" + size="small" + >鍒犻櫎</el-button + > </div> </div> - <div v-else style="padding: 0 10px">鏆傛棤鍐呭</div> </template> </el-table-column> @@ -731,6 +867,7 @@ align="center" label="妫�娴嬮」鐩�" width="232" + :show-overflow-tooltip="true" > <template slot-scope="scope"> <div>{{ scope.row.proName }}</div> @@ -763,7 +900,6 @@ :data="statusList" style="width: 100%" :header-cell-style="{ background: '#e6a23c' }" - :stripe="true" > <el-table-column align="center" @@ -1219,10 +1355,10 @@ </el-drawer> <el-dialog - class="dia" title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false" + width="50%" > <div class="main"> <iframe @@ -1249,7 +1385,7 @@ </el-dialog> <Packages ref="bbb" :baogao="baogao" /> <Prescription ref="Pre" :preObj="preObj" /> - <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" /> + <proposal ref="proposal" :cusobj="cusobj" :tjNumber="tjNumber" @event1="eventchange($event)" /> <createproposal ref="createproposal" :creatobj="creatobj" /> <el-dialog @@ -1261,7 +1397,7 @@ </el-dialog> </div> </template> - + <script> import jianqianwenzhen from "@/components/jianqianwenzhen"; @@ -1281,13 +1417,14 @@ gettoPdf, getModified, isPdfOrJimu, + addOrder, } from "@/api/doctor/checkAll"; import { getInfoById } from "@/api/hosp/history"; import { getInfo } from "@/api/login"; import { getCompany, queryCompany } from "@/api/team/tuanti"; -import { reportHistory, yichang } from "@/api/doctor/check"; +import { reportHistory, yichang, shanchu } from "@/api/doctor/check"; import { getPdf, revoke } from "@/api/hosp/order"; -import { cSWebGetPro } from "@/api/doctor/examination"; +import { cSWebGetPro, dataSynchronization } from "@/api/doctor/examination"; import ViewPdf from "@/components/ViewPdf"; import Historicalreport from "@/components/Historicalreport"; import { getDicts } from "@/api/system/dict/data"; @@ -1295,6 +1432,7 @@ import { getNewDateList } from "@/api/hosp/order"; import { getconfigKey } from "@/api/login"; import moment from "moment"; +import { get } from "sortablejs"; export default { components: { @@ -1321,6 +1459,10 @@ data() { return { // 鏇存柊鎬绘寤鸿 + emptyAdvice: { + bt: "", + nr: "", + }, initialTotalCheckAdvice: "", initialState: "", preObj: {}, @@ -1450,6 +1592,7 @@ status1: 0, // 0灞曠ず寮傚父1灞曠ず椤圭洰鎯呭喌 viewportHeight: 0, expends: [], + clearTimeSet: null, }; }, @@ -1467,6 +1610,64 @@ }); }, methods: { + setTime() { + //璁剧疆瀹氭椂鍣� + this.clearTimeSet = setInterval(() => { + this.$modal.closeLoading(); + }, 300000); + }, + tongbu(row) { + this.$modal.loading("姝e湪鍚屾锛岃绋嶅��..."); + this.setTime(); + let tjNumber = row.tjNumber; + dataSynchronization(tjNumber) + .then((res, error) => { + if (res.code == 200) { + this.clearTimeSet = null; + this.$modal.closeLoading(); + this.$modal.msgSuccess("鍚屾鎴愬姛锛�"); + } + }) + .catch((error) => { + this.clearTimeSet = null; + this.$modal.closeLoading(); + }); + }, + shanchu(row) { + console.log(row); + shanchu({ + id: row.orderDetailId, + }).then((res) => { + console.log(res); + // 鎵惧埌瑕佸垹闄ら」鎵�鍦ㄧ殑鐖剁骇鏁扮粍 + const parentItem = this.yichangList.find((item) => + item.sone.some((soneItem) => soneItem.proId === row.proId) + ); + + if (parentItem) { + // 浠庣埗绾х殑 sone 鏁扮粍涓垹闄よ椤� + const index = parentItem.sone.findIndex( + (item) => item.proId === row.proId + ); + if (index > -1) { + parentItem.sone.splice(index, 1); + + // 濡傛灉鍒犻櫎鍚� sone 鏁扮粍涓虹┖,鍒欏垹闄ゆ暣涓埗绾ч」 + if (parentItem.sone.length === 0) { + const parentIndex = this.yichangList.indexOf(parentItem); + if (parentIndex > -1) { + this.yichangList.splice(parentIndex, 1); + } + } + + // 鏇存柊 expends 鏁扮粍 + this.getExpends(); + + this.$message.success("鍒犻櫎鎴愬姛"); + } + } + }); + }, getConfigKey() { getconfigKey("sfkqtwbg").then((res) => { this.msgtuwen = res.msg; @@ -1510,9 +1711,29 @@ tjNum: this.tjNumber, }).then((res) => { this.yichangList = res.data; + + console.log(this.yichangList, 3232); this.getExpends(); + + this.yichangList.forEach((item) => { + item.sone.forEach((soneItem) => { + if ( + !Array.isArray(soneItem.advices) || + soneItem.advices.length === 0 + ) { + // 濡傛灉 advices 鏄┖锛岃缃粯璁ゅ�� + soneItem.advices = [ + { + bt: "", + nr: "", + }, + ]; + } + }); + }); + if (!this.yichangList) { - this.$message({ + _this.$message({ type: "warning ", message: "鏆傛棤寮傚父鎶ュ憡", }); @@ -1521,10 +1742,10 @@ }, getdate() { getNewDateList().then((res) => { - this.startTime = [ + /* this.startTime = [ moment(res.data).format("YYYY-MM-DD 00:00:00"), moment(res.data).format("YYYY-MM-DD 23:59:00"), - ]; + ]; */ this.getList(); }); }, @@ -1618,7 +1839,10 @@ setTimeout(() => { loading.close(); }, 3000); - this.$message.msgSuccess("鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�"); + this.$message({ + message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�", + type: "error", + }); } else { this.dialogVisible = true; @@ -1799,6 +2023,7 @@ if (this.tjproject == "0") { getupdateCheckType(this.tjNumber).then((response) => { this.changedate = response.data; + this.changedate.forEach((item) => { this.textarea1 = item.checkAdvice; }); @@ -1937,10 +2162,11 @@ }; }, redxiangmu({ row }) { - if (row.type == 0) { + if (row.type != 1) { // 鍙橀鑹茬殑鏉′欢 return { - color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + backgroundColor: "#AAD8DF !important", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + // color: "#AAD8DF ", }; } }, @@ -2251,63 +2477,121 @@ // } // }, change(vale) {}, - /* 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 tjNumber = this.tjNumber; - let data = { - userId: this.userId, - tjNumber: tjNumber, - state: 1, - id: this.MsgId, - }; - gettoPdf(tjNumber) - .then((res) => { - this.$modal.msgSuccess("宸茬敓鎴愭姤鍛婏紒璇峰墠寰�鎶ュ憡鏍告敹椤甸潰纭锛�"); - }) - .catch((error) => { - this.$modal.msgError( - "鎵撳嵃鎶ュ憡澶辫触锛岃鍓嶅線鎶ュ憡鎵撳嵃椤甸潰琛ユ墦鎶ュ憡锛�" - ); - }) - getfiedState(data).then((res) => { - this.drawer = false; - }); - this.queryParams.page = 1; - this.queryParams.pageSize = 10; - this.submitForm(); - this.$forceUpdate(); - }); - for (let i = 0; i < this.changedate.length; i++) { - this.proIds = this.changedate[i].parentId; - let remarks = this.changedate[i].remark; - let updateOrderRemarkVos = [ - { - tjNumber, - proId: this.proIds.toString(), - remarks, - }, - ]; - getModified(updateOrderRemarkVos).then((response) => {}); - } + // determine() { + // let tjNumber = this.tableAll.tjNumber; + // let tjh = this.tableAll.tjNumber; + // // let jyjc = this.yichangList.map(item => item.jyjc || null); + // let advice = this.textarea1; + // let data = { + // tjNumber, + // advice, + // checkStatus: 1, + // }; - // this.changedate.forEach((item) => { - // this.proIds = item.parentId; - // // this.remark = item.remark; - // }); - }, */ + // console.log(this.yichangList, 66); + + // let dataList = this.yichangList + // .map((item) => { + // return item.sone.map((soneItem) => ({ + // tjh, + // parentName: item.proName, + // jcxm: soneItem.proName, + // map: soneItem.advices, + // jyjc: item.jyjc, // assuming jyjc belongs to the outer item, not soneItem + // jcjg: soneItem.proResult, + // ckfw: soneItem.stanId, + // dw: soneItem.proAdvice, + // })); + // }) + // .flat(); // 浣跨敤 flat() 鏂规硶灏嗗祵濂楁暟缁勫睍骞� + // console.log(dataList, 777); + + // /* addOrder(dataList).then((res) => { + // console.log(res, 999); + // }); */ + // 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 addOrderPromise = addOrder(dataList).then((res) => { + // // console.log(res, 999); + // // }); + + // // 澶勭悊鍏朵粬淇敼鎿嶄綔 + // 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, + // // addOrderPromise, + // ...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); + // }); + // }, determine() { let tjNumber = this.tableAll.tjNumber; + let tjh = this.tableAll.tjNumber; let advice = this.textarea1; let data = { tjNumber, @@ -2315,10 +2599,23 @@ checkStatus: 1, }; - // 寮�濮嬪姞杞� - this.loading = true; + console.log(this.yichangList, 6644); - // 鎻愪氦鏁版嵁 + let dataList = this.yichangList + .map((item) => { + return item.sone.map((soneItem) => ({ + tjh, + parentName: item.proName, + jcxm: soneItem.proName, + map: soneItem.advices, + jyjc: item.jyjc, + jcjg: soneItem.proResult, + ckfw: soneItem.stanId, + dw: soneItem.proAdvice, + })); + }) + .flat(); // 浣跨敤 flat() 鏂规硶灏嗗祵濂楁暟缁勫睍骞� + getTjdetailList(data) .then((response) => { if (response.code === 200) { @@ -2332,51 +2629,62 @@ id: this.MsgId, }; - // 鐢熸垚鎶ュ憡骞朵繚鎸� loading 鎵撳紑 - const reportPromise = gettoPdf(tjNumber) + // 璋冪敤 addOrderPromise + console.log(dataList, 5555); + + addOrder(dataList) .then((res) => { - this.$modal.msgSuccess("宸茬敓鎴愭姤鍛婏紒璇峰墠寰�鎶ュ憡鏍告敹椤甸潰纭锛�"); + console.log(res, 999); + if (res.code == 200) { + gettoPdf(tjNumber) + .then((res) => { + this.$modal.msgSuccess( + "宸茬敓鎴愭姤鍛婏紒璇峰墠寰�鎶ュ憡鏍告敹椤甸潰纭锛�" + ); + }) + .catch(() => { + this.$modal.msgError( + "鎵撳嵃鎶ュ憡澶辫触锛岃鍓嶅線鎶ュ憡鎵撳嵃椤甸潰琛ユ墦鎶ュ憡锛�" + ); + }); + const statePromise = getfiedState(reportData).then(() => { + 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([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); + }); + } }) .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 + // 濡傛灉 addOrderPromise 澶辫触锛屽鐞嗛敊璇� this.loading = false; - // 鏇存柊鍒嗛〉淇℃伅 - this.queryParams.page = 1; - this.queryParams.pageSize = 10; - this.submitForm(); - this.$forceUpdate(); - }) - .catch((error) => { - // 澶勭悊閿欒鎯呭喌 - this.loading = false; - console.error("鍙戠敓閿欒:", error); + console.error("addOrderPromise 澶辫触:", error); }); } else { // 鎻愪氦澶辫触锛屽叧闂� loading @@ -2396,25 +2704,33 @@ .mainbox { position: relative; } + .btn { margin: 20px 0px; } + .btnbox { display: flex; flex-direction: column; - gap: 10px; /* 鎸夐挳涔嬮棿鐨勯棿璺� */ - position: fixed; /* 浣挎暣涓寜閽尯鍩熷浐瀹氬湪椤甸潰 */ - right: 0; /* 鍥哄畾鍦ㄩ〉闈㈠彸渚� */ - top: 20%; /* 鍒濆浣嶇疆 */ + gap: 10px; + /* 鎸夐挳涔嬮棿鐨勯棿璺� */ + position: fixed; + /* 浣挎暣涓寜閽尯鍩熷浐瀹氬湪椤甸潰 */ + right: 0; + /* 鍥哄畾鍦ㄩ〉闈㈠彸渚� */ + top: 20%; + /* 鍒濆浣嶇疆 */ z-index: 10; } /* 姣忎釜鎸夐挳鐨勬牱寮� */ .btn1 { - animation: fadeInUp 0.5s ease-out forwards; /* 鎸夐挳鍔犺浇鏃剁殑娣″叆鍔ㄧ敾 */ + animation: fadeInUp 0.5s ease-out forwards; + /* 鎸夐挳鍔犺浇鏃剁殑娣″叆鍔ㄧ敾 */ cursor: pointer; text-align: center; } + .vertical-text { writing-mode: vertical-rl; text-orientation: upright; @@ -2424,86 +2740,97 @@ @keyframes fadeInUp { 0% { opacity: 0; - transform: translateY(20px) scale(0.5); /* 鍒濆鐘舵�侊細閫忔槑涓旂缉灏� */ + transform: translateY(20px) scale(0.5); + /* 鍒濆鐘舵�侊細閫忔槑涓旂缉灏� */ } + 100% { opacity: 1; - transform: translateY(0) scale(1); /* 鏈�缁堢姸鎬侊細瀹屽叏鏄剧ず涓旀甯稿ぇ灏� */ + transform: translateY(0) scale(1); + /* 鏈�缁堢姸鎬侊細瀹屽叏鏄剧ず涓旀甯稿ぇ灏� */ } } /* 姣忎釜鎸夐挳鐨勪綅缃拰鍔ㄧ敾寤惰繜 */ .btnbox > div:nth-child(1) { - top: 20%; /* 绗竴涓寜閽殑浣嶇疆 */ - animation-delay: 0s; /* 鏃犲欢杩� */ + top: 20%; + /* 绗竴涓寜閽殑浣嶇疆 */ + animation-delay: 0s; + /* 鏃犲欢杩� */ } .btnbox > div:nth-child(2) { - top: 30%; /* 绗簩涓寜閽殑浣嶇疆 */ + top: 30%; + /* 绗簩涓寜閽殑浣嶇疆 */ animation-delay: 0.2s; } .btnbox > div:nth-child(3) { - top: 40%; /* 绗笁涓寜閽殑浣嶇疆 */ + top: 40%; + /* 绗笁涓寜閽殑浣嶇疆 */ animation-delay: 0.4s; } .btnbox > div:nth-child(4) { - top: 50%; /* 绗洓涓寜閽殑浣嶇疆 */ + top: 50%; + /* 绗洓涓寜閽殑浣嶇疆 */ animation-delay: 0.6s; } .btnbox > div:nth-child(5) { - top: 60%; /* 绗簲涓寜閽殑浣嶇疆 */ + top: 60%; + /* 绗簲涓寜閽殑浣嶇疆 */ animation-delay: 0.8s; } .btnbox > div:nth-child(6) { - top: 70%; /* 绗叚涓寜閽殑浣嶇疆 */ + top: 70%; + /* 绗叚涓寜閽殑浣嶇疆 */ animation-delay: 1s; } .main { - height: 800px; - overflow: hidden; + height: 80vh; // 鏀逛负浣跨敤瑙嗙獥楂樺害 + min-height: 600px; // 璁剧疆鏈�灏忛珮搴� + overflow: auto; // 鏀逛负auto鍏佽婊氬姩 } -#printIframe::-webkit-scrollbar { +// 浼樺寲婊氬姩鏉℃牱寮� +.main::-webkit-scrollbar { width: 6px; } -/* 淇敼 婊氬姩鏉$殑 涓嬮潰 鐨� 鏍峰紡 */ -#printIframe::-webkit-scrollbar-track { +.main::-webkit-scrollbar-track { background-color: white; - -webkit-border-radius: 2em; - -moz-border-radius: 2em; border-radius: 2em; } -/* 淇敼 婊戝潡 */ -#printIframe::-webkit-scrollbar-thumb { +.main::-webkit-scrollbar-thumb { background-color: #dcdfe6; - -webkit-border-radius: 2em; - -moz-border-radius: 2em; border-radius: 2em; } + ::v-deep .el-dialog { - width: 1700px; - height: 900px; + margin-top: 5vh !important; // 璋冩暣瀵硅瘽妗嗕綅缃� } -::v-deep .el-dialog__header{ + +::v-deep .el-dialog__header { padding: 8px; } -::v-deep .el-dialog__body{ -padding: 0; + +::v-deep .el-dialog__body { + padding: 0; } + ::v-deep .el-button--medium { padding: 10px; } -::v-deep .el-dialog__headerbtn{ + +::v-deep .el-dialog__headerbtn { // position: relative; top: 13px; } + /* .el-dialog { width: 1264px; height: 800px; @@ -2537,9 +2864,11 @@ display: flex; justify-content: center; align-items: center; - z-index: 1000; /* 纭繚鎸夐挳灞傜骇鍦ㄥ叾浠栧唴瀹逛笂鏂� */ + z-index: 1000; + /* 纭繚鎸夐挳灞傜骇鍦ㄥ叾浠栧唴瀹逛笂鏂� */ width: 300px; - background-color: white; /* 鍙牴鎹渶瑕佽皟鏁磋儗鏅鑹� */ + background-color: white; + /* 鍙牴鎹渶瑕佽皟鏁磋儗鏅鑹� */ } /* 纭繚鎸夐挳涔嬮棿鏈夊悎閫傜殑闂磋窛 */ @@ -2552,26 +2881,66 @@ border: none; outline: none; } + .box { display: flex; + height: calc(100% - 160px); + margin-top: 20px; + overflow: hidden; +} - height: 100vh; +.left-container { + flex: 1; + margin-right: 10px; + overflow: hidden; +} + +.left { + height: 100%; + padding: 0 10px; + overflow-y: scroll; // 鏀逛负 scroll 鑰屼笉鏄� auto + + &::-webkit-scrollbar { + width: 8px; // 澧炲姞瀹藉害浣垮叾鏇村鏄撶湅瑙� + background-color: #f5f5f5; + display: block; // 纭繚鏄剧ず + } + + &::-webkit-scrollbar-thumb { + background: #909399; + border-radius: 4px; + } + + &::-webkit-scrollbar-track { + background: #f5f5f5; + border-radius: 4px; + } } .rightbox { - margin-left: 60px; - position: fixed; - top: 107px; - right: 56px; - width: 684px; + width: 700px; + overflow: hidden; +} - .right { - background-color: #fff; - // box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); - z-index: 10; - max-height: calc(100vh - 100px); /* 鍋囪浣犳兂涓洪《閮ㄥ拰搴曢儴鐣欏嚭涓�浜涚┖闂� */ - overflow-y: auto; /* 鍏佽鍨傜洿婊氬姩 */ - padding: 0 0 50px; /* 鍙�夛細娣诲姞涓�浜涘唴杈硅窛浠ラ伩鍏嶅唴瀹圭揣璐磋竟缂� */ +.right { + height: 100%; + padding: 0 10px; + overflow-y: scroll; // 鏀逛负 scroll 鑰屼笉鏄� auto + + &::-webkit-scrollbar { + width: 8px; // 澧炲姞瀹藉害 + background-color: #f5f5f5; + display: block; // 纭繚鏄剧ず + } + + &::-webkit-scrollbar-thumb { + background: #909399; + border-radius: 4px; + } + + &::-webkit-scrollbar-track { + background: #f5f5f5; + border-radius: 4px; } } @@ -2582,6 +2951,7 @@ background-color: #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); display: flex; + .el-icon-close { cursor: pointer; font-size: 30px; @@ -2591,18 +2961,20 @@ color: rgb(24, 144, 255); } } + .kong { box-shadow: none; } + ::v-deep .el-table--medium .el-table__cell { padding: 5px 0; } + ::-webkit-scrollbar { display: none; } + ::v-deep .el-drawer { padding: 0 0 50px; } </style> - - -- Gitblit v1.8.0