From 01c3a2e0238539b19781048259c0df84a76d46fa Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期一, 18 八月 2025 17:17:39 +0800 Subject: [PATCH] qx --- src/views/doctor/checkAll/index.vue | 1228 +++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 795 insertions(+), 433 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index 1030587..40dba08 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -1,6 +1,6 @@ <template> <div class="mainbox"> - <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="submitForm"></el-input> @@ -9,12 +9,12 @@ <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="浣撴绫诲埆"> - <el-select style="width: 200px" v-model="queryParams.tjCategory" placeholder="璇烽�夋嫨浣撴绫诲埆"> - <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.value" :label="dict.label" - :value="dict.value"></el-option> - </el-select> - </el-form-item> + <el-form-item label="浣撴绫诲埆"> + <el-select style="width: 200px" v-model="queryParams.tjCategory" placeholder="璇烽�夋嫨浣撴绫诲埆"> + <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.value" :label="dict.label" + :value="dict.value"></el-option> + </el-select> + </el-form-item> <el-form-item label="濂楅鍚嶇О" prop="tcm"> <el-input v-model="queryParams.tcm" style="width: 120px" placeholder="璇疯緭鍏ュ椁愬悕绉�" clearable @keyup.enter.native="submitForm"></el-input> @@ -35,11 +35,11 @@ v-show="isCollapsed == 1">楂樼骇鎼滅储</el-button> </el-form-item> <el-row v-show="isCollapsed == 1" :gutter="20"> - <el-col :span="4"> - <el-form-item label="瀹℃牳鍖诲笀" prop="shys"> - <el-input ref="inputName" v-model="queryParams.shys" style="width: 120px" placeholder="璇疯緭鍏ュ鏍稿尰甯�" clearable - @keyup.enter.native="submitForm"></el-input> - </el-form-item> + <el-col :span="4"> + <el-form-item label="瀹℃牳鍖诲笀" prop="shys"> + <el-input ref="inputName" v-model="queryParams.shys" style="width: 120px" placeholder="璇疯緭鍏ュ鏍稿尰甯�" clearable + @keyup.enter.native="submitForm"></el-input> + </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="浣撴鏃堕棿" prop="tjTime"> @@ -50,10 +50,8 @@ </el-date-picker> </el-form-item> </el-col> - </el-row> </el-form> - <!-- <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px" v-if="tjStatus == 1"> @@ -110,16 +108,16 @@ <el-radio-button label="1">宸插鏍�</el-radio-button> </el-radio-group> - <el-row :gutter="10" class="mb8" v-if="piliang" style="margin: 15px;"> + <el-row :gutter="10" class="mb8" v-if="piliang" style="margin: 15px"> <el-col :span="1.5"> - <el-button type="primary" size="mini" @click="handleshenhe">鎵归噺鏍告敹</el-button> + <el-button type="primary" size="mini" @click="handleshenhe">鎵归噺鏍告敹</el-button> </el-col> </el-row> <template> <el-table v-loading="loading" :data="checkList" ref="table" border style="margin: 20px; width: 98%" @current-change="handleCurrentChange"> - <el-table-column type="selection" align="center" label="閫夋嫨" width="50" v-if="piliang"/> + <el-table-column type="selection" align="center" label="閫夋嫨" width="50" v-if="piliang" /> <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" @@ -134,8 +132,10 @@ </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="shsj" :show-overflow-tooltip="true" width="180px" v-if="tjStatus == 1" /> - <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime" :show-overflow-tooltip="true" width="180px" v-if="tjStatus == 0" /> + <el-table-column label="瀹℃牳鏃堕棿" align="center" prop="shsj" :show-overflow-tooltip="true" width="180px" + v-if="tjStatus == 1" /> + <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime" :show-overflow-tooltip="true" width="180px" + v-if="tjStatus == 0" /> <!-- <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="120px" v-if="tjStatus == 0"> @@ -152,14 +152,13 @@ </el-table-column> <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="璇︽儏" type="text" size="mini" @click.stop="handleClick(scope.row)" - icon="el-icon-document-copy"></el-button> - <el-button type="text" size="mini" @click.stop="viewReport(scope.row)" v-if="scope.row.tjStatus == '1'" - title="棰勮" icon="el-icon-view"></el-button> - <el-button type="text" size="mini" v-if="scope.row.tjStatus == '1'" title="鎾ら攢" - @click.stop="getRevoke(scope.row)" icon="el-icon-refresh-left"></el-button> + <el-button fixed="right" type="text" size="mini" @click.stop="rowClick(scope.row)" + v-if="msgkcf == 'y' || msgkcf == 'Y'">澶勬柟</el-button> + <el-button fixed="right" type="text" size="mini" @click.stop="handleClick(scope.row)">璇︽儏</el-button> + <el-button type="text" size="mini" @click.stop="viewReport(scope.row)" + v-if="scope.row.tjStatus == '1'">棰勮</el-button> + <el-button type="text" size="mini" v-if="scope.row.tjStatus == '1'" + @click.stop="getRevoke(scope.row)">鎾ら攢</el-button> </template> </el-table-column> </el-table> @@ -176,25 +175,60 @@ <el-drawer custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" size="100%" :show-close="true"> <div v-loading="isLoading" element-loading-text="姝e湪鍔犺浇鏁版嵁锛岃绋嶅��..." element-loading-spinner="el-icon-loading" - element-loading-background="rgba(255, 255, 255, 0.8)" style="height: 100%; padding: 20px; position: relative;"> + element-loading-background="rgba(255, 255, 255, 0.8)" style="height: 100%; padding: 20px; position: relative"> <div class="top"> - <table style="width: 100%; margin: 10px 10px; border: 1px solid #dfe6ec; border-collapse: collapse;" - cellspacing="4"> + <table style=" + width: 100%; + margin: 10px 10px; + border: 1px solid #dfe6ec; + border-collapse: collapse; + " cellspacing="4"> <caption style="background-color: #f8f8f9; font-size: 18px"> - {{ tableAll.cusName }}鐨勪綋妫�璧勬枡 + {{ + tableAll.cusName + }}鐨勪綋妫�璧勬枡 </caption> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; height: 36px;"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">濮撳悕锛�</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.cusName }}</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">鎬у埆锛歿{ tableAll.cusSex == 0 ? "鐢�" : - tableAll.cusSex == 1 ? "濂�" : "鏈煡" }}</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">骞撮緞锛歿{ tableAll.age }}</td> + <tr style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + height: 36px; + "> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 濮撳悕锛歿{ tableAll.cusName }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 鎬у埆锛歿{ + tableAll.cusSex == 0 + ? "鐢�" + : tableAll.cusSex == 1 + ? "濂�" + : "鏈煡" + }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 骞撮緞锛歿{ tableAll.age }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 浣撴鍙凤細{{ tableAll.tjNumber }} + </td> </tr> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; height: 36px;"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">浣撴鍗曞彿锛�</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.tjNumber }}</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">浣撴鏃堕棿锛�</td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse">{{ tableAll.tjTime }}</td> + <tr style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + height: 36px; + "> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 鍗曚綅鍚嶇О锛歿{ tableAll.tjCompName }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 浣撴绫诲瀷锛歿{ tableAll.tjCategory }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 濂楅锛歿{ tableAll.pacName }} + </td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + 浣撴鏃堕棿锛歿{ tableAll.tjTime }} + </td> </tr> </table> <i class="el-icon-close" @click="guanbi"></i> @@ -208,6 +242,9 @@ </div> <div class="btn1"> <el-button @click="historicalreport()" type="primary"><span class="vertical-text">鍘嗗彶鎶ュ憡</span></el-button> + </div> + <div class="btn1"> + <el-button @click="hisycxm()" type="primary"><span class="vertical-text">閲嶇疆寮傚父椤圭洰</span></el-button> </div> <div v-if="tableAll.tjCategory == '02'" class="btn1"> <el-button @click="medicalhistory()" type="primary"><span class="vertical-text">鑱屼笟鐥呭彶</span></el-button> @@ -232,7 +269,11 @@ <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;"> + <div style=" + text-align: center; + background-color: #aad8df; + margin-top: 10px; + "> {{ item.parent || "" }} </div> <div v-if="item.xmlb == '0'"> @@ -246,7 +287,9 @@ <el-table-column align="center" prop="proResult" 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.company || "" }}</div> + <div v-if="scope.row.project != null"> + {{ scope.row.standard.company || "" }} + </div> <div v-else>{{ scope.row.proAdvice }}</div> </template> </el-table-column> @@ -254,33 +297,61 @@ <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 || - "/" }} + {{ + 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%;"> + <tr style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + "> + <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 style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + "> 涓绘鍖诲笀锛� </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2"> + <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: 200px;"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 240px;"> + <tr style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 200px; + "> + <td style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 240px; + "> 澶囨敞锛� </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="3"> + <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> </td> @@ -290,7 +361,12 @@ <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 style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + height: auto; + "> 妫�鏌ユ墍瑙侊細 </td> <td style="border: 1px solid #dfe6ec; height: auto" colspan="2"> @@ -298,27 +374,50 @@ style="width: 100%"></el-input> </td> </tr> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%;"> + <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"> + <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> </td> </tr> - <tr style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 200px;"> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse; width: 15%;"> + <tr style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 200px; + "> + <td style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + width: 15%; + "> 涓绘鍖诲笀锛� </td> - <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2"> + <td style=" + border: 1px solid #dfe6ec; + border-collapse: collapse; + " colspan="2"> {{ item.doctorName }} </td> </tr> </table> </div> </div> - <div v-if="tableAll && tableAll.tjCategory === '02'" class="section-title">鑱屼笟鐥呮�绘</div> + <div v-if="tableAll && tableAll.tjCategory === '02'" class="section-title"> + 鑱屼笟鐥呮�绘 + </div> <el-form v-if="tableAll && tableAll.tjCategory === '02'" ref="numberValidateForm" label-width="80px" class="demo-ruleForm"> <el-form-item label="妫�鏌ョ粨璁�"> @@ -337,8 +436,8 @@ <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%"></el-input> + <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" v-model="textarea1" + :autosize="{ minRows: minRows, maxRows: maxRows }" style="font-size: 16px"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footers"> @@ -346,7 +445,7 @@ <el-button v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" type="primary" @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> + <el-button type="primary" @click="determine" :disabled="isdisabled || isLoading">鎻愪氦骞剁敓鎴愭姤鍛�</el-button> </div> </div> </div> @@ -355,18 +454,25 @@ <div class="right"> <template v-if="status1 == 0"> <div v-for="(item, index) in yichangList" :key="index"> - <div style="text-align: center; background-color: #67c23a; margin-top: 10px;"> + <div style=" + text-align: center; + background-color: #67c23a; + margin-top: 10px; + "> {{ item.proName || "" }} </div> <template v-if="item.jyjc == '0'"> <el-table :stripe="true" :row-style="red" :data="item.sone" border style="width: 100%" - :header-cell-style="{ background: '#67C23A' }" :expand-row-keys="expends" :row-key="getRowKeys" - v-loading="loading"> + :header-cell-style="{ background: '#67C23A' }" :row-key="getRowKeys"> + <!-- :expand-row-keys="expends" --> <el-table-column type="expand"> <template slot-scope="props"> - <div style="padding: 10px;"> + <div style="padding: 10px"> <!-- 鍐呭鍖哄煙 --> - <div v-if="props.row.advices && props.row.advices.length > 0"> + <div v-if=" + props.row.advices && + props.row.advices.length > 0 + "> <div v-for="(jianyi, index1) in props.row.advices" :key="index1" style="margin-bottom: 10px"> <div> @@ -394,7 +500,7 @@ @blur="handleAdviceBlur(props.row, -1)"></el-input> </div> </div> - <div style="margin-top: 10px;"> + <div style="margin-top: 10px"> <el-button @click="shanchu(props.row)" type="danger" size="small">鍒犻櫎</el-button> </div> </div> @@ -408,16 +514,27 @@ <el-table-column align="center" prop="proResult" label="妫�娴嬬粨鏋�" width="85"></el-table-column> <el-table-column align="center" prop="stanId" label=" 鍙傝�冭寖鍥�" width="117"></el-table-column> <el-table-column align="center" prop="proAdvice" label="鍗曚綅" width="78"></el-table-column> + <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" width="60" + fixed="right"> + <template slot-scope="props"> + <el-button size="mini" type="text" icon="el-icon-delete" @click="shanchu(props.row)"> + </el-button> + </template> + </el-table-column> </el-table> </template> <template v-if="item.jyjc == '1'"> <el-table :stripe="true" :row-style="red" :data="item.sone" border style="width: 100%" - :header-cell-style="{ background: '#67C23A' }" :expand-row-keys="expends" :row-key="getRowKeys"> + :header-cell-style="{ background: '#67C23A' }" :row-key="getRowKeys"> + <!-- :expand-row-keys="expends" --> <el-table-column type="expand"> <template slot-scope="props"> - <div style="padding: 10px;"> + <div style="padding: 10px"> <!-- 鍐呭鍖哄煙 --> - <div v-if="props.row.advices && props.row.advices.length > 0"> + <div v-if=" + props.row.advices && + props.row.advices.length > 0 + "> <div v-for="(jianyi, index1) in props.row.advices" :key="index1" style="margin-bottom: 10px"> <div> @@ -445,7 +562,7 @@ @blur="handleAdviceBlur(props.row, -1)"></el-input> </div> </div> - <div style="margin-top: 10px;"> + <div style="margin-top: 10px"> <el-button @click="shanchu(props.row)" type="danger" size="small">鍒犻櫎</el-button> </div> </div> @@ -457,31 +574,46 @@ </template> </el-table-column> <el-table-column align="center" prop="proResult" label="妫�娴嬬粨鏋�" width="403"></el-table-column> + <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" width="60" + fixed="right"> + <template slot-scope="props"> + <el-button size="mini" type="text" icon="el-icon-delete" @click="shanchu(props.row)"> + </el-button> + </template> + </el-table-column> </el-table> </template> </div> </template> <template v-if="status1 == 1"> <div> - <div style="text-align: center; background-color: #e6a23c; margin-top: 10px;"> + <div style=" + text-align: center; + background-color: #e6a23c; + margin-top: 10px; + "> 椤圭洰妫�鏌ユ儏鍐� </div> <el-table :row-style="redxiangmu" :data="statusList" style="width: 100%" :header-cell-style="{ background: '#e6a23c' }"> <el-table-column align="center" label="閮ㄩ棬" width="144" prop="deptName"></el-table-column> <el-table-column align="center" prop="proName" label="椤圭洰" width="260"></el-table-column> - <el-table-column label="鐘舵��" align="center" prop="type" :show-overflow-tooltip="true" width="120"> + <el-table-column label="鐘舵��" align="center" prop="type" :show-overflow-tooltip="true" width="90"> <template slot-scope="scope"> - <span v-if="scope.row.type == '0'">鏈鏍�</span> - <span v-if="scope.row.type == '1'">宸插鏍�</span> + <span v-if="scope.row.type == '0'">鏈</span> + <span v-if="scope.row.type == '1'">宸叉</span> <span v-if="scope.row.type == '2'">寮冩</span> <span v-if="scope.row.type == '3'">寤舵湡</span> </template> </el-table-column> - <el-table-column label="妫�鏌ユ椂闂�" align="center" prop="bcupdateTime" width="160" /> - <el-table-column label="鎿嶄綔" align="center" width="130px"> + <el-table-column label="妫�鏌ユ椂闂�" align="center" prop="bcupdateTime" :formatter="formatDate" + width="160" /> + <el-table-column label="鎿嶄綔" align="center" width="80px" fixed="right"> <template slot-scope="scope"> - <el-button type="primary" size="mini" @click="huifu" v-if="scope.row.type == '2'">鎭㈠</el-button> + <el-button type="primary" size="mini" @click="huifu(scope.row)" v-if="scope.row.type == '2'" + :disabled="tjStatus == 1">鎭㈠</el-button> + <el-button type="primary" size="mini" @click="chexiao(scope.row)" v-if="scope.row.type == '1'" + :disabled="tjStatus == 1">鎾ら攢</el-button> </template> </el-table-column> </el-table> @@ -490,27 +622,38 @@ <template v-if="status1 == 2"> <div> - <div style="text-align: center; margin-top: 10px;"> + <div style="text-align: center; margin-top: 10px"> 澶嶆煡椤圭洰 </div> - <div style="display: flex;margin:15px ;"> - <span slot="label" style="display: inline-block; border-bottom: 2px solid blue;font-size: 0.8vw;" - @click="handleQuery"> + <div style="display: flex; margin: 15px"> + <span slot="label" style=" + display: inline-block; + border-bottom: 2px solid blue; + font-size: 0.8vw; + " @click="handleQuery"> 椤圭洰閫夋嫨 </span> - <div v-if="xmChange.length > 0" style="display: flex;"> - <div style="margin:0 40px;font-size: 0.8vw;">椤圭洰鍚嶇О锛歿{ xmChange[0].proName || "" }}</div> - <div style="margin:0 80px ;font-size: 0.8vw;">浠锋牸锛歿{ xmChange[0].price || "" }}</div> + <div v-if="xmChange.length > 0" style="display: flex"> + <div style="margin: 0 40px; font-size: 0.8vw"> + 椤圭洰鍚嶇О锛歿{ xmChange[0].proName || "" }} + </div> + <div style="margin: 0 80px; font-size: 0.8vw"> + 浠锋牸锛歿{ xmChange[0].price || "" }} + </div> </div> - <div v-else style="display: flex;"> - <div style="margin:0 40px;font-size: 0.8vw;">椤圭洰鍚嶇О锛歿{ }}</div> - <div style="margin:0 80px ;font-size: 0.8vw;">浠锋牸锛歿{ }}</div> + <div v-else style="display: flex"> + <div style="margin: 0 40px; font-size: 0.8vw"> + 椤圭洰鍚嶇О锛歿{}} + </div> + <div style="margin: 0 80px; font-size: 0.8vw"> + 浠锋牸锛歿{}} + </div> </div> <el-button type="primary" size="mini" @click="handleaddClick()">娣诲姞</el-button> </div> <el-table :row-style="redxiangmu" :data="fcList" style="width: 100%" border> - <el-table-column type="selection" width="40" align="center" /> + <!-- <el-table-column type="selection" width="40" align="center" /> --> <el-table-column label="搴忓彿" align="center" prop="newID" /> <el-table-column label="鍚嶇О" align="center" prop="proName" width="100px" /> <el-table-column label="浠锋牸" align="center" prop="price" /> @@ -605,8 +748,7 @@ <el-input v-model="formobj.xiyanpinlv" disabled style="width: 70px" />鏀�/澶� </el-form-item> <el-form-item label="鍚哥儫鏃堕棿" prop="xiyanyear"> - <el-input v-model="formobj.xiyanyear" disabled style="width: 70px" />骞� - </el-form-item><br /> + <el-input v-model="formobj.xiyanyear" disabled style="width: 70px" />骞� </el-form-item><br /> <el-form-item label="鏄惁楗厭" prop="yinjiu"> <el-select filterable v-model="formobj.yinjiu" disabled placeholder="璇烽�夋嫨鏄惁楗厭" clearable style="width: 150px"> @@ -724,42 +866,26 @@ </template> <template v-if="status1 == 4"> <div> - <el-table - :data="ychfList" - style="width: 100%" - :header-cell-style="{ background: '#e6a23c' }" - > - <el-table-column - align="center" - prop="jcxm" - label="椤圭洰鍚�" - width="260" - ></el-table-column> - <el-table-column - label="缁撴灉" - align="center" - prop="jcjg" - width="160" - /> + <el-table :data="ychfList" style="width: 100%" :header-cell-style="{ background: '#e6a23c' }"> + <el-table-column align="center" prop="jcxm" label="椤圭洰鍚�" width="260"></el-table-column> + <el-table-column label="缁撴灉" align="center" prop="jcjg" width="160" /> <el-table-column label="鎿嶄綔" align="center" width="130px"> <template v-slot="scope"> - <el-button - type="primary" - size="mini" - @click="hfyc(scope.row.id)" - >鎭㈠</el-button - > + <el-button type="primary" size="mini" @click="hfyc(scope.row.id)">鎭㈠</el-button> </template> </el-table-column> </el-table> </div> </template> - <el-button type="primary" @click="addnew" :disabled="isdisabled" style="margin-top: 20px;">鏂板</el-button> + <template v-if="status1 == 5"> + <div> + </div> + </template> + <el-button type="primary" @click="addnew" :disabled="isdisabled" style="margin-top: 20px">鏂板</el-button> </div> </div> </div> </div> - </el-drawer> <el-dialog title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false" width="50%"> @@ -804,10 +930,10 @@ @focus="tan($event)"></el-input> </el-form-item> <el-button v-if="index > 0" type="danger" size="small" @click="removeAdvice(index)" - style="margin-left: 100px; margin-bottom: 10px;">鍒犻櫎</el-button> + style="margin-left: 100px; margin-bottom: 10px">鍒犻櫎</el-button> </div> <el-form-item> - <el-button type="primary" size="small" @click="addAdvice" style="margin-left: 100px;">娣诲姞寤鸿</el-button> + <el-button type="primary" size="small" @click="addAdvice" style="margin-left: 100px">娣诲姞寤鸿</el-button> </el-form-item> </el-form> <span slot="footer" class="dialog-footer"> @@ -818,7 +944,7 @@ <el-dialog title="蹇嵎寤鸿閫夋嫨" :visible.sync="showjianyi" width="1000px" class="custom-dialog" :before-close="handleCloseAdviceDialog"> <!-- 鎼滅储鍖哄煙 --> - <div style="margin-bottom: 15px;"> + <div style="margin-bottom: 15px"> <el-form :inline="true"> <el-form-item label="寤鸿鍚嶇О"> <el-input v-model="queryParams1.zyzd" placeholder="璇疯緭鍏ュ缓璁悕绉拌繘琛岀瓫閫�" clearable style="width: 200px" @@ -829,7 +955,7 @@ <!-- 寤鸿琛ㄦ牸 --> <el-table v-loading="adviceLoading" :data="advicerulesList" ref="adviceTable" border highlight-current-row - @current-change="handleCurrentChangeAdvice" style="max-height: 400px; overflow-y: auto;" + @current-change="handleCurrentChangeAdvice" style="max-height: 400px; overflow-y: auto" :empty-text="adviceEmptyText"> <el-table-column label="绉戝" prop="ks" width="100" align="center" /> <el-table-column label="寤鸿鍚嶇О" prop="jymc" align="center" /> @@ -852,7 +978,7 @@ </el-dialog> <el-dialog :visible.sync="xmopen" width="800px" append-to-body> - <div style="margin: 20px;"> + <div style="margin: 20px"> <el-table :data="datasList" ref="elTable" v-loading="loading" @selection-change="handlexmChange" border height="320px"> <el-table-column type="selection" width="40" align="center" /> @@ -869,13 +995,14 @@ </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" :mrjy="mrjy" @event1="eventchange($event)" /> <createproposal ref="createproposal" :creatobj="creatobj" /> <el-dialog title="甯哥敤寤鸿缁存姢" :visible.sync="propdialog" width="500px" append-to-body></el-dialog> </div> </template> <script> -import _ from 'lodash'; +import _ from "lodash"; +import { getConfigKey } from "@/api/system/config"; import jianqianwenzhen from "@/components/jianqianwenzhen"; import Packages from "@/components/Packages"; import Prescription from "@/components/Prescription"; @@ -899,13 +1026,14 @@ UpdFcPro, huiFuyichangxiangmu, hfbt, + chexiao,tjjcycxm } 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, shanchu } from "@/api/doctor/check"; import { getPdf, revoke } from "@/api/hosp/order"; -import { cSWebGetPro,huifu,} from "@/api/doctor/examination"; +import { cSWebGetPro, huifu } from "@/api/doctor/examination"; import ViewPdf from "@/components/ViewPdf"; import Historicalreport from "@/components/Historicalreport"; import { getDicts } from "@/api/system/dict/data"; @@ -940,10 +1068,12 @@ name: "checkAll", data() { return { - zhiyeJl: '', // 鍒濆鍖栨鏌ョ粨璁轰负绌� - zhiyeJg: '', // 鍒濆鍖栦綋妫�缁撴灉涓洪粯璁ゅ�� + zhiyeJl: "", // 鍒濆鍖栨鏌ョ粨璁轰负绌� + zhiyeJg: "", // 鍒濆鍖栦綋妫�缁撴灉涓洪粯璁ゅ�� selectedAdvice: null, activeAdviceIndex: 0, + minRows: 3, + maxRows: null, gotyval: null, advicerulesList: [], xmChange: [], @@ -951,27 +1081,27 @@ piliang: false, isLoading: false, adviceLoading: false, - adviceEmptyText: '鏆傛棤鏁版嵁', + adviceEmptyText: "鏆傛棤鏁版嵁", total1: 0, forms: { - pacName: "" + pacName: "", }, xmopen: false, datasList: [], queryParams1: { pageNum: 1, pageSize: 10, - zyzd: '', + zyzd: "", }, adviceCache: new Map(), addNewDialogVisible: false, newItem: { - parentName: '', - jcxm: '', - jcjg: '', - ckfw: '', - dw: '', - map: [{ bt: '', nr: '' }] + parentName: "", + jcxm: "", + jcjg: "", + ckfw: "", + dw: "", + map: [{ bt: "", nr: "" }], }, projectCategories: [], emptyAdvice: { @@ -999,6 +1129,7 @@ src: "", url: "", userId: "", + mrjy: "", flag: true, bill: null, numberList: [], @@ -1070,7 +1201,7 @@ checkStatus: null, shys: null, tcm: null, - tjCategory: null + tjCategory: null, }, formobj: {}, yichangList: [], @@ -1107,27 +1238,34 @@ }, created() { - console.log(this.dict.type.dict_tjtype, "鑱屼笟浣撴"); this.getConfigKey(); this.getdate(); }, mounted() { this.$nextTick(() => { this.$refs.inputName.focus(); - this.viewportHeight = window.innerHeight || document.documentElement.clientHeight; + this.viewportHeight = + window.innerHeight || document.documentElement.clientHeight; + }); + getConfigKey("zjysjymrhs").then((res) => { + const val = parseInt(res.msg); // 纭繚鏄暟瀛� + if (!isNaN(val)) { + this.maxRows = val; + } }); }, methods: { // 鎵撳紑寤鸿閫夋嫨寮圭獥 tan(event) { - this.activeAdviceIndex = event.target.closest('.advice-group') - ? Array.from(event.target.closest('.el-form').querySelectorAll('.advice-group')) - .indexOf(event.target.closest('.advice-group')) + this.activeAdviceIndex = event.target.closest(".advice-group") + ? Array.from( + event.target.closest(".el-form").querySelectorAll(".advice-group") + ).indexOf(event.target.closest(".advice-group")) : 0; this.queryParams1.pageNum = 1; this.queryParams1.pageSize = 10; - this.queryParams1.zyzd = ''; + this.queryParams1.zyzd = ""; this.selectedAdvice = null; this.advicerulesList = []; this.total1 = 0; @@ -1142,18 +1280,20 @@ this.queryParams1.pageNum = 1; } - const cacheKey = `${this.queryParams1.zyzd || ''}_${this.queryParams1.pageNum}_${this.queryParams1.pageSize}`; + const cacheKey = `${this.queryParams1.zyzd || ""}_${this.queryParams1.pageNum + }_${this.queryParams1.pageSize}`; if (this.adviceCache.has(cacheKey)) { const cachedData = this.adviceCache.get(cacheKey); this.advicerulesList = cachedData.rows; this.total1 = cachedData.total; - this.adviceEmptyText = this.advicerulesList.length === 0 ? '鏆傛棤鍖归厤鐨勫缓璁�' : '鏆傛棤鏁版嵁'; + this.adviceEmptyText = + this.advicerulesList.length === 0 ? "鏆傛棤鍖归厤鐨勫缓璁�" : "鏆傛棤鏁版嵁"; return; } this.adviceLoading = true; - this.adviceEmptyText = '鍔犺浇涓�...'; + this.adviceEmptyText = "鍔犺浇涓�..."; listAdvicerules(this.queryParams1) .then((response) => { @@ -1165,14 +1305,14 @@ total: this.total1, }); - this.adviceEmptyText = this.advicerulesList.length === 0 ? '鏆傛棤鍖归厤鐨勫缓璁�' : '鏆傛棤鏁版嵁'; + this.adviceEmptyText = + this.advicerulesList.length === 0 ? "鏆傛棤鍖归厤鐨勫缓璁�" : "鏆傛棤鏁版嵁"; }) .catch((error) => { - console.error('绛涢�夊揩鎹峰缓璁け璐�:', error); this.advicerulesList = []; this.total1 = 0; - this.adviceEmptyText = '鍔犺浇澶辫触锛岃绋嶅悗閲嶈瘯'; - this.$message.error('鍔犺浇寤鸿澶辫触锛岃妫�鏌ョ綉缁滃悗閲嶈瘯'); + this.adviceEmptyText = "鍔犺浇澶辫触锛岃绋嶅悗閲嶈瘯"; + this.$message.error("鍔犺浇寤鸿澶辫触锛岃妫�鏌ョ綉缁滃悗閲嶈瘯"); }) .finally(() => { this.adviceLoading = false; @@ -1183,6 +1323,11 @@ this.selectedAdvice = currentRow; }, + formatDate(row) { + if (!row.qdcreateTime) return ""; + const date = moment(row.qdcreateTime, "YYYY-MM-DD"); + return date.isValid() ? date.format("YYYY-MM-DD") : "鏃犳晥鏃ユ湡"; + }, toggleCollapse3() { this.isCollapsed = 0; @@ -1200,14 +1345,14 @@ this.showjianyi = false; this.selectedAdvice = null; } else { - this.$message.warning('璇峰厛閫夋嫨涓�鏉″缓璁�'); + this.$message.warning("璇峰厛閫夋嫨涓�鏉″缓璁�"); } }, cancelAdviceDialog() { this.showjianyi = false; this.selectedAdvice = null; - this.queryParams1.zyzd = ''; + this.queryParams1.zyzd = ""; this.queryParams1.pageNum = 1; this.advicerulesList = []; this.total1 = 0; @@ -1216,10 +1361,10 @@ handleCloseAdviceDialog(done) { if (this.selectedAdvice) { - this.$confirm('鎮ㄥ凡閫夋嫨涓�鏉″缓璁紝纭畾瑕佸叧闂悧锛�', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning', + this.$confirm("鎮ㄥ凡閫夋嫨涓�鏉″缓璁紝纭畾瑕佸叧闂悧锛�", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", }) .then(() => { this.cancelAdviceDialog(); @@ -1237,8 +1382,10 @@ if (index === -1) { if (this.emptyAdvice.bt || this.emptyAdvice.nr) { - advicesToSubmit = [{ bt: this.emptyAdvice.bt || '', nr: this.emptyAdvice.nr || '' }]; - this.$set(row, 'advices', advicesToSubmit); + advicesToSubmit = [ + { bt: this.emptyAdvice.bt || "", nr: this.emptyAdvice.nr || "" }, + ]; + this.$set(row, "advices", advicesToSubmit); } } else { advicesToSubmit = row.advices; @@ -1248,12 +1395,14 @@ return; } - const parentItem = this.yichangList.find(item => - item.sone.some(soneItem => soneItem.orderDetailId === row.orderDetailId) + const parentItem = this.yichangList.find((item) => + item.sone.some( + (soneItem) => soneItem.orderDetailId === row.orderDetailId + ) ); if (!parentItem) { - this.$message.error('鏈壘鍒板搴旂殑鐖剁骇椤圭洰'); + this.$message.error("鏈壘鍒板搴旂殑鐖剁骇椤圭洰"); return; } @@ -1269,16 +1418,17 @@ id: row.orderDetailId, }; - addOrder1(data).then((res) => { - if (res.code === 200) { - // 鎴愬姛鏇存柊寤鸿 - } else { - this.$message.error('寤鸿鏇存柊澶辫触锛�' + (res.msg || '鏈煡閿欒')); - } - }).catch((error) => { - console.error('寤鸿鏇存柊澶辫触:', error); - this.$message.error('寤鸿鏇存柊澶辫触锛�' + error.message); - }); + addOrder1(data) + .then((res) => { + if (res.code === 200) { + // 鎴愬姛鏇存柊寤鸿 + } else { + this.$message.error("寤鸿鏇存柊澶辫触锛�" + (res.msg || "鏈煡閿欒")); + } + }) + .catch((error) => { + this.$message.error("寤鸿鏇存柊澶辫触锛�" + error.message); + }); }, handleSelectionChange(selection) { @@ -1294,46 +1444,48 @@ ckfw: this.newItem.ckfw, dw: this.newItem.dw, map: this.newItem.map, - jyjc: this.newItem.ckfw ? "0" : "1" + jyjc: this.newItem.ckfw ? "0" : "1", }; - addOrder1(data).then((res) => { - if (res.code === 200) { - this.$message.success('鏂板寮傚父缁撴灉鎴愬姛'); - this.addNewDialogVisible = false; - this.yichangjieguo(); - } else { - this.$message.error('鏂板澶辫触'); - } - }).catch((error) => { - console.error('鏂板寮傚父缁撴灉澶辫触:', error); - this.$message.error('鏂板寮傚父缁撴灉澶辫触'); - }); + addOrder1(data) + .then((res) => { + if (res.code === 200) { + this.$message.success("鏂板寮傚父缁撴灉鎴愬姛"); + this.addNewDialogVisible = false; + this.yichangjieguo(); + } else { + this.$message.error("鏂板澶辫触"); + } + }) + .catch((error) => { + this.$message.error("鏂板寮傚父缁撴灉澶辫触"); + }); }, addnew() { this.newItem = { - parentName: '', - jcxm: '', - jcjg: '', - ckfw: '', - dw: '', - map: [{ bt: '', nr: '' }] + parentName: "", + jcxm: "", + jcjg: "", + ckfw: "", + dw: "", + map: [{ bt: "", nr: "" }], }; this.addNewDialogVisible = true; - cSWebGetPro(this.tjNumber).then((res) => { - if (res.data && Array.isArray(res.data)) { - this.projectCategories = res.data; - } else { - this.$message.warning('鏈幏鍙栧埌椤圭洰鍒嗙被鏁版嵁'); + cSWebGetPro(this.tjNumber) + .then((res) => { + if (res.data && Array.isArray(res.data)) { + this.projectCategories = res.data; + } else { + this.$message.warning("鏈幏鍙栧埌椤圭洰鍒嗙被鏁版嵁"); + this.projectCategories = []; + } + }) + .catch((error) => { + this.$message.error("鑾峰彇椤圭洰鍒嗙被澶辫触"); this.projectCategories = []; - } - }).catch((error) => { - console.error('鑾峰彇椤圭洰鍒嗙被澶辫触:', error); - this.$message.error('鑾峰彇椤圭洰鍒嗙被澶辫触'); - this.projectCategories = []; - }); + }); }, handleCategoryChange(value) { @@ -1343,18 +1495,18 @@ }, change(val) { - console.log('閫変腑鐨勫�兼槸锛�', val); + console.log("閫変腑鐨勫�兼槸锛�", val); }, addAdvice() { - this.newItem.map.push({ bt: '', nr: '' }); + this.newItem.map.push({ bt: "", nr: "" }); }, removeAdvice(index) { if (this.newItem.map.length > 1) { this.newItem.map.splice(index, 1); } else { - this.$message.warning('鑷冲皯淇濈暀涓�缁勫缓璁�'); + this.$message.warning("鑷冲皯淇濈暀涓�缁勫缓璁�"); } }, @@ -1363,71 +1515,77 @@ shanchu({ id: row.orderDetailId, - }).then((res) => { - console.log(res, 1111); + }) + .then((res) => { - if (res.code === 200) { - const parentItem = this.yichangList.find(item => - item.sone.some(soneItem => soneItem.orderDetailId === row.orderDetailId) - ); + if (res.code === 200) { + const parentItem = this.yichangList.find((item) => + item.sone.some( + (soneItem) => soneItem.orderDetailId === row.orderDetailId + ) + ); - if (parentItem) { - const index = parentItem.sone.findIndex(item => item.orderDetailId === row.orderDetailId); - if (index > -1) { - parentItem.sone.splice(index, 1); + if (parentItem) { + const index = parentItem.sone.findIndex( + (item) => item.orderDetailId === row.orderDetailId + ); + if (index > -1) { + parentItem.sone.splice(index, 1); - if (parentItem.sone.length === 0) { - const parentIndex = this.yichangList.indexOf(parentItem); - if (parentIndex > -1) { - this.yichangList.splice(parentIndex, 1); + if (parentItem.sone.length === 0) { + const parentIndex = this.yichangList.indexOf(parentItem); + if (parentIndex > -1) { + this.yichangList.splice(parentIndex, 1); + } } - } - this.getExpends(); - this.$forceUpdate(); - this.$message.success('鍒犻櫎鎴愬姛'); + this.getExpends(); + this.$forceUpdate(); + this.$message.success("鍒犻櫎鎴愬姛"); + } else { + this.$message.error("鏈壘鍒拌鍒犻櫎鐨勫瓙椤�"); + } } else { - this.$message.error('鏈壘鍒拌鍒犻櫎鐨勫瓙椤�'); + this.$message.error("鏈壘鍒拌鍒犻櫎鐨勭埗椤�"); } } else { - this.$message.error('鏈壘鍒拌鍒犻櫎鐨勭埗椤�'); + this.$message.error("鍚庣鍒犻櫎澶辫触锛�" + (res.msg || "鏈煡閿欒")); } - } else { - this.$message.error('鍚庣鍒犻櫎澶辫触锛�' + (res.msg || '鏈煡閿欒')); - } - }).catch((error) => { - console.error('鍒犻櫎澶辫触:', error); - this.$message.error('鍒犻櫎鎿嶄綔澶辫触锛�' + error.message); - }).finally(() => { - this.isdisabled = false; - }); + }) + .catch((error) => { + this.$message.error("鍒犻櫎鎿嶄綔澶辫触锛�" + error.message); + }) + .finally(() => { + this.isdisabled = false; + }); }, handleQuery() { this.xmopen = true; let data = { tjNum: this.tjNumber, - type: 0 + type: 0, }; - getFcList(data).then(res => { + getFcList(data).then((res) => { this.datasList = res.data; }); }, handleaddClick() { - console.log(this.xmChange); let data = { orderId: this.xmChange[0].orderId, - data: [{ - proId: this.xmChange[0].proId, - type: 1 - }] + data: [ + { + proId: this.xmChange[0].proId, + type: 1, + }, + ], }; - UpdFcPro(data).then(res => { }); + UpdFcPro(data).then((res) => { }); }, handledeleteClick() { - UpdFcPro(data).then(res => { }); + UpdFcPro(data).then((res) => { }); }, handlexmChange(selection) { @@ -1449,8 +1607,8 @@ }, getExpends() { - this.expends = this.yichangList.flatMap(item => - item.sone.map(soneItem => soneItem.orderDetailId) + this.expends = this.yichangList.flatMap((item) => + item.sone.map((soneItem) => soneItem.orderDetailId) ); }, @@ -1481,8 +1639,7 @@ } }) .catch((error) => { - console.error('鑾峰彇椤圭洰鎯呭喌澶辫触:', error); - this.$message.error('鑾峰彇椤圭洰鎯呭喌澶辫触'); + this.$message.error("鑾峰彇椤圭洰鎯呭喌澶辫触"); }) .finally(() => { this.loading = false; @@ -1494,35 +1651,50 @@ }, yichangjieguo() { - this.isLoading = true + this.loading = true; this.status1 = 0; - this.yichangList = [] - yichang({ - tjNum: this.tjNumber, - }) - .then((res) => { - this.isLoading = false - this.yichangList = res.data; - this.yichangList.forEach((item) => { - item.sone.forEach((soneItem) => { - if (!Array.isArray(soneItem.advices) || soneItem.advices.length === 0) { - soneItem.advices = [{ bt: "", nr: "" }]; - } + this.yichangList = []; + + return new Promise((resolve, reject) => { + yichang({ + tjNum: this.tjNumber, + }) + .then((res) => { + const data = res.data; + + if (!data || data.length === 0) { + this.loading = false; + resolve(); // 杩斿洖 Promise锛屼絾涓嶇户缁悗缁�昏緫 + return; + } + this.yichangList = data; + + this.yichangList.forEach((item) => { + item.sone.forEach((soneItem) => { + if ( + !Array.isArray(soneItem.advices) || + soneItem.advices.length === 0 + ) { + soneItem.advices = [{ bt: "", nr: "" }]; + } + }); }); + /* if (!this.yichangList) { + this.$message.warning("鏆傛棤寮傚父鎶ュ憡"); + } */ + resolve(); // 鎴愬姛瀹屾垚 + }) + .catch((error) => { + this.loading = false; + this.$message.error("鑾峰彇寮傚父缁撴灉澶辫触"); + reject(error); // 杩斿洖閿欒 + }) + .finally(() => { + if (this.loading) { + this.loading = false; + } }); - if (!this.yichangList) { - this.$message.warning("鏆傛棤寮傚父鎶ュ憡"); - } - }) - .catch((error) => { - this.isLoading = false - console.error('鑾峰彇寮傚父缁撴灉澶辫触:', error); - this.$message.error('鑾峰彇寮傚父缁撴灉澶辫触'); - }) - .finally(() => { - this.isLoading = false - this.loading = false; - }); + }); }, fuchaxiangmu() { @@ -1530,15 +1702,14 @@ this.status1 = 2; let data = { tjNum: this.tjNumber, - type: 1 + type: 1, }; getFcList(data) .then((res) => { this.fcList = res.data; }) .catch((error) => { - console.error('鑾峰彇澶嶆煡椤圭洰澶辫触:', error); - this.$message.error('鑾峰彇澶嶆煡椤圭洰澶辫触'); + this.$message.error("鑾峰彇澶嶆煡椤圭洰澶辫触"); }) .finally(() => { this.loading = false; @@ -1643,7 +1814,7 @@ }, 3000); this.$message({ message: "璇锋挙鍥為噸鏂扮敓鎴愭姤鍛�", - type: "error" + type: "error", }); } else { this.dialogVisible = true; @@ -1653,7 +1824,11 @@ } else { let url = response.data.url; const params = { url }; - this.$tab.openPage("鍋ュ悍璇佹鏌ヨ〃", "/report/zongjianjiankangzheng", params); + this.$tab.openPage( + "鍋ュ悍璇佹鏌ヨ〃", + "/report/zongjianjiankangzheng", + params + ); } }); }, @@ -1672,7 +1847,7 @@ let dictTypes = "sys_user_sex"; return getDicts(dictTypes); } else { - throw new Error('鑾峰彇骞撮緞鍗曚綅瀛楀吀澶辫触'); + throw new Error("鑾峰彇骞撮緞鍗曚綅瀛楀吀澶辫触"); } }) .then((res) => { @@ -1691,7 +1866,7 @@ }; return getTjYxjcList(data); } else { - throw new Error('鑾峰彇鎬у埆瀛楀吀澶辫触'); + throw new Error("鑾峰彇鎬у埆瀛楀吀澶辫触"); } }) .then((res) => { @@ -1700,8 +1875,7 @@ this.$refs.bbb.title = "鎶ュ憡瀛楀吀"; }) .catch((error) => { - console.error('鐢熸垚鍥炬枃鎶ュ憡澶辫触:', error); - this.$message.error('鐢熸垚鍥炬枃鎶ュ憡澶辫触'); + this.$message.error("鐢熸垚鍥炬枃鎶ュ憡澶辫触"); }) .finally(() => { this.loading = false; @@ -1722,11 +1896,34 @@ } }) .catch((error) => { - console.error('鑾峰彇鍘嗗彶鎶ュ憡澶辫触:', error); - this.$message.error('鑾峰彇鍘嗗彶鎶ュ憡澶辫触'); + this.$message.error("鑾峰彇鍘嗗彶鎶ュ憡澶辫触"); }) .finally(() => { this.loading = false; + }); + }, + + hisycxm() { + this.status1 = 5; + this.$confirm("閲嶇疆寮傚父椤圭洰鍚庝笉鍙仮澶� 璇疯皑鎱庨噸缃�", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }) + .then(() => { + // 鐢ㄦ埛纭鍚庢墽琛屾帴鍙� + let tjh = this.tableAll.tjNumber + tjjcycxm(tjh) + .then((res) => { + this.$message.success("閲嶇疆寮傚父椤圭洰鎴愬姛"); + }) + .catch((err) => { + this.$message.error("閲嶇疆寮傚父椤圭洰澶辫触"); + }); + }) + .catch(() => { + // 鐢ㄦ埛鍙栨秷浜嗘搷浣� + this.$message.info("宸插彇娑�"); }); }, @@ -1757,8 +1954,7 @@ } }) .catch((error) => { - console.error('鑾峰彇鑱屼笟鐥呭彶澶辫触:', error); - this.$message.error('鑾峰彇鑱屼笟鐥呭彶澶辫触'); + this.$message.error("鑾峰彇鑱屼笟鐥呭彶澶辫触"); }) .finally(() => { this.loading = false; @@ -1785,10 +1981,10 @@ radioChange(value) { this.loading = true; - if(value == "0" && this.gotyval == "01"){ - this.piliang = true - }else{ - this.piliang = false + if (value == "0" && this.gotyval == "01") { + this.piliang = true; + } else { + this.piliang = false; } this.queryParams.checkStatus = value; this.queryParams.page = 1; @@ -1806,8 +2002,13 @@ propoChange() { this.cusobj = { sex: this.tableAll.cusSex, isZj: 0 }; - this.$refs.proposal.open = true; - this.$refs.proposal.title = "寤鸿鏂规"; + + getConfigKey("mrzscyjy").then((res) => { + this.mrjy = res.msg; + this.$refs.proposal.clearSearchFields(); + this.$refs.proposal.title = "寤鸿鏂规"; + this.$refs.proposal.open = true; + }); }, eventchange(data) { @@ -1840,6 +2041,7 @@ radiotjprojectChange() { if (this.tjproject == "0") { getupdateCheckType(this.tjNumber).then((response) => { + this.isLoading = false; this.changedate = response.data; this.changedate.forEach((item) => { this.textarea1 = item.checkAdvice; @@ -1890,18 +2092,16 @@ this.CheckBox = val; }, - searchCategory(val){ - this.gotyval = val - if(val == "01" && this.tjStatus == "0"){ - this.piliang = true - }else{ - this.piliang = false + searchCategory(val) { + this.gotyval = val; + if (val == "01" && this.tjStatus == "0") { + this.piliang = true; + } else { + this.piliang = false; } }, - handleshenhe(){ - - }, + handleshenhe() { }, dateChangebirthday1(val) { this.startTime = val; @@ -1941,34 +2141,45 @@ }); }, - huifu(row){ + huifu(row) { const tjNUm = this.tjNumber; const proId = row.proId; - huifu(tjNUm, proId).then((res) => { - if (res.code == 200) { - this.xiangmuqingkuang() - } - }); + huifu(tjNUm, proId).then((res) => { + if (res.code == 200) { + this.xiangmuqingkuang(); + } + }); + }, + + chexiao(row) { + const tjNUm = this.tjNumber; + const proId = row.proId; + chexiao(tjNUm, proId).then((res) => { + if (res.code == 200) { + this.$message.success("鎾ら攢鎴愬姛"); + this.xiangmuqingkuang(); + } + }); }, yichanghuifu() { this.loading = true; let tjNum = this.tjNumber; - huiFuyichangxiangmu(tjNum).then((res) => { - this.status1 = 4; - this.ychfList = res.data; - if(this.ychfList.length == 0){ - this.message.success("鏆傛棤寮傚父鎭㈠椤圭洰") - } - }) - .catch((error)=>{ - console.error("鑾峰彇椤圭洰澶辫触锛�",error); - - this.$message.error("鑾峰彇椤圭洰澶辫触") - }) - .finally(()=>{ - this.loading = false; - }) + huiFuyichangxiangmu(tjNum) + .then((res) => { + this.status1 = 4; + this.ychfList = res.data; + if (this.ychfList.length == 0) { + this.$message.success("鏆傛棤寮傚父鎭㈠椤圭洰"); + } + }) + .catch((error) => { + + this.$message.error("鑾峰彇椤圭洰澶辫触"); + }) + .finally(() => { + this.loading = false; + }); }, hfyc(id) { @@ -1985,7 +2196,6 @@ this.yichanghuifu(); // 鎭㈠鍚庡埛鏂板垪琛� }) .catch((err) => { - console.error(err); this.$message.error("鎭㈠澶辫触"); }); }) @@ -1997,7 +2207,7 @@ resetQuery() { this.startTime = []; - this.queryParams = { + (this.queryParams = { page: 1, pageSize: 10, tjNumber: "", @@ -2007,8 +2217,8 @@ name: null, checkStatus: null, shys: null, - tjCategory: null - }, + tjCategory: null, + }), this.resetForm("tableList"); this.submitForm(); }, @@ -2036,25 +2246,36 @@ }, handleCurrentChange(val) { - console.log(val) if (val != null) { this.handleClick(val); } }, qingkong() { - this.tableAll = {} - this.changedate = [] - this.yichangList = [] - this.statusList = [] - this.xmChange = [] - this.fcList = [] - this.formobj = {} + this.tableAll = {}; + this.changedate = []; + this.yichangList = []; + this.statusList = []; + this.xmChange = []; + this.fcList = []; + this.formobj = {}; }, - handleClick(row) { - this.qingkong() + /* handleClick(row) { + this.qingkong(); this.$refs.Pre.open = false; this.tableAll = row; + let dict = "dict_tjtype"; + getDicts(dict).then((res) => { + if (res.code == 200) { + res.data.forEach((item) => { + if (this.tableAll.tjCategory == item.dictValue) { + this.tableAll.tjCategory = item.dictLabel; + } + }); + } else { + throw new Error("鑾峰彇浣撴绫诲瀷瀛楀吀澶辫触"); + } + }); this.tjproject = "0"; this.tjNumber = this.tableAll.tjNumber; @@ -2062,96 +2283,199 @@ this.status = res.data; if (this.status) { if (this.status.status === "1") { - this.yichangjieguo(); - getInfo().then((response) => { - this.userId = response.user.userId; - if (this.userId) { - let data = { - userId: this.userId, - tjNumber: this.tjNumber, - state: 0, - }; - getModifiedState(data).then((res) => { - this.MsgId = res.msg; - this.isLoading = true - this.drawer = true; - getupdateCheckType(this.tjNumber).then((response) => { - this.isLoading = false - this.changedate = response.data; - if (this.changedate) { - this.changedate.forEach((item) => { - 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; - } - // 鍥炴樉 zhiyeJl 鍜� zhiyeJg - this.zhiyeJl = this.changedate[0].zhiyejl || ''; - this.zhiyeJg = this.changedate[0].zhiyejg || '鏈彂鐜扮洰鏍囨�х柧鐥�'; - } else { - this.$message({ - type: "warning", - message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", - }); - // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� - this.zhiyeJl = ''; - this.zhiyeJg = '鏈彂鐜扮洰鏍囨�х柧鐥�'; - } - }); - }); - } - }); - + // 娌℃湁寮哄埗杩涘叆寮规锛岀洿鎺ュ紑鍚姞杞藉拰寮规 + this.isLoading = true; + this.drawer = true; + // 鐩存帴鍦╤andleClick涓疄鐜板苟琛屽姞杞� + this.loadDataInHandleClick(); } else { - this.$confirm("" + this.status.name + "姝e湪淇敼璇ヤ俊鎭�, 鏄惁寮哄埗杩涘幓?", "鎻愮ず", { - confirmButtonText: "鏄�", - cancelButtonText: "鍚�", - type: "warning", - }) + this.$confirm( + "" + this.status.name + "姝e湪淇敼璇ヤ俊鎭�, 鏄惁寮哄埗杩涘幓?", + "鎻愮ず", + { + confirmButtonText: "鏄�", + cancelButtonText: "鍚�", + type: "warning", + } + ) .then(() => { - this.yichangjieguo(); - getInfo().then((response) => { - this.userId = response.user.userId; - if (this.userId) { - let data = { - userId: this.userId, - tjNumber: this.tjNumber, - state: 0, - }; - getforceIn(data).then((res) => { - this.MsgId = res.msg; - this.isLoading = true - this.drawer = true; - getupdateCheckType(this.tjNumber).then((response) => { - this.isLoading = false - this.changedate = response.data; - if (this.changedate) { - 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 || ""; - }); - // 鍥炴樉 zhiyeJl 鍜� zhiyeJg - this.zhiyeJl = this.changedate[0].zhiyejl || ''; - this.zhiyeJg = this.changedate[0].zhiyejg || '鏈彂鐜扮洰鏍囨�х柧鐥�'; - } else { - this.$message({ - type: "warning", - message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", - }); - // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� - this.zhiyeJl = ''; - this.zhiyeJg = '鏈彂鐜扮洰鏍囨�х柧鐥�'; - } - }); - }); - } + // 鍏抽棴琛ㄦ牸鐨刲oading鐘舵�� + this.loading = false; + // 鐢ㄦ埛纭寮哄埗杩涘叆锛屽紑鍚姞杞藉拰寮规 + this.isLoading = true; + this.drawer = true; + // 鐩存帴鍦╤andleClick涓疄鐜板苟琛屽姞杞斤紙寮哄埗杩涘叆妯″紡锛� + this.loadDataInHandleClick(true); + }) + .catch(() => { + this.isLoading = false; // 鍙栨秷鏃朵篃瑕佸叧闂姞杞芥 + this.$message({ + type: "info", + message: "宸插彇娑堣繘鍏�", }); + }); + } + } + }); + }, */ + handleClick(row) { + this.qingkong(); + this.$refs.Pre.open = false; + this.tableAll = row; + let dict = "dict_tjtype"; + getDicts(dict).then((res) => { + if (res.code == 200) { + res.data.forEach((item) => { + if (this.tableAll.tjCategory == item.dictValue) { + this.tableAll.tjCategory = item.dictLabel; + } + }); + } else { + throw new Error("鑾峰彇浣撴绫诲瀷瀛楀吀澶辫触"); + } + }); + this.tjproject = "0"; + this.tjNumber = this.tableAll.tjNumber; + + getState(this.tjNumber).then((res) => { + this.status = res.data; + if (this.status) { + if (this.status.status === "1") { + // 寮�鍚姞杞藉拰寮规 + this.isLoading = true; + this.drawer = true; + + // 骞惰鎵ц寮傚父缁撴灉銆佺敤鎴蜂俊鎭幏鍙栧拰浣撴椤圭洰鏁版嵁鑾峰彇 + Promise.all([ + this.yichangjieguo(), + getInfo(), + getupdateCheckType(this.tjNumber), + ]) + .then(([yichangResult, userInfo, checkTypeResult]) => { + this.userId = userInfo.user.userId; + if (this.userId) { + let data = { + userId: this.userId, + tjNumber: this.tjNumber, + state: 0, + }; + getModifiedState(data) + .then((res) => { + this.MsgId = res.msg; + // 鎵�鏈夋暟鎹兘宸插姞杞藉畬鎴愶紝鍏抽棴loading + this.isLoading = false; + + this.changedate = checkTypeResult.data; + if (this.changedate) { + this.changedate.forEach((item) => { + 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; + } + // 鍥炴樉 zhiyeJl 鍜� zhiyeJg + this.zhiyeJl = this.changedate[0].zhiyejl || ""; + this.zhiyeJg = + this.changedate[0].zhiyejg || "鏈彂鐜扮洰鏍囨�х柧鐥�"; + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� + this.zhiyeJl = ""; + this.zhiyeJg = "鏈彂鐜扮洰鏍囨�х柧鐥�"; + } + }) + .catch((error) => { + this.isLoading = false; + this.$message.error("淇敼鐘舵�佸け璐�"); + }); + } else { + this.isLoading = false; + } + }) + .catch((error) => { + this.isLoading = false; + this.$message.error("鍔犺浇鏁版嵁澶辫触锛岃閲嶈瘯"); + }); + } else { + this.$confirm( + "" + this.status.name + "姝e湪淇敼璇ヤ俊鎭�, 鏄惁寮哄埗杩涘幓?", + "鎻愮ず", + { + confirmButtonText: "鏄�", + cancelButtonText: "鍚�", + type: "warning", + } + ) + .then(() => { + // 寮�鍚姞杞藉拰寮规 + this.isLoading = true; + this.drawer = true; + + // 骞惰鎵ц寮傚父缁撴灉銆佺敤鎴蜂俊鎭幏鍙栧拰浣撴椤圭洰鏁版嵁鑾峰彇 + Promise.all([ + this.yichangjieguo(), + getInfo(), + getupdateCheckType(this.tjNumber), + ]) + .then(([yichangResult, userInfo, checkTypeResult]) => { + this.userId = userInfo.user.userId; + if (this.userId) { + let data = { + userId: this.userId, + tjNumber: this.tjNumber, + state: 0, + }; + getforceIn(data) + .then((res) => { + this.MsgId = res.msg; + // 鎵�鏈夋暟鎹兘宸插姞杞藉畬鎴愶紝鍏抽棴loading + this.isLoading = false; + + this.changedate = checkTypeResult.data; + if (this.changedate) { + 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 || ""; + }); + // 鍥炴樉 zhiyeJl 鍜� zhiyeJg + this.zhiyeJl = this.changedate[0].zhiyejl || ""; + this.zhiyeJg = + this.changedate[0].zhiyejg || "鏈彂鐜扮洰鏍囨�х柧鐥�"; + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� + this.zhiyeJl = ""; + this.zhiyeJg = "鏈彂鐜扮洰鏍囨�х柧鐥�"; + } + }) + .catch((error) => { + this.isLoading = false; + this.$message.error("寮哄埗杩涘叆澶辫触"); + }); + } else { + this.isLoading = false; + } + }) + .catch((error) => { + this.isLoading = false; + this.$message.error("鍔犺浇鏁版嵁澶辫触锛岃閲嶈瘯"); + }); }) .catch(() => { this.$message({ @@ -2165,7 +2489,10 @@ }, handleClose(done) { - if (JSON.stringify(this.initialState) !== JSON.stringify(this.changedate) || this.initialTotalCheckAdvice !== this.textarea1) { + if ( + JSON.stringify(this.initialState) !== JSON.stringify(this.changedate) || + this.initialTotalCheckAdvice !== this.textarea1 + ) { this.$confirm("鎮ㄦ湁鏈繚瀛樼殑鏇存敼锛岀‘瀹氳鍏抽棴鍚楋紵", "鎻愮ず", { confirmButtonText: "纭畾", cancelButtonText: "鍙栨秷", @@ -2206,12 +2533,13 @@ let tjNumber = this.tableAll.tjNumber; let tjh = this.tableAll.tjNumber; let advice = this.textarea1; + this.isLoading = true; let data = { tjNumber, advice, checkStatus: 1, zhiyeJl: this.zhiyeJl, // 娣诲姞妫�鏌ョ粨璁� - zhiyeJg: this.zhiyeJg // 娣诲姞浣撴缁撴灉 + zhiyeJg: this.zhiyeJg, // 娣诲姞浣撴缁撴灉 }; let dataList = this.yichangList .map((item) => { @@ -2232,10 +2560,11 @@ getTjdetailList(data) .then((response) => { if (response.code === 200) { - this.$modal.msgSuccess("鎻愪氦鎴愬姛"); + this.isLoading = false; + this.$modal.msgSuccess(response.msg); // 娓呯┖瀛楁 - this.zhiyeJl = ''; - this.zhiyeJg = ''; + this.zhiyeJl = ""; + this.zhiyeJg = ""; let reportData = { userId: this.userId, @@ -2243,8 +2572,44 @@ state: 1, id: this.MsgId, }; + /* 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); + }); - addOrder(dataList) + Promise.all([statePromise, ...updatePromises]) + .then(() => { + this.loading = false; + this.queryParams.page = 1; + this.queryParams.pageSize = 10; + this.submitForm(); + this.$forceUpdate(); + }) + .catch((error) => { + this.loading = false; + }); + + /* addOrder(dataList) .then((res) => { if (res.code == 200) { gettoPdf(tjNumber) @@ -2284,14 +2649,12 @@ }) .catch((error) => { this.loading = false; - console.error("鍙戠敓閿欒:", error); }); } }) .catch((error) => { this.loading = false; - console.error("addOrderPromise 澶辫触:", error); - }); + }); */ } else { this.loading = false; this.$modal.msgError("鎻愪氦澶辫触"); @@ -2299,7 +2662,6 @@ }) .catch((error) => { this.loading = false; - console.error("鎻愪氦璇锋眰澶辫触:", error); this.$modal.msgError("鎻愪氦璇锋眰澶辫触"); }); }, -- Gitblit v1.8.0