From eef7c19891e437ef18e79ced890d6aaf0db6113d Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期三, 11 六月 2025 10:53:28 +0800 Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb --- src/views/doctor/checkAll/index.vue | 4138 ++++++++++++++++++++++------------------------------------- 1 files changed, 1,581 insertions(+), 2,557 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index 57df29e..4ba000e 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -79,49 +79,62 @@ </el-form-item> </el-form> - <el-radio-group - v-model="tjStatus" - @input="radioChange" - style="margin-left: 20px" - > + + <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px" v-if="tjStatus == 1"> + <el-form-item label="濮撳悕" prop="name"> + <el-input v-model="queryParams.name" style="width: 120px" placeholder="璇疯緭鍏ュ鍚�" clearable + @keyup.enter.native="submitForm"></el-input> + </el-form-item> + <el-form-item label="浣撴鍙�" prop="tjNumber"> + <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 180px" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable + @keyup.enter.native="submitForm" @blur="hb"></el-input> + </el-form-item> + + <el-form-item label="鍗曚綅鍚嶇О" prop="tjCompName" style="margin-left: 20px"> + <el-select :remote-method="getRemoteData" v-model="queryParams.tjCompName" value-key="drugManufacturerId" + style="width: 180px" remote filterable placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" clearable @change="searchSelect"> + <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName" :value="dict" /> + </el-select> + </el-form-item> + <el-form-item label="瀹℃牳鍖诲笀" prop="shys"> + <el-input ref="inputName" v-model="queryParams.shys" style="width: 180px" placeholder="璇疯緭鍏ュ鏍稿尰甯�" clearable + @keyup.enter.native="submitForm"></el-input> + </el-form-item> + <el-form-item> + <el-button type="primary" size="mini" @click="submitForm" style="margin-right: 15px">鎼滅储</el-button> + <el-button size="mini" @click="resetQuery">閲嶇疆</el-button> + <el-button type="primary" size="mini" @click="toggleCollapse" style="margin-right: 15px" + v-show="isCollapsed == 0">楂樼骇鎼滅储</el-button> + <el-button type="primary" size="mini" @click="toggleCollapse3" style="margin-right: 15px" + v-show="isCollapsed == 1">楂樼骇鎼滅储</el-button> + </el-form-item> + <el-row v-show="isCollapsed == 1" :gutter="20"> + <el-col :span="8"> + <el-form-item label="浣撴鏃堕棿" prop="tjTime"> + <el-date-picker v-model="startTime" type="datetimerange" align="right" :picker-options="pickerOptions" + style="width: 310px" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" + :default-time="['00:00:00', '23:00:00']" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" + @change="dateChangebirthday1"> + </el-date-picker> + </el-form-item> + </el-col> + </el-row> + + </el-form> + + <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 20px"> <el-radio-button label="0">鏈鏍�</el-radio-button> <el-radio-button label="1">宸插鏍�</el-radio-button> </el-radio-group> <template> - <el-table - v-loading="loading" - :data="checkList" - ref="table" - border - style="margin: 20px; width: 98%" - @current-change="handleCurrentChange" - > - <!-- <template slot="empty">鏁版嵁姝e湪鍔犺浇涓�</template> --> - <el-table-column - label="浣撴鍙�" - align="center" - prop="tjNumber" - :show-overflow-tooltip="true" - width="160px" - fixed="left" - /> - <el-table-column - label="濮撳悕" - align="center" - prop="cusName" - :show-overflow-tooltip="true" - width="100px" - fixed="left" - /> - - <el-table-column - label="鎬у埆" - align="center" - prop="cusSex" - :show-overflow-tooltip="true" - width="55px" - > + <el-table v-loading="loading" :data="checkList" ref="table" border style="margin: 20px; width: 98%" + @current-change="handleCurrentChange"> + <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" :show-overflow-tooltip="true" width="160px" + fixed="left" /> + <el-table-column label="濮撳悕" align="center" prop="cusName" :show-overflow-tooltip="true" width="100px" + fixed="left" /> + <el-table-column label="鎬у埆" align="center" prop="cusSex" :show-overflow-tooltip="true" width="55px"> <template slot-scope="scope"> <span v-if="scope.row.cusSex == '0'">鐢�</span> <span v-if="scope.row.cusSex == '1'">濂�</span> @@ -129,68 +142,17 @@ <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span> </template> </el-table-column> - <el-table-column - label="鍑虹敓鏃ユ湡" - align="center" - prop="cusBrithday" - :show-overflow-tooltip="true" - width="110px" - /> - <el-table-column - label="鐢佃瘽" - align="center" - prop="cusPhone" - :show-overflow-tooltip="true" - width="130px" - /> - - <!-- <el-table-column - label="浣撴鏃堕棿" - align="center" - prop="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" - /> - <el-table-column - label="鐘舵��" - align="center" - prop="tjStatus" - :show-overflow-tooltip="true" - width="120px" - > - <template slot-scope="scope"> + <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" /> + <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"> + <template slot-scope="scope" v-if="tjStatus == 0"> <span>{{ scope.row.tjStatus == "1" ? "宸插鏍�" : "鏈鏍�" }}</span> </template> </el-table-column> - <el-table-column - label="鍗曚綅鍚嶇О" - align="center" - prop="tjCompName" - :show-overflow-tooltip="true" - /> + <el-table-column label="瀹℃牳鍖诲笀" align="center" prop="shys" width="120px" v-if="tjStatus == 1"/> + <el-table-column label="鍗曚綅鍚嶇О" align="center" prop="tjCompName" :show-overflow-tooltip="true" /> <el-table-column label="浣撴绫诲埆" align="center" prop="tjCategory"> <template slot-scope="scope"> <dict-tag @@ -206,49 +168,14 @@ fixed="right" > <template slot-scope="scope"> - <el-button - fixed="right" - title="璇︽儏" - type="text" - size="mini" - @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" - 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" 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> </template> </el-table-column> </el-table> @@ -266,687 +193,281 @@ </div> </template> - <!-- 鐐瑰嚮寮瑰嚭妗� show-close="true"--> - <el-drawer - custom-class="tanchu" - :visible.sync="drawer" - :before-close="handleClose" - :with-header="false" - size="100%" - :show-close="true" - > - <div - 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" - > - <div class="top"> - <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 - }}鐨勪綋妫�璧勬枡 - </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> - <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> - </table> - <i class="el-icon-close" @click="guanbi"></i> + <!-- 鐐瑰嚮寮瑰嚭妗� --> + <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;"> + <div class="top"> + <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 }}鐨勪綋妫�璧勬枡 + </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">鎬у埆锛�</td> + <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> + {{ tableAll.cusSex == 0 ? "鐢�" : tableAll.cusSex == 1 ? "濂�" : "鏈煡" }} + </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> + </table> + <i class="el-icon-close" @click="guanbi"></i> + </div> + + <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="btn1"> + <el-button @click="historicalreport()" 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> + </div> + <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="btn1"> + <el-button @click="xiangmuqingkuang()" type="primary"><span class="vertical-text">椤圭洰鎯呭喌</span></el-button> + </div> + <div class="btn1"> + <el-button @click="yichangjieguo()" type="primary"><span class="vertical-text">寮傚父缁撴灉</span></el-button> + </div> + <div class="btn1"> + <el-button @click="fuchaxiangmu()" type="primary"><span class="vertical-text">澶嶆煡椤圭洰</span></el-button> + </div> + </div> + <div class="box"> + <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;"> + {{ 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 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"></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"> + <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: 200px;"> + <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> + </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> + </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> + </td> + </tr> + <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"> + {{ item.doctorName }} + </td> + </tr> + </table> + </div> + </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="妫�鏌ョ粨璁�"> + <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" v-model="zhiyeJl" :rows="3" style="width: 96%"></el-input> + </el-form-item> + <el-form-item label="浣撴缁撴灉"> + <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" v-model="zhiyeJg" :rows="3" style="width: 96%"></el-input> + </el-form-item> + </el-form> + <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> - <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="btn1"> - <el-button @click="historicalreport()" 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 - > - </div> - <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="btn1"> - <el-button @click="xiangmuqingkuang()" type="primary" - ><span class="vertical-text">椤圭洰鎯呭喌</span></el-button - > - </div> - <div class="btn1"> - <el-button @click="yichangjieguo()" type="primary" - ><span class="vertical-text">寮傚父缁撴灉</span></el-button - > - </div> - <div class="btn1"> - <el-button @click="fuchaxiangmu()" type="primary" - ><span class="vertical-text">澶嶆煡椤圭洰</span></el-button - > + <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-form-item> + </el-form> + <div slot="footer" class="dialog-footers"> + <el-button type="primary" @click.stop="guanbi">鍙栨秷</el-button> + <el-button v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" type="primary" + @click.stop="rowClick" icon="el-icon-edit-outline">寮�澶勬柟</el-button> + <div v-if="tjproject == '0'"> + <el-button type="primary" @click="determine" :disabled="isdisabled">鎻愪氦骞剁敓鎴愭姤鍛�</el-button> + </div> + </div> </div> </div> - <div class="box"> - <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; - " - > - {{ item.parent || "" }} + <div class="rightbox"> + <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;"> + {{ item.proName || "" }} </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 - align="center" - label="妫�娴嬮」鐩�" - width="464" - > + <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 + @blur="handleAdviceBlur(props.row, index1)"></el-input> + </div> + <div> + 鍐呭锛� + <el-input v-model="jianyi.nr" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, index1)"></el-input> + </div> + </div> + </div> + <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> + <div v-else> + <div> + 鏍囬锛� + <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, -1)"></el-input> + </div> + <div> + 鍐呭锛� + <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, -1)"></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="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-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-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> - <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%; - " - > - 灏忕粨锛� - </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: 200px; - " - > - <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; - " - > - <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 - - 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 - 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 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%" - > - </el-input> - </el-form-item> - </el-form> - <div slot="footer" class="dialog-footers"> - <el-button type="primary" @click.stop="guanbi">鍙栨秷</el-button> - <el-button - v-if="tjproject == '0' && (msgkcf == 'y' || msgkcf == 'Y')" - type="primary" - @click.stop="rowClick" - icon="el-icon-edit-outline" - >寮�澶勬柟</el-button - > - <div v-if="tjproject == '0'"> - <el-button - type="primary" - @click="determine" - :disabled="isdisabled" - >鎻愪氦骞剁敓鎴愭姤鍛�</el-button - > - </div> - </div> - </div> - </div> - <div class="rightbox"> - <div class="right"> - <template v-if="status1 == 0"> - <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> + </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"> + <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="emptyAdvice.bt" - size="small" - type="textarea" - autosize - ></el-input> + <el-input v-model="jianyi.bt" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, index1)"></el-input> </div> <div> 鍐呭锛� - <el-input - v-model="emptyAdvice.nr" - size="small" - type="textarea" - autosize - ></el-input> + <el-input v-model="jianyi.nr" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, index1)"></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> - <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> + <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> + <div v-else> + <div> + 鏍囬锛� + <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, -1)"></el-input> </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> + 鍐呭锛� + <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize + @blur="handleAdviceBlur(props.row, -1)"></el-input> </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> - <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" - > + <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" - 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 align="center" label="妫�娴嬮」鐩�" width="232" :show-overflow-tooltip="true"> <template slot-scope="scope"> <span v-if="scope.row.type == '0'">鏈鏍�</span> <span v-if="scope.row.type == '1'">宸插鏍�</span> @@ -954,545 +475,288 @@ <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 align="center" prop="proResult" label="妫�娴嬬粨鏋�" width="403"></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> - </template> - <template v-if="status1 == 2"> - <div> - <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" - > - 椤圭洰閫夋嫨 - </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 40px; 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 40px; font-size: 0.8vw"> - 浠锋牸锛歿{}} - </div> - </div> - <el-button - type="primary" - size="mini" - @click="handleaddClick()" - >娣诲姞</el-button - > - </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> - <el-table - :row-style="redxiangmu" - :data="fcList" - style="width: 100%" - > - <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" /> - <el-table-column - label="绉戝" - align="center" - prop="deptName" - /> - <el-table-column label="鎿嶄綔" align="center" width="130px"> - <template slot-scope="scope"> - <el-button - type="primary" - size="mini" - @click="handledeleteClick(scope.row)" - >鍒犻櫎</el-button - > - </template> - </el-table-column> - </el-table> + <template v-if="status1 == 2"> + <div> + <div style="text-align: center; margin-top: 10px;"> + 澶嶆煡椤圭洰 </div> - </template> - <template v-if="status1 == 3"> - <div class="hist3"> - <span class="txt">闂瘖淇℃伅</span> - <el-form - ref="form" - :model="formobj" - label-width="100px" - :inline="true" - size="mini" - > - <el-collapse class="coll" v-model="activeName" accordion> - <el-collapse-item - class="coll" - title="鍩烘湰淇℃伅" - name="1" - style="width: 100%; font-weight: 600" - > - <div style="width: 100%"> - <el-form-item label="濮撳悕" prop="cusName"> - <el-input - disabled - v-model="formobj.cusName" - placeholder="璇疯緭鍏ュ鍚�" - /> - </el-form-item> - <el-form-item label="鑱屼笟" prop="work"> - <el-select - filterable - v-model="formobj.work" - placeholder="璇烽�夋嫨鑱屼笟" - clearable - style="width: 150px" - disabled - > - <el-option - v-for="dict in dict.type.tj_work" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> - <el-form-item label="宸ヤ綔鐘舵��" prop="workStatus"> - <el-select - disabled - filterable - v-model="formobj.workStatus" - placeholder="璇烽�夋嫨宸ヤ綔鐘舵��" - clearable - style="width: 150px" - > - <el-option - v-for="dict in dict.type.tj_work_status" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> - <el-form-item label="鎺ヨЕ姣掔墿" prop="contactPoison"> - <el-input - disabled - type="textarea" - rows="4" - v-model="formobj.contactPoison" - placeholder="璇疯緭鍏ユ帴瑙︽瘨鐗�" - style="width: 700px" - /> - </el-form-item> - <el-form-item label="鏃㈠線鐥呭彶" prop="medicalHistory"> - <el-input - disabled - type="textarea" - rows="4" - v-model="formobj.medicalHistory" - placeholder="璇疯緭鍏ユ棦寰�鐥呭彶" - style="width: 700px" - /> - </el-form-item> - </div> - </el-collapse-item> - <el-collapse-item title="鏈堢粡鍙�" name="2" v-show="sex"> - <div style="width: 100%"> - <el-form-item label="鍒濇疆(宀�)" prop="chuchao"> - <el-input - v-model="formobj.chuchao" - style="width: 70px" - disabled - /> - </el-form-item> - <el-form-item label="缁忔湡" prop="jingqi"> - <el-input - v-model="formobj.jingqi" - disabled - style="width: 70px" - />澶� - </el-form-item> - <el-form-item label="鍛ㄦ湡" prop="zhouqi"> - <el-input - v-model="formobj.zhouqi" - disabled - style="width: 70px" - />澶� - </el-form-item> - <el-form-item label="鏈鏈堢粡" prop="mociage"> - <el-input - v-model="formobj.mociage" - disabled - style="width: 100px" - /> - </el-form-item> - </div> - </el-collapse-item> - <el-collapse-item title="鐢熻偛鍙�" name="3" v-show="sex"> - <div style="width: 100%"> - <el-form-item label="鐜版湁瀛愬コ(浜�)" prop="zinv"> - <el-input - v-model="formobj.zinv" - style="width: 70px" - disabled - /> - </el-form-item> - <el-form-item label="娴佷骇(娆�)" prop="liuchan"> - <el-input - v-model="formobj.liuchan" - style="width: 70px" - disabled - /> - </el-form-item> - <el-form-item label="鏃╀骇(娆�)" prop="zaochan"> - <el-input - v-model="formobj.zaochan" - style="width: 70px" - disabled - /> - </el-form-item> - <el-form-item label="姝讳骇(娆�)" prop="sichan"> - <el-input - v-model="formobj.sichan" - style="width: 70px" - disabled - /> - </el-form-item> - <el-form-item label="寮傚父鑳�(娆�)" prop="yichangtai"> - <el-input - v-model="formobj.yichangtai" - style="width: 70px" - disabled - /> - </el-form-item> - </div> - </el-collapse-item> - <el-collapse-item title="鐑熼厭鍙�" name="4"> - <div style="width: 100%"> - <el-form-item label="鏄惁鍚哥儫" prop="xiyan"> - <!-- <el-input v-model="form.xiyanpinlv" placeholder="璇疯緭鍏ュ惛鐑熼鐜�" /> --> - <el-select - disabled - filterable - v-model="formobj.xiyan" - placeholder="璇烽�夋嫨鏄惁鍚哥儫" - clearable - style="width: 150px" - > - <el-option - v-for="dict in dict.type.tj_smoking_pinlv" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> - <el-form-item label="鍚哥儫棰戠巼" prop="xiyanpinlv"> - <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-form-item label="鏄惁楗厭" prop="yinjiu"> - <!-- <el-input v-model="form.yinjiupinlv" placeholder="璇疯緭鍏ラギ閰掗鐜�" /> --> - <el-select - filterable - v-model="formobj.yinjiu" - disabled - placeholder="璇烽�夋嫨鏄惁楗厭" - clearable - style="width: 150px" - > - <el-option - v-for="dict in dict.type.tj_smoking_pinlv" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </el-form-item> - <el-form-item label="楗厭棰戠巼" prop="yinjiupinlv"> - <el-input - v-model="formobj.yinjiupinlv" - disabled - style="width: 70px" - />ml/澶� - </el-form-item> - <el-form-item label="楗厭鏃堕棿" prop="yinjiuyear"> - <el-input - v-model="formobj.yinjiuyear" - disabled - style="width: 70px" - />骞� - </el-form-item> - <el-form-item label="鍏朵粬" prop="qita"> - <el-input - v-model="formobj.qita" - placeholder="璇疯緭鍏ュ叾浠�" - disabled - type="textarea" - style="width: 600px" - rows="2" - /> - </el-form-item> - </div> - </el-collapse-item> - <el-collapse-item title="鎬ユ參鎬ц亴涓氱梾鍙蹭俊鎭�" name="5"> - <div style="width: 100%"> - <el-table - border - :data="formobj.tjAskHistorysList" - ref="tjAskHistorys" - style="width: 98%" - > - <el-table-column - type="selection" - width="40" - align="center" - /> - <el-table-column - label="鐤剧梾鍚嶇О" - prop="diseaseName" - > - <template slot-scope="scope"> - <el-input - size="mini" - disabled - v-model="scope.row.diseaseName" - placeholder="璇疯緭鍏ョ柧鐥呭悕绉�" - /> - </template> - </el-table-column> - <el-table-column - label="璇婃柇鏃ユ湡" - prop="diseaseData" - > - <template slot-scope="scope"> - <el-date-picker - size="mini" - v-model="scope.row.diseaseData" - align="right" - type="date" - placeholder="閫夋嫨鏃ユ湡" - :picker-options="pickerOptions" - style="width: 130px" - value-format="yyyy-MM-dd" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column - label="璇婃柇鍗曚綅" - prop="diseaseCompany" - > - <template slot-scope="scope"> - <el-input - size="mini" - disabled - v-model="scope.row.diseaseCompany" - placeholder="璇疯緭鍏ヨ瘖鏂崟浣�" - /> - </template> - </el-table-column> - <el-table-column label="鏄惁鐥婃剤" prop="isOk"> - <template slot-scope="scope"> - <!-- <el-input v-model="scope.row.isOk" placeholder="璇疯緭鍏ユ槸鍚︾棅鎰�" /> --> - <el-select - disabled - filterable - size="mini" - v-model="scope.row.isOk" - placeholder="璇烽�夋嫨鏄惁鐥婃剤" - clearable - > - <el-option - v-for="dict in dict.type.sys_yes_no" - :key="dict.value" - :label="dict.label" - :value="dict.value" - /> - </el-select> - </template> - </el-table-column> - <el-table-column label="澶囨敞" prop="remark"> - <template slot-scope="scope"> - <el-input - disabled - size="mini" - v-model="scope.row.remark" - placeholder="璇疯緭鍏ュ娉�" - /> - </template> - </el-table-column> - </el-table> - </div> - </el-collapse-item> + <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> + <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-collapse-item title="鑱屼笟鍙�" name="7"> - <div style="width: 100%"> - <el-table - border - :data="formobj.workLogs" - style="width: 98%" - > - <el-table-column - type="selection" - width="40" - align="center" - /> - <el-table-column label="寮�濮嬫椂闂�" prop="beginTime"> - <template slot-scope="scope"> - <el-date-picker - size="mini" - v-model="scope.row.beginTime" - align="right" - type="date" - placeholder="閫夋嫨鏃ユ湡" - :picker-options="pickerOptions" - style="width: 130px" - value-format="yyyy-MM-dd" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column label="缁撴潫鏃堕棿" prop="endTime"> - <template slot-scope="scope"> - <el-date-picker - size="mini" - disabled - v-model="scope.row.endTime" - align="right" - type="date" - placeholder="閫夋嫨鏃ユ湡" - :picker-options="pickerOptions" - style="width: 130px" - value-format="yyyy-MM-dd" - > - </el-date-picker> - </template> - </el-table-column> - <el-table-column - label="宸ヤ綔鍗曚綅" - prop="workCompany" - > - <template slot-scope="scope"> - <el-input - size="mini" - disabled - v-model="scope.row.workCompany" - placeholder="璇疯緭鍏ュ伐浣滃崟浣�" - /> - </template> - </el-table-column> - <el-table-column label="閮ㄩ棬" prop="workDept"> - <template slot-scope="scope"> - <el-input - disabled - size="mini" - v-model="scope.row.workDept" - placeholder="璇疯緭鍏ラ儴闂�" - /> - </template> - </el-table-column> - <el-table-column label="宸ョ" prop="workType"> - <template slot-scope="scope"> - <el-input - disabled - size="mini" - v-model="scope.row.workType" - placeholder="璇疯緭鍏ュ伐绉�" - /> - </template> - </el-table-column> - <el-table-column - label="鏈夊鍥犵礌" - prop="harmTypeLogs" - > - <template slot-scope="scope"> - <!-- <el-input v-model="scope.row.isOk" placeholder="璇疯緭鍏ユ槸鍚︾棅鎰�" /> --> - <el-select - filterable - disabled - size="mini" - v-model="scope.row.harmTypeLogs" - multiple - placeholder="璇烽�夋嫨鏈夊鍥犵礌" - clearable - > - <el-option - v-for="dict in harmTypeList" - :key="dict.aid" - :label="dict.harmtype" - :value="dict.aid" - /> - </el-select> - </template> - </el-table-column> - <el-table-column label="闃叉姢鎺柦" prop="fangHu"> - <template slot-scope="scope"> - <el-input - disabled - size="mini" - v-model="scope.row.fangHu" - placeholder="璇疯緭鍏ラ槻鎶ゆ帾鏂�" - /> - </template> - </el-table-column> - </el-table> - </div> - </el-collapse-item> - </el-collapse> - </el-form> - </div> - </template> - <el-button - type="primary" - @click="addnew" - :disabled="isdisabled" - style="margin-top: 20px" - >鏂板</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 label="搴忓彿" align="center" prop="newID" /> + <el-table-column label="鍚嶇О" align="center" prop="proName" width="100px" /> + <el-table-column label="浠锋牸" align="center" prop="price" /> + <el-table-column label="绉戝" align="center" prop="deptName" /> + <el-table-column label="鎿嶄綔" align="center" width="130px"> + <template slot-scope="scope"> + <el-button type="primary" size="mini" @click="handledeleteClick(scope.row)">鍒犻櫎</el-button> + </template> + </el-table-column> + </el-table> + </div> + </template> + <template v-if="status1 == 3"> + <div class="hist3"> + <span class="txt">闂瘖淇℃伅</span> + <el-form ref="form" :model="formobj" label-width="100px" :inline="true" size="mini"> + <el-collapse class="coll" v-model="activeName" accordion> + <el-collapse-item class="coll" title="鍩烘湰淇℃伅" name="1" style="width: 100%; font-weight: 600"> + <div style="width: 100%"> + <el-form-item label="濮撳悕" prop="cusName"> + <el-input disabled v-model="formobj.cusName" placeholder="璇疯緭鍏ュ鍚�" /> + </el-form-item> + <el-form-item label="鑱屼笟" prop="work"> + <el-select filterable v-model="formobj.work" placeholder="璇烽�夋嫨鑱屼笟" clearable + style="width: 150px" disabled> + <el-option v-for="dict in dict.type.tj_work" :key="dict.value" :label="dict.label" + :value="dict.value" /> + </el-select> + </el-form-item> + <el-form-item label="宸ヤ綔鐘舵��" prop="workStatus"> + <el-select disabled filterable v-model="formobj.workStatus" placeholder="璇烽�夋嫨宸ヤ綔鐘舵��" clearable + style="width: 150px"> + <el-option v-for="dict in dict.type.tj_work_status" :key="dict.value" :label="dict.label" + :value="dict.value" /> + </el-select> + </el-form-item> + <el-form-item label="鎺ヨЕ姣掔墿" prop="contactPoison"> + <el-input disabled type="textarea" rows="4" v-model="formobj.contactPoison" + placeholder="璇疯緭鍏ユ帴瑙︽瘨鐗�" style="width: 700px" /> + </el-form-item> + <el-form-item label="鏃㈠線鐥呭彶" prop="medicalHistory"> + <el-input disabled type="textarea" rows="4" v-model="formobj.medicalHistory" + placeholder="璇疯緭鍏ユ棦寰�鐥呭彶" style="width: 700px" /> + </el-form-item> + </div> + </el-collapse-item> + <el-collapse-item title="鏈堢粡鍙�" name="2" v-show="sex"> + <div style="width: 100%"> + <el-form-item label="鍒濇疆(宀�)" prop="chuchao"> + <el-input v-model="formobj.chuchao" style="width: 70px" disabled /> + </el-form-item> + <el-form-item label="缁忔湡" prop="jingqi"> + <el-input v-model="formobj.jingqi" disabled style="width: 70px" />澶� + </el-form-item> + <el-form-item label="鍛ㄦ湡" prop="zhouqi"> + <el-input v-model="formobj.zhouqi" disabled style="width: 70px" />澶� + </el-form-item> + <el-form-item label="鏈鏈堢粡" prop="mociage"> + <el-input v-model="formobj.mociage" disabled style="width: 100px" /> + </el-form-item> + </div> + </el-collapse-item> + <el-collapse-item title="鐢熻偛鍙�" name="3" v-show="sex"> + <div style="width: 100%"> + <el-form-item label="鐜版湁瀛愬コ(浜�)" prop="zinv"> + <el-input v-model="formobj.zinv" style="width: 70px" disabled /> + </el-form-item> + <el-form-item label="娴佷骇(娆�)" prop="liuchan"> + <el-input v-model="formobj.liuchan" style="width: 70px" disabled /> + </el-form-item> + <el-form-item label="鏃╀骇(娆�)" prop="zaochan"> + <el-input v-model="formobj.zaochan" style="width: 70px" disabled /> + </el-form-item> + <el-form-item label="姝讳骇(娆�)" prop="sichan"> + <el-input v-model="formobj.sichan" style="width: 70px" disabled /> + </el-form-item> + <el-form-item label="寮傚父鑳�(娆�)" prop="yichangtai"> + <el-input v-model="formobj.yichangtai" style="width: 70px" disabled /> + </el-form-item> + </div> + </el-collapse-item> + <el-collapse-item title="鐑熼厭鍙�" name="4"> + <div style="width: 100%"> + <el-form-item label="鏄惁鍚哥儫" prop="xiyan"> + <el-select disabled filterable v-model="formobj.xiyan" placeholder="璇烽�夋嫨鏄惁鍚哥儫" clearable + style="width: 150px"> + <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value" :label="dict.label" + :value="dict.value" /> + </el-select> + </el-form-item> + <el-form-item label="鍚哥儫棰戠巼" prop="xiyanpinlv"> + <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-form-item label="鏄惁楗厭" prop="yinjiu"> + <el-select filterable v-model="formobj.yinjiu" disabled placeholder="璇烽�夋嫨鏄惁楗厭" clearable + style="width: 150px"> + <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value" :label="dict.label" + :value="dict.value" /> + </el-select> + </el-form-item> + <el-form-item label="楗厭棰戠巼" prop="yinjiupinlv"> + <el-input v-model="formobj.yinjiupinlv" disabled style="width: 70px" />ml/澶� + </el-form-item> + <el-form-item label="楗厭鏃堕棿" prop="yinjiuyear"> + <el-input v-model="formobj.yinjiuyear" disabled style="width: 70px" />骞� + </el-form-item> + <el-form-item label="鍏朵粬" prop="qita"> + <el-input v-model="formobj.qita" placeholder="璇疯緭鍏ュ叾浠�" disabled type="textarea" + style="width: 600px" rows="2" /> + </el-form-item> + </div> + </el-collapse-item> + <el-collapse-item title="鎬ユ參鎬ц亴涓氱梾鍙蹭俊鎭�" name="5"> + <div style="width: 100%"> + <el-table border :data="formobj.tjAskHistorysList" ref="tjAskHistorys" style="width: 98%"> + <el-table-column type="selection" width="40" align="center" /> + <el-table-column label="鐤剧梾鍚嶇О" prop="diseaseName"> + <template slot-scope="scope"> + <el-input size="mini" disabled v-model="scope.row.diseaseName" placeholder="璇疯緭鍏ョ柧鐥呭悕绉�" /> + </template> + </el-table-column> + <el-table-column label="璇婃柇鏃ユ湡" prop="diseaseData"> + <template slot-scope="scope"> + <el-date-picker size="mini" v-model="scope.row.diseaseData" align="right" type="date" + placeholder="閫夋嫨鏃ユ湡" :picker-options="pickerOptions" style="width: 130px" + value-format="yyyy-MM-dd"> + </el-date-picker> + </template> + </el-table-column> + <el-table-column label="璇婃柇鍗曚綅" prop="diseaseCompany"> + <template slot-scope="scope"> + <el-input size="mini" disabled v-model="scope.row.diseaseCompany" placeholder="璇疯緭鍏ヨ瘖鏂崟浣�" /> + </template> + </el-table-column> + <el-table-column label="鏄惁鐥婃剤" prop="isOk"> + <template slot-scope="scope"> + <el-select disabled filterable size="mini" v-model="scope.row.isOk" placeholder="璇烽�夋嫨鏄惁鐥婃剤" + clearable> + <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" + :value="dict.value" /> + </el-select> + </template> + </el-table-column> + <el-table-column label="澶囨敞" prop="remark"> + <template slot-scope="scope"> + <el-input disabled size="mini" v-model="scope.row.remark" placeholder="璇疯緭鍏ュ娉�" /> + </template> + </el-table-column> + </el-table> + </div> + </el-collapse-item> + <el-collapse-item title="鑱屼笟鍙�" name="7"> + <div style="width: 100%"> + <el-table border :data="formobj.workLogs" style="width: 98%"> + <el-table-column type="selection" width="40" align="center" /> + <el-table-column label="寮�濮嬫椂闂�" prop="beginTime"> + <template slot-scope="scope"> + <el-date-picker size="mini" v-model="scope.row.beginTime" align="right" type="date" + placeholder="閫夋嫨鏃ユ湡" :picker-options="pickerOptions" style="width: 130px" + value-format="yyyy-MM-dd"> + </el-date-picker> + </template> + </el-table-column> + <el-table-column label="缁撴潫鏃堕棿" prop="endTime"> + <template slot-scope="scope"> + <el-date-picker size="mini" disabled v-model="scope.row.endTime" align="right" type="date" + placeholder="閫夋嫨鏃ユ湡" :picker-options="pickerOptions" style="width: 130px" + value-format="yyyy-MM-dd"> + </el-date-picker> + </template> + </el-table-column> + <el-table-column label="宸ヤ綔鍗曚綅" prop="workCompany"> + <template slot-scope="scope"> + <el-input size="mini" disabled v-model="scope.row.workCompany" placeholder="璇疯緭鍏ュ伐浣滃崟浣�" /> + </template> + </el-table-column> + <el-table-column label="閮ㄩ棬" prop="workDept"> + <template slot-scope="scope"> + <el-input disabled size="mini" v-model="scope.row.workDept" placeholder="璇疯緭鍏ラ儴闂�" /> + </template> + </el-table-column> + <el-table-column label="宸ョ" prop="workType"> + <template slot-scope="scope"> + <el-input disabled size="mini" v-model="scope.row.workType" placeholder="璇疯緭鍏ュ伐绉�" /> + </template> + </el-table-column> + <el-table-column label="鏈夊鍥犵礌" prop="harmTypeLogs"> + <template slot-scope="scope"> + <el-select filterable disabled size="mini" v-model="scope.row.harmTypeLogs" multiple + placeholder="璇烽�夋嫨鏈夊鍥犵礌" clearable> + <el-option v-for="dict in harmTypeList" :key="dict.aid" :label="dict.harmtype" + :value="dict.aid" /> + </el-select> + </template> + </el-table-column> + <el-table-column label="闃叉姢鎺柦" prop="fangHu"> + <template slot-scope="scope"> + <el-input disabled size="mini" v-model="scope.row.fangHu" placeholder="璇疯緭鍏ラ槻鎶ゆ帾鏂�" /> + </template> + </el-table-column> + </el-table> + </div> + </el-collapse-item> + </el-collapse> + </el-form> + </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="鏂板寮傚父缁撴灉" :visible.sync="addNewDialogVisible" width="900px" class="custom-dialog"> + <el-dialog title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false" width="50%"> + <div class="main"> + <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe> + </div> + </el-dialog> + <el-dialog title="鎻愮ず" :visible.sync="jianqians" width="1000px" :before-close="handleClose1"> + <jianqianwenzhen :jianqianwenzhendata="jianqianwenzhendata" v-if="flags"></jianqianwenzhen> + <span slot="footer" class="dialog-footer"> + <el-button @click="jianqians = false">鍙� 娑�</el-button> + </span> + </el-dialog> + <el-dialog title="鏂板寮傚父缁撴灉" :visible.sync="addNewDialogVisible" width="900px" class="custom-dialog"> <el-form :model="newItem" ref="newItemForm" label-width="100px" class="custom-form"> <el-form-item label="椤圭洰鍒嗙被" prop="parentName"> <el-select v-model="newItem.parentName" placeholder="璇烽�夋嫨椤圭洰鍒嗙被" clearable filterable @@ -1534,11 +798,11 @@ <el-button type="primary" @click="submitNewItem">纭畾</el-button> </span> </el-dialog> - <el-dialog title="蹇嵎寤鸿閫夋嫨" :visible.sync="showjianyi" width="1000px" class="custom-dialog" + <el-dialog title="蹇嵎寤鸿閫夋嫨" :visible.sync="showjianyi" width="1000px" class="custom-dialog" :before-close="handleCloseAdviceDialog"> <!-- 鎼滅储鍖哄煙 --> <div style="margin-bottom: 15px;"> - <el-form :inline="true" @submit.native.prevent> + <el-form :inline="true"> <el-form-item label="寤鸿鍚嶇О"> <el-input v-model="queryParams1.zyzd" placeholder="璇疯緭鍏ュ缓璁悕绉拌繘琛岀瓫閫�" clearable style="width: 200px" @input="filterAdvices(true)" @keyup.enter.native="filterAdvices(true)" /> @@ -1597,56 +861,13 @@ <el-button @click="cancels">鍙� 娑�</el-button> </div> </el-dialog> - <el-dialog - title="PDF 棰勮" - :visible.sync="dialogVisible" - :close-on-click-modal="false" - width="50%" - > - <div class="main"> - <iframe - id="printIframe" - :src="url" - frameborder="0" - style="width: 100%; height: 100%" - ></iframe> - </div> - </el-dialog> - <el-dialog - title="鎻愮ず" - :visible.sync="jianqians" - width="1000px" - :before-close="handleClose1" - > - <jianqianwenzhen - :jianqianwenzhendata="jianqianwenzhendata" - v-if="flags" - ></jianqianwenzhen> - <span slot="footer" class="dialog-footer"> - <el-button @click="jianqians = false">鍙� 娑�</el-button> - </span> - </el-dialog> <Packages ref="bbb" :baogao="baogao" /> <Prescription ref="Pre" :preObj="preObj" /> - <proposal - ref="proposal" - :cusobj="cusobj" - :tjNumber="tjNumber" - @event1="eventchange($event)" - /> + <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" /> <createproposal ref="createproposal" :creatobj="creatobj" /> - - <el-dialog - title="甯哥敤寤鸿缁存姢" - :visible.sync="propdialog" - width="500px" - append-to-body - > - </el-dialog> + <el-dialog title="甯哥敤寤鸿缁存姢" :visible.sync="propdialog" width="500px" append-to-body></el-dialog> </div> </template> - - <script> import _ from 'lodash'; import jianqianwenzhen from "@/components/jianqianwenzhen"; @@ -1668,15 +889,15 @@ isPdfOrJimu, addOrder, addOrder1, - UpdFcPro, getFcList, + UpdFcPro } 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, dataSynchronization } from "@/api/doctor/examination"; +import { cSWebGetPro } from "@/api/doctor/examination"; import ViewPdf from "@/components/ViewPdf"; import Historicalreport from "@/components/Historicalreport"; import { getDicts } from "@/api/system/dict/data"; @@ -1710,7 +931,37 @@ name: "checkAll", data() { return { - // 鏇存柊鎬绘寤鸿 + zhiyeJl: '', // 鍒濆鍖栨鏌ョ粨璁轰负绌� + zhiyeJg: '鏈彂鐜扮洰鏍囨�х柧鐥�', // 鍒濆鍖栦綋妫�缁撴灉涓洪粯璁ゅ�� + selectedAdvice: null, + activeAdviceIndex: 0, + advicerulesList: [], + xmChange: [], + showjianyi: false, + adviceLoading: false, + adviceEmptyText: '鏆傛棤鏁版嵁', + total1: 0, + forms: { + pacName: "" + }, + xmopen: false, + datasList: [], + queryParams1: { + pageNum: 1, + pageSize: 10, + zyzd: '', + }, + adviceCache: new Map(), + addNewDialogVisible: false, + newItem: { + parentName: '', + jcxm: '', + jcjg: '', + ckfw: '', + dw: '', + map: [{ bt: '', nr: '' }] + }, + projectCategories: [], emptyAdvice: { bt: "", nr: "", @@ -1720,15 +971,12 @@ preObj: {}, baogao: [], flags: false, - fcList: [], - xmopen: false, - datasList: [], - advicerulesList: [], jianqianwenzhendata: [], jianqians: false, adviceLoading: false, sex: true, activeName: "1", + hosproy: true, remarks: "", remark: "", creatobj: {}, @@ -1799,9 +1047,7 @@ msgtuwen: "", msgjianqian: "", msgkcf: "", - // 椤甸潰鍏ㄩ儴鏁版嵁 checkList: [], - // 缁戝畾鍗曢�夋寜閽� tjStatus: "0", tjproject: "0", total: 0, @@ -1809,25 +1055,21 @@ Testitems: [], CheckBox: {}, startTime: [], + isCollapsed: 0, textarea1: "", loading: true, - // 褰撳墠鐢ㄦ埛閫変腑鐨勫�� selectLettercurrent: " ", - // 鎶藉眽鎵撳紑鏂瑰紡 drawer: false, isLoading: false, xmopen: false, tableAll: {}, tjNumber: "", - // 鍏ㄩ儴灏忕粨 DeptadviceAll: [], MsgId: "", Deptobj: "", - // 鐐瑰嚮鍙傛暟 changedate: [], dataText: [], status: {}, - // 鏌ヨ鍙傛暟 queryParams: { page: 1, pageSize: 10, @@ -1837,12 +1079,12 @@ compId: null, name: null, checkStatus: null, + shys: null, }, formobj: {}, - // 鏌ヨ鍙傛暟 yichangList: [], + fcList: [], statusList: [], - xmChange: [], queryParam: { pageNum: 1, pageSize: 10, @@ -1867,15 +1109,14 @@ tjCategory: undefined, payType: undefined, }, - status1: 0, // 0灞曠ず寮傚父1灞曠ず椤圭洰鎯呭喌 + status1: 0, viewportHeight: 0, expends: [], - clearTimeSet: null, }; }, created() { - // this.getNowTime(); + console.log(this.dict.type.dict_tjtype, "鑱屼笟浣撴"); this.getConfigKey(); this.getdate(); }, @@ -1883,11 +1124,12 @@ mounted() { this.$nextTick(() => { this.$refs.inputName.focus(); - this.viewportHeight = - window.innerHeight || document.documentElement.clientHeight; + this.viewportHeight = window.innerHeight || document.documentElement.clientHeight; }); }, + methods: { + // 鎵撳紑寤鸿閫夋嫨寮圭獥 tan(event) { this.activeAdviceIndex = event.target.closest('.advice-group') ? Array.from(event.target.closest('.el-form').querySelectorAll('.advice-group')) @@ -1947,24 +1189,16 @@ }); }, 800), - handleCurrentChangeAdvice(currentRow) { + handleCurrentChangeAdvice(currentRow) { this.selectedAdvice = currentRow; }, - submitFormxm() { - this.xmopen = false; + toggleCollapse3() { + this.isCollapsed = 0; }, - - cancels() { - this.xmopen = false; - this.xmChange = []; - }, - - handleCategoryChange(value) { - if (value) { - this.newItem.jcxm = value; - } + toggleCollapse() { + this.isCollapsed = 1; }, applySelectedAdvice() { @@ -1980,6 +1214,15 @@ } }, + cancelAdviceDialog() { + this.showjianyi = false; + this.selectedAdvice = null; + this.queryParams1.zyzd = ''; + this.queryParams1.pageNum = 1; + this.advicerulesList = []; + this.total1 = 0; + this.adviceCache.clear(); + }, handleCloseAdviceDialog(done) { if (this.selectedAdvice) { @@ -1992,984 +1235,64 @@ this.cancelAdviceDialog(); done(); }) - .catch(() => { }); + .catch(() => {}); } else { this.cancelAdviceDialog(); done(); } }, - cancelAdviceDialog() { - this.showjianyi = false; - this.selectedAdvice = null; - this.queryParams1.zyzd = ''; - this.queryParams1.pageNum = 1; - this.advicerulesList = []; - this.total1 = 0; - this.adviceCache.clear(); - }, + handleAdviceBlur(row, index) { + let advicesToSubmit = []; - setTime() { - //璁剧疆瀹氭椂鍣� - this.clearTimeSet = setInterval(() => { - this.$modal.closeLoading(); - }, 300000); - }, - tongbu(row) { - this.$modal.loading("姝e湪鍚屾锛岃绋嶅��..."); - this.setTime(); - let tjNumber = row.tjNumber; - dataSynchronization(tjNumber) - .then((res, error) => { - if (res.code == 200) { - this.clearTimeSet = null; - this.$modal.closeLoading(); - this.$modal.msgSuccess("鍚屾鎴愬姛锛�"); - } - }) - .catch((error) => { - this.clearTimeSet = null; - this.$modal.closeLoading(); - }); - }, - /* shanchu(row) { - console.log(row); - shanchu({ - id: row.orderDetailId, - }).then((res) => { - console.log(res); - // 鎵惧埌瑕佸垹闄ら」鎵�鍦ㄧ殑鐖剁骇鏁扮粍 - const parentItem = this.yichangList.find((item) => - item.sone.some((soneItem) => soneItem.proId === row.proId) - ); - - if (parentItem) { - // 浠庣埗绾х殑 sone 鏁扮粍涓垹闄よ椤� - const index = parentItem.sone.findIndex( - (item) => item.proId === row.proId - ); - if (index > -1) { - parentItem.sone.splice(index, 1); - - // 濡傛灉鍒犻櫎鍚� sone 鏁扮粍涓虹┖,鍒欏垹闄ゆ暣涓埗绾ч」 - if (parentItem.sone.length === 0) { - const parentIndex = this.yichangList.indexOf(parentItem); - if (parentIndex > -1) { - this.yichangList.splice(parentIndex, 1); - } - } - - // 鏇存柊 expends 鏁扮粍 - this.getExpends(); - - this.$message.success("鍒犻櫎鎴愬姛"); - } + if (index === -1) { + if (this.emptyAdvice.bt || this.emptyAdvice.nr) { + advicesToSubmit = [{ bt: this.emptyAdvice.bt || '', nr: this.emptyAdvice.nr || '' }]; + this.$set(row, 'advices', advicesToSubmit); } - }); - }, */ - shanchu(row) { - this.isdisabled = true; + } else { + advicesToSubmit = row.advices; + } - shanchu({ - id: row.orderDetailId, - }) - .then((res) => { - console.log(res, 1111); + if (!advicesToSubmit || advicesToSubmit.length === 0) { + return; + } - 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.sone.length === 0) { - const parentIndex = this.yichangList.indexOf(parentItem); - if (parentIndex > -1) { - this.yichangList.splice(parentIndex, 1); - } - } - - this.getExpends(); - this.$forceUpdate(); - this.$message.success("鍒犻櫎鎴愬姛"); - } else { - this.$message.error("鏈壘鍒拌鍒犻櫎鐨勫瓙椤�"); - } - } else { - this.$message.error("鏈壘鍒拌鍒犻櫎鐨勭埗椤�"); - } - } else { - this.$message.error("鍚庣鍒犻櫎澶辫触锛�" + (res.msg || "鏈煡閿欒")); - } - }) - .catch((error) => { - console.error("鍒犻櫎澶辫触:", error); - this.$message.error("鍒犻櫎鎿嶄綔澶辫触锛�" + error.message); - }) - .finally(() => { - this.isdisabled = false; - }); - }, - 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) + const parentItem = this.yichangList.find(item => + item.sone.some(soneItem => soneItem.orderDetailId === row.orderDetailId) ); - }, - 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("鏆傛棤椤圭洰鎯呭喌"); - } - }); - }, - - fuchaxiangmu() { - this.loading = true; - this.status1 = 2; - let data = { - tjNum: this.tjNumber, - type: 1, - }; - getFcList(data) - .then((res) => { - this.fcList = res.data; - this.fcList.forEach((item, index) => { - item.newID = index + 1; - }); - }) - .catch((error) => { - console.error("鑾峰彇澶嶆煡椤圭洰澶辫触:", error); - this.$message.error("鑾峰彇澶嶆煡椤圭洰澶辫触"); - }) - .finally(() => { - this.loading = false; - }); - }, - - handleQuery() { - this.xmopen = true; - let data = { - tjNum: this.tjNumber, - type: 0, - }; - 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, - }, - ], - }; - UpdFcPro(data).then((res) => { - if (res.code == 200) { - this.xmChange = []; - this.fuchaxiangmu(); - } - }); - }, - - handledeleteClick(row) { - let data = { - orderId: row.orderId, - data: [ - { - proId: row.proId, - type: 0, - }, - ], - }; - UpdFcPro(data).then((res) => { - if (res.code == 200) { - this.fuchaxiangmu(); - } - }); - }, - - handlexmChange(selection) { - this.xmChange = []; - this.xmChange = selection; - if (selection.length > 1) { - let del_row = selection.shift(); - this.$refs.elTable.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑 - } - }, - submitFormxm() { - this.xmopen = false; - }, - cancels() { - this.xmopen = false; - this.xmChange = []; - }, - guanbi() { - this.drawer = false; - }, - yichangjieguo() { - this.isLoading = true; - this.status1 = 0; - let _this = this; - yichang({ - tjNum: this.tjNumber, - }) - .then((res) => { - this.isLoading = false; - 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: "鏆傛棤寮傚父鎶ュ憡", - }); - } - }) - .catch((error) => { - this.isLoading = false; - console.error("鑾峰彇寮傚父缁撴灉澶辫触:", error); - this.$message.error("鑾峰彇寮傚父缁撴灉澶辫触"); - }) - .finally(() => { - this.isLoading = false; - this.loading = false; - }); - }, - getdate() { - getNewDateList().then((res) => { - /* this.startTime = [ - moment(res.data).format("YYYY-MM-DD 00:00:00"), - moment(res.data).format("YYYY-MM-DD 23:59:00"), - ]; */ - this.getList(); - }); - }, - // / 澶勭悊榛樿閫変腑褰撳墠鏃ユ湡 - getNowTime() { - var curDate = new Date().getTime(); - var dayNum = 7 * 24 * 3600 * 1000; - var threeDays = curDate - dayNum; - var sDay = this.getLocalTime(threeDays); - var end = this.getLocalTime(curDate); - this.startTime = [sDay, end]; - }, - add0(m) { - return m < 10 ? "0" + m : m; - }, - getLocalTime(nS) { - var time = new Date(nS); - var y = time.getFullYear(); - var m = time.getMonth() + 1; - var d = time.getDate(); - var h = time.getHours(); - var mm = time.getMinutes(); - return ( - y + - "-" + - this.add0(m) + - "-" + - this.add0(d) + - " " + - this.add0(h) + - ":" + - this.add0(mm) - ); - }, - jianqian() { - this.flags = true; - this.jianqians = true; - let tjNumber = this.tableAll.tjNumber; - this.jianqianwenzhendata.push(tjNumber); - }, - - getList() { - this.loading = true; - this.queryParams.compId = this.CheckBox.drugManufacturerId; - this.queryParams.checkStatus = this.tjStatus; - if (this.startTime) { - this.queryParams.beginTime = this.startTime[0]; - this.queryParams.endTime = this.startTime[1]; - } else { - this.queryParams.beginTime = null; - this.queryParams.endTime = null; + if (!parentItem) { + this.$message.error('鏈壘鍒板搴旂殑鐖剁骇椤圭洰'); + return; } - // 椤甸潰鏁版嵁 - getcheckList(this.queryParams).then((response) => { - if (response.code == 200) { - this.loading = false; - if (response.data) { - if (response.data.date) { - this.checkList = response.data.date; - } else { - this.checkList = response.data.customers; - } + const data = { + tjh: this.tableAll.tjNumber, + parentName: parentItem.proName, + jcxm: row.proName, + jcjg: row.proResult, + ckfw: row.stanId, + dw: row.proAdvice, + map: advicesToSubmit, + jyjc: parentItem.jyjc, + id: row.orderDetailId, + }; - this.total = response.data.total; - } else { - this.checkList = []; - } - } - }), - // 鑾峰彇鍗曚綅淇℃伅闆嗗悎 - getCompany(this.queryParam).then((response) => { - this.CompanyList = response.data; - this.loading = false; - }); - }, - - viewReport(row) { - const tjNumber = row.tjNumber; - isPdfOrJimu(tjNumber).then((response) => { - if (response.data.flag == "0") { - const flag = true; - getPdf(tjNumber, flag).then((response) => { - if (response.size === 0) { - const loading = this.$loading({ - lock: true, - text: "Loading", - spinner: "el-icon-loading", - background: "rgba(0, 0, 0, 0.7)", - }); - setTimeout(() => { - loading.close(); - }, 3000); - this.$message({ - message: "鎶ュ憡姝e湪鐢熸垚锛岃涓ゅ垎閽熷悗棰勮锛�", - type: "error", - }); - } else { - this.dialogVisible = true; - - this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl - } - }); + addOrder1(data).then((res) => { + if (res.code === 200) { + // 鎴愬姛鏇存柊寤鸿 } else { - let url = response.data.url; - const params = { url }; - this.$tab.openPage( - "鍋ュ悍璇佹鏌ヨ〃", - "/report/zongjianjiankangzheng", - params - ); + this.$message.error('寤鸿鏇存柊澶辫触锛�' + (res.msg || '鏈煡閿欒')); } + }).catch((error) => { + console.error('寤鸿鏇存柊澶辫触:', error); + this.$message.error('寤鸿鏇存柊澶辫触锛�' + error.message); }); }, - Graphicreport() { - let dictType = "dict_ageunit"; - getDicts(dictType).then((res) => { - if (res.code == 200) { - res.data.forEach((item) => { - if (this.tableAll.age_unit == item.dictValue) { - this.tableAll.age_unit = item.dictLabel; - } - }); - let dictTypes = "sys_user_sex"; - getDicts(dictTypes).then((res) => { - if (res.code == 200) { - res.data.forEach((item) => { - if (this.tableAll.cusSex == item.dictValue) { - this.tableAll.cusSex = item.dictLabel; - } - }); - let data = { - patname: this.tableAll.cusName, - sex: this.tableAll.cusSex, - patage: this.tableAll.age, - patagename: this.tableAll.age_unit, - patbirth: this.tableAll.cusBrithday, - }; - // let data = { - // patname: "鑴辫兘濞�", - // sex: "濂�", - // patage: "60", - // patagename: "宀�", - // patbirth: "1963-01-01" - // } - getTjYxjcList(data).then((res) => { - this.baogao = res.data; - }); - this.$refs.bbb.open = true; - this.$refs.bbb.title = "鎶ュ憡瀛楀吀"; - } - }); - } - }); - }, - - historicalreport() { - this.loading = true; - let data = { - cusId: this.tableAll.cusId, - }; - reportHistory(data).then((res) => { - this.loading = false; - if (res.data[0] != null) { - this.reportHistorydata = res.data; - } else { - this.reportHistorydata = []; - } - }); - }, - - medicalhistory() { - this.status1 = 3; - let tjNumber = this.tableAll.tjNumber; - getInfoById(tjNumber).then((response) => { - this.formobj = response.data; - if (this.formobj.xiyan == null) { - this.formobj.xiyan = "1"; - } - if (this.formobj.xiyanpinlv == null) { - this.formobj.xiyanpinlv = "0"; - } - if (this.formobj.xiyanyear == null) { - this.formobj.xiyanyear = "0"; - } - if (this.formobj.yinjiu == null) { - this.formobj.yinjiu = "1"; - } - if (this.formobj.yinjiupinlv == null) { - this.formobj.yinjiupinlv = "0"; - } - if (this.formobj.yinjiuyear == null) { - this.formobj.yinjiuyear = "0"; - } - }); - }, - // viewReport(row) { - // const tjNumber = row.tjNumber; - // const viewNum = "792997692059705344"; - // const params = { viewNum, tjNumber }; - // hasReportEnd(tjNumber).then((res) => { - // if (res == 1) { - // this.$tab.openPage("浣撴鎶ュ憡", "/report/viewReport", params); - // } else { - // this.$message.error("璇ョ敤鎴蜂綋妫�鏆傛湭瀹屾垚锛屾棤娉曟墦鍗颁綋妫�鎶ュ憡锛�"); - // } - // }); - // }, - downLoadFileImg(row) { - const tjNumber = row.tjNumber; - const flag = true; - getPdf(tjNumber, flag).then((response) => { - this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl - }); - }, - - rowClick(row) { - if (row.tjNumber) { - this.preObj = row; - } else { - this.preObj = this.tableAll; - } - this.$refs.Pre.open = true; - this.$refs.Pre.title = "澶勬柟"; - }, - - // 鍗曢�夋寜閽� - radioChange(value) { - this.loading = true; - this.queryParams.checkStatus = value; - this.queryParams.page = 1; - this.queryParams.pageSize = 10; - getcheckList(this.queryParams).then((response) => { - if (response.data) { - this.checkList = response.data.customers; - this.total = response.data.total; - } else { - this.checkList = []; - } - this.loading = false; - }); - }, - propoChange() { - this.cusobj = { sex: this.tableAll.cusSex, isZj: 0 }; - this.$refs.proposal.open = true; - this.$refs.proposal.title = "寤鸿鏂规"; - // this.$refs.proposal.getList(); - }, - eventchange(data) { - this.dataText = data; - console.log(data, 6655); - - if (this.textarea1 == null) { - this.textarea1 = ""; - } - /* data.forEach((item) => { - this.textarea1 += item.advice; - }); */ - data.forEach((item) => { - this.textarea1 += (item.advice || item.jynr || "") + "\n"; - }); - }, - proposalChange() { - if (this.textarea1) { - this.creatobj = { proParentList: this.textarea1, isZj: 0 }; - this.$refs.createproposal.open = true; - this.$refs.createproposal.title = "甯哥敤寤鸿缁存姢"; - } else { - this.$message({ - type: "warning ", - message: "璇峰厛濉啓鎬绘寤鸿", - }); - } - }, - radiotjprojectChange() { - if (this.tjproject == "0") { - getupdateCheckType(this.tjNumber).then((response) => { - this.changedate = response.data; - - this.changedate.forEach((item) => { - this.textarea1 = item.checkAdvice; - }); - if (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 = ""; - // } - // }); - // item.remark = ""; - }); - } else { - this.$message({ - type: "warning ", - message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", - }); - } - }); - } else if (this.tjproject == "1") { - getupdateCheckTypeHuaYan(this.tjNumber).then((res) => { - if (res.data) { - // this.Testitems = res.data - this.changedate = res.data; - - this.changedate.forEach((item) => { - this.textarea1 = item.checkAdvice; - }); - if (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 = ""; - // } - }); - // item.remark = ""; - }); - } - } else { - this.$message({ - type: "warning ", - message: "璇ュ鎴锋病鏈夊寲楠岄」鐩暟鎹�", - }); - } - }); - } - }, - - // 浣撴鍏徃鎷奸煶鎼滅储 - getRemoteData(query) { - if (query) { - let compName = query; - queryCompany(compName).then((response) => { - this.CompanyList = response.data; - }); - } - }, - - // 閫夋鏁版嵁 - searchSelect(val) { - this.CheckBox = val; - }, - - // 鏃堕棿 - dateChangebirthday1(val) { - this.startTime = val; - }, - - hb() { - if (this.queryParams.tjNumber != "") { - this.submitForm(); - } - }, - - // 鎼滅储 - submitForm() { - console.log(this.tjStatus); - this.loading = true; - this.queryParams.compId = this.CheckBox.drugManufacturerId; - this.queryParams.checkStatus = this.tjStatus; - if (this.startTime) { - this.queryParams.beginTime = this.startTime[0]; - this.queryParams.endTime = this.startTime[1]; - } else { - this.queryParams.beginTime = null; - this.queryParams.endTime = null; - } - - // 椤甸潰鏁版嵁 - getcheckList(this.queryParams).then((response) => { - if (response.code == 200) { - this.loading = false; - if (response.data.customers != null) { - this.checkList = response.data.customers; - this.checkList.forEach((item) => { - this.tjStatus = item.tjStatus.toString(); - }); - - this.total = response.data.total; - } else { - this.checkList = []; - } - } - }); - }, - // 閲嶇疆 - resetQuery() { - this.startTime = []; - this.resetForm("tableList"); - this.submitForm(); - }, - changRed({ row }) { - if (row.ycbz != "" && row.ycbz != null) { - // 鍙橀鑹茬殑鏉′欢 - return { - color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor - }; - } - }, - red() { - return { - color: "red", - }; - }, - redxiangmu({ row }) { - if (row.type != 1) { - // 鍙橀鑹茬殑鏉′欢 - return { - backgroundColor: "#AAD8DF !important", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor - // color: "#AAD8DF ", - }; - } - }, - /* changRed(row) { - if (row.label === "鈫�") { - return { - color: "green", // 璁剧疆涓婄澶翠负缁胯壊 - }; - } else if (row.label === "鈫�") { - return { - color: "red", // 璁剧疆涓嬬澶翠负绾㈣壊 - }; - } - // 榛樿棰滆壊 - return { - color: "black", - }; - }, */ - handleCurrentChange(val) { - if (val != null) { - this.handleClick(val); - } - }, - - // 鐐瑰嚮璇︽儏 - handleClick(row) { - this.$refs.Pre.open = false; - this.tableAll = row; - 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.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; - } - 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.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 || ""; - - // 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, - }; - 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: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", - }); - } - }); - }); - } - }); - } - }); - - // 鑾峰彇灏忕粨 - // getDeptAdvice().then((response) => { - // response.data.forEach((item) => { - // this.DeptadviceAll = item; - // }); - // }); - }, - // 鎾ら攢 - getRevoke(row) { - this.loading = true; - const tjNumber = row.tjNumber; - revoke(tjNumber).then((response) => { - this.$modal.msgSuccess("鎾ゅ洖鎴愬姛"); - if (response.code == 200) { - this.loading = false; - this.getList(); - } - }); - }, - - - addAdvice() { - this.newItem.map.push({ bt: '', nr: '' }); - }, - - removeAdvice(index) { - if (this.newItem.map.length > 1) { - this.newItem.map.splice(index, 1); - } else { - this.$message.warning('鑷冲皯淇濈暀涓�缁勫缓璁�'); - } + handleSelectionChange(selection) { + console.log(selection); }, submitNewItem() { @@ -2998,8 +1321,7 @@ }); }, - - addnew() { + addnew() { this.newItem = { parentName: '', jcxm: '', @@ -3024,191 +1346,771 @@ }); }, - cancel() { - this.propdialog = false; + handleCategoryChange(value) { + if (value) { + this.newItem.jcxm = value; + } }, - // 鏄惁鍏抽棴寮圭獥 - handleClose(done) { - if (this.loading) { - return; + change(val) { + console.log('閫変腑鐨勫�兼槸锛�', val); + }, + + addAdvice() { + this.newItem.map.push({ bt: '', nr: '' }); + }, + + removeAdvice(index) { + if (this.newItem.map.length > 1) { + this.newItem.map.splice(index, 1); + } else { + this.$message.warning('鑷冲皯淇濈暀涓�缁勫缓璁�'); + } + }, + + shanchu(row) { + this.isdisabled = true; + + shanchu({ + id: row.orderDetailId, + }).then((res) => { + console.log(res, 1111); + + 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.sone.length === 0) { + const parentIndex = this.yichangList.indexOf(parentItem); + if (parentIndex > -1) { + this.yichangList.splice(parentIndex, 1); + } + } + + this.getExpends(); + this.$forceUpdate(); + this.$message.success('鍒犻櫎鎴愬姛'); + } else { + this.$message.error('鏈壘鍒拌鍒犻櫎鐨勫瓙椤�'); + } + } else { + this.$message.error('鏈壘鍒拌鍒犻櫎鐨勭埗椤�'); + } + } else { + this.$message.error('鍚庣鍒犻櫎澶辫触锛�' + (res.msg || '鏈煡閿欒')); + } + }).catch((error) => { + console.error('鍒犻櫎澶辫触:', error); + this.$message.error('鍒犻櫎鎿嶄綔澶辫触锛�' + error.message); + }).finally(() => { + this.isdisabled = false; + }); + }, + + handleQuery() { + this.xmopen = true; + let data = { + tjNum: this.tjNumber, + type: 0 + }; + 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 + }] + }; + UpdFcPro(data).then(res => {}); + }, + + handledeleteClick() { + UpdFcPro(data).then(res => {}); + }, + + handlexmChange(selection) { + this.xmChange = []; + this.xmChange = selection; + if (selection.length > 1) { + let del_row = selection.shift(); + this.$refs.elTable.toggleRowSelection(del_row, false); + } + }, + + submitFormxm() { + this.xmopen = false; + }, + + cancels() { + this.xmopen = false; + this.xmChange = []; + }, + + getExpends() { + this.expends = this.yichangList.flatMap(item => + item.sone.map(soneItem => soneItem.orderDetailId) + ); + }, + + 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; + }); + }, + + getRowKeys(row) { + return row.orderDetailId; + }, + + xiangmuqingkuang() { + this.loading = true; + cSWebGetPro(this.tjNumber) + .then((res) => { + this.status1 = 1; + this.statusList = res.data; + if (this.statusList.length == 0) { + this.$message.success("鏆傛棤椤圭洰鎯呭喌"); + } + }) + .catch((error) => { + console.error('鑾峰彇椤圭洰鎯呭喌澶辫触:', error); + this.$message.error('鑾峰彇椤圭洰鎯呭喌澶辫触'); + }) + .finally(() => { + this.loading = false; + }); + }, + + guanbi() { + this.drawer = false; + }, + + yichangjieguo() { + this.loading = true; + this.status1 = 0; + yichang({ + tjNum: this.tjNumber, + }) + .then((res) => { + 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: "" }]; + } + }); + }); + if (!this.yichangList) { + this.$message.warning("鏆傛棤寮傚父鎶ュ憡"); + } + }) + .catch((error) => { + console.error('鑾峰彇寮傚父缁撴灉澶辫触:', error); + this.$message.error('鑾峰彇寮傚父缁撴灉澶辫触'); + }) + .finally(() => { + this.loading = false; + }); + }, + + fuchaxiangmu() { + this.loading = true; + this.status1 = 2; + let data = { + tjNum: this.tjNumber, + type: 1, + }; + getFcList(data) + .then((res) => { + this.fcList = res.data; + }) + .catch((error) => { + console.error("鑾峰彇澶嶆煡椤圭洰澶辫触:", error); + this.$message.error("鑾峰彇澶嶆煡椤圭洰澶辫触"); + }) + .finally(() => { + this.loading = false; + }); + }, + + getdate() { + getNewDateList().then((res) => { + this.getList(); + }); + }, + + getNowTime() { + var curDate = new Date().getTime(); + var dayNum = 7 * 24 * 3600 * 1000; + var threeDays = curDate - dayNum; + var sDay = this.getLocalTime(threeDays); + var end = this.getLocalTime(curDate); + this.startTime = [sDay, end]; + }, + + add0(m) { + return m < 10 ? "0" + m : m; + }, + + getLocalTime(nS) { + var time = new Date(nS); + var y = time.getFullYear(); + var m = time.getMonth() + 1; + var d = time.getDate(); + var h = time.getHours(); + var mm = time.getMinutes(); + return ( + y + + "-" + + this.add0(m) + + "-" + + this.add0(d) + + " " + + this.add0(h) + + ":" + + this.add0(mm) + ); + }, + + jianqian() { + this.flags = true; + this.jianqians = true; + let tjNumber = this.tableAll.tjNumber; + this.jianqianwenzhendata.push(tjNumber); + }, + + getList() { + this.loading = true; + this.queryParams.compId = this.CheckBox.drugManufacturerId; + this.queryParams.checkStatus = this.tjStatus; + if (this.startTime) { + this.queryParams.beginTime = this.startTime[0]; + this.queryParams.endTime = this.startTime[1]; + } else { + this.queryParams.beginTime = null; + this.queryParams.endTime = null; } - // 妫�鏌ユ槸鍚︽湁淇敼 - let isModified = - JSON.stringify(this.changedate) !== JSON.stringify(this.initialState) || - (this.textarea1 !== this.initialTotalCheckAdvice && - this.textarea1 !== null); - console.log("Initial Total Check Advice:", this.initialTotalCheckAdvice); + getcheckList(this.queryParams).then((response) => { + if (response.code == 200) { + this.loading = false; + if (response.data) { + if (response.data.date) { + this.checkList = response.data.date; + } else { + this.checkList = response.data.customers; + } + this.total = response.data.total; + } else { + this.checkList = []; + } + } + }); - console.log("Current textarea1:", this.textarea1); - if (isModified) { - // 濡傛灉鏈変慨鏀癸紝寮瑰嚭纭妗� - this.$confirm("妫�娴嬪唴瀹规湁淇敼锛岀‘瀹氳鎻愪氦鍚楋紵") - .then(() => { - this.loading = true; - this.timer = setTimeout(() => { - done(); - this.determine(); + getCompany(this.queryParam).then((response) => { + this.CompanyList = response.data; + this.loading = false; + }); + }, + + viewReport(row) { + const tjNumber = row.tjNumber; + isPdfOrJimu(tjNumber).then((response) => { + if (response.data.flag == "0") { + const flag = true; + getPdf(tjNumber, flag).then((response) => { + if (response.size === 0) { + const loading = this.$loading({ + lock: true, + text: "Loading", + spinner: "el-icon-loading", + background: "rgba(0, 0, 0, 0.7)", + }); setTimeout(() => { - this.loading = false; - }, 400); - }, 2000); - }) - .catch(() => { - // 鐢ㄦ埛鍙栨秷鎿嶄綔 - this.drawer = false; + loading.close(); + }, 3000); + this.$message({ + message: "璇锋挙鍥為噸鏂扮敓鎴愭姤鍛�", + type: "error" + }); + } else { + this.dialogVisible = true; + this.url = window.webkitURL.createObjectURL(response); + } + }); + } else { + let url = response.data.url; + const params = { url }; + this.$tab.openPage("鍋ュ悍璇佹鏌ヨ〃", "/report/zongjianjiankangzheng", params); + } + }); + }, + + Graphicreport() { + this.loading = true; + let dictType = "dict_ageunit"; + getDicts(dictType) + .then((res) => { + if (res.code == 200) { + res.data.forEach((item) => { + if (this.tableAll.age_unit == item.dictValue) { + this.tableAll.age_unit = item.dictLabel; + } + }); + let dictTypes = "sys_user_sex"; + return getDicts(dictTypes); + } else { + throw new Error('鑾峰彇骞撮緞鍗曚綅瀛楀吀澶辫触'); + } + }) + .then((res) => { + if (res.code == 200) { + res.data.forEach((item) => { + if (this.tableAll.cusSex == item.dictValue) { + this.tableAll.cusSex = item.dictLabel; + } + }); + let data = { + patname: this.tableAll.cusName, + sex: this.tableAll.cusSex, + patage: this.tableAll.age, + patagename: this.tableAll.age_unit, + patbirth: this.tableAll.cusBrithday, + }; + return getTjYxjcList(data); + } else { + throw new Error('鑾峰彇鎬у埆瀛楀吀澶辫触'); + } + }) + .then((res) => { + this.baogao = res.data; + this.$refs.bbb.open = true; + this.$refs.bbb.title = "鎶ュ憡瀛楀吀"; + }) + .catch((error) => { + console.error('鐢熸垚鍥炬枃鎶ュ憡澶辫触:', error); + this.$message.error('鐢熸垚鍥炬枃鎶ュ憡澶辫触'); + }) + .finally(() => { + this.loading = false; + }); + }, + + historicalreport() { + this.loading = true; + let data = { + cusId: this.tableAll.cusId, + }; + reportHistory(data) + .then((res) => { + if (res.data[0] != null) { + this.reportHistorydata = res.data; + } else { + this.reportHistorydata = []; + } + }) + .catch((error) => { + console.error('鑾峰彇鍘嗗彶鎶ュ憡澶辫触:', error); + this.$message.error('鑾峰彇鍘嗗彶鎶ュ憡澶辫触'); + }) + .finally(() => { + this.loading = false; + }); + }, + + medicalhistory() { + this.loading = true; + this.status1 = 3; + let tjNumber = this.tableAll.tjNumber; + getInfoById(tjNumber) + .then((response) => { + this.formobj = response.data; + if (this.formobj.xiyan == null) { + this.formobj.xiyan = "1"; + } + if (this.formobj.xiyanpinlv == null) { + this.formobj.xiyanpinlv = "0"; + } + if (this.formobj.xiyanyear == null) { + this.formobj.xiyanyear = "0"; + } + if (this.formobj.yinjiu == null) { + this.formobj.yinjiu = "1"; + } + if (this.formobj.yinjiupinlv == null) { + this.formobj.yinjiupinlv = "0"; + } + if (this.formobj.yinjiuyear == null) { + this.formobj.yinjiuyear = "0"; + } + }) + .catch((error) => { + console.error('鑾峰彇鑱屼笟鐥呭彶澶辫触:', error); + this.$message.error('鑾峰彇鑱屼笟鐥呭彶澶辫触'); + }) + .finally(() => { + this.loading = false; + }); + }, + + downLoadFileImg(row) { + const tjNumber = row.tjNumber; + const flag = true; + getPdf(tjNumber, flag).then((response) => { + this.url = window.webkitURL.createObjectURL(response); + }); + }, + + rowClick(row) { + if (row.tjNumber) { + this.preObj = row; + } else { + this.preObj = this.tableAll; + } + this.$refs.Pre.open = true; + this.$refs.Pre.title = "澶勬柟"; + }, + + radioChange(value) { + this.loading = true; + this.queryParams.checkStatus = value; + this.queryParams.page = 1; + this.queryParams.pageSize = 10; + getcheckList(this.queryParams).then((response) => { + if (response.data) { + this.checkList = response.data.customers; + this.total = response.data.total; + } else { + this.checkList = []; + } + this.loading = false; + }); + }, + + propoChange() { + this.cusobj = { sex: this.tableAll.cusSex, isZj: 0 }; + this.$refs.proposal.open = true; + this.$refs.proposal.title = "寤鸿鏂规"; + }, + + eventchange(data) { + this.dataText = data; + if (this.textarea1 == null) { + this.textarea1 = ""; + } + data.forEach((item) => { + if (item.advice) { + this.textarea1 += item.advice; + } else { + this.textarea1 += item.jynr; + } + }); + }, + + proposalChange() { + if (this.textarea1) { + this.creatobj = { proParentList: this.textarea1, isZj: 0 }; + this.$refs.createproposal.open = true; + this.$refs.createproposal.title = "甯哥敤寤鸿缁存姢"; + } else { + this.$message({ + type: "warning", + message: "璇峰厛濉啓鎬绘寤鸿", + }); + } + }, + + radiotjprojectChange() { + if (this.tjproject == "0") { + getupdateCheckType(this.tjNumber).then((response) => { + this.changedate = response.data; + this.changedate.forEach((item) => { + this.textarea1 = item.checkAdvice; + }); + if (this.changedate) { + for (let i = 0; i < this.changedate.length; i++) { + this.remark = this.changedate[i].remark; + } + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + } + }); + } else if (this.tjproject == "1") { + getupdateCheckTypeHuaYan(this.tjNumber).then((res) => { + if (res.data) { + this.changedate = res.data; + this.changedate.forEach((item) => { + this.textarea1 = item.checkAdvice; + }); + if (this.changedate) { + for (let i = 0; i < this.changedate.length; i++) { + this.remark = this.changedate[i].remark; + } + } + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈夊寲楠岄」鐩暟鎹�", + }); + } + }); + } + }, + + getRemoteData(query) { + if (query) { + let compName = query; + queryCompany(compName).then((response) => { + this.CompanyList = response.data; + }); + } + }, + + searchSelect(val) { + this.CheckBox = val; + }, + + dateChangebirthday1(val) { + this.startTime = val; + }, + + hb() { + if (this.queryParams.tjNumber != "") { + this.submitForm(); + } + }, + + submitForm() { + this.loading = true; + this.queryParams.compId = this.CheckBox.drugManufacturerId; + this.queryParams.checkStatus = this.tjStatus; + if (this.startTime) { + this.queryParams.beginTime = this.startTime[0]; + this.queryParams.endTime = this.startTime[1]; + } else { + this.queryParams.beginTime = null; + this.queryParams.endTime = null; + } + + getcheckList(this.queryParams).then((response) => { + if (response.code == 200) { + this.loading = false; + if (response.data.customers != null) { + this.checkList = response.data.customers; + this.checkList.forEach((item) => { + this.tjStatus = item.tjStatus.toString(); + }); + this.total = response.data.total; + } else { + this.checkList = []; + } + } + }); + }, + + resetQuery() { + this.startTime = []; + this.resetForm("tableList"); + this.submitForm(); + }, + + changRed({ row }) { + if (row.ycbz != "" && row.ycbz != null) { + return { + color: "red", + }; + } + }, + + red() { + return { + color: "red", + }; + }, + + redxiangmu({ row }) { + if (row.type != 1) { + return { + backgroundColor: "#AAD8DF !important", + }; + } + }, + + handleCurrentChange(val) { + if (val != null) { + this.handleClick(val); + } + }, + + handleClick(row) { + this.$refs.Pre.open = false; + this.tableAll = row; + 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.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 = response.data.zhiyeJl || ''; + this.zhiyeJg = response.data.zhiyeJg || '鏈彂鐜扮洰鏍囨�х柧鐥�'; + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� + this.zhiyeJl = ''; + this.zhiyeJg = '鏈彂鐜扮洰鏍囨�х柧鐥�'; + } + }); + }); + } + }); + } 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.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 = response.data.zhiyeJl || ''; + this.zhiyeJg = response.data.zhiyeJg || '鏈彂鐜扮洰鏍囨�х柧鐥�'; + } else { + this.$message({ + type: "warning", + message: "璇ュ鎴锋病鏈変綋妫�椤圭洰鏁版嵁", + }); + // 濡傛灉娌℃湁鏁版嵁锛屾竻绌哄瓧娈� + this.zhiyeJl = ''; + this.zhiyeJg = '鏈彂鐜扮洰鏍囨�х柧鐥�'; + } + }); + }); + } + }); + }) + .catch(() => { + this.$message({ + type: "info", + message: "宸插彇娑堣繘鍏�", + }); + }); + } + } + }); + }, + + handleClose(done) { + if (JSON.stringify(this.initialState) !== JSON.stringify(this.changedate) || this.initialTotalCheckAdvice !== this.textarea1) { + this.$confirm("鎮ㄦ湁鏈繚瀛樼殑鏇存敼锛岀‘瀹氳鍏抽棴鍚楋紵", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }) + .then(() => { let data = { userId: this.userId, tjNumber: this.tjNumber, state: 1, - id: this.MsgId, }; - getfiedState(data).then((res) => {}); - this.submitForm(); - }); + getfiedState(data).then((res) => { + this.drawer = false; + done(); + }); + }) + .catch(() => {}); } else { - // 濡傛灉娌℃湁淇敼锛岀洿鎺ュ叧闂� - done(); + let data = { + userId: this.userId, + tjNumber: this.tjNumber, + state: 1, + }; + getfiedState(data).then((res) => { + this.drawer = false; + done(); + }); } }, - handleClose1() { + + handleClose1(done) { this.jianqians = false; + this.flags = false; + done(); }, - // 鐢熸垚鎶ュ憡 - // generate(row) { - // const tjNumber = row.tjNumber; - // getGenerate(tjNumber).then((response) => { - // this.$modal.msgSuccess("鐢熸垚鎴愬姛"); - // }); - // }, - // xiAoJieChange(event) { - // if (event) { - // this.changedate.forEach((item) => { - // item.remark = ""; - // item.parentAdvice.forEach((item1) => { - // event.forEach((item2) => { - // if (item2 == item1.id) { - // item.remark = item.remark + item1.advice + "銆�"; - // } - // }); - // }); - // }); - // } - // }, - change(vale) {}, - // 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, - // }; - - // 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; @@ -3217,10 +2119,9 @@ tjNumber, advice, checkStatus: 1, + zhiyeJl: this.zhiyeJl, // 娣诲姞妫�鏌ョ粨璁� + zhiyeJg: this.zhiyeJg // 娣诲姞浣撴缁撴灉 }; - - console.log(this.yichangList, 6644); - let dataList = this.yichangList .map((item) => { return item.sone.map((soneItem) => ({ @@ -3234,14 +2135,17 @@ dw: soneItem.proAdvice, })); }) - .flat(); // 浣跨敤 flat() 鏂规硶灏嗗祵濂楁暟缁勫睍骞� + .flat(); + this.loading = true; getTjdetailList(data) .then((response) => { if (response.code === 200) { this.$modal.msgSuccess("鎻愪氦鎴愬姛"); + // 娓呯┖瀛楁 + this.zhiyeJl = ''; + this.zhiyeJg = ''; - // 鍑嗗鐢熸垚鎶ュ憡鐨勮姹傛暟鎹� let reportData = { userId: this.userId, tjNumber: tjNumber, @@ -3249,12 +2153,8 @@ id: this.MsgId, }; - // 璋冪敤 addOrderPromise - console.log(dataList, 5555); - addOrder(dataList) .then((res) => { - console.log(res, 999); if (res.code == 200) { gettoPdf(tjNumber) .then((res) => { @@ -3280,41 +2180,60 @@ remarks, }, ]; - return getModified(updateOrderRemarkVos); // 杩斿洖 Promise + return getModified(updateOrderRemarkVos); }); - // 绛夊緟鎵�鏈夎姹傚畬鎴� 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) => { - // 濡傛灉 addOrderPromise 澶辫触锛屽鐞嗛敊璇� this.loading = false; console.error("addOrderPromise 澶辫触:", error); }); } else { - // 鎻愪氦澶辫触锛屽叧闂� loading this.loading = false; + this.$modal.msgError("鎻愪氦澶辫触"); } }) .catch((error) => { - // 鎻愪氦璇锋眰澶辫触锛屽叧闂� loading this.loading = false; console.error("鎻愪氦璇锋眰澶辫触:", error); + this.$modal.msgError("鎻愪氦璇锋眰澶辫触"); + }); + }, + + getRevoke(row) { + this.$confirm("纭鎾ら攢璇ユ姤鍛婂悧锛�", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }) + .then(() => { + revoke(row.tjNumber).then((response) => { + if (response.code === 200) { + this.submitForm(); + this.$message.success("鎾ら攢鎴愬姛"); + } else { + this.$message.error("鎾ら攢澶辫触"); + } + }); + }) + .catch(() => { + this.$message({ + type: "info", + message: "宸插彇娑堟挙閿�", + }); }); }, }, @@ -3470,10 +2389,40 @@ width: 100%; display: flex; justify-content: center; + /* 纭繚鍒嗛〉鍣ㄦ暣浣撳眳涓� */ + align-items: center; + /* 鍨傜洿灞呬腑 */ + margin-top: 15px; + /* 涓庤〃鏍肩殑闂磋窛 */ +} + +.pag2 { + width: auto; + /* 绉婚櫎鍥哄畾瀹藉害锛岃鍒嗛〉鍣ㄦ牴鎹唴瀹硅嚜閫傚簲 */ + min-width: 750px; + /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ + text-align: center; + /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ +} + +@media (max-width: 750px) { + .pag2 { + min-width: 300px; + /* 绉诲姩绔渶灏忓搴� */ + overflow-x: auto; + /* 鍏佽妯悜婊氬姩 */ + padding: 10px; + /* 绉诲姩绔唴杈硅窛 */ + } } .pag1 { - width: 30%; + width: auto; + /* 绉婚櫎鍥哄畾瀹藉害锛岃鍒嗛〉鍣ㄦ牴鎹唴瀹硅嚜閫傚簲 */ + min-width: 300px; + /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ + text-align: center; + /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ } .dialog-footers { @@ -3504,7 +2453,7 @@ .box { display: flex; - height: calc(100% - 160px); + height: calc(100vh - 200px); margin-top: 20px; overflow: hidden; } @@ -3649,4 +2598,79 @@ ::v-deep .el-drawer { padding: 0 0 50px; } -</style> + +.custom-dialog { + ::v-deep .el-dialog__header { + padding: 15px 20px; + background-color: #f5f7fa; + border-bottom: 1px solid #e8ecef; + } + + ::v-deep .el-dialog__title { + font-size: 18px; + color: #303133; + font-weight: 600; + } + + ::v-deep .el-dialog__body { + padding: 20px; // 澧炲姞鍐呰竟璺� + background-color: #fff; + } + + ::v-deep .el-dialog__footer { + padding: 10px 20px; + border-top: 1px solid #e8ecef; + text-align: right; + } + + .custom-form { + .advice-group { + border: 1px solid #e8ecef; + border-radius: 4px; + padding: 10px; + margin-bottom: 15px; + background-color: #f9fbfc; + + .el-form-item { + margin-bottom: 15px; + } + + .el-button { + margin-top: 5px; + } + } + } +} + +.section-title { + font-size: 20px; + font-weight: bold; + color: #303133; + background-color: #f5f7fa; + padding: 10px 15px; + border-left: 4px solid #409eff; + /* 宸︿晶钃濊壊杈规潯锛屽寮鸿瑙夋晥鏋� */ + margin-bottom: 15px; + margin-top: 15px; + border-radius: 4px; +} + +.dialog-pager { + display: flex; + justify-content: center; + /* 姘村钩灞呬腑 */ + align-items: center; + /* 鍨傜洿灞呬腑 */ + margin-top: 15px; + /* 涓庤〃鏍肩殑闂磋窛 */ + padding: 0 20px; + /* 澧炲姞鍐呰竟璺濓紝閬垮厤杩囦簬璐磋竟 */ + box-sizing: border-box; + /* 纭繚鍐呰竟璺濅笉褰卞搷瀹藉害 */ +} + +// .dialog-pager-inner { +// width: auto; /* 鑷�傚簲瀹藉害 */ +// min-width: 300px; /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ +// text-align: center; /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ +// }</style> -- Gitblit v1.8.0