提交 afeab1bf 编写于 作者: minghao.wu's avatar minghao.wu

Merge remote-tracking branch 'origin/dev-20210517' into dev-20210517

......@@ -138,7 +138,7 @@
:title="title"
:visible.sync="setAddVisible"
width="60%">
<el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">
<!-- <el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">-->
<el-form ref="setPriceForm"
:rules="addRules"
:model="model"
......@@ -147,14 +147,15 @@
label-position="right"
size="mini"
style="width: 100%;">
<el-col :span="15">
<el-form-item label="助诊医生" class="required-label" prop="userName">
<el-col :span="15">
<el-select v-model="model.userName"
filterable
remote
placeholder="请输入专家姓名或医院名称,多个关键字用空格隔开,至少输入两个字符"
clearable
style="width: 170%;"
style="width: 130%;"
:remote-method="remoteMethod"
:disabled="isEdit"
@change="nameChange"
......@@ -167,64 +168,89 @@
<span>{{item.value}}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-form-item>
<!-- <el-col :span="15" style="margin-left: 105px;">-->
<!-- 实际收入(接诊后实际到账金额): ¥{{tempPrice | rounding}}-->
<!-- </el-col>-->
<el-col :span="15">
<el-form-item label="助诊医生职称" class="required-label">
<el-input v-model="model.title" style="width: 170%;" disabled size="small" ></el-input>
</el-form-item>
</el-col>
<el-col :span="15">
<el-form-item label="助诊医生所在机构" class="required-label">
<el-input v-model="model.hospitalName" style="width: 170%;" disabled size="small" ></el-input>
</el-form-item>
<el-input v-model="model.title" style="width: 130%;" disabled size="small" ></el-input>
</el-col>
<el-col :span="15">
<el-form-item label="助诊医生所在科室" class="required-label">
<el-input v-model="model.department" style="width: 170%;" disabled size="small" ></el-input>
</el-form-item>
<el-form-item label="助诊医生所在机构" class="required-label">
<el-col :span="15">
<el-input v-model="model.hospitalName" style="width: 130%;" disabled size="small" ></el-input>
</el-col>
</el-form-item>
<el-form-item label="助诊医生所在科室" class="required-label">
<el-col :span="15">
<el-form-item label="助诊电话" class="required-label">
<el-input v-model="model.mobile" style="width: 170%;" disabled size="small" ></el-input>
<el-input v-model="model.department" style="width: 130%;" disabled size="small" ></el-input>
</el-col>
</el-form-item>
<el-form-item label="助诊电话" class="required-label">
<el-col :span="15">
<el-input v-model="model.mobile" style="width: 130%;" disabled size="small" ></el-input>
</el-col>
<el-col :span="16">
</el-form-item>
<el-form-item label="语音问诊分佣" prop="audioCommissionType" class="required-label">
<el-col :span="16">
<el-radio-group v-model="model.audioCommissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.audioPrice1" size="small" :precision="2" :min="0" :max="100"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.audioPrice2" size="small" :precision="2" :min="0" :max="9999"></el-input-number></span>
</div>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
</el-form-item>
<el-form-item label="视频问诊分佣" prop="videoCommissionType" class="required-label">
<el-col :span="16">
<el-radio-group v-model="model.videoCommissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.videoPrice1" size="small" :precision="2" :min="0" :max="100"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.videoPrice2" size="small" :precision="2" :min="0" :max="9999"></el-input-number></span>
</div>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
</el-form-item>
<el-form-item label="图文问诊分佣" prop="imgCommissionType" class="required-label">
<el-col :span="16">
<el-radio-group v-model="model.imgCommissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.imgPrice1" size="small" :precision="2" :min="0" :max="100"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="model.imgPrice2" size="small" :precision="2" :min="0" :max="9999"></el-input-number></span>
</div>
</el-radio-group>
</el-form-item>
</el-col>
</el-form-item>
</el-form>
</el-row>
<!-- </el-row>-->
<span slot="footer" class="dialog-footer" style="text-align: center;">
<el-button @click="setAddVisible = false">取 消</el-button>
<el-button type="primary" @click="submit">确定</el-button>
......@@ -403,42 +429,42 @@ export default {
submit() {
if(this.model.audioCommissionType == 1 && this.model.audioPrice1 == ""){
if(this.model.audioCommissionType == 1 && this.model.audioPrice1 == undefined){
this.$message({
message: '请输入语音问诊分佣中的按比例分佣',
type: "warning"
});
return;
}
if(this.model.audioCommissionType == 2 && this.model.audioPrice2 == ""){
if(this.model.audioCommissionType == 2 && this.model.audioPrice2 == undefined){
this.$message({
message: '请输入语音问诊分佣中的固定分佣金额',
type: "warning"
});
return;
}
if(this.model.videoCommissionType == 1 && this.model.videoPrice1 == ""){
if(this.model.videoCommissionType == 1 && this.model.videoPrice1 == undefined){
this.$message({
message: '请输入视频问诊分佣中的按比例分佣',
type: "warning"
});
return;
}
if(this.model.videoCommissionType == 2 && this.model.videoPrice2 == ""){
if(this.model.videoCommissionType == 2 && this.model.videoPrice2 == undefined){
this.$message({
message: '请输入视频问诊分佣中的固定分佣金额',
type: "warning"
});
return;
}
if(this.model.imgCommissionType == 1 && this.model.imgPrice1 == ""){
if(this.model.imgCommissionType == 1 && this.model.imgPrice1 == undefined){
this.$message({
message: '请输入图文问诊分佣中的按比例分佣',
type: "warning"
});
return;
}
if(this.model.imgCommissionType == 2 && this.model.imgPrice2 == ""){
if(this.model.imgCommissionType == 2 && this.model.imgPrice2 == undefined){
this.$message({
message: '请输入图文问诊分佣中的固定分佣金额',
type: "warning"
......@@ -457,20 +483,20 @@ export default {
clickHandle() {
this.$refs.setPriceForm.validate((valid) => {
if(valid) {
this.loading = true
vm.loading = true
vm.setSubmitPrice();
this.POST('/diagnose/doctorService/updatePrice', this.setPriceForm).then(res => {
this.loading = false
this.POST('/diagnose/commission/downDoctor/save', vm.model).then(res => {
vm.loading = false
// closeLoading(this);
if (res.code == "000000") {
this.$message({
message: '设置价格成功',
vm.$message({
message: '设置成功',
type: "success"
});
this.setPriceVisible = false
this.search()
vm.setAddVisible = false;
vm.search()
}else {
this.$message({
vm.$message({
message: res.message,
type: "error"
})
......@@ -496,11 +522,11 @@ export default {
refresh(){
this.searchParam = {
searchKey: '',
serviceTypeId: 0,
status: 0,
hospitalName: '',
commissionType: 0,
startTime: "",
endTime: "",
pageSize: 15,
pageSize: 10,
pageNo: 1
};
this.rangeTime = "";
......@@ -532,6 +558,9 @@ export default {
},
setPrice(row, batchUpdatePriceFlag){
if(this.$refs.setPriceForm) {
this.$refs.setPriceForm.resetFields()
}
this.batchUpdatePriceFlag = batchUpdatePriceFlag;
// this.setPriceVisible = true
this.setAddVisible = true;
......@@ -548,7 +577,23 @@ export default {
vm.model.hospitalName = row.hospitalName;
vm.model.department = row.department;
vm.model.title = row.title;
vm.model.audioCommissionType = "";
vm.model.audioPrice = "";
vm.model.audioPrice1 = undefined;
vm.model.audioPrice2 = undefined;
vm.model.videoCommissionType = "";
vm.model.videoPrice = "";
vm.model.videoPrice1 = undefined;
vm.model.videoPrice2 = undefined;
vm.model.imgCommissionType = "";
vm.model.imgPrice = "";
vm.model.imgPrice1 = undefined;
vm.model.imgPrice2 = undefined;
vm.model.audioCommissionType = row.audioCommissionType;
// vm.model.videoCommissionType = row.videoCommissionType;
// vm.model.imgCommissionType = row.imgCommissionType;
if(row.audioCommissionType == 1){
vm.model.audioPrice1 = vm.priceNum(row.audioPrice);
}
......@@ -563,18 +608,49 @@ export default {
vm.model.videoPrice2 = vm.priceNum(row.videoPrice);
}
vm.model.imgCommissionType = row.imgCommissionType;
if(row.audioCommissionType == 1){
if(row.imgCommissionType == 1){
vm.model.imgPrice1 = vm.priceNum(row.imgPrice);
}
else if(row.audioCommissionType == 2){
else if(row.imgCommissionType == 2){
vm.model.imgPrice2 = vm.priceNum(row.imgPrice);
}
if(this.$refs.setPriceForm) {
this.$refs.setPriceForm.resetFields()
}
// this.getProfit(row);
},
initAdd(){
this.POST(`/diagnose/commission/rule/info`, {userType: "2", defaultFlag: 1}).then(res => {
if (res.code == "000000") {
vm.initData = res.data;
vm.model.audioCommissionType = res.data.audioCommissionType;
if(vm.model.audioCommissionType == 1){
vm.model.audioPrice1 = vm.priceNum(res.data.audioPrice);
}
else if(vm.model.audioCommissionType == 2){
vm.model.audioPrice2 = vm.priceNum(res.data.audioPrice);
}
vm.model.videoCommissionType = res.data.videoCommissionType;
if(vm.model.videoCommissionType == 1){
vm.model.videoPrice1 = vm.priceNum(res.data.videoPrice);
}
else if(vm.model.videoCommissionType == 2){
vm.model.videoPrice2 = vm.priceNum(res.data.videoPrice);
}
vm.model.imgCommissionType = res.data.imgCommissionType;
if(vm.model.imgCommissionType == 1){
vm.model.imgPrice1 = vm.priceNum(res.data.imgPrice);
}
else if(vm.model.imgCommissionType == 2){
vm.model.imgPrice2 = vm.priceNum(res.data.imgPrice);
}
}else {
this.$message({
message: res.message,
type: "error"
})
}
});
},
getProfit(row){
this.POST(`/diagnose/doctorService/profit`, {doctorId: row.doctorId, serviceType: row.serviceType}).then(res => {
......@@ -606,12 +682,34 @@ export default {
this.setAddVisible = true;
this.isEdit = false;
this.title = "添加助诊医生";
if(!this.isEdit){
vm.model.id = null;
vm.model.userName = '';
vm.model.mobile = '';
vm.model.hospitalName = '';
vm.model.department = '';
vm.model.title = '';
vm.model.userId = '';
vm.model.audioCommissionType = "";
vm.model.audioPrice = "";
vm.model.audioPrice1 = undefined;
vm.model.audioPrice2 = undefined;
vm.model.videoCommissionType = "";
vm.model.videoPrice = "";
vm.model.videoPrice1 = undefined;
vm.model.videoPrice2 = undefined;
vm.model.imgCommissionType = "";
vm.model.imgPrice = "";
vm.model.imgPrice1 = undefined;
vm.model.imgPrice2 = undefined;
vm.initAdd();
}
},
//搜索
remoteMethod(val) {
if (val.length >= 2) {
// console.log('搜索',val)
this.GET(`/doctor/doctorExpert/doctorInfoByNameLike?name=${val}`)
this.GET(`/diagnose/commission/downDoctor/doctorInfoByNameLike?name=${val}`)
.then(function (res) {
if (res.code == '000000') {
// let data = JSON.parse(JSON.stringify(res.data.data));//通过这个实现深拷贝
......@@ -692,7 +790,7 @@ export default {
if(this.model.audioCommissionType == 1 && this.model.audioPrice1 != ""){
this.model.audioPrice = this.model.audioPrice1;
}
else if(this.model.audioCommissionType == 2 && this.model.audioPrice2 == ""){
else if(this.model.audioCommissionType == 2 && this.model.audioPrice2 != ""){
this.model.audioPrice = this.model.audioPrice2;
}
......@@ -702,10 +800,10 @@ export default {
else if(this.model.videoCommissionType == 2 && this.model.videoPrice2 != ""){
this.model.videoPrice = this.model.videoPrice2;
}
if(this.model.imgCommissionType == 1 && this.model.imgPrice1 == ""){
if(this.model.imgCommissionType == 1 && this.model.imgPrice1 != ""){
this.model.imgPrice = this.model.imgPrice1;
}
if(this.model.imgCommissionType == 2 && this.model.imgPrice2 == ""){
else if(this.model.imgCommissionType == 2 && this.model.imgPrice2 != ""){
this.model.imgPrice = this.model.imgPrice2;
}
......
......@@ -75,7 +75,7 @@
</el-form-item>
<el-form-item label="预约时间" prop="appointBeginTime" >
<el-date-picker
:disabled="formData.status == 4 || editorType== 2"
:disabled="formData.status == 4 || editorType== 2 || formData.doctorId === 0"
type="datetime"
placeholder="开始时间"
v-model="formData.appointBeginTime"
......@@ -88,7 +88,7 @@
</el-date-picker>
<span>-</span>
<el-date-picker
:disabled="formData.status == 4 || editorType== 2"
:disabled="formData.status == 4 || editorType== 2 || formData.doctorId === 0"
type="datetime"
placeholder="结束时间"
v-model="formData.appointEndTime"
......@@ -390,6 +390,9 @@ export default {
sex: [
{ required: true, message: '请选择性别', trigger: 'change' }
],
maritalStatus: [
{ required: true, message: '请选择婚否', trigger: 'change' }
],
patientMobilePhone: [
{ required: true, message: '请输入患者电话', trigger: ['blur','change'] }
],
......
......@@ -498,6 +498,23 @@ export default {
},
// 预约时间
timeHandle(row) {
let bTime = new Date(row.userAppointBeginTime)
let eTime = new Date(row.userAppointEndTime)
if (this.activeName == 'three' && (new Date() - bTime) && (eTime - new Date())) {
this.$confirm(' 当前问诊正在进行中,一旦将立即关闭进行中的问诊且无法恢复,确定继续更改时间?', '提醒', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.timeHandleFn(row)
}).catch(() => {
})
} else {
this.timeHandleFn(row)
}
},
timeHandleFn(row) {
this.beginFlag = false
this.endFlag = false
this.timeVisible = true
......
......@@ -50,7 +50,7 @@
id="statusSelector"
placeholder="请选择服务状态"
clearable
style="margin-left:16px;height: 32px;line-height: 32px;"
style="margin-left:20px;height: 32px;line-height: 32px;"
>
<el-option
v-for="item in statusList"
......@@ -70,7 +70,7 @@
id="statusSelector"
placeholder="请选择服务状态"
clearable
style="height: 32px;line-height: 32px;"
style="height: 32px;line-height: 32px;width: 100%;"
>
<el-option
v-for="item in commissionTypeList"
......@@ -81,7 +81,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="15" style="text-align:right;padding-right:55px;">
<el-col :span="16" style="text-align:right;padding-right:55px;">
<el-button type="primary" size="small" @click="search()">搜索</el-button>
</el-col>
</el-row>
......@@ -112,7 +112,7 @@
<el-table-column prop="serviceName" label="服务名称" min-width="100" align="left"></el-table-column>
<el-table-column prop="doctorName" label="服务医生" min-width="120" align="left"></el-table-column>
<el-table-column prop="mobilePhone" label="联系电话" min-width="120" align="left"></el-table-column>
<el-table-column prop="price" label="价格(元)" min-width="60" align="left">
<el-table-column prop="price" label="价格(元)" min-width="80" align="left">
<template slot-scope="scope">
<span>{{scope.row.price | rounding}}</span>
</template>
......@@ -156,7 +156,7 @@
title="设置价格"
:visible.sync="setPriceVisible"
width="55%">
<el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">
<!-- <el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">-->
<el-form ref="setPriceForm"
:rules="setPriceRules"
:model="setPriceForm"
......@@ -165,24 +165,31 @@
label-position="right"
size="mini"
style="width: 100%;">
<el-col :span="18">
<el-form-item label="问诊价格" class="required-label" prop="price">
<el-col :span="18">
<el-input-number v-model="setPriceForm.price" size="small" :precision="2" :min="0" :max="9999" placeholder="请输入价格" @change="changePrice($event)"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="18">
</el-form-item>
<el-form-item label="接诊服务费结算方式(上级医生)" prop="commissionType">
<el-col :span="18">
<el-radio-group v-model="setPriceForm.commissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="setPriceForm.commissionPrice1" size="small" :precision="2" :min="0" :max="100"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;margin-left: 14px;"><el-input-number v-model="setPriceForm.commissionPrice2" size="small" :precision="2" :min="0" :max="9999"></el-input-number></span>
</div>
</el-radio-group>
</el-form-item>
</el-col>
</el-form-item>
</el-form>
</el-row>
<!-- </el-row>-->
<span slot="footer" class="dialog-footer">
<el-button @click="setPriceVisible = false">取 消</el-button>
<el-button type="primary" @click="confirmSetPrice">确 定</el-button>
......@@ -227,10 +234,10 @@ export default {
totalRows: 0,
setPriceRules: {
price: [
{required: true, message: "请输入", trigger: 'blur'}
{required: true, message: "请输入问诊价格", trigger: 'blur'}
],
commissionType: [
{required: true, message: "请输入", trigger: 'blur'}
{required: true, message: "请选择接诊服务费结算方式", trigger: 'blur'}
]
},
liveBack: false,
......@@ -348,23 +355,21 @@ export default {
return;
}
if(this.setPriceForm.commissionType == 1 && this.setPriceForm.commissionPrice1 == ""){
if(this.setPriceForm.commissionType == 1 && this.setPriceForm.commissionPrice1 == undefined ){
this.$message({
message: '请输入按比例分佣',
type: "warning"
});
return;
}
if(this.setPriceForm.commissionType == 2 && this.setPriceForm.commissionPrice2 == ""){
if(this.setPriceForm.commissionType == 2 && this.setPriceForm.commissionPrice2 == undefined ){
this.$message({
message: '请输入固定分佣',
message: '请输入固定分佣金额',
type: "warning"
});
return;
}
let timeoutId = null
timeoutId && clearTimeout(timeoutId)
timeoutId = setTimeout(() => {
......@@ -389,7 +394,8 @@ export default {
setPriceList.push({doctorId: this.multipleSelection[i].doctorId,
serviceType: this.multipleSelection[i].serviceType, price: this.setPriceForm.price,
commissionType: this.setPriceForm.commissionType,commissionPriceStr: this.setPriceForm.commissionPriceStr
commissionType: this.setPriceForm.commissionType,commissionPriceStr: this.setPriceForm.commissionPriceStr,
commissionPrice:this.setPriceForm.commissionPriceStr
});
}
this.POST('/diagnose/doctorService/batchUpdatePrice', setPriceList).then(res => {
......@@ -417,7 +423,7 @@ export default {
else if(this.setPriceForm.commissionType == 2){
this.setPriceForm.commissionPriceStr = this.setPriceForm.commissionPrice2;
}
this.setPriceForm.commissionPrice = this.setPriceForm.commissionPriceStr;
this.POST('/diagnose/doctorService/updatePrice', this.setPriceForm).then(res => {
this.loading = false
// closeLoading(this);
......@@ -613,10 +619,16 @@ export default {
})
},
setPrice(row, batchUpdatePriceFlag){
if(this.$refs.setPriceForm) {
this.$refs.setPriceForm.resetFields()
}
this.batchUpdatePriceFlag = batchUpdatePriceFlag;
this.setPriceForm.doctorId = row.doctorId;
this.setPriceForm.serviceType = row.serviceType;
this.setPriceForm.price = row.price;
this.setPriceForm.commissionType = "";
this.setPriceForm.commissionPrice1 = undefined;
this.setPriceForm.commissionPrice2 = undefined;
this.setPriceForm.commissionType = row.commissionType;
if(this.setPriceForm.commissionType == 1){
this.setPriceForm.commissionPrice1 = row.commissionPriceStr;
......@@ -626,9 +638,9 @@ export default {
}
this.setPriceForm.price = row.price;
this.setPriceVisible = true;
if(this.$refs.setPriceForm) {
this.$refs.setPriceForm.resetFields()
}
// if(this.$refs.setPriceForm) {
// this.$refs.setPriceForm.resetFields()
// }
// this.getProfit(row);
},
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册