package.json | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/api/system/tijian.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/doctor/check/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/hosp/order/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/login.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/system/comp/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/system/tijian/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
package.json
@@ -39,6 +39,7 @@ "@riophae/vue-treeselect": "0.4.0", "axios": "0.24.0", "babel-polyfill": "^6.26.0", "big.js": "^6.2.2", "clipboard": "2.0.8", "core-js": "3.25.3", "echarts": "4.9.0", src/api/system/tijian.js
@@ -29,7 +29,13 @@ method: "get", }); } export function gaibianzhekou(data) { return request({ url: "/hosp/order/updateTransitionnewPrice", method: "post", data: data, }); } // 选择体检项目(所有服项目)选单项时调用的接口 export function projectGetList() { return request({ src/views/doctor/check/index.vue
@@ -339,7 +339,7 @@ </el-table-column> </el-table> <div style="font-size: 14px; overflow-y: auto; height: 286px"> <div style="font-size: 14px; overflow-y: auto; height: 286px" class="a"> <table style=" width: 96%; margin: 4px 10px; @@ -424,34 +424,15 @@ </tr> </table> <div slot="footer" class="dialog-footers"> <!-- v-show="tjStatus == '0'" --> <!-- <el-button type="primary" size="mini" @click="radioChange" v-hasPermi="['system:notice:add']" v-show="tjStatus == '1'" >会诊申请</el-button> --> <div slot="footer" class="dialog-footers1"> <el-button type="primary" @click="determine">提 交</el-button> </div> </div> </el-tab-pane> </el-tabs> </template> <!-- <template> <div style="margin-left: 10px"> <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index" @input="radioChange1(item.proId, item)" > <el-radio-button :label="item.proId">{{ item.proName }}</el-radio-button> </el-radio-group> </div> </template> --> </el-col> <el-col :span="18" v-show="baogaohou"> <template> @@ -601,75 +582,21 @@ </table> <div slot="footer" class="dialog-footers"> <!-- <el-button type="primary" size="mini" @click="radioChange" v-hasPermi="['system:notice:add']" v-show="tjStatus == '1'" >会诊申请</el-button> --> <!-- v-show="tjStatus == '0'" --> <el-button type="primary" @click="determine">提 交</el-button> </div> </div> </el-tab-pane> </el-tabs> </template> <!-- <template> <div style="margin-left: 10px"> <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index" @input="radioChange1(item.proId, item)"> <el-radio-button :label="item.proId">{{ item.proName }}</el-radio-button> </el-radio-group> </div> </template> --> </el-col> <el-col :span="6" style="margin-top: 15px"> <Historicalreport v-show="lishi" :reportHistorydata="reportHistorydata"></Historicalreport> </el-col> </el-row> <!-- <div style="background-color: #f3f3f3;font-size:14px;overflow-y:auto;height: calc(100% - 11%);"> <table style="width:96%;margin: 4px 10px;border:1px solid white" cellspacing="4" border="2" v-for="(item, index) in proParentList.sons" :key="index"> <tr align="center"> <th>检测项目</th> <th>检测结果</th> <th>单位</th> <th>参考范围</th> </tr> <tr> <td>{{ item.project.proName }}</td> <td><el-input v-model="item.proResult" placeholder="请输入内容"></el-input></td> <td>{{ item.standard.company }}</td> <td>{{ item.standard.tjStandardGtValue + "-" + item.standard.tjStandardLtValue }}</td> </tr> <tr> <td>小结:</td> <td> <el-select v-model="item.value" multiple filterable placeholder="请选择" style="width:100%"> <el-option v-for="item in proParentList.parentAdvice" :key="item.id" :label="item.title" :value="item.id"> </el-option> </el-select> </td> <td>主检医师:</td> <td>{{ item.doctorName }}</td> </tr> <tr> <td>备注:</td> <td colspan="2"> <el-input type="textarea" autosize placeholder="请输入内容" v-model="item.remark"> </el-input> </td> </tr> </table> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="determine">确 定</el-button> </div> </div> --> </el-drawer> <Public ref="aaa" :row="row" @add="handleChanges" /> <jianceResult ref="bbb" @add="handleChangesZt" /> @@ -2261,6 +2188,9 @@ }; </script> <style lang="scss" scoped> .a{ position: relative; } .el-table .cell { -webkit-box-sizing: border-box; box-sizing: border-box; @@ -2363,4 +2293,21 @@ background-color: #66cc66; border-color: #66cc66; } .dialog-footers1 { position: fixed; bottom: 0; left: 63%; transform: translateX(-50%); display: flex; justify-content: center; align-items: center; z-index: 1000; /* 确保按钮层级在其他内容上方 */ width: 300px; background-color: white; /* 可根据需要调整背景颜色 */ } /* 确保按钮之间有合适的间距 */ .dialog-footers1 .el-button { margin: 0 5px; } </style> src/views/hosp/order/index.vue
@@ -2210,7 +2210,7 @@ var discount = ""; response.data.water.forEach((item) => { copeWith += item.copeWith; paidIn += item.copeWith; paidIn += item.paidIn; discount = item.discount; }); this.bill.push({ @@ -2251,7 +2251,7 @@ var discount = ""; response.data.water.forEach((item) => { copeWith += item.copeWith; paidIn += item.copeWith; paidIn += item.paidIn; discount = item.discount; }); this.bill.push({ src/views/login.vue
@@ -185,7 +185,7 @@ } }, handleLogin() { if (this.loginForm.username.length < 6) { if (this.loginForm.username.length < 12) { this.loginForm.mobile = true; this.$router.push({ path: this.redirect || "/" }).catch(() => { }); } else { src/views/system/comp/index.vue
@@ -193,30 +193,17 @@ </el-col> </el-form-item> <el-form-item label="原价" prop="price"> <el-input v-model="forms.price" placeholder="请输入原价" style="width: 130px" /> <el-input v-model="forms.price" placeholder="请输入原价" style="width: 130px" /> </el-form-item> <el-form-item label="折扣" prop="limits"> <el-input v-model="forms.limits" placeholder="请输入折扣" style="width: 130px" @change="numberChange" /> <el-input v-model="forms.limits" placeholder="请输入折扣" style="width: 130px" @change="numberChange" /> <!-- :disabled="isfalse" --> </el-form-item> <el-form-item label="优惠价" prop="ysPrice"> <el-input v-model="forms.ysPrice" placeholder="请输入应收" style="width: 120px" /> <el-input v-model="forms.ysPrice" placeholder="请输入应收" style="width: 120px" /> </el-form-item> </el-form> <el-row :gutter="10" class="mb8"> @@ -224,8 +211,7 @@ <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleGroup">保存</el-button> </el-col> <el-col :span="1.5"> <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="singlegg" @click="xiangmuWh">项目维护</el-button> <el-button type="primary" icon="el-icon-edit" size="mini" @click="xiangmuWh">项目维护</el-button> </el-col> <el-col :span="1.5"> <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="singlegg" @@ -360,7 +346,7 @@ </el-form-item> </el-form> <el-table ref="tbone" border v-loading="loading" :data="newpacName" @selection-change="handleChangeOne" height="478" v-if="isTableVisible" > height="478" v-if="isTableVisible"> <el-table-column type="selection" width="40px" align="center" /> <el-table-column label="序号" align="center" prop="newID" width="50px" /> <el-table-column label="套餐名称/价格/元" align="center" prop="pacName"> @@ -384,28 +370,14 @@ 注释:鼠标左键双击选中行可删除 </div> --> <!-- @row-dblclick="dbclick" --> <el-table border v-loading="loading" :data="OnenewpacName" :row-class-name="tableRowClassName" height="478" > <el-table-column label="项目名称/价格/元" align="center" prop="proName" > <el-table border v-loading="loading" :data="OnenewpacName" :row-class-name="tableRowClassName" height="478"> <el-table-column label="项目名称/价格/元" align="center" prop="proName"> <template slot-scope="scope"> {{ scope.row.proName + "/" + scope.row.proPrice }} </template> </el-table-column> <el-table-column label="原价" align="center" prop="proPrice" ></el-table-column> <el-table-column label="原价" align="center" prop="proPrice"></el-table-column> <el-table-column label="操作" align="center" width="68"> <template slot-scope="scope"> <el-button size="mini" type="text" icon="el-icon-delete" @@ -432,23 +404,11 @@ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleSearchFor">搜索</el-button> </el-form-item> </el-form> <el-table border v-loading="loading" ref="tre" :data="Treedata" @selection-change="handleChangesingle" height="478" style="width: 70%" > <el-table border v-loading="loading" ref="tre" :data="Treedata" @selection-change="handleChangesingle" height="478" style="width: 70%"> <el-table-column type="selection" width="40px" align="center" /> <el-table-column label="项目名称" align="center" prop="proName" width="130" /> <el-table-column label="项目价格/元" align="center" prop="proPrice" width="100" /> <el-table-column label="项目价格/元" align="center" prop="proPrice" width="100" /> </el-table> </el-col> </el-row> @@ -771,7 +731,7 @@ this.getList(); }, methods: { getList() { this.$nextTick(() => { this.$refs.inputName.focus(); @@ -779,7 +739,7 @@ (this.loading = true); listComp(this.queryParams).then((response) => { this.compList = response.rows; response.rows.forEach((item, index) => { item.newID = (this.queryParams.pageNum - 1) * this.queryParams.pageSize + @@ -1043,7 +1003,7 @@ } getProjectList().then((response) => { this.Treedata = response.data; }); }, @@ -1303,22 +1263,23 @@ this.OnenewpacName = []; this.queryParams.price = 0; this.loading = true; let id = this.groupList[0].id; if (this.groupList[0]) { let id = this.groupList[0].id || ''; getDetails(id).then((res) => { this.OnenewpacName = res.data.groupingProList; this.OnenewpacName.forEach((item, index) => { this.queryParams.price += item.proPrice; }); }); } // console.log(this.groupList[0].id, 9966); getconfigKey("sfzstc").then((res) => { this.sfzs = res.msg; }); getDetails(id).then((res) => { this.OnenewpacName = res.data.groupingProList; this.OnenewpacName.forEach((item, index) => { this.queryParams.price += item.proPrice; }); // return this.OnenewpacName.forEach((item) => { // this.queryParams.price += item.proPrice; // }); }); if (this.forms.sex) { deptTreeSelect(this.forms.sex).then((response) => { // 套餐名称 src/views/system/tijian/index.vue
@@ -74,18 +74,18 @@ </el-form-item> <el-form-item label="姓名" prop="cusName" :rules="[ { required: true, validator: (rule, value, callback) => { if (!form.cusName) { callback(''); } else if (form.cusName) { callback(); } }, trigger: 'blur', }, ]"> { required: true, validator: (rule, value, callback) => { if (!form.cusName) { callback(''); } else if (form.cusName) { callback(); } }, trigger: 'blur', }, ]"> <span slot="label" style="display: inline-block; border-bottom: 2px solid blue" @click="openname"> 姓名 @@ -107,20 +107,20 @@ </el-form-item> <el-form-item label="性别" prop="cusSex" :rules="[ { required: true, validator: (rule, value, callback) => { if (!form.cusSex && showHidden.has_sex === 'Y') { callback(''); } else if (showHidden.has_sex === 'N') { callback(); } else if (form.cusSex && showHidden.has_sex === 'Y') { callback(); } }, trigger: 'blur', }, ]"> { required: true, validator: (rule, value, callback) => { if (!form.cusSex && showHidden.has_sex === 'Y') { callback(''); } else if (showHidden.has_sex === 'N') { callback(); } else if (form.cusSex && showHidden.has_sex === 'Y') { callback(); } }, trigger: 'blur', }, ]"> <el-select :disabled="isDisabled" v-model="form.cusSex" placeholder="性别"> <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="dict.label" :value="parseInt(dict.value)"></el-option> @@ -128,23 +128,23 @@ </el-form-item> <el-form-item label="证件号码" prop="cusIdcard" :rules="[ { required: true, validator: (rule, value, callback) => { if (!form.cusIdcard && showHidden.has_idcard === 'Y') { callback(''); } else if (showHidden.has_idcard === 'N') { callback(); } else if ( form.cusIdcard && showHidden.has_idcard === 'Y' ) { callback(); } }, trigger: 'blur', }, ]"> { required: true, validator: (rule, value, callback) => { if (!form.cusIdcard && showHidden.has_idcard === 'Y') { callback(''); } else if (showHidden.has_idcard === 'N') { callback(); } else if ( form.cusIdcard && showHidden.has_idcard === 'Y' ) { callback(); } }, trigger: 'blur', }, ]"> <span slot="label" style="display: inline-block; border-bottom: 2px solid blue" @click="handleQuery"> 证件号码 </span> @@ -166,20 +166,20 @@ </el-form-item> <el-form-item label="电话" prop="cusPhone" :rules="[ { required: true, validator: (rule, value, callback) => { if (!form.cusPhone && showHidden.is_phone === 'Y') { callback(''); } else if (showHidden.is_phone === 'N') { callback(); } else if (form.cusPhone && showHidden.is_phone === 'Y') { callback(); } }, trigger: 'blur', }, ]"> { required: true, validator: (rule, value, callback) => { if (!form.cusPhone && showHidden.is_phone === 'Y') { callback(''); } else if (showHidden.is_phone === 'N') { callback(); } else if (form.cusPhone && showHidden.is_phone === 'Y') { callback(); } }, trigger: 'blur', }, ]"> <el-input v-model="form.cusPhone" placeholder="请输入联系电话" :disabled="isDisabled" /> </el-form-item> @@ -505,9 +505,9 @@ <el-input placeholder="应收金额" v-model="TotalPrice1" disabled style="width: 150px"></el-input> </el-form-item> <el-form-item label="优惠"> <!-- {{ discount }} --> <el-input-number ref="inputNumber" style="width: 150px" v-model="discount" :precision="2" :step="0.1" :max="10" :min="1" @change="numberChange" :disabled="isfalse"></el-input-number> :max="10" :min="0" @change="numberChange" :disabled="isfalse"></el-input-number> </el-form-item> <el-form-item label="实收金额"> <el-input placeholder="实收金额" v-model="TotalPrice" style="width: 150px"></el-input> @@ -582,13 +582,13 @@ <div style=" padding: 0px 6px; border: 1px solid #e6ebf5; max-height: 420px; max-height: 650%; overflow: auto; width: 916px; margin-left: 35px; "> <el-table :data="tableData1" border style="width: 100%" height="250"> <el-table :data="tableData1" border style="width: 100%;"> <el-table-column prop="proName" label="项目" width="180"> </el-table-column> <el-table-column prop="proType" label="性别" width="50"> @@ -668,7 +668,7 @@ :disabled="true"></el-input> </el-form-item> <el-form-item label="优惠"> <el-input-number style="width: 140px" v-model="discount" :precision="2" :step="0.1" :max="10" :min="1" <el-input-number style="width: 140px" v-model="discount" :precision="2" :step="0.1" :max="10" :min="0" @change="numberChange" :disabled="isfalse"></el-input-number> </el-form-item> <el-form-item label="实收金额"> @@ -756,6 +756,7 @@ </template> <script> import Big from 'big.js'; import selectName from "@/components/selectName"; import { dataURLtoFile, random } from "./file"; import { getInfo } from "@/api/login"; @@ -786,6 +787,7 @@ getconfigKey, getHistryTjOrderProByCusIdCard, readCertCardInfos, gaibianzhekou } from "@/api/system/tijian"; import { addComp } from "@/api/system/comp"; import { getCompany, queryCompany } from "@/api/team/tuanti"; @@ -1093,10 +1095,20 @@ isAll(value) { return value === '' || value === null; }, // 更新实收金额 updateProPrice(row) { row.nowPrice = Number(row.ordPrice) * (Number(row.discount) / 10); const ordPrice = new Big(row.ordPrice); const discount = new Big(row.discount); const result = ordPrice.times(discount.div(10)); // ordPrice * (discount / 10) row.nowPrice = result.toNumber(); this.TotalPrice = this.tableData1.reduce((sum, item) => { return sum.plus(new Big(item.nowPrice || '0')); }, new Big(0)); this.discount = (Math.floor((this.TotalPrice / this.TotalPrice1)*100)/100)*10 }, openname() { this.$refs.bbb.open = true; @@ -1295,7 +1307,7 @@ this.pacName = item.pacName; }); this.list1 = false; this.list3 = true; @@ -1370,7 +1382,7 @@ this.pacName = item.pacName; }); this.list1 = false; this.list3 = true; @@ -1592,7 +1604,7 @@ if (this.discount <= this.getInfodis) { this.discount = this.getInfodis; } this.TotalPrice = (this.TotalPrice1 * (this.discount / 10)).toFixed(2); // this.TotalPrice = (this.TotalPrice1 * (this.discount / 10)).toFixed(2); }, /** 登记提交按钮 */ @@ -1679,7 +1691,7 @@ this.top = false; } else { this.list1 = true; this.TotalPrice =0; this.TotalPrice = 0; this.top = false; } }); @@ -2210,6 +2222,7 @@ // }, resetpackage() { this.discount = 10 if (this.form.cusIdcard) { var cusId = this.form.cusIdcard; } else { @@ -2562,7 +2575,7 @@ if (this.DataList.length != 0) { this.list1 = false; this.DataList.forEach((item) => { this.marryall += item.proPrice; }); } @@ -2730,7 +2743,7 @@ this.pacName = item.pacName; }); this.list1 = false; this.list3 = true; this.list2 = false; @@ -2740,7 +2753,7 @@ } }); } else { console.log(失败了); } }); } else { @@ -2766,8 +2779,8 @@ this.pacName = item.pacName; }); this.list1 = false; this.list3 = true; this.list2 = false; @@ -2777,7 +2790,7 @@ } }); } else { console.log(失败了); } }); } @@ -3091,35 +3104,46 @@ let paidIn = this.TotalPrice.toString(); let discount = this.discount; this.tjFlowingWater = { copeWith, paidIn, discount }; const newArray = this.tableData1 .filter(item => item.discount < 10) // 过滤出 discount < 10 的项 .map(item => ({ discount: item.discount, parentProId: item.parentProId, cusIdCard: item.cusId })); // 创建新的对象,包含 discount 和 id gaibianzhekou(newArray).then((res) => { if (res.code === 200) { let data; let data; if (pacId || this.tjOrderList.length > 0) { data = { photo: this.srcUrl, pacId, tjOrderList: this.tjOrderList, tjFlowingWater: this.tjFlowingWater, userId, tjType, tjCategory: this.tjCategory, }; this.listgetOrder(data); } else if (pacId || this.tjOrderList.length > 0) { data = { photo: this.srcUrl, tjOrderList: this.tjOrderList, tjFlowingWater: this.tjFlowingWater, userId, tjType, tjCategory: this.tjCategory, }; this.listgetOrder(data); } else { this.$message({ type: "warning ", message: "请选择套餐!", }); } if (pacId || this.tjOrderList.length > 0) { data = { photo: this.srcUrl, pacId, tjOrderList: this.tjOrderList, tjFlowingWater: this.tjFlowingWater, userId, tjType, tjCategory: this.tjCategory, }; this.listgetOrder(data); } else if (pacId || this.tjOrderList.length > 0) { data = { photo: this.srcUrl, tjOrderList: this.tjOrderList, tjFlowingWater: this.tjFlowingWater, userId, tjType, tjCategory: this.tjCategory, }; this.listgetOrder(data); } else { this.$message({ type: "warning ", message: "请选择套餐!", }); } } else{ this.$modal.msgError("改变折扣错误"); } }) } else { this.$modal.msgError("请选择体检类别"); }