From 53606eac81e6d3a76937c4cb6f45ad61581cb4da Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期四, 05 六月 2025 14:41:55 +0800 Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb --- src/views/picture/picture/index.vue | 583 +++++++++++++++++++++++++-------------------------------- 1 files changed, 254 insertions(+), 329 deletions(-) diff --git a/src/views/picture/picture/index.vue b/src/views/picture/picture/index.vue index e182a8b..19515c2 100644 --- a/src/views/picture/picture/index.vue +++ b/src/views/picture/picture/index.vue @@ -7,15 +7,6 @@ :inline="true" label-width="68px" > - <el-form-item label="濮撳悕" prop="name"> - <el-input - v-model="queryParams.name" - placeholder="璇疯緭鍏ュ鍚�" - clearable - @keyup.enter.native="handleQuery" - style="width: 110px" - /> - </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNumber"> <el-input ref="inputName" @@ -27,13 +18,14 @@ style="width: 170px" /> </el-form-item> - <el-form-item label="椤圭洰" prop="tcm"> + + <el-form-item label="濮撳悕" prop="name"> <el-input - v-model="queryParams.tcm" - placeholder="璇疯緭鍏ラ」鐩�" + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" clearable @keyup.enter.native="handleQuery" - style="width: 170px" + style="width: 110px" /> </el-form-item> <el-form-item @@ -60,7 +52,52 @@ /> </el-select> </el-form-item> + <el-form-item label="椤圭洰" prop="tcm"> + <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:59:59']" + 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" + 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" @@ -72,50 +109,7 @@ <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-form-item> - - <el-row v-show="isCollapsed == 1" :gutter="20"> - <el-col :span="8"> - <el-form-item style="margin-left: 22px;" - 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-col> - </el-row> </el-form> <el-radio-group @@ -139,13 +133,11 @@ border height="520px" > - <!-- <el-table-column type="selection" width="55" /> --> - <!-- @selection-change="handleSelectionChange" --> <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" - min-width="160" + min-width="130" /> <el-table-column label="濮撳悕" @@ -165,17 +157,12 @@ <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="鎵嬫満鍙�" + label="韬唤璇佸彿" align="center" - prop="cusPhone" - min-width="100" + prop="cusIdcard" + min-width="190" /> <el-table-column label="濂楅鍚�" @@ -240,8 +227,7 @@ border style="height: 400px" > - <el-table-column type="selection" width="50" align="center"> - </el-table-column> + <el-table-column type="selection" width="50" align="center" /> <el-table-column label="绉戝" align="center" @@ -275,39 +261,34 @@ <span v-if="scope.row.type == '3'">寤舵湡</span> </template> </el-table-column> + <el-table-column label="鍥剧墖" align="center" min-width="100"> + <template slot-scope="scope"> + <img + v-if="scope.row.imageUrl" + :src="scope.row.imageUrl" + alt="鍥剧墖" + style="width: 50px; height: 50px; object-fit: cover" + /> + <span v-else>鏃犲浘鐗�</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"> + <el-table-column label="鎿嶄綔" align="center" width="100"> <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 + size="small" + @click="showImagePreview(scope.row.imageUrl)" + :disabled="!scope.row.imageUrl" + >鏌ョ湅鍥剧墖</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> </el-table> <div style="margin-top: 10px"> <el-form @@ -334,13 +315,22 @@ /> </el-form-item> <el-form-item> - <el-button - type="primary" - icon="el-icon-picture" - size="mini" - @click="tupian" - >鍥剧墖</el-button + <el-upload + action="" + :http-request="uploadFile" + :show-file-list="false" + accept="image/*" + :before-upload="beforeUpload" + style="display: inline-block; margin-right: 10px" > + <el-button + type="primary" + icon="el-icon-picture" + size="mini" + :disabled="!isUploadEnabled" + >涓婁紶鍥剧墖</el-button + > + </el-upload> <el-button type="primary" icon="el-icon-search" @@ -354,11 +344,21 @@ </el-col> </el-row> - <el-dialog title="鎻愮ず" :visible.sync="dialogVisible" width="60%"> - <!-- :before-close="handleClose" --> - <img src="../../../assets/logo/logo.png" alt="" /> + <el-dialog + title="鍥剧墖棰勮" + :visible.sync="imagePreviewVisible" + width="60%" + class="image-preview-dialog" + > + <div class="image-container"> + <img :src="currentImageUrl" alt="鍥剧墖" class="preview-image" /> + </div> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" @click="imagePreviewVisible = false" + >纭畾</el-button + > + </span> </el-dialog> - <Public ref="aaa" :check-status="checkStatus" @@ -367,10 +367,8 @@ @add="handleChanges" :project-list="projectList" /> - <!-- :last-desc="form.conclusion" --> </div> </template> - <script> import { getListPicture, @@ -379,6 +377,7 @@ getYxJcXx, addYxJcXx, getYxJcXxJg, + tupian, } from "@/api/picture/picture"; import { getCompany, queryCompany } from "@/api/team/tuanti"; import { @@ -392,8 +391,8 @@ typeOne, huifu, } from "@/api/doctor/examination"; - import Public from "@/components/public"; + export default { dicts: [ "sys_user_sex", @@ -412,42 +411,34 @@ rShow: false, type: null, checkStatus: "0", - // 閬僵灞� loading: true, result: true, epilog: false, selectedRow: null, - // 閫変腑鏁扮粍 ids: [], CheckBox: {}, - isCollapsed: 0, // 榛樿涓烘姌鍙犵姸鎬� - // 闈炲崟涓鐢� + isCollapsed: 0, single: true, - // 闈炲涓鐢� multiple: true, - // 鏄剧ず鎼滅储鏉′欢 showSearch: true, selectedTjNumber: "", createTimeList: "", - // 鎬绘潯鏁� total: 0, activeName: "first", proResult: "", conclusion: "", imgsrc: "", tjNumber: "", - // 浣撴蹇冪數鍥剧鐞嗚〃鏍兼暟鎹� pictureList: [], tableList: [], CompanyList: [], projectList: [], - // 寮瑰嚭灞傛爣棰� title: "", - // 鏄惁鏄剧ず寮瑰嚭灞� open: false, - dialogVisible: false, + imagePreviewVisible: false, + currentImageUrl: "", selectList: [], - // 鏌ヨ鍙傛暟 + isUploadEnabled: false, queryParams: { page: 1, pageSize: 10, @@ -459,22 +450,12 @@ tcm: "", tjCompName: "", checkStatus: null, - // tjNum: null, - // cusId: null, - // name: null, - // xdt: null, - // proId: null, - // proName: null, - // proResult: null, - // conclusion: null, }, dataobj: {}, - // 琛ㄥ崟鍙傛暟 form: { proResult: "", conclusion: "", }, - // 琛ㄥ崟鏍¢獙 rules: {}, pickerOptions: { shortcuts: [ @@ -519,39 +500,92 @@ this.radioChange(this.checkStatus); }, methods: { - // 榧犳爣杩涘叆鍘熷浘绌洪棿鍑芥暟 + showImagePreview(url) { + if (url) { + this.currentImageUrl = url; + this.imagePreviewVisible = true; + } + }, + beforeUpload(file) { + const isImage = file.type.startsWith("image/"); + if (!isImage) { + this.$message.error("鍙兘涓婁紶鍥剧墖鏂囦欢锛�"); + return false; + } + const isLt5M = file.size / 1024 / 1024 < 5; + if (!isLt5M) { + this.$message.error("鍥剧墖澶у皬涓嶈兘瓒呰繃 5MB锛�"); + return false; + } + if ( + !this.selectedRow || + !this.selectedRow.proId || + !this.selectedTjNumber + ) { + this.$message.error("璇峰厛閫夋嫨涓�涓」鐩紒"); + return false; + } + return true; + }, + uploadFile(item) { + const file = item.file; + const tjNumber = this.selectedTjNumber; + const proId = this.selectedRow.proId; + + const fileExtension = file.name.split(".").pop(); + const newFileName = `${tjNumber}_${proId}.${fileExtension}`; + + const formData = new FormData(); + formData.append("file", file, newFileName); + formData.append("tjh", tjNumber); + formData.append("proId", proId); + + tupian(formData) + .then((response) => { + // console.log('鎴愬姛浜�', response); + if (response.code === 200) { + this.$message.success("鍥剧墖涓婁紶鎴愬姛锛�"); + const index = this.tableList.findIndex( + (item) => item.proId === proId + ); + if (index !== -1) { + // 淇濆瓨 base64 鍥惧儚鐢ㄤ簬鏄剧ず + if (response.base64) { + const base64Image = `data:image/${fileExtension};base64,${response.base64}`; + this.$set(this.tableList[index], "imageUrl", base64Image); + } + // 淇濆瓨杩斿洖鐨� url + if (response.url) { + this.$set(this.tableList[index], "url", response.url); + } + } + } else { + this.$message.error("鍥剧墖涓婁紶澶辫触锛�"); + } + }) + .catch((error) => { + // console.log('涓婁紶澶辫触', error); + this.$message.error("鍥剧墖涓婁紶澶辫触锛�"); + }); + }, enterHandler() { - // 灞傜僵鍙婃斁澶х┖闂寸殑鏄剧ず this.topShow = true; this.rShow = true; }, - // 榧犳爣绉诲姩鍑芥暟 moveHandler(event) { - // 榧犳爣鐨勫潗鏍囦綅缃� let x = event.offsetX; let y = event.offsetY; - // 灞傜僵鐨勫乏涓婅鍧愭爣浣嶇疆锛屽苟瀵瑰叾杩涜闄愬埗锛氭棤娉曡秴鍑哄師鍥惧尯鍩熷乏涓婅 let topX = x - 100 < 0 ? 0 : x - 100; let topY = y - 100 < 0 ? 0 : y - 100; - // 瀵瑰眰缃╀綅缃啀涓�娆¢檺鍒讹紝淇濊瘉灞傜僵鍙兘鍦ㄥ師鍥惧尯鍩熺┖闂村唴 - if (topX > 200) { - topX = 200; - } - if (topY > 200) { - topY = 200; - } - // 閫氳繃 transform 杩涜绉诲姩鎺у埗 + if (topX > 200) topX = 200; + if (topY > 200) topY = 200; this.topStyle.transform = `translate(${topX}px,${topY}px)`; this.r_img.transform = `translate(-${2 * topX}px,-${2 * topY}px)`; }, - // 榧犳爣绉诲嚭鍑芥暟 outHandler() { - // 鎺у埗灞傜僵涓庢斁澶х┖闂寸殑闅愯棌 this.topShow = false; this.rShow = false; }, - - /** 鏌ヨ浣撴蹇冪數鍥剧鐞嗗垪琛� */ getList() { this.loading = true; this.queryParams.checkStatus = this.checkStatus; @@ -563,33 +597,11 @@ 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("鏌ユ棤姝や汉"); - } - - if (this.pictureList.length != 0) { - this.$nextTick(() => { - this.$refs.tb.toggleRowSelection(this.pictureList[0], true); - }); - } else { - 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; @@ -620,15 +632,12 @@ this.add0(mm) ); }, - dateChangebirthday1(val) { this.startTime = val; }, - handleRowClick(row, column, event) { this.name = row.proName; }, - // 浣撴鍏徃鎷奸煶鎼滅储 getRemoteData(query) { if (query) { let compName = query; @@ -661,21 +670,11 @@ } } }); - /* const tjNumber = this.pictureList.tjNumber; - - - getYxJcXx(tjNumber).then((res) => { - this.tableList = res.data; - this.loading = false; - }); */ }, - - // 鍙栨秷鎸夐挳 cancel() { this.open = false; this.reset(); }, - // 琛ㄥ崟閲嶇疆 reset() { this.form = { proResult: null, @@ -685,7 +684,6 @@ }, hb() { if (this.queryParams.tjNumber != null) { - // this.handleQuery(); this.submitForm(); } }, @@ -700,8 +698,6 @@ this.queryParams.beginTime = null; this.queryParams.endTime = null; } - - // 椤甸潰鏁版嵁 getYxJcList(this.queryParams).then((res) => { if (res.code == 200) { this.loading = false; @@ -722,28 +718,22 @@ } }); }, - - // 閫夋鏁版嵁 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.page = 1; this.submitForm(); }, - /** 閲嶇疆鎸夐挳鎿嶄綔 */ resetQuery() { this.createTimeList = []; - (this.queryParams = { + this.queryParams = { page: 1, pageSize: 10, tjNumber: null, @@ -754,28 +744,18 @@ endTime: null, tjCompName: "", tcm: "", - }), - (this.CheckBox.drugManufacturerId = ""); + }; + this.CheckBox.drugManufacturerId = ""; this.tableList = []; - // this.resetForm("queryForm"); this.handleQuery(); this.loading = true; }, - toggleCollapse3() { - // this.isCollapsed = !this.isCollapsed; // 鐐瑰嚮鎸夐挳鏃跺垏鎹sCollapsed鐨勫�� this.isCollapsed = 0; - this.$nextTick(() => { - this.$refs.inputName.focus(); - }); }, toggleCollapse() { - this.isCollapsed = 1; // 鐐瑰嚮鎸夐挳鏃跺垏鎹sCollapsed鐨勫�� - this.$nextTick(() => { - this.$refs.inputName.focus(); - }); + this.isCollapsed = 1; }, - tableRowClassName({ row, rowIndex }) { for (let i = 0; i < this.selectList.length; i++) { if (row === this.selectList[i]) { @@ -783,24 +763,29 @@ } } }, - handleCurrentChange(val) { this.selectedRow = val; if (!val || !val.tjNumber) { console.warn("tjNumber 涓虹┖锛屼笉璋冪敤鎺ュ彛"); this.tableList = []; + this.isUploadEnabled = false; 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.tableList = res.data.map((item) => { + // 濡傛灉 imageUrl 瀛樺湪涓旀槸绾� Base64 瀛楃涓诧紝娣诲姞 data:image 鍓嶇紑 + if (item.imageUrl && !item.imageUrl.startsWith("data:image")) { + // 鍋囪鍥剧墖绫诲瀷涓� png锛屽鏋滄帴鍙f彁渚涚被鍨嬶紝鍙互鏇挎崲涓哄姩鎬佸�� + item.imageUrl = `data:image/png;base64,${item.imageUrl}`; + } + return item; + }); this.loading = false; this.$nextTick(() => { const headerCheckbox = this.$refs.mu.$el.querySelector( @@ -825,8 +810,6 @@ }); }); }, - - // 寮冩鎸夐挳 qijian(row) { const tjNUm = this.selectedTjNumber; const proId = row.proId; @@ -836,7 +819,6 @@ if (res.code == 200) { cSWebGetPro(tjNUm).then((res) => { if (res.code === 200) { - // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� this.xiangmuList = res.data; row.isLoading = false; } @@ -848,7 +830,6 @@ if (res.code == 200) { cSWebGetPro(tjNUm).then((res) => { if (res.code === 200) { - // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� this.xiangmuList = res.data; this.isLoading = false; } @@ -857,7 +838,6 @@ }); } }, - yijian(row) { const tjNUm = this.selectedTjNumber; const proId = row.proId; @@ -878,36 +858,6 @@ row.isLoading = false; }); }, - - // 澶氶�夋閫変腑鏁版嵁 - /* handleSelectionChange(selection) { - this.imgsrc = selection[0].picturePath; - this.tjNumber = selection[0].customer.tjNumber; - this.ids = selection.map((item) => item.id); - selection.forEach((element) => { - this.tableList = element.list; - if (this.tableList.length != 0) { - this.tableList.forEach((item) => { - this.form.proResult = item.proResult; - this.form.conclusion = item.conclusion; - }); - this.$nextTick(() => { - this.$refs.mu.toggleRowSelection(this.tableList[0], true); - }); - } else { - this.$refs.mu.clearSelection(); - } - }); - // this.tableList.forEach(item => { - // this.imgsrc = item.xdt - // }) - 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; - }, */ handleSelectionChange(selection) { this.imgsrc = selection[0].picturePath; this.tjNumber = selection[0].customer.tjNumber; @@ -925,7 +875,6 @@ 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; @@ -942,122 +891,80 @@ handleChange(selection) { if (selection.length > 1) { let del_row = selection.shift(); - this.$refs.mu.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑 + this.$refs.mu.toggleRowSelection(del_row, false); } this.projectList = selection.map((item) => ({ proId: item.proId, proName: item.proName, })); + this.isUploadEnabled = selection.length > 0; if (selection && selection.length > 0) { const proId = selection[0].proId; - - // 鉁� 纭繚 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.form.proResult) { - this.dataobj.proResult = this.form.proResult; - } - if (this.form.conclusion) { - this.dataobj.conclusion = this.form.conclusion; - } - updatePicture(this.dataobj).then((res) => { - this.$modal.msgSuccess("鎻愪氦鎴愬姛"); - this.getList(); - this.form.proResult = ""; - this.form.conclusion = ""; - }); - } else { - this.$modal.msgSuccess("閫夋嫨淇敼椤圭洰"); - } */ if (!this.selectedRow || !this.selectedRow.proId) { - console.error("鏈�変腑琛屾垨缂哄皯 proId"); + this.$message.error("璇烽�夋嫨鎻愪氦椤圭洰"); return; } - const proId = this.selectedRow.proId; - const jcsj = this.form.proResult || " "; // 鑾峰彇妫�鏌ユ墍瑙� - const jcjl = this.form.conclusion || " "; // 鑾峰彇妫�鏌ョ粨璁� - // 纭繚 jcsj 鍜� jcjl 瀛樺湪 - // if (!jcsj || !jcjl) { - // console.error("妫�鏌ユ墍瑙佹垨妫�鏌ョ粨璁轰笉鑳戒负绌�"); - // return; - // } + if (!this.form.proResult && !this.form.conclusion) { + this.$message.warning("璇烽�夋嫨妫�鏌ユ墍瑙佹垨妫�鏌ョ粨璁�!"); + } else { + const proId = this.selectedRow.proId; + const jcsj = this.form.proResult || " "; + const jcjl = this.form.conclusion || " "; + const url = this.selectedRow.url || ""; // 鑾峰彇 url锛屽鏋滀笉瀛樺湪鍒欎负绌哄瓧绗︿覆 - 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(); - } - }); - } + addYxJcXx({ + proId: proId, + tjNumber: this.selectedTjNumber, + jcsj: jcsj, + jcjl: jcjl, + url: url, // 娣诲姞 url 鍙傛暟 }) - .catch((error) => { - console.error("鎻愪氦澶辫触", error); - }); + .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() {}, - - // 瀵煎嚭 handleExport() {}, }, }; </script> - <style> .default-button-style :hover { @@ -1072,10 +979,8 @@ position: absolute; top: 0; left: 0; - /* border: 1px solid red; */ } -/* 鍙宠竟鐨勫尯鍩熷浘鐗囨斁澶х┖闂� */ .right { margin-left: 412px; width: 340px; @@ -1085,7 +990,6 @@ overflow: hidden; } -/* 涓�涓渶楂樺眰灞傜僵 */ .maskTop { width: 400px; height: 400px; @@ -1095,7 +999,6 @@ left: 0; } -/* 灞傜僵锛岄�氳繃瀹氫綅灏嗗乏涓婅瀹氫綅鍒�(0,0) */ .top { width: 200px; height: 200px; @@ -1106,22 +1009,44 @@ left: 0; } -/* 鍘熷浘鐨勬樉绀� */ .leftImg { width: 400px; height: 400px; display: inline-block; } -/* 鍘熷浘鐨勫鍣� */ .left { width: 400px; height: 400px; - /* border: 1px solid teal; */ float: left; position: relative; } -.el-input--small { - font-size: 13px; + +.el-upload { + display: inline-block; } -</style> + +.el-table .cell img { + border-radius: 4px; +} + +.image-preview-dialog .el-dialog__body { + padding: 10px; + max-height: 60vh; + overflow-y: auto; +} + +.image-container { + text-align: center; +} + +.preview-image { + max-width: 100%; + max-height: 50vh; + object-fit: contain; +} + +.dialog-footer { + text-align: center; +} +</style> \ No newline at end of file -- Gitblit v1.8.0