From 967f71ac99954cc1f76254c9bcd18bb6cbb93366 Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期三, 16 四月 2025 14:15:18 +0800 Subject: [PATCH] qx --- src/views/picture/picture/index.vue | 805 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 611 insertions(+), 194 deletions(-) diff --git a/src/views/picture/picture/index.vue b/src/views/picture/picture/index.vue index 24eba3d..792376a 100644 --- a/src/views/picture/picture/index.vue +++ b/src/views/picture/picture/index.vue @@ -1,205 +1,194 @@ <template> <div class="app-container"> - <el-form - :model="queryParams" - ref="queryForm" - size="small" - :inline="true" - v-show="showSearch" - label-width="68px" - > - <el-form-item label="浣撴鍙�" prop="tjNum"> - <el-input - ref="inputName" - v-model="queryParams.tjNum" - placeholder="璇疯緭鍏ヤ綋妫�鍙�" - clearable - @keyup.enter.native="handleQuery" - @blur="hb" - style="width: 170px" - /> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> + <el-form-item label="浣撴鍙�" prop="tjNumber"> + <el-input ref="inputName" v-model="queryParams.tjNumber" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable + @keyup.enter.native="handleQuery" @blur="hb" style="width: 170px" /> </el-form-item> - <el-form-item label="濮撳悕" prop="name"> - <el-input - v-model="queryParams.name" - placeholder="璇疯緭鍏ュ鍚�" - clearable - @keyup.enter.native="handleQuery" - style="width: 110px" - /> + + <el-form-item label="濮撳悕" prop="name" v-show="isCollapsed == 1"> + <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" clearable @keyup.enter.native="handleQuery" + style="width: 110px" /> + </el-form-item> + <el-form-item label="鍗曚綅鍚嶇О" prop="tjCompName" style="margin-left: 20px" v-show="isCollapsed == 1"> + <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="tcm" v-show="isCollapsed == 1"> + <el-input v-model="queryParams.tcm" placeholder="璇疯緭鍏ラ」鐩�" clearable @keyup.enter.native="handleQuery" + style="width: 170px" /> + </el-form-item> + <el-form-item label="鐧昏鏃堕棿" prop="createTimeList" v-show="isCollapsed == 1"> + <el-date-picker v-model="createTimeList" 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> - <el-button - type="primary" - icon="el-icon-search" - size="mini" - @click="handleQuery" - style="margin-right: 15px" - >鎼滅储</el-button - > - <el-button icon="el-icon-refresh" 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-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" + style="margin-right: 15px">鎼滅储</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> - <div style="width: 100%; margin-left: 10px; display: flex"> - <div style="width: 36%; margin-right: 30px"> - <el-table - id="table" - v-loading="loading" - ref="tb" - :data="pictureList" - @selection-change="handleSelectionChange" - border - height="630px" - > - <el-table-column type="selection" width="40" align="center" /> - <el-table-column - label="浣撴鍙�" - align="center" - prop="customer.tjNumber" - width="160px" - /> - <el-table-column - label="濮撳悕" - align="center" - prop="customer.cusName" - width="90px" - /> - <!-- <el-table-column label="韬唤璇�" align="center" prop="customer.cusIdcard" width="170px" /> --> - <el-table-column - label="鎬у埆" - align="center" - prop="customer.cusSex" - width="60px" - > - <!-- <template slot-scope="scope"> - {{ scope.row.customer.cusSex === 0 ? "鐢�" : "濂�" }} - </template> --> + <el-radio-group v-model="checkStatus" @input="radioChange" style="margin: 10px 15px"> + <el-radio-button label="0">鏈</el-radio-button> + <el-radio-button label="1">宸叉</el-radio-button> + </el-radio-group> + + <el-row :gutter="20"> + <el-col :span="11"> + <el-table v-loading="loading" ref="tb" :data="pictureList" highlight-current-row + :row-class-name="tableRowClassName" @current-change="handleCurrentChange" border height="520px"> + <!-- <el-table-column type="selection" width="55" /> --> + <!-- @selection-change="handleSelectionChange" --> + <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" min-width="160" /> + <el-table-column label="濮撳悕" align="center" prop="cusName" min-width="80" /> + <el-table-column label="鎬у埆" align="center" prop="cusSex" min-width="50"> <template slot-scope="scope"> <span v-if="scope.row.cusSex == '0'">鐢�</span> <span v-if="scope.row.cusSex == '1'">濂�</span> <span v-if="scope.row.cusSex == '2'">鏈煡</span> + <span v-if="scope.row.cusSex == '9'">鏈鏄庢�у埆</span> </template> + <!-- <template slot-scope="scope"> --> + <!-- {{scope.row.customer.cusSex}} --> + <!-- {{ scope.row.cusSex === 0 ? "鐢�" : "濂�" }} --> + <!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.cusSex " /> --> + <!-- </template> --> </el-table-column> - <!-- <el-table-column label="鐢熸棩" align="center" prop="customer.cusBrithday" width="110px" /> --> - <el-table-column - label="鎵嬫満鍙�" - align="center" - prop="customer.cusPhone" - width="110px" - /> - <el-table-column - label="濠氬Щ" - align="center" - prop="cusMarryStatus" - width="70px" - > + <el-table-column label="鎵嬫満鍙�" align="center" prop="cusPhone" min-width="100" /> + <el-table-column label="濂楅鍚�" align="center" prop="tcm" min-width="100" /> + <el-table-column label="鐧昏鏃堕棿" align="center" prop="tjTime" min-width="120" /> + <el-table-column label="瀹℃牳鐘舵��" align="center" prop="confirmStatus" min-width="80"> <template slot-scope="scope"> - <dict-tag - :options="dict.type.dict_user_marry" - :value="scope.row.customer.cusMarryStatus" - /> - </template> - </el-table-column> - <el-table-column - label="姘戞棌" - align="center" - prop="cusNational" - width="70px" - > - <template slot-scope="scope"> - <dict-tag - :options="dict.type.dict_user_national" - :value="scope.row.customer.cusNational" - /> + <span :style="{ + color: + scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29', + }" v-if="scope.row.confirmStatus == '301'">宸查�氳繃</span> + <span :style="{ + color: + scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29', + }" v-if="scope.row.confirmStatus == '299'">宸查┏鍥�</span> </template> </el-table-column> </el-table> - </div> - <div style="width: 44%; height: 610px"> - <el-table - v-loading="loading" - ref="mu" - :data="tableList" - @selection-change="handleChange" - border - > - <el-table-column type="selection" width="40" align="center" /> + <div class="pag"> + <div class="pag1"> + <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" + :limit.sync="queryParams.pageSize" @pagination="submitForm" /> + </div> + </div> + </el-col> + <el-col :span="11"> + <el-table v-loading="loading" ref="mu" :data="tableList" :row-class-name="tableRowClassName" + @header-click="handleHeaderClick" highlight-current-row @selection-change="handleChange" border + style="height: 400px"> + <el-table-column type="selection" width="50" align="center"> + </el-table-column> + <el-table-column label="绉戝" align="center" prop="deptName" min-width="100" :show-overflow-tooltip="true" /> + <el-table-column label="椤圭洰" align="center" prop="proName" min-width="150" :show-overflow-tooltip="true" /> + <el-table-column label="鐘舵��" align="center" prop="type" :show-overflow-tooltip="true" min-width="100"> + <template slot-scope="scope"> + <span v-if="scope.row.type == '0'" :style="type == 0 ? { color: 'red' } : { color: '#409EFF' }"> + {{ 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" min-width="160" /> + <!-- <el-table-column label="鎿嶄綔" align="center" min-width="120px"> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + :disabled="scope.row.type === 1" + :loading="scope.row.isLoading" + @click="qijian(scope.row)" + >{{ scope.row.type === 0 ? "寮冩" : "鎭㈠" }}</el-button + > + <el-button size="mini" type="text" @click="yijian(scope.row)" + >宸叉</el-button + > + <el-button + size="mini" + type="text" + :disabled="scope.row.type === 0 || scope.row.type === 2" + @click="queryResultone(scope.row)" + >缁撴灉</el-button + > + </template> + </el-table-column> --> + + <!-- <el-table-column type="selection" width="40" align="center" /> <el-table-column label="鏀惰垂椤圭洰" align="center" prop="proName" /> <el-table-column label="椤圭洰鍚嶇О" align="center" prop="proName" /> - <el-table-column label="椤圭洰缁撴灉" align="center" prop="proResult" /> - <!-- <el-table-column label="缁撹" align="center" prop="conclusion" /> --> + <el-table-column label="椤圭洰缁撴灉" align="center" prop="proResult" /> --> </el-table> - <div style="height: 390px; margin-top: 10px"> - <el-image - v-loading="loading" - style="height: 390px; width: 100%" - :src="imgsrc + tjNumber + '.png'" - :preview-src-list="[imgsrc + tjNumber + '.png']" - ></el-image> - </div> - - <div style="margin-top: 20px"> - <el-form - :model="form" - ref="queryForm" - size="small" - :inline="false" - label-width="68px" - > + <div style="margin-top: 10px"> + <el-form :model="form" ref="queryForm" size="small" :inline="false" label-width="68px"> <el-form-item label="妫�鏌ユ墍瑙�" prop="proResult"> - <el-input v-model="form.proResult" clearable type="textarea" /> + <el-input v-model="form.proResult" clearable type="textarea" @focus="submiepilog" /> </el-form-item> <el-form-item label="妫�鏌ョ粨璁�" prop="conclusion"> - <el-input - v-model="form.conclusion" - clearable - type="textarea" - @focus="submiepilog" - /> + <el-input v-model="form.conclusion" clearable type="textarea" @focus="submiepilog" /> </el-form-item> <el-form-item> - <el-button - type="primary" - icon="el-icon-search" - size="mini" - @click="submito" - >鎻愪氦</el-button - > + <el-button type="primary" icon="el-icon-picture" size="mini" @click="tupian">鍥剧墖</el-button> + <el-button type="primary" icon="el-icon-search" size="mini" @click="submito">鎻愪氦</el-button> </el-form-item> </el-form> </div> + </el-col> + </el-row> - <!-- <div style="display:flex;margin:15px 0px;width: 100%;"> - <div style="width: 100%;display:flex;"> - <el-button type="primary" class="default-button-style" size="small" - @click="submiepilog">缁撴灉缁撹</el-button> - <el-button type="primary" icon="el-icon-s-claim" size="mini" @click="submito">鎻愪氦</el-button> - </div> - </div> --> - </div> - </div> - <div style="margin-right: 70%"> - <pagination - v-show="total > 0" - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getList" - /> - </div> + <el-dialog title="鎻愮ず" :visible.sync="dialogVisible" width="60%"> + <!-- :before-close="handleClose" --> + <img src="../../../assets/logo/logo.png" alt="" /> + </el-dialog> - <Public ref="aaa" @add="handleChanges" /> + + + <Public ref="aaa" :check-status="checkStatus" :pro-result="form.proResult" :conclusion="form.conclusion" + @add="handleChanges" :project-list="projectList" /> + <!-- :last-desc="form.conclusion" --> </div> </template> <script> -import { getListPicture, updatePicture } from "@/api/picture/picture"; +import { + getListPicture, + updatePicture, + getYxJcList, + getYxJcXx, + addYxJcXx, + getYxJcXxJg, +} from "@/api/picture/picture"; +import { getCompany, queryCompany } from "@/api/team/tuanti"; +import { + getCsList, + confirmOrder, + cSWebGetPro, + dataSynchronization, + qijian, + yijian, + resultList, + typeOne, + huifu, +} from "@/api/doctor/examination"; import Public from "@/components/public"; export default { @@ -218,18 +207,25 @@ r_img: {}, topShow: false, rShow: false, + type: null, + checkStatus: "0", // 閬僵灞� loading: true, result: true, epilog: false, + selectedRow: null, // 閫変腑鏁扮粍 ids: [], + CheckBox: {}, + isCollapsed: 0, // 榛樿涓烘姌鍙犵姸鎬� // 闈炲崟涓鐢� single: true, // 闈炲涓鐢� multiple: true, // 鏄剧ず鎼滅储鏉′欢 showSearch: true, + selectedTjNumber: "", + createTimeList: "", // 鎬绘潯鏁� total: 0, activeName: "first", @@ -240,22 +236,34 @@ // 浣撴蹇冪數鍥剧鐞嗚〃鏍兼暟鎹� pictureList: [], tableList: [], + CompanyList: [], + projectList: [], // 寮瑰嚭灞傛爣棰� title: "", // 鏄惁鏄剧ず寮瑰嚭灞� open: false, + dialogVisible: false, + selectList: [], // 鏌ヨ鍙傛暟 queryParams: { - pageNum: 1, + page: 1, pageSize: 10, - tjNum: null, - cusId: null, + tjNumber: null, + compId: null, name: null, - xdt: null, - proId: null, - proName: null, - proResult: null, - conclusion: null, + beginTime: null, + endTime: null, + tcm: "", + tjCompName: "", + checkStatus: null, + // tjNum: null, + // cusId: null, + // name: null, + // xdt: null, + // proId: null, + // proName: null, + // proResult: null, + // conclusion: null, }, dataobj: {}, // 琛ㄥ崟鍙傛暟 @@ -265,6 +273,37 @@ }, // 琛ㄥ崟鏍¢獙 rules: {}, + pickerOptions: { + shortcuts: [ + { + text: "鏈�杩戜竴鍛�", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); + picker.$emit("pick", [start, end]); + }, + }, + { + text: "鏈�杩戜竴涓湀", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); + picker.$emit("pick", [start, end]); + }, + }, + { + text: "鏈�杩戜笁涓湀", + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); + picker.$emit("pick", [start, end]); + }, + }, + ], + }, }; }, created() { @@ -274,6 +313,7 @@ this.$nextTick(() => { this.$refs.inputName.focus(); }); + this.radioChange(this.checkStatus); }, methods: { // 榧犳爣杩涘叆鍘熷浘绌洪棿鍑芥暟 @@ -307,12 +347,23 @@ this.topShow = false; this.rShow = false; }, + /** 鏌ヨ浣撴蹇冪數鍥剧鐞嗗垪琛� */ getList() { this.loading = true; - getListPicture(this.queryParams).then((response) => { - if (response.data.list) { - this.pictureList = response.data.list; + this.queryParams.checkStatus = this.checkStatus; + this.queryParams.compId = this.CheckBox.drugManufacturerId; + if (this.createTimeList) { + this.queryParams.beginTime = this.createTimeList[0]; + this.queryParams.endTime = this.createTimeList[1]; + } else if (this.createTimeList == null) { + this.queryParams.beginTime = null; + this.queryParams.endTime = null; + } + /* getYxJcList(this.queryParams).then((response) => { + + if (response.data) { + this.pictureList = response.data.customers; } else { this.$message.warning("鏌ユ棤姝や汉"); } @@ -325,9 +376,97 @@ this.$refs.tb.clearSelection(); } this.total = response.data.total; + + this.loading = false; + }); */ + + getCompany(this.queryParams).then((response) => { + this.CompanyList = response.data; this.loading = false; }); }, + + // / 澶勭悊榛樿閫変腑褰撳墠鏃ユ湡 + 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.createTimeList = [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) + ); + }, + + dateChangebirthday1(val) { + this.startTime = val; + }, + + handleRowClick(row, column, event) { + this.name = row.proName; + }, + // 浣撴鍏徃鎷奸煶鎼滅储 + getRemoteData(query) { + if (query) { + let compName = query; + queryCompany(compName).then((response) => { + this.CompanyList = response.data; + }); + } + }, + radioChange(value) { + this.loading = true; + this.queryParams.checkStatus = value; + this.form.proResult = ""; + this.form.conclusion = ""; + getYxJcList(this.queryParams).then((res) => { + if (res.code == 200) { + this.loading = false; + if (res.data) { + this.pictureList = res.data.customers; + this.total = res.data.total; + if (this.pictureList.length != 0) { + this.$nextTick(() => { + this.$refs.tb.toggleRowSelection(this.pictureList[0], true); + }); + } else { + this.$refs.tb.clearSelection(); + } + this.total = res.data.total; + } else { + this.pictureList = []; + } + } + }); + /* const tjNumber = this.pictureList.tjNumber; + + + getYxJcXx(tjNumber).then((res) => { + this.tableList = res.data; + this.loading = false; + }); */ + }, + // 鍙栨秷鎸夐挳 cancel() { this.open = false; @@ -342,23 +481,198 @@ this.resetForm("form"); }, hb() { - console.log(this.queryParams.tjNum); - if (this.queryParams.tjNum != null) { - this.handleQuery(); + if (this.queryParams.tjNumber != null) { + // this.handleQuery(); + this.submitForm(); + } + }, + submitForm() { + this.loading = true; + this.queryParams.checkStatus = this.checkStatus; + this.queryParams.compId = this.CheckBox.drugManufacturerId; + if (this.createTimeList) { + this.queryParams.beginTime = this.createTimeList[0]; + this.queryParams.endTime = this.createTimeList[1]; + } else if (this.createTimeList == null) { + this.queryParams.beginTime = null; + this.queryParams.endTime = null; + } + + // 椤甸潰鏁版嵁 + getYxJcList(this.queryParams).then((res) => { + if (res.code == 200) { + this.loading = false; + if (res.data) { + this.pictureList = res.data.customers; + this.total = res.data.total; + if (this.pictureList.length != 0) { + this.$nextTick(() => { + this.$refs.tb.toggleRowSelection(this.pictureList[0], true); + }); + } else { + this.$refs.tb.clearSelection(); + } + this.total = res.data.total; + } else { + this.pictureList = []; + } + } + }); + }, + + // 閫夋鏁版嵁 + searchSelect(val) { + this.CheckBox = val; + }, + + handleHeaderClick(column, event) { + if (column.type === "selection") { + // 鏌ユ壘鍏ㄩ�夋骞堕殣钘� + const checkbox = event.target.closest(".el-checkbox"); + if (checkbox) checkbox.style.display = "none"; } }, /** 鎼滅储鎸夐挳鎿嶄綔 */ handleQuery() { - this.queryParams.pageNum = 1; - this.getList(); + this.queryParams.page = 1; + this.submitForm(); }, /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { - this.resetForm("queryForm"); + this.createTimeList = []; + (this.queryParams = { + page: 1, + pageSize: 10, + tjNumber: null, + compId: null, + name: null, + beginTime: null, + checkStatus: null, + endTime: null, + tjCompName: "", + tcm: "", + }), + (this.CheckBox.drugManufacturerId = ""); + this.tableList = []; + // this.resetForm("queryForm"); this.handleQuery(); + this.loading = true; }, + + toggleCollapse3() { + // this.isCollapsed = !this.isCollapsed; // 鐐瑰嚮鎸夐挳鏃跺垏鎹sCollapsed鐨勫�� + this.isCollapsed = 0; + }, + toggleCollapse() { + this.isCollapsed = 1; // 鐐瑰嚮鎸夐挳鏃跺垏鎹sCollapsed鐨勫�� + }, + + tableRowClassName({ row, rowIndex }) { + for (let i = 0; i < this.selectList.length; i++) { + if (row === this.selectList[i]) { + return "warning-row"; + } + } + }, + + handleCurrentChange(val) { + this.selectedRow = val; + if (!val || !val.tjNumber) { + console.warn("tjNumber 涓虹┖锛屼笉璋冪敤鎺ュ彛"); + this.tableList = []; + return; + } + this.selectedTjNumber = val.tjNumber; + this.changtjNumber(val.tjNumber) + + }, + + changtjNumber(val) { + console.log(8989) + let tjNumber = val; + this.loading = true; + getYxJcXx(tjNumber).then((res) => { + this.tableList = res.data; + this.loading = false; + this.$nextTick(() => { + const headerCheckbox = this.$refs.mu.$el.querySelector( + ".el-table__header .el-checkbox" + ); + if (headerCheckbox) headerCheckbox.style.display = "none"; + if (this.queryParams.checkStatus == 0) { + if (this.tableList.length > 0) { + this.tableList.forEach((item, index) => { + if (item.type == 0) { + const firstRow = item; + this.$refs.mu.toggleRowSelection(firstRow, true); + this.handleChange([firstRow]); + } + }) + } + } else { + const firstRow = this.tableList[0]; + this.$refs.mu.toggleRowSelection(firstRow, true); + this.handleChange([firstRow]); + } + }); + }); + }, + + // 寮冩鎸夐挳 + qijian(row) { + const tjNUm = this.selectedTjNumber; + const proId = row.proId; + row.isLoading = true; + if (row.type == "2") { + huifu(tjNUm, proId).then((res) => { + if (res.code == 200) { + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + this.xiangmuList = res.data; + row.isLoading = false; + } + }); + } + }); + } else { + qijian(tjNUm, proId).then((res) => { + if (res.code == 200) { + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + this.xiangmuList = res.data; + this.isLoading = false; + } + }); + } + }); + } + }, + + yijian(row) { + const tjNUm = this.selectedTjNumber; + const proId = row.proId; + row.isLoading = true; + yijian(tjNUm, proId) + .then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("宸叉鎴愬姛"); + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + this.xiangmuList = res.data; + row.isLoading = false; + } + }); + } + }) + .catch(() => { + row.isLoading = false; + }); + }, + // 澶氶�夋閫変腑鏁版嵁 - handleSelectionChange(selection) { + /* handleSelectionChange(selection) { this.imgsrc = selection[0].picturePath; this.tjNumber = selection[0].customer.tjNumber; this.ids = selection.map((item) => item.id); @@ -385,26 +699,93 @@ } this.single = selection.length !== 1; this.multiple = !selection.length; - }, + }, */ + handleSelectionChange(selection) { + this.imgsrc = selection[0].picturePath; + this.tjNumber = selection[0].customer.tjNumber; + this.ids = selection.map((item) => item.id); - handleChange(selection) { + if (selection.length > 1) { + let del_row = selection.shift(); + this.$refs.tb.toggleRowSelection(del_row, false); + } + + this.single = selection.length !== 1; + this.multiple = !selection.length; + selection.forEach((element) => { - this.dataobj = element; + this.tableList = element.list; + + if (this.tableList.length !== 0) { + // 鉁� 鎻愬墠璧嬪�� selectedRow锛岄伩鍏� handleChange 鏃舵湭璧嬪�� + this.selectedRow = this.tableList[0]; + this.form.proResult = this.tableList[0].proResult; + this.form.conclusion = this.tableList[0].conclusion; + + this.$nextTick(() => { + this.$refs.mu.toggleRowSelection(this.tableList[0], true); + }); + } else { + this.selectedRow = null; + this.$refs.mu.clearSelection(); + } }); }, + handleChange(selection) { + if (selection.length > 1) { + let del_row = selection.shift(); + this.$refs.mu.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑 + } + this.projectList = selection.map((item) => ({ + proId: item.proId, + proName: item.proName, + })); + if (selection && selection.length > 0) { + const proId = selection[0].proId; - handleChanges(value) { + // 鉁� 纭繚 selectedRow 瀛樺湪涓旀湁 tjNumber + const tjNumber = this.selectedTjNumber; + getYxJcXxJg(tjNumber, proId).then((res) => { + this.form.proResult = res.data.jcsj; + this.form.conclusion = res.data.jcjl; + this.$refs.aaa.updateData(res.data.jcsj, res.data.jcjl); + }); + + // 鉁� 鍚屾椂鏇存柊 selectedRow + this.selectedRow = selection[0]; + } + }, + + /* handleChange(selection) { + if (selection && selection.length > 0) { + const proId = selection[0].proId; + const tjNumber = this.selectedRow.tjNumber; + this.selectedRow = selection[0]; + getYxJcXxJg(tjNumber, proId).then((res) => { + this.form.proResult = res.data.jcsj; + this.form.conclusion = res.data.jcjl; + }); + } + }, */ + + handleChanges(value, yxbx) { this.form.conclusion = value; + this.form.proResult = yxbx; }, submiepilog() { this.$refs.aaa.open = true; let proId = "1633660948860522585"; + // let proId = null this.$refs.aaa.getList(proId); }, + tupian() { + this.dialogVisible = true; + }, + // 纭畾鎸夐挳 submito() { - if (this.dataobj) { + /* if (this.dataobj) { if (this.form.proResult) { this.dataobj.proResult = this.form.proResult; } @@ -419,24 +800,59 @@ }); } else { this.$modal.msgSuccess("閫夋嫨淇敼椤圭洰"); + } */ + if (!this.selectedRow || !this.selectedRow.proId) { + console.error("鏈�変腑琛屾垨缂哄皯 proId"); + return; } + const proId = this.selectedRow.proId; + const jcsj = this.form.proResult || " "; // 鑾峰彇妫�鏌ユ墍瑙� + const jcjl = this.form.conclusion || " "; // 鑾峰彇妫�鏌ョ粨璁� + + // 纭繚 jcsj 鍜� jcjl 瀛樺湪 + // if (!jcsj || !jcjl) { + // console.error("妫�鏌ユ墍瑙佹垨妫�鏌ョ粨璁轰笉鑳戒负绌�"); + // return; + // } + + addYxJcXx({ + proId: proId, + tjNumber: this.selectedTjNumber, + jcsj: jcsj, // 浼犻�掓鏌ユ墍瑙� + jcjl: jcjl, // 浼犻�掓鏌ョ粨璁� + }) + .then((response) => { + this.form.proResult = ""; + this.form.conclusion = ""; + if (this.tableList.length == 1) { + this.submitForm(); + } else { + this.tableList.forEach((item, index) => { + if (item.type == 0) { + this.changtjNumber(this.selectedTjNumber); + } else { + this.submitForm(); + } + }) + + } + }) + .catch((error) => { + console.error("鎻愪氦澶辫触", error); + }); }, //鍒犻櫎鎸夐挳 - handleDelete() {}, + handleDelete() { }, // 瀵煎嚭 - handleExport() {}, + handleExport() { }, }, }; </script> <style> -#table .el-table__header-wrapper .el-checkbox { - display: none; -} - .default-button-style :hover { width: 80px; border-bottom: none; @@ -498,4 +914,5 @@ float: left; position: relative; } -</style> \ No newline at end of file + +</style> -- Gitblit v1.8.0