服务包管理修改

This commit is contained in:
shidongli 2024-03-06 10:40:59 +08:00
parent 43b1042334
commit a615e606e7

View File

@ -52,6 +52,7 @@
</el-form-item>
<el-form-item label="服务包价格" prop="packagePrice">
<el-input
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="queryParams.packagePrice"
placeholder="请输入服务包价格"
clearable
@ -175,7 +176,11 @@
align="center"
prop="packageVersion"
/>
<el-table-column label="服务期限" align="center" prop="packageTermAndUnit" />
<el-table-column
label="服务期限"
align="center"
prop="packageTermAndUnit"
/>
<el-table-column
label="服务包简介"
align="center"
@ -216,8 +221,7 @@
type="text"
icon="el-icon-s-promotion"
@click="release(scope.row)"
v-if="scope.row.whetherRelease==0"
v-if="scope.row.whetherRelease == 0"
>发布</el-button
>
<el-button
@ -226,7 +230,6 @@
icon="el-icon-notebook-2
"
@click="detail(scope.row)"
>详情</el-button
>
<el-button
@ -332,11 +335,7 @@
<el-form-item label="服务包名称" prop="packageName">
<el-input v-model="form.packageName" placeholder="请输入服务包名称" />
</el-form-item>
<el-form-item
label="服务包简介"
prop="packageIntroduction"
>
<el-form-item label="服务包简介" prop="packageIntroduction">
<el-input
v-model="form.packageIntroduction"
placeholder="请输入服务包简介"
@ -344,6 +343,7 @@
</el-form-item>
<el-form-item label="服务包价格" prop="packagePrice">
<el-input
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.packagePrice"
placeholder="请输入服务包价格"
style="width: 204px"
@ -351,21 +351,13 @@
<template slot="append"></template>
</el-input>
</el-form-item>
<el-form-item
label="服务包版本"
prop="packageVersion"
>
<el-form-item label="服务包版本" prop="packageVersion">
<el-input
v-model="form.packageVersion"
placeholder="请输入服务包版本"
/>
</el-form-item>
<el-form-item
label="硬件类型"
prop="hardwareType"
>
<el-form-item label="硬件类型" prop="hardwareType">
<el-select
v-model="form.hardwareType"
placeholder="请选择"
@ -381,9 +373,9 @@
</el-select>
</el-form-item>
<el-form-item label="服务包期限" prop="packageTerm">
<el-input v-model="form.packageTerm" placeholder="请输入服务包期限">
<el-input v-model="form.packageTerm" placeholder="请输入服务包期限" style="width: 208px">
<el-select
style="width: 100px"
style="width: 60px"
slot="append"
v-model="form.packageTermUnit"
placeholder="请选择"
@ -401,14 +393,16 @@
</el-form-item>
<br />
<div v-for="(aitem, index) in form.voList" :key="index">
<el-form-item
label="服务包内容"
:rules="rules.voList.serviceWayName"
:prop="`voList.${index}.serviceWayName`"
label="服务包内容"
:rules="rules.voList.serviceWayName"
:prop="`voList.${index}.serviceWayName`"
>
<el-select
v-model="aitem.serviceWayName"
placeholder="请选择服务方式"
@change="changeway"
>
<el-select v-model="aitem.serviceWayName" placeholder="请选择服务方式" @change="changeway">
<el-option
v-for="item in optionsway"
:key="item.id"
@ -422,33 +416,39 @@
:rules="rules.voList.serviceContent"
:prop="`voList.${index}.serviceContent`"
>
<el-select v-model="aitem.serviceContent" placeholder="请选择服务内容" @change="changcontent">
<el-option
v-for="item in optionscontent"
:key="item.id"
:label="item.serviceContent"
:value="item.serviceContent"
<el-select
style="margin-left:10px"
v-model="aitem.serviceContent"
placeholder="请选择服务内容"
@change="changcontent"
>
</el-option>
</el-select>
<el-option
v-for="item in optionscontent"
:key="item.id"
:label="item.serviceContent"
:value="item.serviceContent"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=""
:rules="rules.voList.serviceFrequencyText"
:prop="`voList.${index}.serviceFrequencyText`"
>
<el-select v-model="aitem.serviceFrequencyText" placeholder="请选择服务频次">
<el-option
v-for="item in optionsfrequency"
:key="item.id"
:label="item.serviceFrequencyText"
:value="item.serviceFrequencyText"
<el-select
v-model="aitem.serviceFrequencyText"
placeholder="请选择服务频次"
>
</el-option>
</el-select>
</el-form-item>
<el-option
v-for="item in optionsfrequency"
:key="item.id"
:label="item.serviceFrequencyText"
:value="item.serviceFrequencyText"
>
</el-option>
</el-select>
</el-form-item>
</el-form-item>
<el-button
type="primary"
@ -472,7 +472,7 @@
<el-form-item label="服务包备注" prop="packageRemark">
<el-input
style="width:810px"
style="width: 810px"
type="textarea"
v-model="form.packageRemark"
placeholder="请输入服务包备注"
@ -480,7 +480,12 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFormadd" v-if="title == '复制服务包基础信息'"> </el-button>
<el-button
type="primary"
@click="submitFormadd"
v-if="title == '复制服务包基础信息'"
> </el-button
>
<el-button type="primary" @click="submitForm" v-else> </el-button>
<el-button @click="cancel"> </el-button>
</div>
@ -640,82 +645,66 @@
</el-dialog>
<!-- 详情弹框 -->
<el-dialog
title="详情"
:visible.sync="detailshow"
width="50%"
:before-close="handleClose">
<el-form
title="详情"
:visible.sync="detailshow"
width="50%"
:before-close="handleClose"
>
<el-form
ref="form"
:model="formdetail"
label-width="150px"
:inline="true"
>
<el-form-item
label="病种名称:"
prop="packageVersion"
>
<span>{{formdetail.diseaseTypeName}}</span>
</el-form-item>
<el-form-item
label="服务包名称:"
prop="packageVersion"
>
<span>{{formdetail.packageName}}</span>
</el-form-item>
<el-form-item
label="价格:"
prop="packageVersion"
>
<span>{{formdetail.packagePrice}}</span>
</el-form-item>
<el-form-item
label="服务期限:"
prop="packageVersion"
>
<span>{{formdetail.packageTermAndUnit}}</span>
</el-form-item>
<el-form-item
label="硬件类型:"
prop="packageVersion"
>
<span>{{formdetail.hardwareType=="BLOOD_PRESSURE"?'血压仪':''}}</span>
<span>{{formdetail.hardwareType=="GLUCOSE_METER"?'血糖仪':''}}</span>
<span>{{formdetail.hardwareType=="ELECTROCARDIOGRA"?'心电仪':''}}</span>
</el-form-item>
</el-form>
<el-table
v-loading="loading"
:data="datailList"
>
<el-form-item label="病种名称:" prop="packageVersion">
<span>{{ formdetail.diseaseTypeName }}</span>
</el-form-item>
<el-form-item label="服务包名称:" prop="packageVersion">
<span>{{ formdetail.packageName }}</span>
</el-form-item>
<el-form-item label="价格:" prop="packageVersion">
<span>{{ formdetail.packagePrice }}</span>
</el-form-item>
<el-form-item label="服务期限:" prop="packageVersion">
<span>{{ formdetail.packageTermAndUnit }}</span>
</el-form-item>
<el-form-item label="硬件类型:" prop="packageVersion">
<span>{{
formdetail.hardwareType == "BLOOD_PRESSURE" ? "血压仪" : ""
}}</span>
<span>{{
formdetail.hardwareType == "GLUCOSE_METER" ? "血糖仪" : ""
}}</span>
<span>{{
formdetail.hardwareType == "ELECTROCARDIOGRA" ? "心电仪" : ""
}}</span>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="datailList">
<el-table-column label="序号" type="index" />
<el-table-column
label="序号"
type="index"
/>
<el-table-column
label="服务方式"
align="center"
prop="serviceWayName"
/>
<el-table-column
label="服务内容"
align="center"
prop="serviceContent"
:show-overflow-tooltip="true"
/>
<el-table-column label="服务频次" align="center" prop="serviceFrequencyText" />
</el-table>
<span slot="footer" class="dialog-footer">
<el-button @click="detailshow = false">关闭</el-button>
</span>
</el-dialog>
<!-- 发布弹框 -->
<el-dialog
label="服务方式"
align="center"
prop="serviceWayName"
/>
<el-table-column
label="服务内容"
align="center"
prop="serviceContent"
:show-overflow-tooltip="true"
/>
<el-table-column
label="服务频次"
align="center"
prop="serviceFrequencyText"
/>
</el-table>
<span slot="footer" class="dialog-footer">
<el-button @click="detailshow = false">关闭</el-button>
</span>
</el-dialog>
<!-- 发布弹框 -->
<el-dialog
title="提示"
:visible.sync="dialogexamine"
width="30%"
@ -732,7 +721,7 @@
</template>
<script>
import { listServicepackage, getServicepackage, delServicepackage, addServicepackage, updateServicepackage,serviceWayList,serviccontent,editReleaseStatus,listServicePackageNum } from "@/api/manage/servicepackage";
import { listServicepackage, getServicepackage, delServicepackage, addServicepackage, updateServicepackage, serviceWayList, serviccontent, editReleaseStatus, listServicePackageNum } from "@/api/manage/servicepackage";
import { department, listDisease } from "@/api/manage/script";
export default {
@ -789,8 +778,10 @@ export default {
optionscontent: [],
//
optionsfrequency: [
{ value: '',
label: ''}
{
value: '',
label: ''
}
],
optionstype: [{
@ -815,11 +806,11 @@ export default {
label: '日'
},
],
value:'year',
detailshow:false,
datailList:[],
value: 'year',
detailshow: false,
datailList: [],
dialogexamine: false,//
examineid:null,//id
examineid: null,//id
idd: 0,
select: '',
//
@ -860,32 +851,32 @@ export default {
},
//
form: {},
formdetail:{},
formdetail: {},
//
rules: {
departmentId: [
{ required: true, message: "所属科室id不能为空", trigger: "blur" }
],
packageIntroduction:[
{ required: true, message: "服务包简介不能为空", trigger: "blur" }
packageIntroduction: [
{ required: true, message: "服务包简介不能为空", trigger: "blur" }
],
packagePrice:[
{ required: true, message: "服务包价格不能为空", trigger: "blur" }
packagePrice: [
{ required: true, message: "服务包价格不能为空", trigger: "blur" }
],
packageVersion:[
{ required: true, message: "服务包版本不能为空", trigger: "blur" }
packageVersion: [
{ required: true, message: "服务包版本不能为空", trigger: "blur" }
],
// packageVersion:[
// ],
packageName:[
{ required: true, message: "服务包名称不能为空", trigger: "blur" }
packageName: [
{ required: true, message: "服务包名称不能为空", trigger: "blur" }
],
packageTerm:[
{ required: true, message: "服务包期限不能为空", trigger: "blur" }
packageTerm: [
{ required: true, message: "服务包期限不能为空", trigger: "blur" }
],
voList:{
voList: {
serviceWayName: [
{
required: true,
@ -907,9 +898,9 @@ export default {
trigger: "blur",
},
]
},
},
}
};
},
@ -918,46 +909,42 @@ export default {
this.Departmentlist();
},
methods: {
changepackageTermUnit(e){
this.$set(this.form,'packageTermUnit',e);
changepackageTermUnit(e) {
this.$set(this.form, 'packageTermUnit', e);
// this.form.packageTermUnit=e
},
//
detail(row){
this.detailshow=true
detail(row) {
this.detailshow = true
getServicepackage(row.id).then(response => {
this.formdetail = response.data;
this.datailList=response.data.voList
this.datailList.forEach(el=>{
if(el.serviceFrequencyEnd){
el.serviceFrequencyText=el.serviceFrequencyStart+'~'+el.serviceFrequencyEnd
}else{
el.serviceFrequencyText=el.serviceFrequencyText
this.datailList = response.data.voList
this.datailList.forEach(el => {
if (el.serviceFrequencyEnd) {
el.serviceFrequencyText = el.serviceFrequencyStart + '~' + el.serviceFrequencyEnd
}
})
console.log(this.datailList)
} else {
el.serviceFrequencyText = el.serviceFrequencyText
}
})
});
},
//
handleClose(){
this.detailshow=false
handleClose() {
this.detailshow = false
},
//
release(row) {
//
release(row) {
this.examineid = row.id
this.dialogexamine = true
},
//
cancelamine() {
var propagandaStatus =1
editReleaseStatus(this.examineid,propagandaStatus).then(response => {
var propagandaStatus = 1
editReleaseStatus(this.examineid, propagandaStatus).then(response => {
this.$message({
type: "success",
message: "发布成功"
@ -968,16 +955,15 @@ this.$set(this.form,'packageTermUnit',e);
},
//
amineClose() {
this.dialogexamine = false
},
//
submitamine() {
var propagandaStatus =0
var propagandaStatus = 0
editReleaseStatus(this.examineid,propagandaStatus).then(response => {
editReleaseStatus(this.examineid, propagandaStatus).then(response => {
this.$message({
type: "success",
message: "发布不通过"
@ -987,8 +973,8 @@ this.$set(this.form,'packageTermUnit',e);
this.dialogexamine = false
},
//item
delnurseClassifyitem(index) {
//item
delnurseClassifyitem(index) {
this.form.voList.splice(index, 1);
},
//item
@ -997,9 +983,6 @@ this.$set(this.form,'packageTermUnit',e);
var obj = {
serviceWayName: null,
serviceContent: null,
// serviceFrequencyText:"",
// serviceFrequencyStart: null,
// serviceFrequencyEnd:null,
idd: this.idd
};
if (this.form.voList.length == 5) {
@ -1018,41 +1001,36 @@ this.$set(this.form,'packageTermUnit',e);
this.loading = false;
});
},
//
getserviceWayList(){
getserviceWayList() {
serviceWayList().then(response => {
this.optionsway = response.data;
});
},
//
changeway(e){
var id =null
id=this.optionsway.find(f => f.serviceWayName == e).id
changeway(e) {
var id = null
id = this.optionsway.find(f => f.serviceWayName == e).id
serviccontent(id).then(response => {
this.optionscontent = response.rows;
});
console.log(e,'00000')
this.form.voList.serviceContent='';
},
//
changcontent(e){
var id =null
id=this.optionscontent.find(f => f.serviceContent == e).id
this.optionsfrequency=this.optionscontent.find(f=> f.id==id).serviceWayFrequencyList
console.log(this.optionsfrequency,'777777')
this.optionsfrequency.forEach(el=>{
if(el.serviceFrequencyType=="DIGIT"){
el.serviceFrequencyText=el.serviceFrequencyStart+'~'+el.serviceFrequencyEnd
}else if(el.serviceFrequencyType=="serviceFrequencyType"){
this.optionsfrequency=this.optionscontent.find(f=> f.id==e).serviceWayFrequencyList
console.log(this.optionsfrequency,'00000')
changcontent(e) {
var id = null
id = this.optionscontent.find(f => f.serviceContent == e).id
this.optionsfrequency = this.optionscontent.find(f => f.id == id).serviceWayFrequencyList
this.optionsfrequency.forEach(el => {
if (el.serviceFrequencyType == "DIGIT") {
el.serviceFrequencyText = el.serviceFrequencyStart + '~' + el.serviceFrequencyEnd
} else if (el.serviceFrequencyType == "serviceFrequencyType") {
this.optionsfrequency = this.optionscontent.find(f => f.id == e).serviceWayFrequencyList
}
})
},
//
Departmentlist() {
this.loading = true;
@ -1081,7 +1059,6 @@ this.$set(this.form,'packageTermUnit',e);
this.queryParams.departmentId = ''
this.itemname = null
this.getList()
}
},
//
@ -1207,7 +1184,7 @@ this.$set(this.form,'packageTermUnit',e);
this.single = selection.length !== 1
this.multiple = !selection.length
},
//
//
handleAdd() {
this.reset();
this.getserviceWayList()
@ -1215,18 +1192,18 @@ this.$set(this.form,'packageTermUnit',e);
voList: [
{
serviceWayName: null,
serviceContent: null,
serviceFrequencyStart: null,
serviceFrequencyEnd:null,
serviceContent: null,
serviceFrequencyStart: null,
serviceFrequencyEnd: null,
idd: this.idd,
},
],
};
console.log(this.form)
console.log(this.form)
this.form.whetherRelease = 0
this.form.packageTermUnit='年'
this.form.packageTermUnit = '年'
if (this.itemname) {
this.form.departmentName = this.departmentName
this.form.departmentId = this.itemname
@ -1247,15 +1224,15 @@ this.$set(this.form,'packageTermUnit',e);
const id = row.id || this.ids
getServicepackage(id).then(response => {
this.form = response.data;
this.form.voList.forEach(el=>{
if(!el.serviceFrequencyText){
el.serviceFrequencyText=el.serviceFrequencyStart+'~'+el.serviceFrequencyEnd
}else{
el.serviceFrequencyText=el.serviceFrequencyText
this.form.voList.forEach(el => {
if (!el.serviceFrequencyText) {
el.serviceFrequencyText = el.serviceFrequencyStart + '~' + el.serviceFrequencyEnd
}
})
} else {
el.serviceFrequencyText = el.serviceFrequencyText
}
})
this.diseaseTypeName = response.data.diseaseTypeName
this.departmentName = response.data.departmentName
this.open = true;
@ -1263,18 +1240,18 @@ this.$set(this.form,'packageTermUnit',e);
});
},
//
copy(row){
copy(row) {
const id = row.id || this.ids
getServicepackage(id).then(response => {
this.form = response.data;
this.form.voList.forEach(el=>{
if(!el.serviceFrequencyText){
el.serviceFrequencyText=el.serviceFrequencyStart+'~'+el.serviceFrequencyEnd
}else{
el.serviceFrequencyText=el.serviceFrequencyText
}
})
this.form.voList.forEach(el => {
if (!el.serviceFrequencyText) {
el.serviceFrequencyText = el.serviceFrequencyStart + '~' + el.serviceFrequencyEnd
} else {
el.serviceFrequencyText = el.serviceFrequencyText
}
})
this.diseaseTypeName = response.data.diseaseTypeName
this.departmentName = response.data.departmentName
this.open = true;
@ -1283,91 +1260,91 @@ this.$set(this.form,'packageTermUnit',e);
});
},
//
submitFormadd(){
submitFormadd() {
this.form.whetherRelease = 0
this.form.voList.forEach(e=>{
if(e.serviceFrequencyText.includes('~')){
const str = e.serviceFrequencyText;
const parts = str.split('~');
e.serviceFrequencyStart = parts[0];
e.serviceFrequencyEnd = parts[1];
e.serviceFrequencyText=null
}else{
e.serviceFrequencyText=e.serviceFrequencyText
this.form.voList.forEach(e => {
if (e.serviceFrequencyText.includes('~')) {
const str = e.serviceFrequencyText;
const parts = str.split('~');
e.serviceFrequencyStart = parts[0];
e.serviceFrequencyEnd = parts[1];
e.serviceFrequencyText = null
} else {
e.serviceFrequencyText = e.serviceFrequencyText
}
})
if (this.diseaseTypeName == "请选择病种") {
this.form.diseaseTypeName == null
} else {
this.form.diseaseTypeName = this.diseaseTypeName
}
if (this.itemname) {
this.form.diseaseTypeName == null
} else {
this.form.diseaseTypeName = this.diseaseTypeName
}
if (this.itemname) {
this.form.departmentName = this.departmentName
this.form.departmentId = this.itemname
this.form.departmentName = this.departmentName
this.form.departmentId = this.itemname
} else {
this.form.departmentName = this.departmentName
} else {
this.form.departmentName = this.departmentName
}
addServicepackage(this.form).then(response => {
this.$modal.msgSuccess("复制成功");
this.open = false;
this.getList();
this.getlistcount()
});
}
addServicepackage(this.form).then(response => {
this.$modal.msgSuccess("复制成功");
this.open = false;
this.getList();
this.getlistcount()
});
},
//
//
submitForm() {
console.log(this.form)
this.$refs["form"].validate(valid => {
if (valid) {
if(this.form.voList){
this.form.voList.forEach(e=>{
if(e.serviceFrequencyText.includes('~')){
const str = e.serviceFrequencyText;
const parts = str.split('~');
e.serviceFrequencyStart = parts[0];
e.serviceFrequencyEnd = parts[1];
e.serviceFrequencyText=null
}else{
e.serviceFrequencyText=e.serviceFrequencyText
}
if (this.form.id != null) {
this.form.departmentName = this.departmentName
this.form.diseaseTypeName = this.diseaseTypeName
updateServicepackage(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
if (this.diseaseTypeName == "请选择病种") {
this.form.diseaseTypeName == null
} else {
this.form.diseaseTypeName = this.diseaseTypeName
}
if (this.itemname) {
if (this.form.voList) {
this.form.voList.forEach(e => {
if (e.serviceFrequencyText.includes('~')) {
const str = e.serviceFrequencyText;
const parts = str.split('~');
e.serviceFrequencyStart = parts[0];
e.serviceFrequencyEnd = parts[1];
e.serviceFrequencyText = null
} else {
e.serviceFrequencyText = e.serviceFrequencyText
}
if (this.form.id != null) {
this.form.departmentName = this.departmentName
this.form.diseaseTypeName = this.diseaseTypeName
updateServicepackage(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
if (this.diseaseTypeName == "请选择病种") {
this.form.diseaseTypeName == null
} else {
this.form.diseaseTypeName = this.diseaseTypeName
}
if (this.itemname) {
this.form.departmentName = this.departmentName
this.form.departmentId = this.itemname
this.form.departmentName = this.departmentName
this.form.departmentId = this.itemname
} else {
this.form.departmentName = this.departmentName
} else {
this.form.departmentName = this.departmentName
}
addServicepackage(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
this.Departmentlist()
});
}
addServicepackage(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
this.Departmentlist()
});
}
})
}
})
}
}
});
},