| | |
| | | // } |
| | | }); |
| | | } |
| | | |
| | | export function getOrderzhiye(data) { |
| | | return request({ |
| | | url: "/zhiye/order", |
| | | method: "post", |
| | | data: data, |
| | | // responseType: 'blob', |
| | | // headers:{ |
| | | // "type": 'application/pdf' |
| | | // } |
| | | }); |
| | | } |
| | | // 根据身份证显示信息 |
| | | export function getCusIdcard(cusIdcard) { |
| | | return request({ |
| | |
| | | :disabled="row.project.proName === 'BMI'"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="exceptionDesc" label="异常" width="55px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.exceptionDesc" @change="changDesc(scope.row)" |
| | | :disabled="scope.row.project.sfcyyc === 1"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="exceptionDesc" label="异常" width="55px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox |
| | | v-model="scope.row.exceptionDesc" |
| | | @change="changDesc(scope.row)" |
| | | :disabled="scope.row.project.sfcyyc === 1 || scope.row.project.proName === 'BMI'" |
| | | ></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="70"> |
| | | <template slot-scope="scope"> |
| | | <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button> |
| | |
| | | </el-table-column> |
| | | <el-table-column prop="project.proMetering" label="单位" width="55"> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proScope" label="参考范围" width="70"> |
| | | <el-table-column label="参考范围" width="70" align="center"> |
| | | <template slot-scope="scope"> |
| | | |
| | | {{ scope.row.project.proScope }} |
| | | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="conclusion" label="结果结论" width="200"> |
| | | <template slot-scope="scope"> |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | getBMIStatus(row) { |
| | | const bmi = parseFloat(row.proResult); |
| | | if (isNaN(bmi) || !row.proResult) return ''; // 处理无效或空的BMI值 |
| | | if (bmi > 28) { |
| | | row.exceptionDesc = true; // 自动勾选异常复选框 |
| | | row.conclusion = '偏高'; // 设置结论 |
| | | return '偏高'; |
| | | } |
| | | if (bmi < 12) { |
| | | row.exceptionDesc = true; // 自动勾选异常复选框 |
| | | row.conclusion = '偏低'; // 设置结论 |
| | | return '偏低'; |
| | | } |
| | | row.exceptionDesc = false; // 正常范围内取消勾选 |
| | | row.conclusion = '正常'; // 设置结论 |
| | | return '正常'; |
| | | }, |
| | | // 计算 BMI |
| | | calculateBMI(height, weight) { |
| | | if (height && weight) { |
| | | const heightInMeters = parseFloat(height) / 100; // cm 转换为 m |
| | | const heightInMeters = parseFloat(height) / 100; // 厘米转换为米 |
| | | const weightInKg = parseFloat(weight); |
| | | const bmi = weightInKg / (heightInMeters * heightInMeters); |
| | | return bmi.toFixed(1); // 保留一位小数 |
| | |
| | | const height = row.project.proName === '身高' ? value : heightRow.proResult; |
| | | const weight = row.project.proName === '体重' ? value : weightRow.proResult; |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; // 实时更新 BMI |
| | | bmiRow.proResult = bmi || ''; // 实时更新BMI值 |
| | | this.getBMIStatus(bmiRow); // 检查BMI状态并更新异常复选框 |
| | | } |
| | | } |
| | | }, |
| | | |
| | | // 输入确认时更新 BMI |
| | | handleInputConfirm(row, params) { |
| | | console.log(row, params, 55555) |
| | | // 如果有 params 且为空,取消异常状态并清空相关字段 |
| | | if (params && params.length === 0) { |
| | | row.exceptionDesc = false; |
| | | row.proResult = ""; |
| | | row.conclusion = ""; |
| | | row.proAdvice = ""; |
| | | row.rulesList = []; |
| | | return; |
| | | } |
| | | |
| | | // 现有 BMI 计算逻辑 |
| | | // 输入确认时更新 BMI |
| | | handleInputConfirm(row) { |
| | | if (row.proResult) { |
| | | if (row.project.proName === '身高' || row.project.proName === '体重') { |
| | | const heightRow = this.proParentList.sons.find( |
| | |
| | | const weight = weightRow.proResult; |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; |
| | | this.getBMIStatus(bmiRow); // 检查BMI状态并更新异常复选框 |
| | | } |
| | | } |
| | | |
| | | this.focusrow = row; |
| | | this.proResult = row; |
| | | const pattern3 = new RegExp("[0-9]+"); |
| | | if (pattern3.test(row.proResult)) { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | tjNum: this.tableAll.tjNumber, |
| | | keyNum: this.proResult.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = res.data; |
| | | if (row.project.sfcyyc == 1) { |
| | | return |
| | | } else { |
| | | if (res.data.length > 0) { |
| | | const conditions = ["正常", "未见异常", "阴性", "未见明显异常"]; |
| | | this.focusrow.exceptionDesc = !conditions.some((condition) => |
| | | this.autorule[0].bz.includes(condition) |
| | | ); |
| | | } else { |
| | | this.focusrow.exceptionDesc = false; |
| | | } |
| | | } |
| | | |
| | | if (this.autorule.length !== 0 && (this.autorule[0] || this.autorule[0].nr)) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | this.autorule.forEach((item) => { |
| | | this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; |
| | | }); |
| | | } |
| | | }); |
| | | } else { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | keyWord: this.proResult.proResult, // 修改为 proResult.proResult |
| | | tjNum: this.tableAll.tjNumber, |
| | | keyNum: this.proResult.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = res.data; |
| | | if (row.project.sfcyyc == 1) { |
| | | return |
| | | } else { |
| | | if (res.data.length > 0) { |
| | | const conditions = ["正常", "未见异常", "阴性", "未见明显异常"]; |
| | | this.focusrow.exceptionDesc = !conditions.some((condition) => |
| | | this.autorule[0].bz.includes(condition) |
| | | ); |
| | | } else { |
| | | this.focusrow.exceptionDesc = false; |
| | | } |
| | | } |
| | | if (this.autorule.length !== 0 && (this.autorule[0] || this.autorule[0].nr)) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | this.autorule.forEach((item) => { |
| | | this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | // 将当前行添加到 rows 中 |
| | | this.rows.push(row); |
| | | console.log(this.rows, row); |
| | | |
| | | } |
| | | // 现有的规则检查逻辑保持不变 |
| | | this.focusrow = row; |
| | | this.proResult = row; |
| | | const pattern3 = new RegExp("[0-9]+"); |
| | | if (pattern3.test(row.proResult)) { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | tjNum: this.tableAll.tjNumber, |
| | | keyNum: this.proResult.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = res.data; |
| | | if (row.project.sfcyyc == 1) { |
| | | return; |
| | | } else { |
| | | if (res.data.length > 0) { |
| | | const conditions = ["正常", "未见异常", "阴性", "未见明显异常"]; |
| | | this.focusrow.exceptionDesc = !conditions.some((condition) => |
| | | this.autorule[0].bz.includes(condition) |
| | | ); |
| | | } else { |
| | | this.focusrow.exceptionDesc = false; |
| | | } |
| | | } |
| | | if (this.autorule.length !== 0 && (this.autorule[0] || this.autorule[0].nr)) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | this.autorule.forEach((item) => { |
| | | this.focusrow.conclusion += this.focusrow.conclusion ? item.bz : item.bz; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | this.rows.push(row); |
| | | }, |
| | | |
| | | // 初始化数据时计算 BMI |
| | |
| | | |
| | | handleFocus(row) { |
| | | this.autorule = []; |
| | | if (!row.resultType || row.resultType == 2 ) { |
| | | if (!row.resultType || row.resultType == 2) { |
| | | return; |
| | | } else { |
| | | this.curindex = row; |
| | |
| | | <el-form v-if="tableAll && tableAll.tjCategory === '02'" ref="numberValidateForm" label-width="80px" |
| | | class="demo-ruleForm"> |
| | | <el-form-item label="检查结论"> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="textarea1" :rows="3" |
| | | style="width: 96%"></el-input> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="zhiyeJl" :rows="3" style="width: 96%"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="体检结果"> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="res" :rows="3" style="width: 96%"></el-input> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="zhiyeJg" :rows="3" style="width: 96%"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div style="margin: 0 0px 10px 15px" v-if="tjproject != '1'"> |
| | |
| | | isPdfOrJimu, |
| | | addOrder, |
| | | addOrder1, |
| | | getFcList, UpdFcPro |
| | | getFcList, |
| | | UpdFcPro |
| | | } from "@/api/doctor/checkAll"; |
| | | import { getInfoById } from "@/api/hosp/history"; |
| | | import { getInfo } from "@/api/login"; |
| | |
| | | name: "checkAll", |
| | | data() { |
| | | return { |
| | | res: '未发现目标性疾病', |
| | | zhiyeJl: '', // 初始化检查结论为空 |
| | | zhiyeJg: '未发现目标性疾病', // 初始化体检结果为默认值 |
| | | selectedAdvice: null, |
| | | activeAdviceIndex: 0, |
| | | advicerulesList: [], |
| | | xmChange: [], |
| | | showjianyi: false, |
| | | adviceLoading: false, // 控制表格加载状态 |
| | | adviceEmptyText: '暂无数据', // 自定义空数据提示 |
| | | adviceLoading: false, |
| | | adviceEmptyText: '暂无数据', |
| | | total1: 0, |
| | | forms: { |
| | | pacName: "" |
| | |
| | | queryParams1: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | zyzd: '', // 建议名称 |
| | | zyzd: '', |
| | | }, |
| | | adviceCache: new Map(), // 缓存建议数据 |
| | | adviceCache: new Map(), |
| | | addNewDialogVisible: false, |
| | | newItem: { |
| | | parentName: '', |
| | |
| | | }, |
| | | |
| | | created() { |
| | | console.log(this.dict.type.dict_tjtype, "职业体检"); // 打印字典数据 |
| | | console.log(this.dict.type.dict_tjtype, "职业体检"); |
| | | this.getConfigKey(); |
| | | this.getdate(); |
| | | }, |
| | |
| | | this.queryParams1.pageNum = 1; |
| | | this.queryParams1.pageSize = 10; |
| | | this.queryParams1.zyzd = ''; |
| | | this.selectedAdvice = null; // 重置选中建议 |
| | | this.advicerulesList = []; // 清空建议列表 |
| | | this.selectedAdvice = null; |
| | | this.advicerulesList = []; |
| | | this.total1 = 0; |
| | | this.adviceCache.clear(); // 清空缓存 |
| | | this.adviceCache.clear(); |
| | | this.filterAdvices(); |
| | | this.showjianyi = true; |
| | | }, |
| | |
| | | this.queryParams1.pageNum = 1; |
| | | } |
| | | |
| | | // 生成缓存 key,仅使用 zyzd 和分页参数 |
| | | 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; |
| | |
| | | return; |
| | | } |
| | | |
| | | // 显示加载状态 |
| | | this.adviceLoading = true; |
| | | this.adviceEmptyText = '加载中...'; |
| | | |
| | |
| | | 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) => { |
| | |
| | | .finally(() => { |
| | | this.adviceLoading = false; |
| | | }); |
| | | }, 800), // 防抖时间为 800ms |
| | | }, 800), |
| | | |
| | | handleCurrentChangeAdvice(currentRow) { |
| | | this.selectedAdvice = currentRow; |
| | |
| | | } |
| | | }, |
| | | |
| | | // 取消选择并关闭对话框 |
| | | cancelAdviceDialog() { |
| | | this.showjianyi = false; |
| | | this.selectedAdvice = null; |
| | |
| | | this.adviceCache.clear(); |
| | | }, |
| | | |
| | | // 关闭对话框前的确认 |
| | | handleCloseAdviceDialog(done) { |
| | | if (this.selectedAdvice) { |
| | | this.$confirm('您已选择一条建议,确定要关闭吗?', '提示', { |
| | |
| | | this.cancelAdviceDialog(); |
| | | done(); |
| | | }) |
| | | .catch(() => { }); |
| | | .catch(() => {}); |
| | | } else { |
| | | this.cancelAdviceDialog(); |
| | | done(); |
| | |
| | | this.newItem.jcxm = value; |
| | | } |
| | | }, |
| | | |
| | | change(val) { |
| | | console.log('选中的值是:', val); |
| | | }, |
| | |
| | | }, |
| | | |
| | | handleQuery() { |
| | | this.xmopen = true |
| | | this.xmopen = true; |
| | | let data = { |
| | | tjNum: this.tjNumber, |
| | | type: 0 |
| | | } |
| | | }; |
| | | getFcList(data).then(res => { |
| | | this.datasList = res.data |
| | | }) |
| | | 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 => { |
| | | if (res.code == 200) { |
| | | this.xmChange = [] |
| | | this.fuchaxiangmu() |
| | | } |
| | | }) |
| | | }; |
| | | UpdFcPro(data).then(res => {}); |
| | | }, |
| | | |
| | | handledeleteClick(row) { |
| | | let data = { |
| | | orderId: row.orderId, |
| | | data: [{ |
| | | proId: row.proId, |
| | | type: 0 |
| | | }] |
| | | } |
| | | UpdFcPro(data).then(res => { |
| | | if (res.code == 200) { |
| | | this.fuchaxiangmu() |
| | | } |
| | | }) |
| | | handledeleteClick() { |
| | | UpdFcPro(data).then(res => {}); |
| | | }, |
| | | |
| | | 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); //设置这一行取消选中 |
| | | 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 = []; |
| | | }, |
| | | |
| | | getExpends() { |
| | | this.expends = this.yichangList.flatMap(item => |
| | | item.sone.map(soneItem => soneItem.orderDetailId) |
| | |
| | | getRowKeys(row) { |
| | | return row.orderDetailId; |
| | | }, |
| | | |
| | | xiangmuqingkuang() { |
| | | this.loading = true; |
| | | cSWebGetPro(this.tjNumber) |
| | |
| | | getFcList(data) |
| | | .then((res) => { |
| | | this.fcList = res.data; |
| | | this.fcList.forEach((item, index) => { |
| | | item.newID = index + 1; |
| | | }) |
| | | }) |
| | | .catch((error) => { |
| | | console.error('获取复查项目失败:', error); |
| | |
| | | for (let i = 0; i < this.changedate.length; i++) { |
| | | this.remark = this.changedate[i].remark; |
| | | } |
| | | // 回显 zhiyeJl 和 zhiyeJg |
| | | this.zhiyeJl = response.data.zhiyeJl || ''; |
| | | this.zhiyeJg = response.data.zhiyeJg || '未发现目标性疾病'; |
| | | } else { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "该客户没有体检项目数据", |
| | | }); |
| | | // 如果没有数据,清空字段 |
| | | this.zhiyeJl = ''; |
| | | this.zhiyeJg = '未发现目标性疾病'; |
| | | } |
| | | }); |
| | | }); |
| | |
| | | this.changedate.forEach((item) => { |
| | | this.textarea1 = item.checkAdvice || ""; |
| | | }); |
| | | // 回显 zhiyeJl 和 zhiyeJg |
| | | this.zhiyeJl = response.data.zhiyeJl || ''; |
| | | this.zhiyeJg = response.data.zhiyeJg || '未发现目标性疾病'; |
| | | } else { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "该客户没有体检项目数据", |
| | | }); |
| | | // 如果没有数据,清空字段 |
| | | this.zhiyeJl = ''; |
| | | this.zhiyeJg = '未发现目标性疾病'; |
| | | } |
| | | }); |
| | | }); |
| | |
| | | done(); |
| | | }); |
| | | }) |
| | | .catch(() => { }); |
| | | .catch(() => {}); |
| | | } else { |
| | | let data = { |
| | | userId: this.userId, |
| | |
| | | tjNumber, |
| | | advice, |
| | | checkStatus: 1, |
| | | zhiyeJl: this.zhiyeJl, // 添加检查结论 |
| | | zhiyeJg: this.zhiyeJg // 添加体检结果 |
| | | }; |
| | | |
| | | console.log(this.yichangList, 6644); |
| | | |
| | | let dataList = this.yichangList |
| | | .map((item) => { |
| | | return item.sone.map((soneItem) => ({ |
| | |
| | | dw: soneItem.proAdvice, |
| | | })); |
| | | }) |
| | | .flat(); // 使用 flat() 方法将嵌套数组展平 |
| | | .flat(); |
| | | |
| | | this.loading = true; |
| | | getTjdetailList(data) |
| | | .then((response) => { |
| | | if (response.code === 200) { |
| | | this.$modal.msgSuccess("提交成功"); |
| | | // 清空字段 |
| | | this.zhiyeJl = ''; |
| | | this.zhiyeJg = ''; |
| | | |
| | | // 准备生成报告的请求数据 |
| | | let reportData = { |
| | | userId: this.userId, |
| | | tjNumber: tjNumber, |
| | |
| | | id: this.MsgId, |
| | | }; |
| | | |
| | | // 调用 addOrderPromise |
| | | console.log(dataList, 5555); |
| | | |
| | | addOrder(dataList) |
| | | .then((res) => { |
| | | console.log(res, 999); |
| | | if (res.code == 200) { |
| | | gettoPdf(tjNumber) |
| | | .then((res) => { |
| | |
| | | remarks, |
| | | }, |
| | | ]; |
| | | return getModified(updateOrderRemarkVos); // 返回 Promise |
| | | return getModified(updateOrderRemarkVos); |
| | | }); |
| | | |
| | | // 等待所有请求完成 |
| | | Promise.all([statePromise, ...updatePromises]) |
| | | .then(() => { |
| | | // 所有请求完成,关闭 loading |
| | | this.loading = false; |
| | | // 更新分页信息 |
| | | this.queryParams.page = 1; |
| | | this.queryParams.pageSize = 10; |
| | | this.submitForm(); |
| | | this.$forceUpdate(); |
| | | }) |
| | | .catch((error) => { |
| | | // 处理错误情况 |
| | | this.loading = false; |
| | | console.error("发生错误:", error); |
| | | }); |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | // 如果 addOrderPromise 失败,处理错误 |
| | | this.loading = false; |
| | | console.error("addOrderPromise 失败:", error); |
| | | }); |
| | | } else { |
| | | // 提交失败,关闭 loading |
| | | this.loading = false; |
| | | this.$modal.msgError("提交失败"); |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | // 提交请求失败,关闭 loading |
| | | this.loading = false; |
| | | console.error("提交请求失败:", error); |
| | | this.$modal.msgError("提交请求失败"); |
| | | }); |
| | | }, |
| | | |
| | |
| | | <el-form-item label="查体分类" prop="examCategory" label-width="99px"> |
| | | <el-input :disabled="isDisabled" v-model="form.examCategory" placeholder="请输入查体分类" /> |
| | | </el-form-item> |
| | | <el-form-item label="接害工龄年" prop="hazardYears" label-width="104px"> |
| | | <el-input :disabled="isDisabled" v-model="form.hazardYears" placeholder="请输入接害工龄年" type="number" /> |
| | | </el-form-item> |
| | | <el-form-item label="接害工龄月" prop="hazardMonths" label-width="106px"> |
| | | <el-input :disabled="isDisabled" v-model="form.hazardMonths" placeholder="请输入接害工龄月" type="number" /> |
| | | </el-form-item> |
| | | <el-form-item label="开始接害日期" prop="hazardStartDate" label-width="100px"> |
| | | <el-date-picker :disabled="isDisabled" clearable v-model="form.hazardStartDate" type="date" |
| | | value-format="yyyy-MM-dd" placeholder="请选择开始接害日期" style="width: 93%" /> |
| | | </el-form-item> |
| | | <el-form-item label="工号" label-width="103px"> |
| | | <el-input :disabled="isDisabled" v-model="form.wenHua" placeholder="请输入工号" /> |
| | | </el-form-item> |
| | | <el-form-item label="车间" label-width="106px"> |
| | | <el-input :disabled="isDisabled" v-model="form.wenHua" placeholder="请输入车间" /> |
| | | </el-form-item> |
| | | |
| | | </el-form> |
| | | <el-form ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="106px" |
| | | v-show="top"> |
| | |
| | | <span slot="label"> 证件号码 </span> |
| | | <el-input :disabled="isDisabled" v-model="form.cusIdcard" placeholder="请输入身份证号" @input="inputChange" /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="单位名称" prop="firmName"> |
| | | <el-select v-model="form.firmName" remote default-first-option allow-create filterable |
| | | style="width: 200px" placeholder="请选择单位名称" clearable @change="idFn1" @clear="clear"> |
| | |
| | | </el-form-item> |
| | | <el-form-item label="体检类型"> |
| | | <el-select v-model="form.tjType" placeholder="请选择体检类型"> |
| | | <el-option v-for="dict in dict.type.dict_team" :key="dict.value" :label="dict.label" |
| | | <el-option v-for="dict in filteredDictTeam" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-form-item label="实收金额"> |
| | | <el-input placeholder="实收金额" v-model="TotalPrice" style="width: 206px" @input="changeXianjia" |
| | | @blur="numberChangeXianPrice(discount, discount)" /> |
| | | </el-form-item> |
| | | <el-form-item label="接害工龄年" prop="zhiyeJhgln" label-width="84px"> |
| | | <el-input v-model="form.zhiyeJhgln" type="number" style="width: 140px"/> |
| | | </el-form-item> |
| | | <el-form-item label="接害工龄月" prop="zhiyeJhgln" label-width="84px"> |
| | | <el-input v-model="form.zhiyeJhgly" style="width: 140px" type="number" /> |
| | | </el-form-item> |
| | | <el-form-item label="开始接害日期" prop="zhiyeKsjhrq" label-width="100px"> |
| | | <el-date-picker clearable v-model="form.zhiyeKsjhrq" type="date" |
| | | value-format="yyyy-MM-dd" style="width: 200px" /> |
| | | </el-form-item> |
| | | <el-form-item label="工号" label-width="50px"> |
| | | <el-input v-model="form.zhiyeGh" /> |
| | | </el-form-item> |
| | | <el-form-item label="车间" label-width="106px"> |
| | | <el-input v-model="form.zhiyeCj" /> |
| | | </el-form-item> |
| | | <br /> |
| | | |
| | |
| | | getfindTj, |
| | | getByTjNum, |
| | | } from "@/api/hosp/customer"; |
| | | |
| | | import { getPrintSetUp } from "@/api/system/examcharge"; |
| | | import cnchar from 'cnchar'; |
| | | import { |
| | | tuantiSelect, |
| | | deptTreeSelect, |
| | | projectGetList, |
| | | getOrder, |
| | | getOrderzhiye, |
| | | getProParentIdDxList, |
| | | getProSonDxList, |
| | | getCusIdcard, |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | tjLei: [], |
| | | isSubmitting: false, |
| | | open1: false, |
| | | filterage: "", |
| | |
| | | form: { |
| | | educationLevel: "", // 文化程度 |
| | | examCategory: "", // 查体分类 |
| | | hazardYears: "", // 接害工龄年 |
| | | hazardMonths: "", // 接害工龄月 |
| | | hazardStartDate: "", // 开始接害日期 |
| | | zhiyeJhgln: "", // 接害工龄年 |
| | | zhiyeJhgly: "", // 接害工龄月 |
| | | zhiyeKsjhrq: "", // 开始接害日期 |
| | | zhiyeGh: "", // 工号 |
| | | zhiyeCj: "", // 车间 |
| | | cusIdcard: "", |
| | | tjType: "", |
| | | cusSex: 1, |
| | |
| | | this.$refs.treas.filter(val); |
| | | }, |
| | | }, |
| | | computed: { |
| | | filteredDictTeam() { |
| | | // 过滤 dict.type.dict_team,只保留 value 在 tjLei 中的项 |
| | | return this.dict.type.dict_team.filter(dict => |
| | | this.tjLei.includes(dict.value.toString()) |
| | | ); |
| | | } |
| | | }, |
| | | created() { |
| | | this.getCompanyList(); |
| | | |
| | |
| | | this.TreedataList = []; |
| | | this.DataList = []; |
| | | this.marryall = 0; |
| | | getconfigKey("zhiye_tj_type").then((res) => { |
| | | if (res.code === 200) { |
| | | const values = res.msg.split(","); |
| | | this.tjLei.push(...values); |
| | | } |
| | | }); |
| | | |
| | | }, |
| | | methods: { |
| | | handleIdCardInput(value) { |
| | |
| | | } |
| | | |
| | | if (this.form.firmName) { |
| | | this.form.tjType = this.dict.type.dict_team[1].value; |
| | | this.form.tjType = "6"; |
| | | } else { |
| | | this.form.tjType = this.dict.type.dict_team[0].value; |
| | | this.form.tjType = "5"; |
| | | } |
| | | |
| | | }, |
| | |
| | | deleted: null, |
| | | firmid: "", |
| | | firmDeptName: "", |
| | | examCategory: "", // 查体分类 |
| | | zhiyeJhgln: "", // 接害工龄年 |
| | | zhiyeJhgly: "", // 接害工龄月 |
| | | zhiyeKsjhrq: "", // 开始接害日期 |
| | | zhiyeGh: "", // 工号 |
| | | zhiyeCj: "", // 车间 |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | |
| | | if (formData.cusSex === "未知") { |
| | | formData.cusSex = 2; |
| | | } |
| | | if (formData.tjType === "") { |
| | | formData.tjType = this.dict.type.dict_team[0].value; |
| | | |
| | | } |
| | | |
| | | addCustomer(formData).then((response) => { |
| | | this.responseList = response.data; |
| | | this.form.tjType = this.dict.type.dict_team[0].value; |
| | | this.form.tjType = ''; |
| | | this.$modal.msgSuccess("新增成功"); |
| | | _this.tcShow = true; |
| | | _this.isDisabled = true; |
| | |
| | | this.discount = this.form.discount; |
| | | } |
| | | if (this.form.tjType === null) { |
| | | this.form.tjType = this.dict.type.dict_team[0].value; |
| | | this.form.tjType = null; |
| | | } |
| | | if (this.form.cusMarryStatus === "null") { |
| | | this.form.cusMarryStatus = "5"; |
| | |
| | | if (this.form.reservationId != null) { |
| | | if (this.form.groupingId) { |
| | | this.form.firmName = this.form.compName; |
| | | this.dict.type.dict_team.forEach((item) => { |
| | | if (item.label == "团队") { |
| | | this.form.tjType = item.value; |
| | | } |
| | | }) |
| | | // this.form.tjType = this.dict.type.dict_team[1].value; |
| | | |
| | | this.CompanyList.forEach((item) => { |
| | | if (item.cnName == this.form.firmName) { |
| | | this.form.firmId = item.drugManufacturerId; |
| | |
| | | }; |
| | | } |
| | | |
| | | getOrder(data).then((res) => { |
| | | getOrderzhiye(data).then((res) => { |
| | | this.$modal.msgSuccess("提交成功"); |
| | | this.tjNumbers = res.msg; |
| | | this.charge = true; |
| | |
| | | cusPhone: item.tjPhone, |
| | | cusSex: item.sex === "男" ? "0" : "1", |
| | | }; |
| | | // 动态从filteredDictTeam获取tjType |
| | | const dictItem = this.filteredDictTeam.find(dict => dict.label === item.tjType); |
| | | const tjTypeValue = dictItem ? dictItem.value : (this.filteredDictTeam.length > 0 ? this.filteredDictTeam[0].value : "0"); // 回退到第一个值或默认"0" |
| | | if (item.tjComp != null) { |
| | | this.standard = { |
| | | company: item.tjComp, |
| | | tjType: item.tjType === "团队" ? "1" : "2", |
| | | tjType: tjTypeValue, |
| | | }; |
| | | } else { |
| | | this.standard = { |
| | | tjType: item.tjType === "团队" ? "1" : "2", |
| | | tjType: tjTypeValue, |
| | | }; |
| | | } |
| | | }); |
| | |
| | | this.formInline.paidIn = item.proPrice; |
| | | } |
| | | }); |
| | | const r = /^\+?[0-9][0-9]*$/; //正整数(可以以打头) |
| | | //const r=/^\+?[1-9][0-9]*$/;//正整数 |
| | | const r = /^\+?[0-9][0-9]*$/; // 正整数 |
| | | if (r.test(this.formInline.paidIn)) { |
| | | this.formInline.paidIn = this.formInline.paidIn + ".00"; |
| | | } |
| | | this.discount = |
| | | (this.formInline.paidIn / this.formInline.price) * 10; |
| | | |
| | | this.discount = (this.formInline.paidIn / this.formInline.price) * 10; |
| | | } else { |
| | | this.discount = 10; |
| | | this.formInline.paidIn = "0.00"; |
| | | } |
| | | |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | |
| | | }, |
| | | |
| | | listgetOrder(data) { |
| | | getOrder(data).then((res) => { |
| | | getOrderzhiye(data).then((res) => { |
| | | this.$modal.msgSuccess("提交成功"); |
| | | //调接口显示导检单 |
| | | const tjNumber = res.msg; |
| | |
| | | firmId: this.form.firmId, |
| | | firmName: this.form.firmName, |
| | | firmDeptName: this.form.firmDeptName, |
| | | zhiyeJhgly: this.form.zhiyeJhgly, |
| | | zhiyeKsjhrq: this.form.zhiyeKsjhrq, |
| | | zhiyeGh: this.form.zhiyeGh, |
| | | zhiyeCj: this.form.zhiyeCj |
| | | }; |
| | | |
| | | this.listgetOrder(data); |
| | |
| | | firmId: this.form.firmId, |
| | | firmName: this.form.firmName, |
| | | firmDeptName: this.form.firmDeptName, |
| | | zhiyeJhgly: this.form.zhiyeJhgly, |
| | | zhiyeKsjhrq: this.form.zhiyeKsjhrq, |
| | | zhiyeGh: this.form.zhiyeGh, |
| | | zhiyeCj: this.form.zhiyeCj |
| | | |
| | | |
| | | }; |
| | | this.listgetOrder(data); |
| | | } else { |