pengjun 2 years ago
parent
commit
d161210d4e
  1. 7
      src/assets/css/global_input.css
  2. 12
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 142
      src/components/patientRegister/PatientRegisterItem.vue

7
src/assets/css/global_input.css

@ -42,4 +42,9 @@ input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none !important;
margin: 0 !important;
}
}
/* 下拉框选中颜色 */
.el-select-dropdown__item.hover, .el-select-dropdown__item:hover {
background-color: #CCF9CB; /* 原始 默认 #F5F7FA */
}

12
src/components/patientRegister/PatientRegisterEdit.vue

@ -1,7 +1,7 @@
<template>
<div>
<div style="display: flex">
<div :style="'width:' + (window.pageWidth - 120 - 30) + 'px;'">
<div :style="'width:' + (window.pageWidth - 110 - 20) + 'px;'">
<div>
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium">
<el-row>
@ -314,7 +314,7 @@
</el-row>
</el-form>
<el-image
:style="'position: absolute;top:65px;right:' + (110 + Math.floor((window.pageWidth - 750) / 24)) + 'px; width: 150px; height: 160px;'"
:style="'position: absolute;top:50px;right:' + (100 + Math.floor((window.pageWidth - 750) / 24)) + 'px; width: 150px; height: 160px;'"
:src="peoplePhoto">
<div slot="placeholder" class="image-slot">
加载中<span class="dot">...</span>
@ -325,7 +325,7 @@
<PatientRegisterItem :patientRegisterForm="form" :payTypeFlag="payTypeFlag" />
</div>
</div>
<div style="margin-left: 10px;width:110px;">
<div style="margin-left: 10px;">
<div>
<el-button type="primary" class="btnClass" @click="photoGrah" icon="el-icon-camera">拍照</el-button>
</div>
@ -1479,17 +1479,13 @@ export default {
</script>
<style scoped>
::v-deep .el-button {
padding: 10px 5px;
/* 原值:12px 20px; */
}
.btn {
margin-top: 5px;
}
.btnClass {
width: 110px;
width: 100px;
}
.query {

142
src/components/patientRegister/PatientRegisterItem.vue

@ -10,7 +10,7 @@
</div>
<div class="mainareaBox">
<el-table :data="dict.asbItem"
:height="(window.pageHeight > 720 ? (window.pageHeight - 460) : 260)" @row-dblclick="dbClickChoosedAsb" highlight-current-row
: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">
<!--
@ -58,7 +58,7 @@
-->
</div>
<div :style="'width:' + (window.pageWidth - 120 - 30 - 230 - 100) + 'px;'">
<div :style="'width:' + (window.pageWidth - 110 - 20 - 230 - 100) + 'px;'">
<div style="display: flex;">
<div class="disTotal">
<el-tooltip class="item" effect="dark" content="根据输入的折扣,自动计算折后总价" placement="top">
@ -76,70 +76,70 @@
</div>
<div class="disTotal">
<el-select v-model="asbItemId" placeholder="快速选择组合项目" size="small"
filterable :filter-method="filterMethod"
clearable @clear="quickAsb = deepCopy(dict.asbItemQuick)"
@change="quickChoosedAsb" default-first-option ref="asbItemId"
filterable :filter-method="filterMethod"
clearable @clear="quickAsb = deepCopy(dict.asbItemQuick)"
@change="quickChoosedAsb" default-first-option ref="quickAsbOCX"
style="width:150px;text-align: left;padding-right: 15px;">
<el-option v-for="item in quickAsb" :key="item.id" :value="item.id" :label="item.displayName" />
</el-select>
</div>
</div>
<div class="mainareaBox">
<el-table :data="patientRegister.patientRegisterAbs" highlight-current-row
:height="(window.pageHeight > 720 ? (window.pageHeight - 460) : 260)" width="100%" :summary-method="getSummaries"
<el-table :data="patientRegister.patientRegisterAbs" highlight-current-row border
:height="(window.pageHeight > 700 ? (window.pageHeight - 440) : 260)" width="100%" :summary-method="getSummaries"
show-summary :row-class-name="tableRowClassName" @row-dblclick="removeAbs" @selection-change="selecteditems" size="small"
@row-click="removeAsbItem">
<!-- temporaryselection personnelUnit.nogroupselected-->
<!-- 取消勾选换成选中
<el-table-column type="selection" align="center"/>
-->
<el-table-column label="已选组合项目" width="120" prop="asbitemName" />
<el-table-column label="标准价格" prop="standardPrice" width="70" align="center" />
<el-table-column label="折扣" prop="discount" width="60">
<el-table-column label="已选组合项目" min-width="120" prop="asbitemName" />
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="折扣" prop="discount" min-width="60">
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.discount" size="small" @input="changeDiscount(scope.$index)"
@blur="onSubmit('')" />
</template>
</el-table-column>
<el-table-column label="数量" prop="amount" width="50">
<el-table-column label="数量" prop="amount" min-width="50">
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.amount" size="small" @blur="onSubmit('')" />
</template>
</el-table-column>
<el-table-column label="实收价格" prop="chargePrice" width="70">
<el-table-column label="实收价格" prop="chargePrice" min-width="70">
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.chargePrice" size="small"
@input="changePrice(scope.$index)" @blur="onSubmit('')" />
</template>
</el-table-column>
<el-table-column prop="total" label="金额" width="70" v-if="false" />
<el-table-column prop="standardPrice" label="标准金额" width="70" v-if="false" />
<el-table-column label="支付方式" prop="payTypeFlag" width="100">
<el-table-column prop="total" 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">
<template slot-scope="scope">
<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-select>
</template>
</el-table-column>
<el-table-column prop="isCharge" label="收费" width="50" align="center">
<el-table-column prop="isCharge" label="收费" min-width="40" align="center">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isCharge == 'Y'" />
</template>
</el-table-column>
<el-table-column prop="checkCompleteFlag" label="状态" align="center">
<el-table-column prop="checkCompleteFlag" label="状态" min-width="40" align="center">
<template slot-scope="scope">
<div>{{ ldddw(dict.checkCompleteFlag, "id", scope.row.checkCompleteFlag, "displayName") }}</div>
<div>{{ dddw(dict.checkCompleteFlag, "id", scope.row.checkCompleteFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="isLock" label="锁" width="50" align="center">
<el-table-column prop="isLock" label="锁" min-width="40" align="center">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isLock == 'Y'" />
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" align="center"></el-table-column>
<el-table-column prop="creationTime" label="登记日期" width="90" align="center">
<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">
<template slot-scope="scope">
<div>{{ lmoment(scope.row.creationTime, 'yyyy-MM-DD') }}</div>
<div>{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD'):'' }}</div>
</template>
</el-table-column>
</el-table>
@ -192,7 +192,9 @@ export default {
computed: {
...mapState(["window", "dict", "customerOrg", "patientRegister", "personnelUnit"]),
},
created(){
this.quickAsb = deepCopy(this.dict.asbItemQuick)
},
mounted() {
// if(this.patientRegisterForm.id){
// this.getPatientRegisterAbs(this.patientRegisterForm.id)
@ -203,14 +205,7 @@ export default {
methods: {
...mapActions(['getCustomerOrgGroup', 'getPatientRegisterAbs']),
ldddw(arrayData, key, value, display) {
return dddw(arrayData, key, value, display);
},
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
},
dddw,moment,deepCopy,
tableRowClassName({row, rowIndex}){
//console.log(row)
@ -640,7 +635,7 @@ export default {
}
//console.log('lv,this.dict.asbItem', lv, this.dict.asbItem)
this.dict.asbItemQuick = [...this.dict.asbItemAll];
},
//
@ -649,6 +644,7 @@ export default {
//
arrayReduce(this.dict.asbItem, [...this.patientRegister.patientRegisterAbs], "id=asbitemId");
arrayReduce(this.dict.asbItemQuick, [...this.patientRegister.patientRegisterAbs], "id=asbitemId");
this.quickAsb = deepCopy(this.dict.asbItemQuick)
},
@ -807,22 +803,16 @@ export default {
this.addAbs([this.dict.asbItemQuick[lfind]])
}
}
//this.$refs['quickAsbOCX'].focus(); //asbItemId
this.$nextTick(() => {
this.$refs['quickAsbOCX'].blur(); //total asbItemId
this.asbItemId = ''
this.quickAsb = deepCopy(this.dict.asbItemQuick)
this.$refs['quickAsbOCX'].focus(); //total asbItemId
});
},
// quickChoosedAsb(v){
// let lfind = -1
// let asbItemChoosed = []
// console.log('quickChoosedAsb',v,this.dict.asbItemQuick)
// if(v){
// lfind = arrayExistObj(this.dict.asbItemQuick,'id',v)
// if(lfind > -1){
// asbItemChoosed.push(this.dict.asbItemQuick[lfind])
// this.addAbs(asbItemChoosed)
// }
// }
// },
//
filterMethod(keyWords) {
@ -986,16 +976,21 @@ export default {
},
// asbItemId
"asbItemId"(newVal, oldVal) {
if (newVal != oldVal && newVal != '') {
//
this.$nextTick(() => {
console.log("1this.$refs['asbItemId'].focus()");
this.$refs['asbItemId'].focus(); //total asbItemId
console.log("2this.$refs['asbItemId'].focus()");
});
}
},
// "asbItemId"(newVal, oldVal) {
// console.log("this.$refs['quickAsbOCX'].focus()");
// this.$refs['quickAsbOCX'].blur(); //asbItemId
// this.asbItemId = ''
// this.$refs['quickAsbOCX'].focus(); //asbItemId
// // if (newVal != oldVal && newVal != '') {
// //
// // this.$nextTick(() => {
// // console.log("1this.$refs['asbItemId'].focus()");
// // this.$refs['quickAsbOCX'].focus(); //total asbItemId
// // console.log("2this.$refs['asbItemId'].focus()");
// // });
// // }
// },
// getPatientRegisterAbs
// "patientRegisterForm.id"(newVal, oldVal) {
@ -1018,11 +1013,13 @@ export default {
};
</script>
<style lang="scss" scoped>
@import "../../assets/css/global_table.css";
@import "../../assets/css/global_input.css";
@import "../../assets/css/global.css";
.mainareaBox {
border: 1px solid #000;
height: v-bind("(window.pageHeight > 720 ? (window.pageHeight - 460) : 260) + 'px'");
height: v-bind("(window.pageHeight > 700 ? (window.pageHeight - 440) : 260) + 'px'");
margin-top: 5px;
}
@ -1036,34 +1033,5 @@ export default {
margin-left: 10px;
}
::v-deep .el-input__inner {
/*text-align: center;*/
padding-left: 1px;
padding-right: 1px;
/*background-color: rgb(255, 0, 255);*/
}
::v-deep .el-table th.el-table__cell {
/*text-align: center;*/
padding-left: 2px;
padding-right: 2px;
}
::v-deep .el-table td.el-table__cell {
padding-left: 2px;
padding-right: 2px;
}
::v-deep .el-table .cell {
padding-left: 2px;
padding-right: 2px;
}
::v-deep input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none !important;
margin: 0 !important;
}
</style>
Loading…
Cancel
Save