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 | 1896 +++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 1,257 insertions(+), 639 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index 2168968..695b888 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -144,17 +144,33 @@ width="130px" /> - <el-table-column + <!-- <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime" :show-overflow-tooltip="true" width="110px" + /> --> + <el-table-column + v-if="tjStatus === '1'" + label="瀹℃牳鏃堕棿" + align="center" + prop="shsj" + :show-overflow-tooltip="true" + 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" /> @@ -163,10 +179,10 @@ align="center" prop="tjStatus" :show-overflow-tooltip="true" - width="50px" + width="120px" > <template slot-scope="scope"> - <span>{{ scope.row.tjStatus == "1" ? "宸叉" : "鏈" }}</span> + <span>{{ scope.row.tjStatus == "1" ? "宸插鏍�" : "鏈鏍�" }}</span> </template> </el-table-column> <el-table-column @@ -183,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="璇︽儏" @@ -201,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" @@ -235,19 +266,19 @@ </div> </template> - <!-- 鐐瑰嚮寮瑰嚭妗� --> + <!-- 鐐瑰嚮寮瑰嚭妗� show-close="true"--> <el-drawer - title="" + custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" size="100%" - show-close="true" + > <div class="top"> <table style=" - width: 98%; + width: 100%; margin: 10px 10px; border: 1px solid #dfe6ec; border-collapse: collapse; @@ -309,399 +340,606 @@ <i class="el-icon-close" @click="guanbi"></i> </div> - <div style="margin-right: 10px; display: flex"> - <div class="btn1"> - <el-button @click="Graphicreport()" type="primary" - >鍥炬枃鎶ュ憡</el-button - > + <div style="margin-right: 10px; display: flex" class="btnbox"> + <div class="btn1" v-if="msgtuwen == 'y' || msgtuwen == 'Y'"> + <el-button @click="Graphicreport()" type="primary"> + <span class="vertical-text">鍥炬枃鎶ュ憡</span> + </el-button> </div> - <div class="btn2"> + <div class="btn1"> <el-button @click="historicalreport()" type="primary" - >鍘嗗彶鎶ュ憡</el-button + ><span class="vertical-text">鍘嗗彶鎶ュ憡</span></el-button > </div> <div v-if="tableAll.tjCategory == '02'" class="btn1"> <el-button @click="medicalhistory()" type="primary" - >鑱屼笟鐥呭彶</el-button + ><span class="vertical-text">鑱屼笟鐥呭彶</span></el-button > </div> - <div class="btn3"> - <el-button @click="jianqian()" type="primary">妫�鍓嶉棶璇�</el-button> + <div class="btn1" v-if="msgjianqian == 'y' || msgjianqian == 'Y'"> + <el-button @click="jianqian()" type="primary" + ><span class="vertical-text">妫�鍓嶉棶璇�</span></el-button + > </div> - - <div class="btn4"> - <el-button @click="xiangmuqingkuang()" type="primary">椤圭洰鎯呭喌</el-button> + + <div class="btn1"> + <el-button @click="xiangmuqingkuang()" type="primary" + ><span class="vertical-text">椤圭洰鎯呭喌</span></el-button + > </div> - <div class="btn5"> - <el-button @click="yichangjieguo()" type="primary">寮傚父缁撴灉</el-button> + <div class="btn1"> + <el-button @click="yichangjieguo()" type="primary" + ><span class="vertical-text">寮傚父缁撴灉</span></el-button + > </div> </div> <div class="box"> - <div - class="left" - style=" - font-size: 14px; - height: calc(100% - 11%); - width: 1300px; - margin-left: 10px; - " - > - <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="240"> - <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" - size="mini" - @click.stop="guanbi" - >鍙栨秷</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-button - v-if="tjproject == '0'" - type="primary" - size="mini" - @click.stop="rowClick" - icon="el-icon-edit-outline" - >寮�澶勬柟</el-button - > - <div v-if="tjproject == '0'" style="padding-left: 10px"> + <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="status==0"> - <div v-for="(item, index) in yichangList" :key="index" > - <div - style=" - text-align: center; - background-color: #aad8df; - margin-top: 10px; - " - > - {{ item.proName || "" }} - </div> - <el-table - :row-style="red" - :data="item.sone" - border - style="width: 100%" - :header-cell-style="{ background: '#aad8df' }" - > - <el-table-column align="center" label="妫�娴嬮」鐩�" width="240"> - <template slot-scope="scope"> - <div>{{ scope.row.proName }}</div> + <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; + " + > + {{ 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" + > + <el-table-column type="expand"> + <template slot-scope="props"> + <div style="padding: 10px"> + <!-- 鍐呭鍖哄煙 --> + <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> + 鏍囬锛� + <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> + </template> + </el-table-column> + + <el-table-column + align="center" + label="妫�娴嬮」鐩�" + :show-overflow-tooltip="true" + width="353" + > + <template slot-scope="scope"> + <div>{{ scope.row.proName }}</div> + </template> + </el-table-column> + <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> </template> - </el-table-column> - <el-table-column - align="center" - prop="proResult" - label="妫�娴嬬粨鏋�" - width="160" - > - </el-table-column> + <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" + > + <el-table-column type="expand"> + <template slot-scope="props"> + <div style="padding: 10px"> + <!-- 鍐呭鍖哄煙 --> + <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> + 鏍囬锛� + <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> - <el-table-column align="center" prop="stanId" label=" 鍙傝�冭寖鍥�"> - </el-table-column> - <el-table-column align="center" prop="proAdvice" label="鍗曚綅"> - </el-table-column> - </el-table> - </div> - <div v-if="!yichangList.length">鏆傛棤寮傚父缁撴灉</div> - </template> - <template v-if="status==1"> - <div v-for="(item, index) in statusList" :key="index"> - <div - style=" - text-align: center; - background-color: #aad8df; - margin-top: 10px; - " - > - {{ item.proName || "" }} - </div> - <el-table - :data="statusList" - border - style="width: 100%" - :header-cell-style="{ background: '#aad8df' }" - > - <el-table-column align="center" label="閮ㄩ棬" width="190" prop="deptName"> - </el-table-column> - <el-table-column - align="center" - prop="proName" - label="椤圭洰" - width="160" - > - </el-table-column> + <!-- 濡傛灉 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> - <el-table-column - label="鐘舵��" - align="center" - prop="type" - :show-overflow-tooltip="true" - width="60" - > - <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 == '2'">寮冩</span> - <span v-if="scope.row.type == '3'">寤舵湡</span> + <div style="margin-top: 10px"> + <el-button + @click="shanchu(props.row)" + type="danger" + size="small" + >鍒犻櫎</el-button + > + </div> + </div> + </template> + </el-table-column> + + <el-table-column + align="center" + label="妫�娴嬮」鐩�" + width="232" + :show-overflow-tooltip="true" + > + <template slot-scope="scope"> + <div>{{ scope.row.proName }}</div> + </template> + </el-table-column> + <el-table-column + align="center" + prop="proResult" + label="妫�娴嬬粨鏋�" + width="403" + > + </el-table-column> + </el-table> + </template> + </div> </template> - </el-table-column> - <el-table-column - label="妫�鏌ユ椂闂�" - align="center" - prop="bcupdateTime" - width="160" - /> - </el-table> + <template v-if="status1 == 1"> + <div> + <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" + > + <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 == '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> + </div> + </template> </div> - </template> - </div> </div> </div> @@ -1117,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 @@ -1147,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 @@ -1159,7 +1397,7 @@ </el-dialog> </div> </template> - + <script> import jianqianwenzhen from "@/components/jianqianwenzhen"; @@ -1179,19 +1417,22 @@ 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"; import { getTjYxjcList } from "@/api/system/package"; import { getNewDateList } from "@/api/hosp/order"; +import { getconfigKey } from "@/api/login"; import moment from "moment"; +import { get } from "sortablejs"; export default { components: { @@ -1218,6 +1459,10 @@ data() { return { // 鏇存柊鎬绘寤鸿 + emptyAdvice: { + bt: "", + nr: "", + }, initialTotalCheckAdvice: "", initialState: "", preObj: {}, @@ -1237,7 +1482,6 @@ cusobj: {}, xiaojie: "", isdisabled: false, - dialogVisible: false, src: "", url: "", userId: "", @@ -1277,6 +1521,9 @@ }, ], }, + msgtuwen: "", + msgjianqian: "", + msgkcf: "", // 椤甸潰鍏ㄩ儴鏁版嵁 checkList: [], // 缁戝畾鍗曢�夋寜閽� @@ -1342,48 +1589,163 @@ tjCategory: undefined, payType: undefined, }, - status: 0 // 0灞曠ず寮傚父1灞曠ず椤圭洰鎯呭喌 + status1: 0, // 0灞曠ず寮傚父1灞曠ず椤圭洰鎯呭喌 + viewportHeight: 0, + expends: [], + clearTimeSet: null, }; }, created() { // this.getNowTime(); - + this.getConfigKey(); this.getdate(); }, mounted() { this.$nextTick(() => { this.$refs.inputName.focus(); - + this.viewportHeight = + window.innerHeight || document.documentElement.clientHeight; }); }, methods: { - // 椤圭洰鎯呭喌 - xiangmuqingkuang () { - cSWebGetPro(this.tjNumber).then((res) => { - this.status = 1 - this.statusList = res.data; - }) + setTime() { + //璁剧疆瀹氭椂鍣� + this.clearTimeSet = setInterval(() => { + this.$modal.closeLoading(); + }, 300000); }, - guanbi(){ + 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; + }); + getconfigKey("sfkqjqwz").then((res) => { + this.msgjianqian = res.msg; + }); + getconfigKey("kcf").then((res) => { + this.msgkcf = res.msg; + }); + }, + //璁剧疆table涓殑鎵╁睍椤癸紝灞曞紑鐨刬d锛屾澶勬垜闇�瑕佸叏閮ㄥ睍寮� + getExpends() { + // 閫氳繃flatMap灏嗘瘡涓猻one鏁扮粍涓殑ID鎻愬彇鍑烘潵锛屽苟杩斿洖涓�涓墎骞冲寲鐨処D鏁扮粍 + this.expends = this.yichangList.flatMap((item) => + item.sone.map((subItem) => subItem.proId) + ); + }, + + getRowKeys(row) { + return row.proId; + }, + // 椤圭洰鎯呭喌 + xiangmuqingkuang() { + cSWebGetPro(this.tjNumber).then((res) => { + this.status1 = 1; + this.statusList = res.data; + + if (this.statusList.length == 0) { + _this.$message.msgSuccess("鏆傛棤椤圭洰鎯呭喌"); + } + }); + }, + guanbi() { this.drawer = false; }, yichangjieguo() { - this.status = 0 - let _this = this + this.status1 = 0; + let _this = this; yichang({ 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({ + type: "warning ", + message: "鏆傛棤寮傚父鎶ュ憡", + }); + } }); }, 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(); }); }, @@ -1424,7 +1786,7 @@ let tjNumber = this.tableAll.tjNumber; this.jianqianwenzhendata.push(tjNumber); }, - + getList() { this.loading = true; this.queryParams.compId = this.CheckBox.drugManufacturerId; @@ -1477,7 +1839,10 @@ setTimeout(() => { loading.close(); }, 3000); - this.$message.msgSuccess("鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�"); + this.$message({ + message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�", + type: "error", + }); } else { this.dialogVisible = true; @@ -1658,6 +2023,7 @@ if (this.tjproject == "0") { getupdateCheckType(this.tjNumber).then((response) => { this.changedate = response.data; + this.changedate.forEach((item) => { this.textarea1 = item.checkAdvice; }); @@ -1795,6 +2161,15 @@ color: "red", }; }, + redxiangmu({ row }) { + if (row.type != 1) { + // 鍙橀鑹茬殑鏉′欢 + return { + backgroundColor: "#AAD8DF !important", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + // color: "#AAD8DF ", + }; + } + }, /* changRed(row) { if (row.label === "鈫�") { return { @@ -1823,42 +2198,163 @@ this.tjproject = "0"; this.tjNumber = this.tableAll.tjNumber; - + getState(this.tjNumber).then((res) => { this.status = res.data; - - if (this.status.status === "1") { - this.yichangjieguo() + 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.drawer = true; + getupdateCheckType(this.tjNumber).then((response) => { + 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; + } + this.changedate.forEach((item) => { + // this.remark = item.remark; + // item.sons.forEach((item3) => { + // if (item3.standard.tjStandardGtValue === null) { + // item3.standard.tjStandardGtValue = ""; + // } + // if (item3.standard.tjStandardLtValue === null) { + // item3.standard.tjStandardLtValue = ""; + // } + // }); + }); + } else { + this.$message({ + type: "warning ", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + } + }); + }); + } + }); + } else { + 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.drawer = true; + getupdateCheckType(this.tjNumber).then((response) => { + 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 || ""; + + // this.remark = item.remark; + // item.sons.forEach((item3) => { + // if (item3.standard.tjStandardGtValue === null) { + // item3.standard.tjStandardGtValue = ""; + // } + // if (item3.standard.tjStandardLtValue === null) { + // item3.standard.tjStandardLtValue = ""; + // } + // }); + // item.remark = ""; + }); + + // 淇濆瓨鎬绘寤鸿 + this.totalCheckAdvice = this.changedate.map( + (item) => item.totalCheckAdvice + ); + } else { + this.$message({ + type: "warning ", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + } + }); + }); + } + }); + }) + .catch(() => { + this.$message({ + type: "info", + message: "宸插彇娑堣繘鍏�", + }); + }); + + this.drawer = false; + } + } else { + this.drawer = true; + 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) => { + getforceIn(data).then((res) => { this.MsgId = res.msg; this.drawer = true; getupdateCheckType(this.tjNumber).then((response) => { this.changedate = response.data; if (this.changedate) { - this.changedate.forEach((item) => { - this.textarea1 = item.checkAdvice || ""; - }); - - // 杩欓噷璁剧疆鍒濆鍊� - this.initialTotalCheckAdvice = this.textarea1; // 淇濆瓨鎬绘寤鸿 - - // 淇濆瓨鍒濆鐘舵�� + for (let i = 0; i < this.changedate.length; i++) { + this.remark = this.changedate[i].remark; + } this.initialState = JSON.parse( JSON.stringify(this.changedate) ); - for (let i = 0; i < this.changedate.length; i++) { - this.remark = this.changedate[i].remark; - } this.changedate.forEach((item) => { + this.textarea1 = item.checkAdvice || ""; + // this.remark = item.remark; // item.sons.forEach((item3) => { // if (item3.standard.tjStandardGtValue === null) { @@ -1868,7 +2364,13 @@ // item3.standard.tjStandardLtValue = ""; // } // }); + // item.remark = ""; }); + + // 淇濆瓨鎬绘寤鸿 + this.totalCheckAdvice = this.changedate.map( + (item) => item.totalCheckAdvice + ); } else { this.$message({ type: "warning ", @@ -1879,85 +2381,8 @@ }); } }); - } else { - - 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.drawer = true; - getupdateCheckType(this.tjNumber).then((response) => { - 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 || ""; - - // this.remark = item.remark; - // item.sons.forEach((item3) => { - // if (item3.standard.tjStandardGtValue === null) { - // item3.standard.tjStandardGtValue = ""; - // } - // if (item3.standard.tjStandardLtValue === null) { - // item3.standard.tjStandardLtValue = ""; - // } - // }); - // item.remark = ""; - }); - - // 淇濆瓨鎬绘寤鸿 - this.totalCheckAdvice = this.changedate.map( - (item) => item.totalCheckAdvice - ); - } else { - this.$message({ - type: "warning ", - message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", - }); - } - }); - }); - } - }); - }) - .catch(() => { - this.$message({ - type: "info", - message: "宸插彇娑堣繘鍏�", - }); - }); - - this.drawer = false; - } - - } - - ); + }); // 鑾峰彇灏忕粨 // getDeptAdvice().then((response) => { @@ -2052,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, @@ -2116,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) { @@ -2133,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 @@ -2197,91 +2704,131 @@ .mainbox { position: relative; } + .btn { margin: 20px 0px; } -/* 鎸夐挳鐨勫垵濮嬬姸鎬� */ -.btn1, -.btn2, -.btn3, -.btn4, -.btn5 { - position: fixed; - right: 0; - transform: translateY(-50%); + +.btnbox { display: flex; flex-direction: column; gap: 10px; - cursor: pointer; - animation: fadeInUp 0.5s ease-out forwards; /* 鍔犺浇鏃剁殑娣″叆鍔ㄧ敾 */ + /* 鎸夐挳涔嬮棿鐨勯棿璺� */ + position: fixed; + /* 浣挎暣涓寜閽尯鍩熷浐瀹氬湪椤甸潰 */ + right: 0; + /* 鍥哄畾鍦ㄩ〉闈㈠彸渚� */ + top: 20%; + /* 鍒濆浣嶇疆 */ z-index: 10; - transition: transform 0.3s ease; /* 骞虫粦杩囨浮 */ - writing-mode: vertical-rl; /* 浣挎枃鏈珫鐩存帓鍒� */ - text-align: center; /* 鏂囧瓧灞呬腑 */ } -// ::v-deep .el-button{ -// background-color: rgba(170, 226, 233, 0.5); -// color: white; -// } -/* 鍔犺浇鍔ㄧ敾锛屾寜閽�愭笎鏄剧幇骞舵斁澶� */ + +/* 姣忎釜鎸夐挳鐨勬牱寮� */ +.btn1 { + animation: fadeInUp 0.5s ease-out forwards; + /* 鎸夐挳鍔犺浇鏃剁殑娣″叆鍔ㄧ敾 */ + cursor: pointer; + text-align: center; +} + +.vertical-text { + writing-mode: vertical-rl; + text-orientation: upright; +} + +/* 璁剧疆鍔ㄧ敾鏁堟灉 */ @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); + /* 鏈�缁堢姸鎬侊細瀹屽叏鏄剧ず涓旀甯稿ぇ灏� */ } } -/* 姣忎釜鎸夐挳鐨勫叿浣撲綅缃拰寤惰繜 */ -.btn1 { +/* 姣忎釜鎸夐挳鐨勪綅缃拰鍔ㄧ敾寤惰繜 */ +.btnbox > div:nth-child(1) { top: 20%; - animation-delay: 0s; /* 绗竴涓寜閽棤寤惰繜 */ + /* 绗竴涓寜閽殑浣嶇疆 */ + animation-delay: 0s; + /* 鏃犲欢杩� */ } -.btn2 { +.btnbox > div:nth-child(2) { top: 30%; - animation-delay: 0.2s; /* 绗簩涓寜閽欢杩� 0.2 绉� */ + /* 绗簩涓寜閽殑浣嶇疆 */ + animation-delay: 0.2s; } -.btn3 { +.btnbox > div:nth-child(3) { top: 40%; - animation-delay: 0.4s; /* 绗笁涓寜閽欢杩� 0.4 绉� */ + /* 绗笁涓寜閽殑浣嶇疆 */ + animation-delay: 0.4s; } -.btn4 { +.btnbox > div:nth-child(4) { top: 50%; - animation-delay: 0.6s; /* 绗洓涓寜閽欢杩� 0.6 绉� */ -} -.btn5 { - top: 60%; - animation-delay: 0.8s; /* 绗洓涓寜閽欢杩� 0.6 绉� */ -} -.main { - height: 700px; - overflow: hidden; + /* 绗洓涓寜閽殑浣嶇疆 */ + animation-delay: 0.6s; } -#printIframe::-webkit-scrollbar { +.btnbox > div:nth-child(5) { + top: 60%; + /* 绗簲涓寜閽殑浣嶇疆 */ + animation-delay: 0.8s; +} + +.btnbox > div:nth-child(6) { + top: 70%; + /* 绗叚涓寜閽殑浣嶇疆 */ + animation-delay: 1s; +} + +.main { + height: 80vh; // 鏀逛负浣跨敤瑙嗙獥楂樺害 + min-height: 600px; // 璁剧疆鏈�灏忛珮搴� + overflow: auto; // 鏀逛负auto鍏佽婊氬姩 +} + +// 浼樺寲婊氬姩鏉℃牱寮� +.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 { + margin-top: 5vh !important; // 璋冩暣瀵硅瘽妗嗕綅缃� +} + +::v-deep .el-dialog__header { + padding: 8px; +} + +::v-deep .el-dialog__body { + padding: 0; +} + +::v-deep .el-button--medium { + padding: 10px; +} + +::v-deep .el-dialog__headerbtn { + // position: relative; + top: 13px; } /* .el-dialog { @@ -2310,9 +2857,23 @@ } .dialog-footers { - /* margin-top: 5px; */ + position: fixed; + bottom: 0; + left: 50%; + transform: translateX(-50%); display: flex; - margin-left: calc(100% - 25%); + justify-content: center; + align-items: center; + z-index: 1000; + /* 纭繚鎸夐挳灞傜骇鍦ㄥ叾浠栧唴瀹逛笂鏂� */ + width: 300px; + background-color: white; + /* 鍙牴鎹渶瑕佽皟鏁磋儗鏅鑹� */ +} + +/* 纭繚鎸夐挳涔嬮棿鏈夊悎閫傜殑闂磋窛 */ +.dialog-footers .el-button { + margin: 0 5px; } textarea { @@ -2320,25 +2881,67 @@ border: none; outline: none; } + .box { display: flex; - position: sticky; - top: 0px; - height: 85vh; - overflow: auto; // 纭繚鐖跺鍣ㄥ彲浠ユ粴鍔� + height: calc(100% - 160px); + margin-top: 20px; + overflow: hidden; } -.rightbox{ - overflow-y: scroll; - position: sticky; - top: 0px; - .right { - position: sticky; - top: 0px; - background-color: #fff; - box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); - z-index: 10; +.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 { + width: 700px; + overflow: hidden; +} + +.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; + } } .top { @@ -2348,15 +2951,30 @@ background-color: #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); display: flex; - .el-icon-close{ + + .el-icon-close { cursor: pointer; font-size: 30px; position: relative; top: 7px; right: 4px; - color: rgb(24,144,255); + color: rgb(24, 144, 255); } } -</style> - +.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