| | |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form-item label="体检号" prop="tjNum"> |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input |
| | | ref="inputName" |
| | | v-model="queryParams.tjNum" |
| | | v-model="queryParams.tjNumber" |
| | | placeholder="请输入体检号" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | |
| | | @input="radioChange" |
| | | style="margin: 10px 15px" |
| | | > |
| | | <el-radio-button label="1">未采样</el-radio-button> |
| | | <el-radio-button label="0">已采样</el-radio-button> |
| | | <el-radio-button label="1" :disabled="qiehuan && disabledId === 0">未采样</el-radio-button> |
| | | <el-radio-button label="0" :disabled="qiehuan && disabledId === 1">已采样</el-radio-button> |
| | | </el-radio-group> |
| | | </el-col> |
| | | <el-col |
| | |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="tableList" |
| | | @sort-change="handleSortChange" |
| | | @selection-change="handleChange" |
| | | :span-method="objectSpanMethod" |
| | | ref="tab1" |
| | |
| | | pageNum: 1, |
| | | pageSize: 20, |
| | | name: null, |
| | | tjNum: null, |
| | | tjNumber: null, |
| | | applicationTime: null, |
| | | isSignFor: null, |
| | | tjTime: null, |
| | |
| | | this.selectList[this.selectList.length - 1].isMerge === 1 |
| | | ); |
| | | }, |
| | | qiehuan() { |
| | | return ( |
| | | this.selectList.length > 0 |
| | | ); |
| | | }, |
| | | disabledId() { |
| | | return ( |
| | | this.tjStatus == "1" ? 1 : 0 |
| | | ); |
| | | }, |
| | | }, |
| | | |
| | | methods: { |
| | | handleSortChange({ prop, order }) { |
| | | if (order === null) return; // 无排序时不处理 |
| | | |
| | | this.tableList.sort((a, b) => { |
| | | // 如果标本类型相同,继续按照采样编号排序 |
| | | if (a.jyxh !== b.jyxh) { |
| | | return order === "ascending" ? a.jyxh - b.jyxh : b.jyxh - a.jyxh; |
| | | } |
| | | |
| | | return 0; |
| | | }); |
| | | }, |
| | | getTruncatedName(proName) { |
| | | // 去掉所有空格 |
| | | const trimmedProName = proName.replace(/\s+/g, ""); |
| | |
| | | // 判断是否需要刷新右边表格 |
| | | this.$nextTick(() => { |
| | | this.$refs.tb.toggleRowSelection(this.samplingList[0], true); |
| | | this.fetchData(this.samplingList[0].cusId); |
| | | // this.fetchData(this.samplingList[0].tjNumber); |
| | | }); |
| | | } |
| | | this.total = response.data.total; |
| | |
| | | this.form = { |
| | | id: null, |
| | | samplingNumber: null, |
| | | cusId: null, |
| | | tjNumber: null, |
| | | applicationTime: null, |
| | | isSignFor: null, |
| | | tjTime: null, |
| | |
| | | updateTime: null, |
| | | deleted: null, |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | hb() { |
| | | if (this.queryParams.tjNum != null) { |
| | | if (this.queryParams.tjNumber != null) { |
| | | this.handleQuery(); |
| | | } |
| | | }, |
| | |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.createTimeList = []; |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | // 单选框选中数据 |
| | |
| | | // 只有一个人被选中时进行操作 |
| | | if (selection.length === 1) { |
| | | const selectedPerson = selection[0]; // 获取选中的那个人 |
| | | const cusId = selectedPerson.cusId; // 假设cusId在选中的对象中 |
| | | const tjNumber = selectedPerson.tjNumber; |
| | | console.log(selectedPerson.tjNumber, 6363); |
| | | |
| | | this.fetchData(cusId); |
| | | this.fetchData(tjNumber); |
| | | } else { |
| | | // 如果选中多人,则取消选中 |
| | | if (selection.length > 1) { |
| | |
| | | this.selectedRows = selection; |
| | | }, |
| | | |
| | | fetchData(cusId) { |
| | | fetchData(tjNumber) { |
| | | this.loading = true; // 显示加载状态 |
| | | |
| | | getCusCyList(cusId, this.tjStatus) // 调用API获取数据 |
| | | getCusCyList(tjNumber, this.tjStatus) // 调用API获取数据 |
| | | .then((response) => { |
| | | if (response.data) { |
| | | console.log(response, 2525); |
| | |
| | | |
| | | /** 点击补打条码按钮 **/ |
| | | async Collection() { |
| | | // console.log("selectList:", this.selectList); |
| | | const jyxh = this.selectList.map((item) => item.jyxh); |
| | | console.log("jyxh:", jyxh); |
| | | try { |
| | | // 请求接口并获取宽度值 |
| | | const widthResponse = await getTxmkd(); |
| | | const barcodeWidth = `${Number(widthResponse.msg)}%` || "70%"; // 获取宽度值,默认使用 70% |
| | | |
| | | const jyxh = this.selectList.map((item) => item.jyxh); |
| | | // const jyxh = this.selectList.map((item) => item.jyxh); |
| | | |
| | | await this.$nextTick(); // 确保 DOM 更新 |
| | | // await this.$nextTick(); // 确保 DOM 更新 |
| | | |
| | | jyxh.forEach((number, index) => { |
| | | const barcodeContent = number; // 确保 jyxh 是有效的 |
| | |
| | | } |
| | | }); |
| | | |
| | | await this.$nextTick(); // 确保条形码生成完成 |
| | | // await this.$nextTick(); |
| | | |
| | | const barcodeElements = jyxh.map((_, index) => |
| | | document.querySelector(`#barcode${index}`) |
| | |
| | | const newWindow = window.open("", "_blank", "width=800,height=600"); |
| | | const printContents = document.getElementById("printSection").innerHTML; |
| | | |
| | | console.log(printContents); |
| | | // console.log(printContents); |
| | | newWindow.document.write(` |
| | | <html> |
| | | <head> |
| | |
| | | // console.log(selection); |
| | | |
| | | this.selectList = selection; |
| | | console.log(this.selectList, 5555); |
| | | |
| | | this.ids = selection.map((item) => item.id); |
| | | }, |
| | |
| | | confirmSampling(this.ids) |
| | | .then((res) => { |
| | | if (res.code === 200) { |
| | | this.$modal.msgSuccess("采样成功"); |
| | | // this.$modal.msgSuccess("采样成功"); |
| | | |
| | | this.Collection(); |
| | | this.getList(); |
| | | }else{ |
| | | this.$message.error(res.msg) |
| | | this.$message.error(res.msg); |
| | | } |
| | | // this.getList(); |
| | | }) |
| | | .catch((error) => { |
| | | this.$message.error(res.msg); |
| | | this.$message.error("采样失败"); |
| | | }) |
| | | .finally(() => { |
| | | loadingInstance.close(); |
| | |
| | | |
| | | // 单选按钮 |
| | | radioChange(value) { |
| | | |
| | | if (this.selectList.length > 0) { |
| | | alert("已选中后禁止切换"); |
| | | |
| | | } else { |
| | | console.log("切换"); |
| | | |
| | | this.loading = true; |
| | | this.queryParams.isSignFor = value; |
| | | getList(this.queryParams).then((response) => { |
| | |
| | | this.loading = false; |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | // 默认接受四个值 { 当前行的值, 当前列的值, 行的下标, 列的下标 } |