|
|
@ -3,16 +3,17 @@ |
|
|
<div style="width:220px;"> |
|
|
<div style="width:220px;"> |
|
|
<div> |
|
|
<div> |
|
|
<span>项目类别</span> |
|
|
<span>项目类别</span> |
|
|
<el-cascader :options="dict.itemTypeTree" v-model="itemTypeIds" popper-class="example" style="margin-left: 3px;width:160px;" |
|
|
|
|
|
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }" |
|
|
|
|
|
clearable filterable @change="changeItemType" size="small" :disabled="isComplete"> |
|
|
|
|
|
|
|
|
<el-cascader :options="dict.itemTypeTree" v-model="itemTypeIds" popper-class="example" |
|
|
|
|
|
style="margin-left: 3px;width:160px;" |
|
|
|
|
|
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }" clearable filterable |
|
|
|
|
|
@change="changeItemType" size="small" :disabled="isComplete"> |
|
|
</el-cascader> |
|
|
</el-cascader> |
|
|
</div> |
|
|
</div> |
|
|
<div class="mainareaBox"> |
|
|
<div class="mainareaBox"> |
|
|
<el-table :data="asbItem" style="border-radius: 5px;" |
|
|
<el-table :data="asbItem" style="border-radius: 5px;" |
|
|
:height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" @row-dblclick="dbClickChoosedAsb" highlight-current-row |
|
|
|
|
|
@selection-change="handleSelectionChange" size="small" :row-class-name="handleRowClassName" |
|
|
|
|
|
@row-click="chooseAsbItem"> |
|
|
|
|
|
|
|
|
:height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" @row-dblclick="dbClickChoosedAsb" |
|
|
|
|
|
highlight-current-row @selection-change="handleSelectionChange" size="small" |
|
|
|
|
|
:row-class-name="handleRowClassName" @row-click="chooseAsbItem"> |
|
|
<!-- |
|
|
<!-- |
|
|
<el-table-column type="selection" align="center" width="40" /> |
|
|
<el-table-column type="selection" align="center" width="40" /> |
|
|
--> |
|
|
--> |
|
|
@ -34,20 +35,24 @@ |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div style="width:100px;margin-top: 70px;"> |
|
|
<div style="width:100px;margin-top: 70px;"> |
|
|
<div v-show="checkPagePriv(pagePriv.privs,'添加')" class="btnList"> |
|
|
|
|
|
<el-button class="commonbutton" @click="addAbs(asbItemChoosed,'choosed')" style="width:90px;" :disabled="isComplete">添加 <i class="el-icon-arrow-right"></i> |
|
|
|
|
|
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '添加')" class="btnList"> |
|
|
|
|
|
<el-button class="commonbutton" @click="addAbs(asbItemChoosed, 'choosed')" style="width:90px;" |
|
|
|
|
|
:disabled="isComplete">添加 <i class="el-icon-arrow-right"></i> |
|
|
</el-button> |
|
|
</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div v-show="checkPagePriv(pagePriv.privs,'全添加')" class="btnList"> |
|
|
|
|
|
<el-button type="success" class="difference" @click="addAbs(asbItemChoosed,'all')" style="width:90px;" :disabled="isComplete">全添加 <i class="el-icon-d-arrow-right"></i> |
|
|
|
|
|
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '全添加')" class="btnList"> |
|
|
|
|
|
<el-button type="success" class="difference" @click="addAbs(asbItemChoosed, 'all')" style="width:90px;" |
|
|
|
|
|
:disabled="isComplete">全添加 <i class="el-icon-d-arrow-right"></i> |
|
|
</el-button> |
|
|
</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div v-show="checkPagePriv(pagePriv.privs,'移除')" class="btnList"> |
|
|
|
|
|
<el-button type="warning" class="commonbutton" @click="delAbs(patientRegisterAbsChoosed,'choosed')" style="width:90px;" :disabled="isComplete"><i class="el-icon-arrow-left"> 移除</i> |
|
|
|
|
|
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '移除')" class="btnList"> |
|
|
|
|
|
<el-button type="warning" class="commonbutton" @click="delAbs(patientRegisterAbsChoosed, 'choosed')" |
|
|
|
|
|
style="width:90px;" :disabled="isComplete"><i class="el-icon-arrow-left"> 移除</i> |
|
|
</el-button> |
|
|
</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div v-show="checkPagePriv(pagePriv.privs,'全移除')" class="btnList"> |
|
|
|
|
|
<el-button type="danger" class="difference" @click="delAbs(patientRegisterAbsChoosed,'all')" style="width:90px;" :disabled="isComplete"><i class="el-icon-d-arrow-left"> 全移除</i> |
|
|
|
|
|
|
|
|
<div v-show="checkPagePriv(pagePriv.privs, '全移除')" class="btnList"> |
|
|
|
|
|
<el-button type="danger" class="difference" @click="delAbs(patientRegisterAbsChoosed, 'all')" style="width:90px;" |
|
|
|
|
|
:disabled="isComplete"><i class="el-icon-d-arrow-left"> 全移除</i> |
|
|
</el-button> |
|
|
</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<!-- 不显示保存,当已选组合有修改时,失去焦点自动保存 |
|
|
<!-- 不显示保存,当已选组合有修改时,失去焦点自动保存 |
|
|
@ -72,32 +77,32 @@ |
|
|
<span>总金额 </span> |
|
|
<span>总金额 </span> |
|
|
</el-tooltip> |
|
|
</el-tooltip> |
|
|
<el-input style="width:70px;" v-model="total" size="small" type="number" @input="changeTotal" ref="total" |
|
|
<el-input style="width:70px;" v-model="total" size="small" type="number" @input="changeTotal" ref="total" |
|
|
@focus="totalFoucs = true" @blur="totalFoucs = false"/> |
|
|
|
|
|
|
|
|
@focus="totalFoucs = true" @blur="totalFoucs = false" /> |
|
|
</div> |
|
|
</div> |
|
|
<div class="disTotal"> |
|
|
<div class="disTotal"> |
|
|
<el-select v-model="asbItemId" placeholder="快速选择组合项目" size="small" |
|
|
|
|
|
filterable :filter-method="filterMethod" :disabled="isComplete" |
|
|
|
|
|
clearable @clear="quickAsb = deepCopy(asbItemQuick)" |
|
|
|
|
|
@change="quickChoosedAsb" default-first-option ref="quickAsbOCX" |
|
|
|
|
|
style="width:240px;text-align: left;padding-right: 15px;"> |
|
|
|
|
|
|
|
|
<el-select v-model="asbItemId" placeholder="快速选择组合项目" size="small" filterable :filter-method="filterMethod" |
|
|
|
|
|
:disabled="isComplete" clearable @clear="quickAsb = deepCopy(asbItemQuick)" @change="quickChoosedAsb" |
|
|
|
|
|
default-first-option ref="quickAsbOCX" style="width:240px;text-align: left;padding-right: 15px;"> |
|
|
<el-option v-for="item in quickAsb" :key="item.id" :value="item.id" :label="item.displayName" /> |
|
|
<el-option v-for="item in quickAsb" :key="item.id" :value="item.id" :label="item.displayName" /> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="mainareaBox"> |
|
|
<div class="mainareaBox"> |
|
|
<el-table :data="dataTransOpts.tableM.register_check_asbitem" highlight-current-row border ref="patientRegister_patientRegisterAbs" style="border-radius: 5px;" |
|
|
|
|
|
:height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" width="100%" :summary-method="getSummaries" |
|
|
|
|
|
show-summary :row-class-name="handleRowClassName" @row-dblclick="removeAbs" @selection-change="selecteditems" size="small" |
|
|
|
|
|
@row-click="removeAsbItem"> |
|
|
|
|
|
|
|
|
<el-table :data="dataTransOpts.tableM.register_check_asbitem" highlight-current-row border |
|
|
|
|
|
ref="patientRegister_patientRegisterAbs" style="border-radius: 5px;" |
|
|
|
|
|
:height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" width="100%" |
|
|
|
|
|
:summary-method="getSummaries" show-summary :row-class-name="handleRowClassName" @row-dblclick="removeAbs" |
|
|
|
|
|
@selection-change="selecteditems" size="small" @row-click="removeAsbItem"> |
|
|
<!-- temporaryselection personnelUnit.nogroupselected--> |
|
|
<!-- temporaryselection personnelUnit.nogroupselected--> |
|
|
<!-- 取消勾选,换成选中 |
|
|
<!-- 取消勾选,换成选中 |
|
|
<el-table-column type="selection" align="center"/> |
|
|
<el-table-column type="selection" align="center"/> |
|
|
--> |
|
|
--> |
|
|
<el-table-column label="已选组合项目" min-width="120" prop="asbitemName" > |
|
|
|
|
|
|
|
|
<el-table-column label="已选组合项目" min-width="150" prop="asbitemName"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<div> |
|
|
<div> |
|
|
<el-tooltip class="item" effect="dark" content="标五角星表示属于分组或套餐的项目" placement="top"> |
|
|
<el-tooltip class="item" effect="dark" content="标五角星表示属于分组或套餐的项目" placement="top"> |
|
|
<i v-if="scope.row.groupPackageId" class="el-icon-star-on" style="font-size: 14px;color: purple;"></i> |
|
|
|
|
|
|
|
|
<i v-if="scope.row.isBelongGroupPackage == 'Y'" class="el-icon-star-on" |
|
|
|
|
|
style="font-size: 14px;color: purple;"></i> |
|
|
</el-tooltip> |
|
|
</el-tooltip> |
|
|
{{ scope.row.asbitemName }} |
|
|
{{ scope.row.asbitemName }} |
|
|
</div> |
|
|
</div> |
|
|
@ -116,13 +121,13 @@ |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
<el-table-column label="实收价格" prop="chargePrice" min-width="70"> |
|
|
<el-table-column label="实收价格" prop="chargePrice" min-width="70"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-input type="number" v-model="scope.row.chargePrice" size="small" |
|
|
|
|
|
@input="changePrice(scope.$index)" /> <!--立即触发保存 @blur="onSubmit('')" --> |
|
|
|
|
|
|
|
|
<el-input type="number" v-model="scope.row.chargePrice" size="small" @input="changePrice(scope.$index)" /> |
|
|
|
|
|
<!--立即触发保存 @blur="onSubmit('')" --> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
<el-table-column prop="total" label="金额" min-width="70" align="center"/> |
|
|
|
|
|
|
|
|
<el-table-column prop="total" label="金额" min-width="70" align="center" /> |
|
|
<el-table-column prop="standardPrice" label="标准金额" min-width="70" v-if="false" /> |
|
|
<el-table-column prop="standardPrice" label="标准金额" min-width="70" v-if="false" /> |
|
|
<el-table-column label="支付方式" prop="payTypeFlag" min-width="100"> |
|
|
|
|
|
|
|
|
<el-table-column label="支付方式" prop="payTypeFlag" width="80"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select v-model="scope.row.payTypeFlag" size="small"> |
|
|
<el-select v-model="scope.row.payTypeFlag" size="small"> |
|
|
<el-option v-for="item in dict.payType" :key="item.id" :label="item.displayName" :value="item.id" /> |
|
|
<el-option v-for="item in dict.payType" :key="item.id" :label="item.displayName" :value="item.id" /> |
|
|
@ -147,11 +152,14 @@ |
|
|
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center"></el-table-column> |
|
|
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center"></el-table-column> |
|
|
<el-table-column prop="creationTime" label="登记日期" win-width="90" align="center"> |
|
|
<el-table-column prop="creationTime" label="登记日期" win-width="90" align="center"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<div>{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD'):'' }}</div> |
|
|
|
|
|
|
|
|
<div>{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD') : '' }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
</el-table> |
|
|
</el-table> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div style="position: absolute;bottom:28px;right:125px;font-size: 10px;"> |
|
|
|
|
|
{{ asbDesc }} |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
@ -159,37 +167,37 @@ |
|
|
import moment from 'moment'; |
|
|
import moment from 'moment'; |
|
|
import { mapState, mapActions } from "vuex"; |
|
|
import { mapState, mapActions } from "vuex"; |
|
|
import { getapi, postapi, putapi, deletapi } from "@/api/api"; |
|
|
import { getapi, postapi, putapi, deletapi } from "@/api/api"; |
|
|
import { getPagePriv,checkPagePriv, arrayFilter, arrayReduce, arrayExistObj, dddw, deepCopy, tcdate} from "../../utlis/proFunc"; |
|
|
|
|
|
|
|
|
import { getPagePriv, checkPagePriv, arrayFilter, arrayReduce, arrayExistObj, dddw, deepCopy, tcdate } from "../../utlis/proFunc"; |
|
|
import proApi from "../../utlis/proApi"; |
|
|
import proApi from "../../utlis/proApi"; |
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
props: ["prForm","prAsbOpraOpts","triggerHeadSave","refreshFormId"], |
|
|
|
|
|
|
|
|
props: ["prForm", "prAsbOpraOpts", "triggerHeadSave", "refreshFormId"], |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
|
pagePriv:{ |
|
|
|
|
|
routeUrlorPageName:'PatientRegisterEdit', //当前页面归属路由或归属页面权限名称 |
|
|
|
|
|
privs:[] // 页面权限 |
|
|
|
|
|
|
|
|
pagePriv: { |
|
|
|
|
|
routeUrlorPageName: 'PatientRegisterEdit', //当前页面归属路由或归属页面权限名称 |
|
|
|
|
|
privs: [] // 页面权限 |
|
|
}, |
|
|
}, |
|
|
oldFormId:'', //配合登记人员复制新增使用 |
|
|
|
|
|
|
|
|
oldFormId: '', //配合登记人员复制新增使用 |
|
|
itemType: [], //项目类别 |
|
|
itemType: [], //项目类别 |
|
|
itemTypeIds: '', //被选中的项目类别ID |
|
|
itemTypeIds: '', //被选中的项目类别ID |
|
|
asbItem:[], //左侧显示的未选组合项目 |
|
|
|
|
|
asbItemAll:[], //所有未选组合项目 |
|
|
|
|
|
|
|
|
asbItem: [], //左侧显示的未选组合项目 |
|
|
|
|
|
asbItemAll: [], //所有未选组合项目 |
|
|
|
|
|
|
|
|
asbItemChoosed: [], //勾选的 未选组合项目 |
|
|
asbItemChoosed: [], //勾选的 未选组合项目 |
|
|
startPoint:-1, |
|
|
|
|
|
|
|
|
startPoint: -1, |
|
|
|
|
|
|
|
|
//patientRegisterAbs:[], //体检人员所选组合项目 放vuex |
|
|
//patientRegisterAbs:[], //体检人员所选组合项目 放vuex |
|
|
patientRegisterAbsChoosed: [], //勾选的 体检人员所选组合项目 |
|
|
patientRegisterAbsChoosed: [], //勾选的 体检人员所选组合项目 |
|
|
PstartPoint:-1, |
|
|
|
|
|
|
|
|
PstartPoint: -1, |
|
|
//patientRegisterAbsDel: [], //体检人员 待删除的组合项目 |
|
|
//patientRegisterAbsDel: [], //体检人员 待删除的组合项目 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
prAsb:[], //当前显示的已选组合项目(新增与编辑的在一起) |
|
|
|
|
|
prAsbDels:[], //待提交 删除的组合项目 |
|
|
|
|
|
|
|
|
// prAsb:[], //当前显示的已选组合项目(新增与编辑的在一起) |
|
|
|
|
|
// prAsbDels:[], //待提交 删除的组合项目 |
|
|
|
|
|
|
|
|
groupAsbs:[], //分组包含的项目 |
|
|
|
|
|
packageAsbs:[], //套餐包含的项目 |
|
|
|
|
|
|
|
|
groupAsbs: [], //分组包含的项目 |
|
|
|
|
|
packageAsbs: [], //套餐包含的项目 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
asbItemId: '', |
|
|
asbItemId: '', |
|
|
@ -197,29 +205,31 @@ export default { |
|
|
total: 0, |
|
|
total: 0, |
|
|
totalStand: 0, |
|
|
totalStand: 0, |
|
|
quickAsb: [], |
|
|
quickAsb: [], |
|
|
asbItemQuick:[], |
|
|
|
|
|
|
|
|
asbItemQuick: [], |
|
|
totalFoucs: false, //总价是否获取焦点 |
|
|
totalFoucs: false, //总价是否获取焦点 |
|
|
discountFoucs: false, //总折扣是否获取焦点 |
|
|
discountFoucs: false, //总折扣是否获取焦点 |
|
|
|
|
|
|
|
|
|
|
|
asbDesc:'', //所选套餐描述 |
|
|
}; |
|
|
}; |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
...mapState(["window", "dataTransOpts", "dict", "customerOrg", "patientRegister", "personnelUnit"]), |
|
|
...mapState(["window", "dataTransOpts", "dict", "customerOrg", "patientRegister", "personnelUnit"]), |
|
|
//是否总检 |
|
|
//是否总检 |
|
|
isComplete(){ |
|
|
|
|
|
return this.prForm.completeFlag == '3' ? true:false; |
|
|
|
|
|
|
|
|
isComplete() { |
|
|
|
|
|
return this.prForm.completeFlag == '3' ? true : false; |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
created(){ |
|
|
|
|
|
|
|
|
created() { |
|
|
//获取用户当前页面的权限 |
|
|
//获取用户当前页面的权限 |
|
|
let userPriv = window.sessionStorage.getItem('userPriv') |
|
|
let userPriv = window.sessionStorage.getItem('userPriv') |
|
|
if(userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName)) |
|
|
|
|
|
|
|
|
if (userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName)) |
|
|
|
|
|
|
|
|
this.dictInit() |
|
|
this.dictInit() |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
updated(){ |
|
|
|
|
|
|
|
|
updated() { |
|
|
this.$nextTick(() => { |
|
|
this.$nextTick(() => { |
|
|
this.$refs['patientRegister_patientRegisterAbs'].doLayout() |
|
|
this.$refs['patientRegister_patientRegisterAbs'].doLayout() |
|
|
}) |
|
|
}) |
|
|
@ -230,10 +240,10 @@ export default { |
|
|
|
|
|
|
|
|
methods: { |
|
|
methods: { |
|
|
...mapActions(['getCustomerOrgGroup', 'getPatientRegisterAbs']), |
|
|
...mapActions(['getCustomerOrgGroup', 'getPatientRegisterAbs']), |
|
|
dddw,moment,deepCopy,checkPagePriv, |
|
|
|
|
|
|
|
|
dddw, moment, deepCopy, checkPagePriv, |
|
|
|
|
|
|
|
|
// 初始化字典信息 |
|
|
// 初始化字典信息 |
|
|
dictInit(){ |
|
|
|
|
|
|
|
|
dictInit() { |
|
|
|
|
|
|
|
|
// 项目类别 树结构 |
|
|
// 项目类别 树结构 |
|
|
getapi("/api/app/item-type/by-code-all").then((res) => { |
|
|
getapi("/api/app/item-type/by-code-all").then((res) => { |
|
|
@ -244,8 +254,8 @@ export default { |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
// 获取组合项目 |
|
|
// 获取组合项目 |
|
|
postapi('/api/app/asbitem/GetBasicList',{isFilterActive:'Y'}).then(res =>{ |
|
|
|
|
|
if(res.code != -1){ |
|
|
|
|
|
|
|
|
postapi('/api/app/asbitem/GetBasicList', { isFilterActive: 'Y' }).then(res => { |
|
|
|
|
|
if (res.code != -1) { |
|
|
this.asbItem = res.data |
|
|
this.asbItem = res.data |
|
|
this.asbItemAll = res.data |
|
|
this.asbItemAll = res.data |
|
|
this.asbItemQuick = res.data |
|
|
this.asbItemQuick = res.data |
|
|
@ -255,22 +265,25 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 获取人员组合项目信息 |
|
|
// 获取人员组合项目信息 |
|
|
async getPrAsb(id){ |
|
|
|
|
|
|
|
|
async getPrAsb(id) { |
|
|
// debugger |
|
|
// debugger |
|
|
// 清空待删除、分组、套餐 |
|
|
// 清空待删除、分组、套餐 |
|
|
console.log('getPrAsb(id)',`getPrAsb(${id})`) |
|
|
|
|
|
this.prAsbDels = [] |
|
|
|
|
|
|
|
|
console.log('getPrAsb(id)', `getPrAsb(${id})`) |
|
|
|
|
|
// this.prAsbDels = [] |
|
|
this.groupAsbs = [] |
|
|
this.groupAsbs = [] |
|
|
this.packageAsbs = [] |
|
|
this.packageAsbs = [] |
|
|
|
|
|
|
|
|
|
|
|
if (!id) { |
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem = [] |
|
|
|
|
|
} else { |
|
|
let result = await proApi.getPrAsb(id) |
|
|
let result = await proApi.getPrAsb(id) |
|
|
this.dataTransOpts.tableM.register_check_asbitem = result.data |
|
|
this.dataTransOpts.tableM.register_check_asbitem = result.data |
|
|
|
|
|
} |
|
|
this.refreshAsbitem() |
|
|
this.refreshAsbitem() |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 复制新增 拷贝明细项目 |
|
|
// 复制新增 拷贝明细项目 |
|
|
async copyNew(){ |
|
|
|
|
|
if(this.oldFormId){ |
|
|
|
|
|
|
|
|
async copyNew() { |
|
|
|
|
|
if (this.oldFormId) { |
|
|
let result = await proApi.getPrAsb(this.oldFormId) |
|
|
let result = await proApi.getPrAsb(this.oldFormId) |
|
|
this.dataTransOpts.tableM.register_check_asbitem = result.data |
|
|
this.dataTransOpts.tableM.register_check_asbitem = result.data |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
@ -285,7 +298,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 刷新未选组合项目 |
|
|
// 刷新未选组合项目 |
|
|
refreshAsbitem(){ |
|
|
|
|
|
|
|
|
refreshAsbitem() { |
|
|
let asbItemAll = deepCopy(this.asbItemAll) |
|
|
let asbItemAll = deepCopy(this.asbItemAll) |
|
|
let choosedAsb = this.dataTransOpts.tableM.register_check_asbitem.filter(e => { |
|
|
let choosedAsb = this.dataTransOpts.tableM.register_check_asbitem.filter(e => { |
|
|
return e.checkCompleteFlag == '0' || !(e.checkCompleteFlag) |
|
|
return e.checkCompleteFlag == '0' || !(e.checkCompleteFlag) |
|
|
@ -306,8 +319,8 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//选择 未选的组合项目 |
|
|
//选择 未选的组合项目 |
|
|
chooseAsbItem(row){ |
|
|
|
|
|
this.asbItem.forEach((e,index) => { |
|
|
|
|
|
|
|
|
chooseAsbItem(row) { |
|
|
|
|
|
this.asbItem.forEach((e, index) => { |
|
|
e.index = index; |
|
|
e.index = index; |
|
|
return e |
|
|
return e |
|
|
}); |
|
|
}); |
|
|
@ -339,7 +352,7 @@ export default { |
|
|
|
|
|
|
|
|
// 按住了ctrl 键 |
|
|
// 按住了ctrl 键 |
|
|
if (this.window.ctrl) { |
|
|
if (this.window.ctrl) { |
|
|
console.log('this.window.ctrl',this.window.ctrl,this.asbItem) |
|
|
|
|
|
|
|
|
console.log('this.window.ctrl', this.window.ctrl, this.asbItem) |
|
|
this.asbItem[row.index].choosed = true; |
|
|
this.asbItem[row.index].choosed = true; |
|
|
this.startPoint = row.index; |
|
|
this.startPoint = row.index; |
|
|
return |
|
|
return |
|
|
@ -358,8 +371,8 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//选择 已选的组合项目 |
|
|
//选择 已选的组合项目 |
|
|
removeAsbItem(row){ |
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach((e,index) => { |
|
|
|
|
|
|
|
|
removeAsbItem(row) { |
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => { |
|
|
e.index = index; |
|
|
e.index = index; |
|
|
return e |
|
|
return e |
|
|
}); |
|
|
}); |
|
|
@ -391,7 +404,7 @@ export default { |
|
|
|
|
|
|
|
|
// 按住了ctrl 键 |
|
|
// 按住了ctrl 键 |
|
|
if (this.window.ctrl) { |
|
|
if (this.window.ctrl) { |
|
|
console.log('this.window.ctrl',this.window.ctrl,this.dataTransOpts.tableM.register_check_asbitem) |
|
|
|
|
|
|
|
|
console.log('this.window.ctrl', this.window.ctrl, this.dataTransOpts.tableM.register_check_asbitem) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true; |
|
|
this.dataTransOpts.tableM.register_check_asbitem[row.index].choosed = true; |
|
|
this.PstartPoint = row.index; |
|
|
this.PstartPoint = row.index; |
|
|
return |
|
|
return |
|
|
@ -414,27 +427,27 @@ export default { |
|
|
let ret = false |
|
|
let ret = false |
|
|
|
|
|
|
|
|
ret = await this.batchAddAsb() |
|
|
ret = await this.batchAddAsb() |
|
|
if(!ret){ |
|
|
|
|
|
if(msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
|
|
|
|
|
|
if (!ret) { |
|
|
|
|
|
if (msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
ret = await this.batchDelAsb() |
|
|
ret = await this.batchDelAsb() |
|
|
if(!ret){ |
|
|
|
|
|
if(msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
|
|
|
|
|
|
if (!ret) { |
|
|
|
|
|
if (msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
ret = await this.batchEditAsb() |
|
|
ret = await this.batchEditAsb() |
|
|
if(!ret){ |
|
|
|
|
|
if(msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
|
|
|
|
|
|
if (!ret) { |
|
|
|
|
|
if (msg) this.$message.warning(`组合项目 ${msg} 失败!`) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
console.log('this.prAsbOpraOpts.formId',this.prAsbOpraOpts.formId) |
|
|
|
|
|
if(this.prAsbOpraOpts.formId){ |
|
|
|
|
|
|
|
|
console.log('this.prAsbOpraOpts.formId', this.prAsbOpraOpts.formId) |
|
|
|
|
|
if (this.prAsbOpraOpts.formId) { |
|
|
this.refreshFormId() |
|
|
this.refreshFormId() |
|
|
}else{ |
|
|
|
|
|
|
|
|
} else { |
|
|
//触发保存人员基本信息 |
|
|
//触发保存人员基本信息 |
|
|
this.triggerHeadSave() |
|
|
this.triggerHeadSave() |
|
|
this.getPrAsb(this.prForm.id) |
|
|
this.getPrAsb(this.prForm.id) |
|
|
@ -452,18 +465,18 @@ export default { |
|
|
|
|
|
|
|
|
// 添加组合项目 |
|
|
// 添加组合项目 |
|
|
///api/app/register-asbitem/many/3fa85f64-5717-4562-b3fc-2c963f66afa6' |
|
|
///api/app/register-asbitem/many/3fa85f64-5717-4562-b3fc-2c963f66afa6' |
|
|
addAbs(asbItemChoosed,oprType) { |
|
|
|
|
|
|
|
|
addAbs(asbItemChoosed, oprType) { |
|
|
let checked = true |
|
|
let checked = true |
|
|
let payTypeFlag = '0' //默认个人支付 |
|
|
let payTypeFlag = '0' //默认个人支付 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//勾选时不需要此操作 start |
|
|
//勾选时不需要此操作 start |
|
|
if(oprType && oprType == 'all'){ |
|
|
|
|
|
|
|
|
if (oprType && oprType == 'all') { |
|
|
asbItemChoosed = deepCopy(this.asbItem) |
|
|
asbItemChoosed = deepCopy(this.asbItem) |
|
|
}else if(oprType && oprType == 'choosed'){ |
|
|
|
|
|
|
|
|
} else if (oprType && oprType == 'choosed') { |
|
|
asbItemChoosed = [] |
|
|
asbItemChoosed = [] |
|
|
this.asbItem.forEach(e =>{ |
|
|
|
|
|
if(e.choosed){ |
|
|
|
|
|
|
|
|
this.asbItem.forEach(e => { |
|
|
|
|
|
if (e.choosed) { |
|
|
asbItemChoosed.push(e) |
|
|
asbItemChoosed.push(e) |
|
|
e.choosed = false |
|
|
e.choosed = false |
|
|
} |
|
|
} |
|
|
@ -500,13 +513,13 @@ export default { |
|
|
let pojo = { |
|
|
let pojo = { |
|
|
asbitemId: asbItemChoosed[i].id, |
|
|
asbitemId: asbItemChoosed[i].id, |
|
|
asbitemName: asbItemChoosed[i].displayName, |
|
|
asbitemName: asbItemChoosed[i].displayName, |
|
|
patientRegisterId: this.prForm.id||this.dict.personOrgId, |
|
|
|
|
|
|
|
|
patientRegisterId: this.prForm.id || this.dict.personOrgId, |
|
|
standardPrice: asbItemChoosed[i].price, |
|
|
standardPrice: asbItemChoosed[i].price, |
|
|
chargePrice: asbItemChoosed[i].price, |
|
|
chargePrice: asbItemChoosed[i].price, |
|
|
payTypeFlag, |
|
|
payTypeFlag, |
|
|
isCharge: "N", |
|
|
isCharge: "N", |
|
|
checkCompleteFlag:'0', |
|
|
|
|
|
discount:100, |
|
|
|
|
|
|
|
|
checkCompleteFlag: '0', |
|
|
|
|
|
discount: 100, |
|
|
amount: 1, |
|
|
amount: 1, |
|
|
total: asbItemChoosed[i].price, |
|
|
total: asbItemChoosed[i].price, |
|
|
} |
|
|
} |
|
|
@ -526,7 +539,7 @@ export default { |
|
|
async batchAddAsb() { |
|
|
async batchAddAsb() { |
|
|
let ret = false |
|
|
let ret = false |
|
|
let patientRegisterId = this.prForm.id || this.prAsbOpraOpts.formId |
|
|
let patientRegisterId = this.prForm.id || this.prAsbOpraOpts.formId |
|
|
if(!patientRegisterId){ |
|
|
|
|
|
|
|
|
if (!patientRegisterId) { |
|
|
this.$message.warning("人员基本信息未保存"); |
|
|
this.$message.warning("人员基本信息未保存"); |
|
|
return ret |
|
|
return ret |
|
|
} |
|
|
} |
|
|
@ -534,7 +547,7 @@ export default { |
|
|
let registerAsbitems = [] |
|
|
let registerAsbitems = [] |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
if(!e.id){ |
|
|
|
|
|
|
|
|
if (!e.id) { |
|
|
registerAsbitems.push({ |
|
|
registerAsbitems.push({ |
|
|
asbitemId: e.asbitemId, |
|
|
asbitemId: e.asbitemId, |
|
|
patientRegisterId, |
|
|
patientRegisterId, |
|
|
@ -548,19 +561,19 @@ export default { |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
if(registerAsbitems.length == 0) return true |
|
|
|
|
|
|
|
|
if (registerAsbitems.length == 0) return true |
|
|
|
|
|
|
|
|
let body = { |
|
|
let body = { |
|
|
medicalCenterId:this.prForm.medicalCenterId, |
|
|
|
|
|
|
|
|
medicalCenterId: this.prForm.medicalCenterId, |
|
|
registerAsbitems, |
|
|
registerAsbitems, |
|
|
isAutoMerger:'Y' |
|
|
|
|
|
|
|
|
isAutoMerger: 'Y' |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
let res = await postapi('/api/app/registerasbitem/createregisterasbitemmany', body) |
|
|
let res = await postapi('/api/app/registerasbitem/createregisterasbitemmany', body) |
|
|
if(res.code != -1) ret = true |
|
|
|
|
|
|
|
|
if (res.code != -1) ret = true |
|
|
} catch (error) { |
|
|
} catch (error) { |
|
|
console.log('批量添加组合项目失败',error) |
|
|
|
|
|
|
|
|
console.log('批量添加组合项目失败', error) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
return ret |
|
|
return ret |
|
|
@ -574,9 +587,9 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
if(e.id){ |
|
|
|
|
|
|
|
|
if (e.id) { |
|
|
body.push({ |
|
|
body.push({ |
|
|
registerAsbitemId:e.id, |
|
|
|
|
|
|
|
|
registerAsbitemId: e.id, |
|
|
input: { |
|
|
input: { |
|
|
chargePrice: e.chargePrice, |
|
|
chargePrice: e.chargePrice, |
|
|
payTypeFlag: e.payTypeFlag, |
|
|
payTypeFlag: e.payTypeFlag, |
|
|
@ -587,13 +600,13 @@ export default { |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
if(body.length == 0) return true |
|
|
|
|
|
|
|
|
if (body.length == 0) return true |
|
|
|
|
|
|
|
|
try { |
|
|
try { |
|
|
let res = await postapi(`/api/app/registerasbitem/updatemany`, body) |
|
|
let res = await postapi(`/api/app/registerasbitem/updatemany`, body) |
|
|
if(res.code != -1) ret = true |
|
|
|
|
|
|
|
|
if (res.code != -1) ret = true |
|
|
} catch (error) { |
|
|
} catch (error) { |
|
|
console.log('批量提交更新组合项目失败',error) |
|
|
|
|
|
|
|
|
console.log('批量提交更新组合项目失败', error) |
|
|
} |
|
|
} |
|
|
return ret |
|
|
return ret |
|
|
}, |
|
|
}, |
|
|
@ -601,40 +614,40 @@ export default { |
|
|
//批量提交删除组合项目 |
|
|
//批量提交删除组合项目 |
|
|
async batchDelAsb() { |
|
|
async batchDelAsb() { |
|
|
let ret = false |
|
|
let ret = false |
|
|
if(this.prAsbDels.length == 0) return true |
|
|
|
|
|
|
|
|
// if(this.prAsbDels.length == 0) return true |
|
|
|
|
|
|
|
|
let registerAsbitemIds=[] |
|
|
|
|
|
|
|
|
// let registerAsbitemIds=[] |
|
|
|
|
|
|
|
|
this.prAsbDels.forEach(e => { |
|
|
|
|
|
registerAsbitemIds.push(e.id) |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
// this.prAsbDels.forEach(e => { |
|
|
|
|
|
// registerAsbitemIds.push(e.id) |
|
|
|
|
|
// }) |
|
|
|
|
|
|
|
|
console.log(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds}) |
|
|
|
|
|
|
|
|
// console.log(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds}) |
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
let res = await postapi(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds}) |
|
|
|
|
|
if(res.code != -1) ret = true |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
console.log('批量删除组合项目失败',error) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// try { |
|
|
|
|
|
// let res = await postapi(`/api/app/registerasbitem/deletemany`, {registerAsbitemIds}) |
|
|
|
|
|
// if(res.code != -1) ret = true |
|
|
|
|
|
// } catch (error) { |
|
|
|
|
|
// console.log('批量删除组合项目失败',error) |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
return ret |
|
|
return ret |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//删除 人员已选中的组合项目 |
|
|
//删除 人员已选中的组合项目 |
|
|
///api/app/register-asbitem/many?RegisterAsbitemIds=3fa85f64-5717-4562-b3fc-2c963f66afa6 |
|
|
///api/app/register-asbitem/many?RegisterAsbitemIds=3fa85f64-5717-4562-b3fc-2c963f66afa6 |
|
|
delAbs(absForDel,oprType) { |
|
|
|
|
|
|
|
|
delAbs(absForDel, oprType) { |
|
|
let chargeComplete = '' |
|
|
let chargeComplete = '' |
|
|
let lfind = -1 |
|
|
let lfind = -1 |
|
|
let tempRd = {} |
|
|
let tempRd = {} |
|
|
|
|
|
|
|
|
//勾选时不需要此操作 start |
|
|
//勾选时不需要此操作 start |
|
|
if(oprType && oprType == 'all'){ |
|
|
|
|
|
|
|
|
if (oprType && oprType == 'all') { |
|
|
absForDel = deepCopy(this.dataTransOpts.tableM.register_check_asbitem) |
|
|
absForDel = deepCopy(this.dataTransOpts.tableM.register_check_asbitem) |
|
|
}else if(oprType && oprType == 'choosed'){ |
|
|
|
|
|
|
|
|
} else if (oprType && oprType == 'choosed') { |
|
|
absForDel = [] |
|
|
absForDel = [] |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{ |
|
|
|
|
|
if(e.choosed){ |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
|
|
|
if (e.choosed) { |
|
|
absForDel.push(e) |
|
|
absForDel.push(e) |
|
|
e.choosed = false |
|
|
e.choosed = false |
|
|
} |
|
|
} |
|
|
@ -651,10 +664,10 @@ export default { |
|
|
// 如果已经收费 或 体检,则不允许删除 |
|
|
// 如果已经收费 或 体检,则不允许删除 |
|
|
if (e.isCharge == 'Y' || (e.checkCompleteFlag && e.checkCompleteFlag != '0')) { |
|
|
if (e.isCharge == 'Y' || (e.checkCompleteFlag && e.checkCompleteFlag != '0')) { |
|
|
chargeComplete += e.asbitemName + ',' |
|
|
chargeComplete += e.asbitemName + ',' |
|
|
}else{ |
|
|
|
|
|
|
|
|
} else { |
|
|
lfind = arrayExistObj(this.dataTransOpts.tableM.register_check_asbitem, 'asbitemId', e.asbitemId) |
|
|
lfind = arrayExistObj(this.dataTransOpts.tableM.register_check_asbitem, 'asbitemId', e.asbitemId) |
|
|
if(lfind > -1){ |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(lfind,1)[0]) |
|
|
|
|
|
|
|
|
if (lfind > -1) { |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(lfind, 1)[0]) |
|
|
// if(e.id) this.prAsbDels.push(tempRd) |
|
|
// if(e.id) this.prAsbDels.push(tempRd) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -671,7 +684,7 @@ export default { |
|
|
|
|
|
|
|
|
//双击删除已选项目 |
|
|
//双击删除已选项目 |
|
|
removeAbs(row) { |
|
|
removeAbs(row) { |
|
|
if(this.isComplete){ |
|
|
|
|
|
|
|
|
if (this.isComplete) { |
|
|
this.$message.info('人员已总检,不可 添加/删除 组合项目') |
|
|
this.$message.info('人员已总检,不可 添加/删除 组合项目') |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
@ -684,7 +697,7 @@ export default { |
|
|
let asbItemAll = deepCopy(this.asbItemAll) |
|
|
let asbItemAll = deepCopy(this.asbItemAll) |
|
|
let lv = ""; |
|
|
let lv = ""; |
|
|
if (typeof this.itemTypeIds == "object") { |
|
|
if (typeof this.itemTypeIds == "object") { |
|
|
if(this.itemTypeIds.length > 0) lv = this.itemTypeIds[this.itemTypeIds.length - 1]; |
|
|
|
|
|
|
|
|
if (this.itemTypeIds.length > 0) lv = this.itemTypeIds[this.itemTypeIds.length - 1]; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (lv) { |
|
|
if (lv) { |
|
|
@ -698,8 +711,8 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//选中 分组 所包含的组合项目 |
|
|
//选中 分组 所包含的组合项目 |
|
|
getGroupAsbs(id){ |
|
|
|
|
|
if(!id){ |
|
|
|
|
|
|
|
|
getGroupAsbs(id) { |
|
|
|
|
|
if (!id) { |
|
|
this.groupAsbs = [] |
|
|
this.groupAsbs = [] |
|
|
this.changeGroup(id) |
|
|
this.changeGroup(id) |
|
|
return |
|
|
return |
|
|
@ -707,7 +720,7 @@ export default { |
|
|
|
|
|
|
|
|
getapi(`/api/app/customerorggroupdetail/getcustomerorggroupdetailinasbitem?CustomerOrgGroupId=${id}`) |
|
|
getapi(`/api/app/customerorggroupdetail/getcustomerorggroupdetailinasbitem?CustomerOrgGroupId=${id}`) |
|
|
.then((res) => { |
|
|
.then((res) => { |
|
|
if(res.code != -1){ |
|
|
|
|
|
|
|
|
if (res.code != -1) { |
|
|
this.groupAsbs = res.data |
|
|
this.groupAsbs = res.data |
|
|
this.changeGroup(id) |
|
|
this.changeGroup(id) |
|
|
} |
|
|
} |
|
|
@ -716,16 +729,16 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//选中 套餐 所包含的组合项目 |
|
|
//选中 套餐 所包含的组合项目 |
|
|
getPackageAsbs(id){ |
|
|
|
|
|
if(!id){ |
|
|
|
|
|
|
|
|
getPackageAsbs(id) { |
|
|
|
|
|
if (!id) { |
|
|
this.packageAsbs = [] |
|
|
this.packageAsbs = [] |
|
|
this.changePackage(id) |
|
|
this.changePackage(id) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
postapi('/api/app/medicalpackagedetail/getmedicalpackageinasbitem',{medicalPackageId:id}) |
|
|
|
|
|
|
|
|
postapi('/api/app/medicalpackagedetail/getmedicalpackageinasbitem', { medicalPackageId: id }) |
|
|
.then((res) => { |
|
|
.then((res) => { |
|
|
if(res.code != -1){ |
|
|
|
|
|
|
|
|
if (res.code != -1) { |
|
|
this.packageAsbs = res.data |
|
|
this.packageAsbs = res.data |
|
|
this.changePackage(id) |
|
|
this.changePackage(id) |
|
|
} |
|
|
} |
|
|
@ -733,38 +746,39 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 更换分组 |
|
|
// 更换分组 |
|
|
changeGroup(newId){ |
|
|
|
|
|
|
|
|
changeGroup(newId) { |
|
|
//已收费项目,不更改收费方式、价格及数量,只更改分组id |
|
|
//已收费项目,不更改收费方式、价格及数量,只更改分组id |
|
|
let payTypeFlag = '0' |
|
|
let payTypeFlag = '0' |
|
|
let lfind = -1 |
|
|
let lfind = -1 |
|
|
let tempRd = {} |
|
|
let tempRd = {} |
|
|
|
|
|
|
|
|
if(!newId){ |
|
|
|
|
|
|
|
|
if (!newId) { |
|
|
this.setGroupPackageNull() |
|
|
this.setGroupPackageNull() |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付 |
|
|
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付 |
|
|
|
|
|
|
|
|
for(let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1;i>-1;i--){ |
|
|
|
|
|
lfind = arrayExistObj(this.groupAsbs,'asbitemId', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId) |
|
|
|
|
|
if(lfind > -1){ |
|
|
|
|
|
|
|
|
for (let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1; i > -1; i--) { |
|
|
|
|
|
lfind = arrayExistObj(this.groupAsbs, 'asbitemId', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId) |
|
|
|
|
|
if (lfind > -1) { |
|
|
//找到了则更新此项目 |
|
|
//找到了则更新此项目 |
|
|
tempRd = Object.assign({},this.groupAsbs.splice(lfind,1)[0]) |
|
|
|
|
|
|
|
|
tempRd = Object.assign({}, this.groupAsbs.splice(lfind, 1)[0]) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId |
|
|
if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y'){ |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].isBelongGroupPackage = 'Y' |
|
|
|
|
|
if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y') { |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.customerOrgGroupDetailAmount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.customerOrgGroupDetailAmount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.customerOrgGroupDetailPrice |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.customerOrgGroupDetailPrice |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
} |
|
|
} |
|
|
}else{ |
|
|
|
|
|
|
|
|
} else { |
|
|
//没找到则移除此项目 |
|
|
//没找到则移除此项目 |
|
|
if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || ( this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')){ |
|
|
|
|
|
|
|
|
if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || (this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')) { |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null |
|
|
}else{ |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i,1)[0]) |
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i, 1)[0]) |
|
|
// if(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
// if(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -772,36 +786,37 @@ export default { |
|
|
|
|
|
|
|
|
// debugger |
|
|
// debugger |
|
|
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来) |
|
|
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来) |
|
|
this.groupAsbs.forEach(e =>{ |
|
|
|
|
|
lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.asbitemId) |
|
|
|
|
|
if(lfind > -1){ |
|
|
|
|
|
tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0], |
|
|
|
|
|
{ |
|
|
|
|
|
groupPackageId:newId, |
|
|
|
|
|
standardPrice:e.price, |
|
|
|
|
|
chargePrice:e.customerOrgGroupDetailPrice, |
|
|
|
|
|
payTypeFlag, |
|
|
|
|
|
isCharge: "N", |
|
|
|
|
|
discount:e.discount, |
|
|
|
|
|
amount:e.customerOrgGroupDetailAmount, |
|
|
|
|
|
total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100 |
|
|
|
|
|
} |
|
|
|
|
|
) |
|
|
|
|
|
}else{ |
|
|
|
|
|
|
|
|
this.groupAsbs.forEach(e => { |
|
|
|
|
|
// lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.asbitemId) |
|
|
|
|
|
// if(lfind > -1){ |
|
|
|
|
|
// tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0], |
|
|
|
|
|
// { |
|
|
|
|
|
// groupPackageId:newId, |
|
|
|
|
|
// standardPrice:e.price, |
|
|
|
|
|
// chargePrice:e.customerOrgGroupDetailPrice, |
|
|
|
|
|
// payTypeFlag, |
|
|
|
|
|
// isCharge: "N", |
|
|
|
|
|
// discount:e.discount, |
|
|
|
|
|
// amount:e.customerOrgGroupDetailAmount, |
|
|
|
|
|
// total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100 |
|
|
|
|
|
// } |
|
|
|
|
|
// ) |
|
|
|
|
|
// }else{ |
|
|
tempRd = { |
|
|
tempRd = { |
|
|
groupPackageId:newId, |
|
|
|
|
|
asbitemId:e.asbitemId, |
|
|
|
|
|
asbitemName:e.displayName, |
|
|
|
|
|
patientRegisterId:this.prForm.id, |
|
|
|
|
|
standardPrice:e.price, |
|
|
|
|
|
chargePrice:e.customerOrgGroupDetailPrice, |
|
|
|
|
|
|
|
|
groupPackageId: newId, |
|
|
|
|
|
isBelongGroupPackage:'Y', |
|
|
|
|
|
asbitemId: e.asbitemId, |
|
|
|
|
|
asbitemName: e.displayName, |
|
|
|
|
|
patientRegisterId: this.prForm.id, |
|
|
|
|
|
standardPrice: e.price, |
|
|
|
|
|
chargePrice: e.customerOrgGroupDetailPrice, |
|
|
payTypeFlag, |
|
|
payTypeFlag, |
|
|
isCharge: "N", |
|
|
isCharge: "N", |
|
|
discount:e.discount, |
|
|
|
|
|
amount:e.customerOrgGroupDetailAmount, |
|
|
|
|
|
total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100)/100 |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
discount: e.discount, |
|
|
|
|
|
amount: e.customerOrgGroupDetailAmount, |
|
|
|
|
|
total: Math.round(e.customerOrgGroupDetailAmount * e.customerOrgGroupDetailPrice * 100) / 100 |
|
|
} |
|
|
} |
|
|
|
|
|
// } |
|
|
this.dataTransOpts.tableM.register_check_asbitem.push(tempRd) |
|
|
this.dataTransOpts.tableM.register_check_asbitem.push(tempRd) |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
@ -809,74 +824,76 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 更换套餐 |
|
|
// 更换套餐 |
|
|
changePackage(newId){ |
|
|
|
|
|
|
|
|
changePackage(newId) { |
|
|
//已收费项目,不更改收费方式、价格及数量,只更改分组id |
|
|
//已收费项目,不更改收费方式、价格及数量,只更改分组id |
|
|
let payTypeFlag = '0' |
|
|
let payTypeFlag = '0' |
|
|
let lfind = -1 |
|
|
let lfind = -1 |
|
|
let tempRd = {} |
|
|
let tempRd = {} |
|
|
|
|
|
|
|
|
if(!newId){ |
|
|
|
|
|
|
|
|
if (!newId) { |
|
|
this.setGroupPackageNull() |
|
|
this.setGroupPackageNull() |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付 |
|
|
if (this.prForm.customerOrgId != this.dict.personOrgId) payTypeFlag = '1' //单位支付 |
|
|
|
|
|
|
|
|
for(let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1;i>-1;i--){ |
|
|
|
|
|
lfind = arrayExistObj(this.packageAsbs,'id', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId) |
|
|
|
|
|
if(lfind > -1){ |
|
|
|
|
|
|
|
|
for (let i = this.dataTransOpts.tableM.register_check_asbitem.length - 1; i > -1; i--) { |
|
|
|
|
|
lfind = arrayExistObj(this.packageAsbs, 'id', this.dataTransOpts.tableM.register_check_asbitem[i].asbitemId) |
|
|
|
|
|
if (lfind > -1) { |
|
|
//找到了则更新此项目 |
|
|
//找到了则更新此项目 |
|
|
tempRd = Object.assign({},this.packageAsbs.splice(lfind,1)[0]) |
|
|
|
|
|
|
|
|
tempRd = Object.assign({}, this.packageAsbs.splice(lfind, 1)[0]) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = newId |
|
|
if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y'){ |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].isBelongGroupPackage = 'Y' |
|
|
|
|
|
if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge != 'Y') { |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].payTypeFlag = payTypeFlag |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.medicalPackageDetailAmount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].amount = tempRd.medicalPackageDetailAmount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].standardPrice = tempRd.price |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.medicalPackageDetailPrice |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].chargePrice = tempRd.medicalPackageDetailPrice |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].discount = tempRd.discount |
|
|
} |
|
|
} |
|
|
}else{ |
|
|
|
|
|
|
|
|
} else { |
|
|
//没找到则移除此项目 |
|
|
//没找到则移除此项目 |
|
|
if( this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || ( this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')){ |
|
|
|
|
|
|
|
|
if (this.dataTransOpts.tableM.register_check_asbitem[i].isCharge == 'Y' || (this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag && this.dataTransOpts.tableM.register_check_asbitem[i].checkCompleteFlag != '0')) { |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null |
|
|
this.dataTransOpts.tableM.register_check_asbitem[i].groupPackageId = null |
|
|
}else{ |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i,1)[0]) |
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
tempRd = Object.assign({}, this.dataTransOpts.tableM.register_check_asbitem.splice(i, 1)[0]) |
|
|
// if(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
// if(tempRd.id) this.prAsbDels.push(tempRd) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来) |
|
|
//未找到则添加(如果在待删除中找到记录,则待删除中记录移至当前显示记录中来) |
|
|
this.packageAsbs.forEach(e =>{ |
|
|
|
|
|
lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.id) |
|
|
|
|
|
if(lfind > -1){ |
|
|
|
|
|
tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0], |
|
|
|
|
|
{ |
|
|
|
|
|
groupPackageId:newId, |
|
|
|
|
|
standardPrice:e.price, |
|
|
|
|
|
chargePrice:e.medicalPackageDetailPrice, |
|
|
|
|
|
payTypeFlag, |
|
|
|
|
|
isCharge: "N", |
|
|
|
|
|
discount:e.discount, |
|
|
|
|
|
amount:e.medicalPackageDetailAmount, |
|
|
|
|
|
total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100 |
|
|
|
|
|
} |
|
|
|
|
|
) |
|
|
|
|
|
}else{ |
|
|
|
|
|
|
|
|
this.packageAsbs.forEach(e => { |
|
|
|
|
|
// lfind = arrayExistObj(this.prAsbDels,'asbitemId',e.id) |
|
|
|
|
|
// if(lfind > -1){ |
|
|
|
|
|
// tempRd = Object.assign(this.prAsbDels.splice(lfind,1)[0], |
|
|
|
|
|
// { |
|
|
|
|
|
// groupPackageId:newId, |
|
|
|
|
|
// standardPrice:e.price, |
|
|
|
|
|
// chargePrice:e.medicalPackageDetailPrice, |
|
|
|
|
|
// payTypeFlag, |
|
|
|
|
|
// isCharge: "N", |
|
|
|
|
|
// discount:e.discount, |
|
|
|
|
|
// amount:e.medicalPackageDetailAmount, |
|
|
|
|
|
// total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100 |
|
|
|
|
|
// } |
|
|
|
|
|
// ) |
|
|
|
|
|
// }else{ |
|
|
tempRd = { |
|
|
tempRd = { |
|
|
groupPackageId:newId, |
|
|
|
|
|
asbitemId:e.id, |
|
|
|
|
|
asbitemName:e.displayName, |
|
|
|
|
|
patientRegisterId:this.prForm.id, |
|
|
|
|
|
standardPrice:e.price, |
|
|
|
|
|
chargePrice:e.medicalPackageDetailPrice, |
|
|
|
|
|
|
|
|
groupPackageId: newId, |
|
|
|
|
|
isBelongGroupPackage: 'Y', |
|
|
|
|
|
asbitemId: e.id, |
|
|
|
|
|
asbitemName: e.displayName, |
|
|
|
|
|
patientRegisterId: this.prForm.id, |
|
|
|
|
|
standardPrice: e.price, |
|
|
|
|
|
chargePrice: e.medicalPackageDetailPrice, |
|
|
payTypeFlag, |
|
|
payTypeFlag, |
|
|
isCharge: "N", |
|
|
isCharge: "N", |
|
|
discount:e.discount, |
|
|
|
|
|
amount:e.medicalPackageDetailAmount, |
|
|
|
|
|
total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100)/100 |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
discount: e.discount, |
|
|
|
|
|
amount: e.medicalPackageDetailAmount, |
|
|
|
|
|
total: Math.round(e.medicalPackageDetailAmount * e.medicalPackageDetailPrice * 100) / 100 |
|
|
} |
|
|
} |
|
|
|
|
|
// } |
|
|
this.dataTransOpts.tableM.register_check_asbitem.push(tempRd) |
|
|
this.dataTransOpts.tableM.register_check_asbitem.push(tempRd) |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
@ -884,15 +901,16 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
// 从 有分组/套餐 切换成 无分组/套餐 时 |
|
|
// 从 有分组/套餐 切换成 无分组/套餐 时 |
|
|
setGroupPackageNull(){ |
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{ |
|
|
|
|
|
|
|
|
setGroupPackageNull() { |
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
e.groupPackageId = null |
|
|
e.groupPackageId = null |
|
|
|
|
|
e.isBelongGroupPackage = 'N' |
|
|
}) |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//双击选择组合项目 |
|
|
//双击选择组合项目 |
|
|
dbClickChoosedAsb(row) { |
|
|
dbClickChoosedAsb(row) { |
|
|
if(this.isComplete){ |
|
|
|
|
|
|
|
|
if (this.isComplete) { |
|
|
this.$message.info('人员已总检,不可 添加/删除 组合项目') |
|
|
this.$message.info('人员已总检,不可 添加/删除 组合项目') |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
@ -962,28 +980,28 @@ export default { |
|
|
let qtyIsOneLast = 0 //数量为1的最后行项目,用于返写金额 |
|
|
let qtyIsOneLast = 0 //数量为1的最后行项目,用于返写金额 |
|
|
|
|
|
|
|
|
// console.log('this.total / this.totalStand',this.total , this.totalStand) |
|
|
// console.log('this.total / this.totalStand',this.total , this.totalStand) |
|
|
this.discount = Math.round((100 * this.total / this.totalStand) * 100)/100 |
|
|
|
|
|
|
|
|
this.discount = Math.round((100 * this.total / this.totalStand) * 100) / 100 |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => { |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach((e, index) => { |
|
|
if (e.amount == 1 && e.standardPrice != 0) qtyIsOneLast = index |
|
|
if (e.amount == 1 && e.standardPrice != 0) qtyIsOneLast = index |
|
|
e.discount = this.discount |
|
|
e.discount = this.discount |
|
|
e.chargePrice = Math.round((e.standardPrice * this.discount / 100) * 100)/100 |
|
|
|
|
|
e.total = Math.round((e.standardPrice * this.discount * e.amount / 100) * 100)/100 |
|
|
|
|
|
sumChargeDetails += Math.round((e.standardPrice * this.discount * e.amount / 100) * 100)/100 |
|
|
|
|
|
|
|
|
e.chargePrice = Math.round((e.standardPrice * this.discount / 100) * 100) / 100 |
|
|
|
|
|
e.total = Math.round((e.standardPrice * this.discount * e.amount / 100) * 100) / 100 |
|
|
|
|
|
sumChargeDetails += Math.round((e.standardPrice * this.discount * e.amount / 100) * 100) / 100 |
|
|
}); |
|
|
}); |
|
|
console.log('this.dataTransOpts.tableM.register_check_asbitem',this.dataTransOpts.tableM.register_check_asbitem) |
|
|
|
|
|
|
|
|
console.log('this.dataTransOpts.tableM.register_check_asbitem', this.dataTransOpts.tableM.register_check_asbitem) |
|
|
|
|
|
|
|
|
// console.log('this.total - sumChargeDetails', sumChargeDetails, this.total - sumChargeDetails) |
|
|
// console.log('this.total - sumChargeDetails', sumChargeDetails, this.total - sumChargeDetails) |
|
|
//平衡金额(按总价折扣后,再根据折扣合计 会出现金额差) |
|
|
//平衡金额(按总价折扣后,再根据折扣合计 会出现金额差) |
|
|
if (this.total != sumChargeDetails) { |
|
|
if (this.total != sumChargeDetails) { |
|
|
console.log('qtyIsOneLast',qtyIsOneLast) |
|
|
|
|
|
|
|
|
console.log('qtyIsOneLast', qtyIsOneLast) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total = |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total = |
|
|
Math.round((Number( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total) + Number(this.total) - Number(sumChargeDetails))*100)/100 |
|
|
|
|
|
|
|
|
Math.round((Number(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total) + Number(this.total) - Number(sumChargeDetails)) * 100) / 100 |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice = |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice = |
|
|
Math.round( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total * 100 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].amount)/100 |
|
|
|
|
|
if( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice != 0){ |
|
|
|
|
|
|
|
|
Math.round(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].total * 100 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].amount) / 100 |
|
|
|
|
|
if (this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice != 0) { |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].discount = |
|
|
this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].discount = |
|
|
Math.round( this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice * 10000/ this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice)/100 |
|
|
|
|
|
|
|
|
Math.round(this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[qtyIsOneLast].standardPrice) / 100 |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
//this.onSubmit('') |
|
|
//this.onSubmit('') |
|
|
@ -993,9 +1011,9 @@ export default { |
|
|
changeDiscount(index) { |
|
|
changeDiscount(index) { |
|
|
//console.log('index',index) |
|
|
//console.log('index',index) |
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return |
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return |
|
|
if (! this.dataTransOpts.tableM.register_check_asbitem[index].discount) return |
|
|
|
|
|
|
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem[index].discount) return |
|
|
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) |
|
|
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice = Math.round( this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice * this.dataTransOpts.tableM.register_check_asbitem[index].discount)/100 |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice = Math.round(this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice * this.dataTransOpts.tableM.register_check_asbitem[index].discount) / 100 |
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].total = this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * this.dataTransOpts.tableM.register_check_asbitem[index].amount |
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].total = this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * this.dataTransOpts.tableM.register_check_asbitem[index].amount |
|
|
// this.onSubmit('') |
|
|
// this.onSubmit('') |
|
|
}, |
|
|
}, |
|
|
@ -1004,9 +1022,9 @@ export default { |
|
|
changePrice(index) { |
|
|
changePrice(index) { |
|
|
//console.log('index',index) |
|
|
//console.log('index',index) |
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return |
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem || this.dataTransOpts.tableM.register_check_asbitem.length == 0) return |
|
|
if (! this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice) return |
|
|
|
|
|
|
|
|
if (!this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice) return |
|
|
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) |
|
|
//console.log( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice, this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) |
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].discount = Math.round( this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice)/100 |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem[index].discount = Math.round(this.dataTransOpts.tableM.register_check_asbitem[index].chargePrice * 10000 / this.dataTransOpts.tableM.register_check_asbitem[index].standardPrice) / 100 |
|
|
// this.onSubmit('') |
|
|
// this.onSubmit('') |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
@ -1015,11 +1033,17 @@ export default { |
|
|
const { columns, data } = param; |
|
|
const { columns, data } = param; |
|
|
const sumCol = [1, 5] //需合计的列 |
|
|
const sumCol = [1, 5] //需合计的列 |
|
|
const sums = []; |
|
|
const sums = []; |
|
|
|
|
|
|
|
|
|
|
|
let count = this.dataTransOpts.tableM.register_check_asbitem.length |
|
|
|
|
|
let pack = this.dataTransOpts.tableM.register_check_asbitem.filter(e => { return e.isBelongGroupPackage == 'Y'}).length |
|
|
|
|
|
|
|
|
|
|
|
this.asbDesc = `共选 ${count} 个项目,其中套餐/分组 ${pack} 个,加做 ${count - pack} 个` |
|
|
|
|
|
|
|
|
columns.forEach((column, index) => { |
|
|
columns.forEach((column, index) => { |
|
|
//console.log('column, index,data',column, index,data) |
|
|
//console.log('column, index,data',column, index,data) |
|
|
//显示合计列 |
|
|
//显示合计列 |
|
|
if (index === 0) { |
|
|
if (index === 0) { |
|
|
sums[index] = '合计'; |
|
|
|
|
|
|
|
|
sums[index] = `合计`; |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -1031,15 +1055,15 @@ export default { |
|
|
|
|
|
|
|
|
sums[index] = 0 |
|
|
sums[index] = 0 |
|
|
data.forEach(e => { |
|
|
data.forEach(e => { |
|
|
if (!isNaN(e[column.property])){ |
|
|
|
|
|
if(index == 1){ |
|
|
|
|
|
|
|
|
if (!isNaN(e[column.property])) { |
|
|
|
|
|
if (index == 1) { |
|
|
sums[index] += e[column.property] * e['amount'] |
|
|
sums[index] += e[column.property] * e['amount'] |
|
|
}else{ |
|
|
|
|
|
|
|
|
} else { |
|
|
sums[index] += e[column.property] |
|
|
sums[index] += e[column.property] |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
sums[index] = Math.round(sums[index] * 100)/100 //+ ' 元'; |
|
|
|
|
|
|
|
|
sums[index] = Math.round(sums[index] * 100) / 100 //+ ' 元'; |
|
|
|
|
|
|
|
|
// const values = data.map(item => Number(item[column.property])); |
|
|
// const values = data.map(item => Number(item[column.property])); |
|
|
// if (!values.every(value => isNaN(value))) { |
|
|
// if (!values.every(value => isNaN(value))) { |
|
|
@ -1061,7 +1085,7 @@ export default { |
|
|
this.totalStand = sums[1]; |
|
|
this.totalStand = sums[1]; |
|
|
//console.log('this.totalFoucs/this.discountFoucs',this.totalFoucs,this.discountFoucs) |
|
|
//console.log('this.totalFoucs/this.discountFoucs',this.totalFoucs,this.discountFoucs) |
|
|
if (!this.totalFoucs) this.total = sums[5]; |
|
|
if (!this.totalFoucs) this.total = sums[5]; |
|
|
if (!this.discountFoucs) this.discount = Math.round(this.total * 10000 / this.totalStand)/100; |
|
|
|
|
|
|
|
|
if (!this.discountFoucs) this.discount = Math.round(this.total * 10000 / this.totalStand) / 100; |
|
|
return sums; |
|
|
return sums; |
|
|
}, |
|
|
}, |
|
|
}, |
|
|
}, |
|
|
@ -1094,22 +1118,22 @@ export default { |
|
|
// } |
|
|
// } |
|
|
// }, |
|
|
// }, |
|
|
|
|
|
|
|
|
"dataTransOpts.refresh.register_check_asbitem.D":{ |
|
|
|
|
|
|
|
|
"dataTransOpts.refresh.register_check_asbitem.D": { |
|
|
// immediate: true, // 立即执行 |
|
|
// immediate: true, // 立即执行 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
handler(newVal,oldVal){ |
|
|
|
|
|
console.log('watch: 刷新 人员登记/编辑 时的组合项目: ',this.dataTransOpts.tableS.patient_register.id) |
|
|
|
|
|
if(newVal != oldVal) this.getPrAsb(this.dataTransOpts.tableS.patient_register.id) |
|
|
|
|
|
|
|
|
handler(newVal, oldVal) { |
|
|
|
|
|
console.log('watch: 刷新 人员登记/编辑 时的组合项目: ', this.dataTransOpts.tableS.patient_register.id) |
|
|
|
|
|
if (newVal != oldVal) this.getPrAsb(this.dataTransOpts.tableS.patient_register.id) |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//按钮更新支付方式 |
|
|
//按钮更新支付方式 |
|
|
"prAsbOpraOpts.payTypeFlag":{ |
|
|
|
|
|
|
|
|
"prAsbOpraOpts.payTypeFlag": { |
|
|
// immediate: true, // 立即执行 |
|
|
// immediate: true, // 立即执行 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
handler(newVal, oldVal) { |
|
|
handler(newVal, oldVal) { |
|
|
if (newVal != oldVal && newVal != '') { |
|
|
if (newVal != oldVal && newVal != '') { |
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e =>{ |
|
|
|
|
|
|
|
|
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => { |
|
|
e.payTypeFlag = newVal; |
|
|
e.payTypeFlag = newVal; |
|
|
return e; |
|
|
return e; |
|
|
}); |
|
|
}); |
|
|
@ -1119,7 +1143,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//更换分组 |
|
|
//更换分组 |
|
|
"prAsbOpraOpts.prAsbGroup":{ |
|
|
|
|
|
|
|
|
"prAsbOpraOpts.prAsbGroup": { |
|
|
// immediate: true, // 立即执行 |
|
|
// immediate: true, // 立即执行 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
handler(newVal, oldVal) { |
|
|
handler(newVal, oldVal) { |
|
|
@ -1130,7 +1154,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//更换套餐 |
|
|
//更换套餐 |
|
|
"prAsbOpraOpts.prAsbPackage":{ |
|
|
|
|
|
|
|
|
"prAsbOpraOpts.prAsbPackage": { |
|
|
// immediate: true, // 立即执行 |
|
|
// immediate: true, // 立即执行 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
handler(newVal, oldVal) { |
|
|
handler(newVal, oldVal) { |
|
|
@ -1141,7 +1165,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//复制新增 拷贝明细项目 |
|
|
//复制新增 拷贝明细项目 |
|
|
"prAsbOpraOpts.copyNew":{ |
|
|
|
|
|
|
|
|
"prAsbOpraOpts.copyNew": { |
|
|
// immediate: true, // 立即执行 |
|
|
// immediate: true, // 立即执行 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
// deep: true, // 深度监听复杂类型内变化 |
|
|
handler(newVal, oldVal) { |
|
|
handler(newVal, oldVal) { |
|
|
@ -1182,7 +1206,5 @@ export default { |
|
|
|
|
|
|
|
|
.disTotal { |
|
|
.disTotal { |
|
|
margin-left: 10px; |
|
|
margin-left: 10px; |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
</style> |
|
|
|
|
|
|
|
|
}</style> |
|
|
|
|
|
|