From c733f15292736ea539378226af0639f4ff04fe5b Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期一, 09 六月 2025 18:09:35 +0800 Subject: [PATCH] 1 --- src/views/doctor/checkAll/index.vue | 2554 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 1,840 insertions(+), 714 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index 22a0081..57df29e 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -1,47 +1,127 @@ <template> <div class="mainbox"> - <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px"> + <el-form + :model="queryParams" + ref="tableList" + :inline="true" + label-width="76px" + style="margin-top: 10px" + > <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="queryParams.name" style="width: 120px" placeholder="璇疯緭鍏ュ鍚�" clearable - @keyup.enter.native="submitForm"></el-input> + <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-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="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 + 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-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-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> - <el-button type="primary" size="mini" @click="submitForm" style="margin-right: 15px">鎼滅储</el-button> + <el-button + type="primary" + size="mini" + @click="submitForm" + style="margin-right: 15px" + >鎼滅储</el-button + > <el-button size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> - <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 20px"> + <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"> + <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="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-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> @@ -49,8 +129,20 @@ <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="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="浣撴鏃堕棿" @@ -59,721 +151,1442 @@ :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"> + <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"> <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="tjCompName" + :show-overflow-tooltip="true" + /> <el-table-column label="浣撴绫诲埆" align="center" prop="tjCategory"> <template slot-scope="scope"> - <dict-tag :options="dict.type.dict_tjtype" :value="scope.row.tjCategory" /> + <dict-tag + :options="dict.type.dict_tjtype" + :value="scope.row.tjCategory" + /> </template> </el-table-column> - <el-table-column label="鎿嶄綔" align="center" width="120px" fixed="right"> + <el-table-column + label="鎿嶄綔" + align="center" + width="120px" + fixed="right" + > <template slot-scope="scope"> - <el-button fixed="right" title="璇︽儏" type="text" size="mini" @click.stop="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 + 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 + 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> <div class="pag"> <div class="pag1"> - <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize" - @pagination="submitForm" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.page" + :limit.sync="queryParams.pageSize" + @pagination="submitForm" + /> </div> </div> </template> <!-- 鐐瑰嚮寮瑰嚭妗� show-close="true"--> - <el-drawer custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" - size="100%"> - <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=" + <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; - 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 + " + 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> - </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> + }} + </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> </div> - <div class="btn1"> - <el-button @click="xiangmuqingkuang()" type="primary"><span class="vertical-text">椤圭洰鎯呭喌</span></el-button> + <div style="margin-right: 10px; display: flex" class="btnbox"> + <div class="btn1" v-if="msgtuwen == 'y' || msgtuwen == 'Y'"> + <el-button @click="Graphicreport()" type="primary"> + <span class="vertical-text">鍥炬枃鎶ュ憡</span> + </el-button> + </div> + <div class="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="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=" + <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; - width: 7%; - "> - 灏忕粨锛� - </td> - <td style="border: 1px solid #dfe6ec; width: 45%"> - <el-input v-model="item.remark" disabled></el-input> - </td> - <td style=" + " + > + <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: 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 + 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 + </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=" + </td> + </tr> + <tr + 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 + " + > + <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=" + </td> + </tr> + <tr + 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> + 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> - <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: 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> + <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> - <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 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> <div> 鏍囬锛� - <el-input v-model="jianyi.bt" size="small" type="textarea" autosize></el-input> + <el-input + v-model="emptyAdvice.bt" + size="small" + type="textarea" + autosize + ></el-input> </div> <div> 鍐呭锛� - <el-input v-model="jianyi.nr" size="small" type="textarea" autosize></el-input> + <el-input + v-model="emptyAdvice.nr" + size="small" + type="textarea" + autosize + ></el-input> </div> </div> - </div> - <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> - <div v-else> - <div> - 鏍囬锛� - <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize></el-input> - </div> - <div> - 鍐呭锛� - <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize></el-input> + <div style="margin-top: 10px"> + <el-button + @click="shanchu(props.row)" + type="danger" + size="small" + >鍒犻櫎</el-button + > </div> </div> + </template> + </el-table-column> - <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" 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="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> + </div> - <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"> + <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> + <div v-else> <div> 鏍囬锛� - <el-input v-model="jianyi.bt" size="small" type="textarea" autosize></el-input> + <el-input + v-model="emptyAdvice.bt" + size="small" + type="textarea" + autosize + ></el-input> </div> <div> 鍐呭锛� - <el-input v-model="jianyi.nr" size="small" type="textarea" autosize></el-input> + <el-input + v-model="emptyAdvice.nr" + size="small" + type="textarea" + autosize + ></el-input> </div> </div> - </div> - <!-- 濡傛灉 advices 涓虹┖鏃讹紝娓叉煋绌虹殑杈撳叆妗� --> - <div v-else> - <div> - 鏍囬锛� - <el-input v-model="emptyAdvice.bt" size="small" type="textarea" autosize></el-input> - </div> - <div> - 鍐呭锛� - <el-input v-model="emptyAdvice.nr" size="small" type="textarea" autosize></el-input> + <div style="margin-top: 10px"> + <el-button + @click="shanchu(props.row)" + type="danger" + size="small" + >鍒犻櫎</el-button + > </div> </div> + </template> + </el-table-column> - <div style="margin-top: 10px"> - <el-button @click="shanchu(props.row)" type="danger" size="small">鍒犻櫎</el-button> - </div> - </div> - </template> + <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" + > + </el-table-column> + <el-table-column + align="center" + prop="proName" + label="椤圭洰" + width="260" + > </el-table-column> - <el-table-column align="center" label="妫�娴嬮」鐩�" width="232" :show-overflow-tooltip="true"> + <el-table-column + label="鐘舵��" + align="center" + prop="type" + :show-overflow-tooltip="true" + width="120" + > <template slot-scope="scope"> - <div>{{ scope.row.proName }}</div> + <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 align="center" prop="proResult" label="妫�娴嬬粨鏋�" width="403"> + <el-table-column + label="妫�鏌ユ椂闂�" + align="center" + prop="bcupdateTime" + width="160" + /> + </el-table> + </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="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> - </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"> - </el-table-column> - <el-table-column align="center" prop="proName" label="椤圭洰" width="260"> - </el-table-column> + </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> - <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> - <template v-if="status1 == 2"> - <div> - <div style="text-align: center; margin-top: 10px;"> - 澶嶆煡椤圭洰 + <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> - <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="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> - </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> - - <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> + </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-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 + @change="handleCategoryChange"> + <el-option v-for="item in projectCategories" :key="item.proId" :label="item.proName" + :value="item.proName" /> + </el-select> + </el-form-item> + <el-form-item label="妫�娴嬮」鐩�" prop="jcxm"> + <el-input v-model="newItem.jcxm" placeholder="璇疯緭鍏ユ娴嬮」鐩垨浠庡垎绫婚�夋嫨" clearable></el-input> + </el-form-item> + <el-form-item label="妫�娴嬬粨鏋�" prop="jcjg"> + <el-input v-model="newItem.jcjg" placeholder="璇疯緭鍏ユ娴嬬粨鏋�" clearable></el-input> + </el-form-item> + <el-form-item label="鍙傝�冭寖鍥�" prop="ckfw"> + <el-input v-model="newItem.ckfw" placeholder="璇疯緭鍏ュ弬鑰冭寖鍥�" clearable></el-input> + </el-form-item> + <el-form-item label="鍗曚綅" prop="dw"> + <el-input v-model="newItem.dw" placeholder="璇疯緭鍏ュ崟浣�" clearable></el-input> + </el-form-item> + <!-- 鍔ㄦ�佸缓璁粍 --> + <div v-for="(advice, index) in newItem.map" :key="index" class="advice-group"> + <el-form-item label="寤鸿鏍囬" :prop="'map.' + index + '.bt'"> + <el-input v-model="advice.bt" placeholder="璇疯緭鍏ュ缓璁爣棰�" clearable @focus="tan($event)"></el-input> + </el-form-item> + <el-form-item label="寤鸿鍐呭" :prop="'map.' + index + '.nr'"> + <el-input v-model="advice.nr" type="textarea" rows="3" placeholder="璇疯緭鍏ュ缓璁唴瀹�" resize="none" + @focus="tan($event)"></el-input> + </el-form-item> + <el-button v-if="index > 0" type="danger" size="small" @click="removeAdvice(index)" + style="margin-left: 100px; margin-bottom: 10px;">鍒犻櫎</el-button> + </div> + <el-form-item> + <el-button type="primary" size="small" @click="addAdvice" style="margin-left: 100px;">娣诲姞寤鸿</el-button> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="addNewDialogVisible = false">鍙栨秷</el-button> + <el-button type="primary" @click="submitNewItem">纭畾</el-button> + </span> + </el-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-item label="寤鸿鍚嶇О"> + <el-input v-model="queryParams1.zyzd" placeholder="璇疯緭鍏ュ缓璁悕绉拌繘琛岀瓫閫�" clearable style="width: 200px" + @input="filterAdvices(true)" @keyup.enter.native="filterAdvices(true)" /> + </el-form-item> + </el-form> + </div> + + <!-- 寤鸿琛ㄦ牸 --> + <el-table v-loading="adviceLoading" :data="advicerulesList" ref="adviceTable" border highlight-current-row + @current-change="handleCurrentChangeAdvice" style="max-height: 400px; overflow-y: auto;" + :empty-text="adviceEmptyText"> + <el-table-column label="绉戝" prop="ks" width="100" align="center" /> + <el-table-column label="寤鸿鍚嶇О" prop="jymc" align="center" /> + <el-table-column label="寤鸿鍐呭" prop="jynr" align="center" /> + </el-table> + + <!-- 鍒嗛〉 --> + <div class="pag"> + <div class="pag2"> + <pagination v-show="total1 > 0" :total="total1" :page.sync="queryParams1.pageNum" + :limit.sync="queryParams1.pageSize" @pagination="filterAdvices(false)" /> + </div> + </div> + + <!-- 搴曢儴鎸夐挳 --> + <span slot="footer" class="dialog-footer"> + <el-button @click="cancelAdviceDialog">鍙栨秷</el-button> + <el-button type="primary" @click="applySelectedAdvice" :disabled="!selectedAdvice">纭畾</el-button> + </span> + </el-dialog> + <el-dialog :visible.sync="xmopen" width="800px" append-to-body> - <div style="margin: 20px;"> - <el-table :data="datasList" ref="elTable" v-loading="loading" @selection-change="handlexmChange" border - height="320px"> + <div style="margin: 20px"> + <el-table + :data="datasList" + ref="elTable" + v-loading="loading" + @selection-change="handlexmChange" + border + height="320px" + > <el-table-column type="selection" width="40" align="center" /> - <el-table-column label="鍚嶇О" align="center" prop="proName" width="100px" /> + <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> @@ -784,29 +1597,58 @@ <el-button @click="cancels">鍙� 娑�</el-button> </div> </el-dialog> - <el-dialog title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false" width="50%"> + <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> + <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> + <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" + :tjNumber="tjNumber" + @event1="eventchange($event)" + /> <createproposal ref="createproposal" :creatobj="creatobj" /> - <el-dialog title="甯哥敤寤鸿缁存姢" :visible.sync="propdialog" width="500px" append-to-body> + <el-dialog + title="甯哥敤寤鸿缁存姢" + :visible.sync="propdialog" + width="500px" + append-to-body + > </el-dialog> </div> </template> <script> +import _ from 'lodash'; import jianqianwenzhen from "@/components/jianqianwenzhen"; import Packages from "@/components/Packages"; import Prescription from "@/components/Prescription"; @@ -824,8 +1666,10 @@ gettoPdf, getModified, isPdfOrJimu, - addOrder,UpdFcPro, - getFcList + addOrder, + addOrder1, + UpdFcPro, + getFcList, } from "@/api/doctor/checkAll"; import { getInfoById } from "@/api/hosp/history"; import { getInfo } from "@/api/login"; @@ -839,8 +1683,8 @@ import { getTjYxjcList } from "@/api/system/package"; import { getNewDateList } from "@/api/hosp/order"; import { getconfigKey } from "@/api/login"; +import { listAdvicerules } from "@/api/hosp/advicerules"; import moment from "moment"; -import { get } from "sortablejs"; export default { components: { @@ -879,8 +1723,10 @@ fcList: [], xmopen: false, datasList: [], + advicerulesList: [], jianqianwenzhendata: [], jianqians: false, + adviceLoading: false, sex: true, activeName: "1", remarks: "", @@ -890,7 +1736,27 @@ proIds: "", cusobj: {}, xiaojie: "", + selectedAdvice: null, isdisabled: false, + showjianyi: false, + addNewDialogVisible: false, + adviceEmptyText: '鏆傛棤鏁版嵁', + total1: 0, + adviceCache: new Map(), + queryParams1: { + pageNum: 1, + pageSize: 10, + zyzd: '', + }, + newItem: { + parentName: '', + jcxm: '', + jcjg: '', + ckfw: '', + dw: '', + map: [{ bt: '', nr: '' }] + }, + projectCategories: [], src: "", url: "", userId: "", @@ -949,6 +1815,8 @@ selectLettercurrent: " ", // 鎶藉眽鎵撳紑鏂瑰紡 drawer: false, + isLoading: false, + xmopen: false, tableAll: {}, tjNumber: "", // 鍏ㄩ儴灏忕粨 @@ -1020,6 +1888,127 @@ }); }, methods: { + tan(event) { + this.activeAdviceIndex = event.target.closest('.advice-group') + ? Array.from(event.target.closest('.el-form').querySelectorAll('.advice-group')) + .indexOf(event.target.closest('.advice-group')) + : 0; + this.queryParams1.pageNum = 1; + this.queryParams1.pageSize = 10; + this.queryParams1.zyzd = ''; + this.selectedAdvice = null; + this.advicerulesList = []; + this.total1 = 0; + this.adviceCache.clear(); + this.filterAdvices(); + this.showjianyi = true; + }, + + // 绛涢�夊揩鎹峰缓璁紙闃叉姈 800ms锛屽甫缂撳瓨鍜屽姞杞界姸鎬侊級 + filterAdvices: _.debounce(function (resetPage = false) { + if (resetPage) { + this.queryParams1.pageNum = 1; + } + + const cacheKey = `${this.queryParams1.zyzd || ''}_${this.queryParams1.pageNum}_${this.queryParams1.pageSize}`; + + if (this.adviceCache.has(cacheKey)) { + const cachedData = this.adviceCache.get(cacheKey); + this.advicerulesList = cachedData.rows; + this.total1 = cachedData.total; + this.adviceEmptyText = this.advicerulesList.length === 0 ? '鏆傛棤鍖归厤鐨勫缓璁�' : '鏆傛棤鏁版嵁'; + return; + } + + this.adviceLoading = true; + this.adviceEmptyText = '鍔犺浇涓�...'; + + listAdvicerules(this.queryParams1) + .then((response) => { + this.advicerulesList = response.rows || []; + this.total1 = response.total || 0; + + this.adviceCache.set(cacheKey, { + rows: this.advicerulesList, + total: this.total1, + }); + + this.adviceEmptyText = this.advicerulesList.length === 0 ? '鏆傛棤鍖归厤鐨勫缓璁�' : '鏆傛棤鏁版嵁'; + }) + .catch((error) => { + console.error('绛涢�夊揩鎹峰缓璁け璐�:', error); + this.advicerulesList = []; + this.total1 = 0; + this.adviceEmptyText = '鍔犺浇澶辫触锛岃绋嶅悗閲嶈瘯'; + this.$message.error('鍔犺浇寤鸿澶辫触锛岃妫�鏌ョ綉缁滃悗閲嶈瘯'); + }) + .finally(() => { + this.adviceLoading = false; + }); + }, 800), + + handleCurrentChangeAdvice(currentRow) { + this.selectedAdvice = currentRow; + }, + + + submitFormxm() { + this.xmopen = false; + }, + + cancels() { + this.xmopen = false; + this.xmChange = []; + }, + + handleCategoryChange(value) { + if (value) { + this.newItem.jcxm = value; + } + }, + + applySelectedAdvice() { + if (this.selectedAdvice) { + this.$set(this.newItem.map, this.activeAdviceIndex, { + bt: this.selectedAdvice.jymc, + nr: this.selectedAdvice.jynr, + }); + this.showjianyi = false; + this.selectedAdvice = null; + } else { + this.$message.warning('璇峰厛閫夋嫨涓�鏉″缓璁�'); + } + }, + + + handleCloseAdviceDialog(done) { + if (this.selectedAdvice) { + this.$confirm('鎮ㄥ凡閫夋嫨涓�鏉″缓璁紝纭畾瑕佸叧闂悧锛�', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', + }) + .then(() => { + this.cancelAdviceDialog(); + done(); + }) + .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(); + }, + setTime() { //璁剧疆瀹氭椂鍣� this.clearTimeSet = setInterval(() => { @@ -1168,18 +2157,18 @@ this.status1 = 2; let data = { tjNum: this.tjNumber, - type: 1 + type: 1, }; getFcList(data) .then((res) => { this.fcList = res.data; - this.fcList.forEach((item,index) => { + this.fcList.forEach((item, index) => { item.newID = index + 1; - }) + }); }) .catch((error) => { - console.error('鑾峰彇澶嶆煡椤圭洰澶辫触:', error); - this.$message.error('鑾峰彇澶嶆煡椤圭洰澶辫触'); + console.error("鑾峰彇澶嶆煡椤圭洰澶辫触:", error); + this.$message.error("鑾峰彇澶嶆煡椤圭洰澶辫触"); }) .finally(() => { this.loading = false; @@ -1187,101 +2176,117 @@ }, handleQuery() { - this.xmopen = true + this.xmopen = true; let data = { tjNum: this.tjNumber, - type: 0 - } - getFcList(data).then(res => { - this.datasList = res.data - }) + type: 0, + }; + getFcList(data).then((res) => { + this.datasList = res.data; + }); }, handleaddClick() { - console.log(this.xmChange) + console.log(this.xmChange); let data = { orderId: this.xmChange[0].orderId, - data: [{ - proId: this.xmChange[0].proId, - type: 1 - }] - } - UpdFcPro(data).then(res => { + data: [ + { + proId: this.xmChange[0].proId, + type: 1, + }, + ], + }; + UpdFcPro(data).then((res) => { if (res.code == 200) { - this.xmChange = [] - this.fuchaxiangmu() + this.xmChange = []; + this.fuchaxiangmu(); } - }) + }); }, handledeleteClick(row) { let data = { orderId: row.orderId, - data: [{ - proId: row.proId, - type: 0 - }] - } - UpdFcPro(data).then(res => { + data: [ + { + proId: row.proId, + type: 0, + }, + ], + }; + UpdFcPro(data).then((res) => { if (res.code == 200) { - this.fuchaxiangmu() + this.fuchaxiangmu(); } - }) + }); }, handlexmChange(selection) { - this.xmChange = [] - this.xmChange = 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 + this.xmopen = false; }, cancels() { - this.xmopen = false - this.xmChange = [] + 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.yichangList = res.data; + }) + .then((res) => { + this.isLoading = false; + this.yichangList = res.data; - // console.log(this.yichangList, 3232); - this.getExpends(); + // 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: "", - }, - ]; - } + 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; }); - - if (!this.yichangList) { - _this.$message({ - type: "warning ", - message: "鏆傛棤寮傚父鎶ュ憡", - }); - } - }); }, getdate() { getNewDateList().then((res) => { @@ -1760,8 +2765,10 @@ }; 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) => { @@ -1823,8 +2830,10 @@ }; 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++) { @@ -1950,6 +2959,71 @@ }); }, + + 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('鑷冲皯淇濈暀涓�缁勫缓璁�'); + } + }, + + submitNewItem() { + const data = { + tjh: this.tableAll.tjNumber, + parentName: this.newItem.parentName, + jcxm: this.newItem.jcxm, + jcjg: this.newItem.jcjg, + ckfw: this.newItem.ckfw, + dw: this.newItem.dw, + map: this.newItem.map, + jyjc: this.newItem.ckfw ? "0" : "1" + }; + + addOrder1(data).then((res) => { + if (res.code === 200) { + this.$message.success('鏂板寮傚父缁撴灉鎴愬姛'); + this.addNewDialogVisible = false; + this.yichangjieguo(); + } else { + this.$message.error('鏂板澶辫触'); + } + }).catch((error) => { + console.error('鏂板寮傚父缁撴灉澶辫触:', error); + this.$message.error('鏂板寮傚父缁撴灉澶辫触'); + }); + }, + + + addnew() { + this.newItem = { + parentName: '', + jcxm: '', + jcjg: '', + ckfw: '', + dw: '', + map: [{ bt: '', nr: '' }] + }; + this.addNewDialogVisible = true; + + cSWebGetPro(this.tjNumber).then((res) => { + if (res.data && Array.isArray(res.data)) { + this.projectCategories = res.data; + } else { + this.$message.warning('鏈幏鍙栧埌椤圭洰鍒嗙被鏁版嵁'); + this.projectCategories = []; + } + }).catch((error) => { + console.error('鑾峰彇椤圭洰鍒嗙被澶辫触:', error); + this.$message.error('鑾峰彇椤圭洰鍒嗙被澶辫触'); + this.projectCategories = []; + }); + }, + cancel() { this.propdialog = false; }, @@ -1990,7 +3064,7 @@ state: 1, id: this.MsgId, }; - getfiedState(data).then((res) => { }); + getfiedState(data).then((res) => {}); this.submitForm(); }); } else { @@ -2022,7 +3096,7 @@ // }); // } // }, - change(vale) { }, + change(vale) {}, // determine() { // let tjNumber = this.tableAll.tjNumber; @@ -2298,38 +3372,38 @@ } /* 姣忎釜鎸夐挳鐨勪綅缃拰鍔ㄧ敾寤惰繜 */ -.btnbox>div:nth-child(1) { +.btnbox > div:nth-child(1) { top: 20%; /* 绗竴涓寜閽殑浣嶇疆 */ animation-delay: 0s; /* 鏃犲欢杩� */ } -.btnbox>div:nth-child(2) { +.btnbox > div:nth-child(2) { top: 30%; /* 绗簩涓寜閽殑浣嶇疆 */ animation-delay: 0.2s; } -.btnbox>div:nth-child(3) { +.btnbox > div:nth-child(3) { top: 40%; /* 绗笁涓寜閽殑浣嶇疆 */ animation-delay: 0.4s; } -.btnbox>div:nth-child(4) { +.btnbox > div:nth-child(4) { top: 50%; /* 绗洓涓寜閽殑浣嶇疆 */ animation-delay: 0.6s; } -.btnbox>div:nth-child(5) { +.btnbox > div:nth-child(5) { top: 60%; /* 绗簲涓寜閽殑浣嶇疆 */ animation-delay: 0.8s; } -.btnbox>div:nth-child(6) { +.btnbox > div:nth-child(6) { top: 70%; /* 绗叚涓寜閽殑浣嶇疆 */ animation-delay: 1s; @@ -2508,6 +3582,58 @@ } } +.pag2 { + width: auto; + /* 绉婚櫎鍥哄畾瀹藉害锛岃鍒嗛〉鍣ㄦ牴鎹唴瀹硅嚜閫傚簲 */ + min-width: 750px; + /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ + text-align: center; + /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ +} + +.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; + } + } + } +} + .kong { box-shadow: none; } -- Gitblit v1.8.0