Commit fa795363 authored by 吴婷慧's avatar 吴婷慧

Merge branch 'yanglilong' into dev-wth

parents a64b5bd0 9b2ab5f4
......@@ -10,5 +10,8 @@ module.exports = {
rules: {
"no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
"no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
"max-line-length": "off",
"object-property-newline": "off",
"prettier/prettier": "off"
},
};
......@@ -14,6 +14,7 @@ export default {
payorDelete: "/backstage/auth/payorDelete", //保险公司删除
/*-------------折扣信息-----------------*/
payorAddDiscount: "/backstage/auth/payorAddDiscount", //编辑折扣信息
payorAddDiscount: "/backstage/auth/payorAddDiscount", //新增折扣信息
payorAddDiscountBenefit: "/backstage/auth/payorAddDiscountBenefit", //编辑折扣信息
payorDiscountDelete: "/backstage/auth/payorDiscountDelete", //删除折扣信息
};
......@@ -55,10 +55,14 @@ const PAYORDELETE = (data) => {
};
/*-------------折扣信息-----------------*/
//编辑折扣信息
//新增折扣信息
const PAYORADDDISCOUNT = (data) => {
return req.post(apis.payorAddDiscount, data);
};
//编辑折扣信息
const PAYORADDDISCOUNTBENEFIT = (data) => {
return req.post(apis.payorAddDiscountBenefit, data);
};
//删除折扣信息
const PAYORDISCOUNTDELETE = (data) => {
return req.post(apis.payorDiscountDelete, data);
......@@ -77,5 +81,6 @@ export default {
PAYORUPDATE,
PAYORDELETE,
PAYORADDDISCOUNT,
PAYORADDDISCOUNTBENEFIT,
PAYORDISCOUNTDELETE
};
......@@ -14,6 +14,11 @@ export default {
path: "company",
name: "InfoCompany",
component: () => import("@/views/info/company")
},
{
path: "companyDetail",
name: "InfoCompanyDetail",
component: () => import("@/views/info/companyDetail")
}
]
};
<template>
<div class="white_bg burt-container">
<div class="title-div">保险公司信息</div>
<a-table
:columns="columns"
:data-source="dataList"
:scroll="{ x: 'max-content' }"
:pagination="false"
>
<div
v-for="col in columns"
:slot="col.dataIndex"
slot-scope="text, record, index"
:key="col.dataIndex"
@click.stop="seeDetail(record)"
>
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: 'max-content' }" :pagination="false">
<div v-for="col in columns" :slot="col.dataIndex" slot-scope="text, record, index" :key="col.dataIndex" >
<template v-if="col.dataIndex == 'operation'">
<a-button type="link" @click.stop="editEvt(record, index)">{{
record.edit ? "保存" : "修改"
}}</a-button>
<a-button type="link" class="success">新增</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)"
>删除</a-button
>
<a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<a-button type="link" @click.stop="detailEvt(record)">查看</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template>
<template v-else>
<a-input
v-if="record.edit"
placeholder="请输入"
v-model="record[col.dataIndex]"
/>
<span v-else>{{ text }}</span>
<span>{{ text }}</span>
</template>
</div>
</a-table>
<!--分页-->
<BurtPagination :pagination="pagination" @pageChange="getData" />
<!--详细信息-->
<companyInfo />
<!--折扣信息-->
<Discount />
<a-modal :title="editFormObj.id ? '编辑' : '新增'" :visible="dialogShow" width="60%" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK"
@cancel="dialogShow = false">
<a-form-model layout="vertical" ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="公司名称" prop="longName">
<a-input v-model.trim="editFormObj.longName" placeholder="保险公司名称" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="医生英文名" prop="englishName">
<a-input v-model.trim="editFormObj.englishName" placeholder="保险医生英文名" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="联系电话" prop="contactPhone">
<a-input v-model.trim="editFormObj.contactPhone" placeholder="联系电话" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="联系地址" prop="address">
<a-input v-model.trim="editFormObj.address" placeholder="联系地址" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="Protal链接" prop="portalUrl">
<a-input v-model.trim="editFormObj.portalUrl" placeholder="Protal链接" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="联系人" prop="contactPerson">
<a-input v-model.trim="editFormObj.contactPerson" placeholder="联系人" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import BurtPagination from "@/components/CUSTOMER/pagation";
import Discount from "./components/companyDiscount";
import companyInfo from "./components/companyInfo";
const columns = [
{
title: "序号",
dataIndex: "id",
width: 120,
},
{
title: "保险公司名称",
dataIndex: "longName",
ellipsis: true,
scopedSlots: { customRender: "longName" },
width: 130,
},
{
title: "医生英文名",
dataIndex: "englishName",
ellipsis: true,
scopedSlots: { customRender: "englishName" },
width: 105,
},
{
title: "联系电话",
dataIndex: "contactPhone",
scopedSlots: { customRender: "contactPhone" },
width: 125,
},
{
title: "联系地址",
dataIndex: "address",
ellipsis: true,
scopedSlots: { customRender: "address" },
width: 180,
},
{
title: "Protal链接",
dataIndex: "portalUrl",
ellipsis: true,
scopedSlots: { customRender: "portalUrl" },
width: 155,
},
{
title: "联系人",
dataIndex: "contactPerson",
ellipsis: true,
scopedSlots: { customRender: "contactPerson" },
width: 100,
},
{
title: "操作",
dataIndex: "operation",
scopedSlots: { customRender: "operation" },
fixed: "right",
width: "170px",
},
{ title: "序号", dataIndex: "id",width: 120},
{ title: "保险公司名称",dataIndex: "longName", ellipsis: true, scopedSlots: { customRender: "longName" },width: 130},
{ title: "医生英文名", dataIndex: "englishName",ellipsis: true,scopedSlots: { customRender: "englishName" },width: 105},
{ title: "联系电话", dataIndex: "contactPhone", scopedSlots: { customRender: "contactPhone" }, width: 125},
{ title: "联系地址", dataIndex: "address", ellipsis: true, scopedSlots: { customRender: "address" }, width: 180},
{ title: "Protal链接", dataIndex: "portalUrl", ellipsis: true, scopedSlots: { customRender: "portalUrl" }, width: 155 },
{ title: "联系人", dataIndex: "contactPerson", ellipsis: true, scopedSlots: { customRender: "contactPerson" },width: 100},
{ title: "操作", dataIndex: "operation", scopedSlots: { customRender: "operation" },fixed: "right", width: "170px",align: "center"},
];
export default {
data() {
return {
dialogShow: false,
columns,
pagination: {
pageNum: 1,
......@@ -112,12 +80,22 @@ export default {
total: 0,
},
dataList: [],
editFormObj: {
id: "",
longName: "",
englishName: "",
contactPhone: "",
address: "",
portalUrl: "",
contactPerson: "",
},
editRules: {
longName: [{ required: true, message: "请输入", trigger: "blur" }],
},
};
},
components: {
BurtPagination,
companyInfo,
Discount
},
created() {
this.getData();
......@@ -134,35 +112,42 @@ export default {
if (res.returnCode == "0000") {
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = (content.list || []).map((item) => {
return {
...item,
edit: false,
};
});
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
},
//编辑
editEvt(record, index) {
this.dataList.forEach((item, i) => {
if (index != i) {
item.edit = false;
}
});
record.edit = !record.edit;
//保存
if (!record.edit) {
this.$apis.PAYORUPDATE(record).then((res) => {
editEvt(record) {
this.editFormObj = {
id: record.id || "",
longName: record.longName || "",
englishName: record.englishName || "",
contactPhone: record.contactPhone || "",
address: record.address || "",
portalUrl: record.portalUrl || "",
contactPerson: record.contactPerson || ""
};
this.dialogShow = true;
},
//编辑保存
handleEditOK(){
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis
.PAYORUPDATE(this.editFormObj)
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
//删除
delRecord(index) {
......@@ -187,6 +172,14 @@ export default {
},
});
},
detailEvt(record){
this.$router.push({
path: '/info/companyDetail',
query: {
id: record.id
}
})
},
//查看详情
seeDetail(record) {
//没有编辑
......
<template>
<div class="white_bg burt-container">
<!--详细信息-->
<companyInfo :detailObj="detailObj" />
<!--折扣信息-->
<Discount v-if="detailObj.id" :detailObj="detailObj" @getDetail="getDetail" />
</div>
</template>
<script>
import companyInfo from "./components/companyInfo";
import Discount from "./components/companyDiscount";
export default {
data(){
return {
id: '', //公司id
detailObj: { //公司详情
discountList: [], //折扣列表
}
}
},
components: {
companyInfo,
Discount
},
created(){
this.id = this.$route.query.id;
this.getDetail();
},
methods: {
//获取详细信息
getDetail() {
this.$apis.PAYORDETAIL({
id: this.id,
})
.then((res) => {
if (res.returnCode == "0000") {
this.detailObj = res.content || {};
} else {
this.$message.error(res.returnMsg);
}
});
},
}
}
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template>
<!--折扣信息-->
<div class="discount-container">
<div class="title-div">下面的是写死为1001这条保险公司的-----折扣信息</div>
<a-table
:columns="columns"
:data-source="tableList"
:scroll="{ x: 'max-content' }"
:pagination="false"
>
<div
v-for="col in columns"
:slot="col.dataIndex"
slot-scope="text, record, index"
:key="col.dataIndex"
>
<div class="flex btns-div">
<div class="title-div">折扣信息</div>
<div class="flex btns">
<a-button type="primary" icon="plus" @click.stop="editEvt({})">新增</a-button>
<a-button type="primary">医科理赔申请书模版</a-button>
<a-button type="primary">齿科理赔申请书模版</a-button>
<a-button type="primary">预授权申请书模版</a-button>
</div>
</div>
<a-table :columns="columns" :data-source="tableList" :scroll="{ x: 'max-content' }" :pagination="false" >
<div v-for="col in columns" :slot="col.dataIndex" slot-scope="text, record, index" :key="col.dataIndex">
<template v-if="col.dataIndex == 'operation'">
<a-button type="link" @click.stop="editEvt(record, index)">{{
record.edit ? "保存" : "修改"
}}</a-button>
<a-button type="link" class="success">新增</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)"
>删除</a-button
>
<a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template>
<template
v-else-if="col.dataIndex == 'benefits'"
slot-scope="text, record"
>
<a-select
v-if="record.edit"
v-model="record.benefits2"
placeholder="请选择"
mode="multiple"
>
<a-select-option
:value="item.benefitCode"
v-for="item in benefitType"
:key="item.benefitCode"
>{{ item.description }}</a-select-option
>
<template v-else-if="col.dataIndex == 'benefits'" slot-scope="text, record">
<a-select v-if="record.edit" v-model="record.benefits2" placeholder="请选择" mode="multiple">
<a-select-option :value="item.benefitCode" v-for="item in benefitType" :key="item.benefitCode">{{ item.description }}</a-select-option>
</a-select>
<span v-else>{{ filterType(record.benefits2) }}</span>
</template>
<template v-else>
<a-input
v-if="record.edit"
placeholder="请输入"
v-model="record[col.dataIndex]"
/>
<a-input v-if="record.edit" placeholder="请输入" v-model="record[col.dataIndex]"/>
<span v-else>{{ text }}</span>
</template>
</div>
</a-table>
<!--分页-->
<BurtPagination :pagination="pagination" @pageChange="getTableList" />
<a-modal title="编辑" :visible="dialogShow" width="60%" :maskClosable="false"
okText="确定" cancelText="取消" @ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model layout="vertical" ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="项目" prop="benefits">
<a-select v-model="editFormObj.benefits2" placeholder="请选择" mode="multiple">
<a-select-option :value="item.benefitCode" v-for="item in benefitType" :key="item.benefitCode">{{ item.description }}</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="折扣比例" prop="ratio">
<a-input v-model.trim="editFormObj.ratio" placeholder="折扣比例" type="number" :min="0" />
</a-form-model-item>
</a-col>
<a-col :xs="24">
<a-form-model-item label="备注" prop="remark">
<a-input type="textarea" v-model.trim="editFormObj.remark" placeholder="备注" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import BurtPagination from "@/components/CUSTOMER/pagation";
const columns = [
{
title: "序号",
dataIndex: "id",
width: 205,
},
{
title: "项目",
dataIndex: "benefits",
ellipsis: true,
scopedSlots: { customRender: "benefits" },
width: 310,
},
{
title: "折扣比例",
dataIndex: "ratio",
ellipsis: true,
scopedSlots: { customRender: "ratio" },
width: 190,
},
{
title: "备注",
dataIndex: "remark",
scopedSlots: { customRender: "remark" },
width: 180,
},
{
title: "操作",
dataIndex: "operation",
scopedSlots: { customRender: "operation" },
fixed: "right",
width: "170px",
},
{ title: "序号", dataIndex: "id", width: 205},
{ title: "项目",dataIndex: "benefits", ellipsis: true, scopedSlots: { customRender: "benefits" },width: 310, },
{ title: "折扣比例", dataIndex: "ratio", ellipsis: true, scopedSlots: { customRender: "ratio" },width: 190,},
{ title: "备注", dataIndex: "remark", scopedSlots: { customRender: "remark" }, width: 180,},
{ title: "操作", dataIndex: "operation", scopedSlots: { customRender: "operation" },fixed: "right", width: "170px" },
];
export default {
props: {
detailObj: {
discountList: []
}
},
data() {
return {
dialogShow: false,
columns,
pagination: {
pageNum: 1,
pageSize: 5,
total: 0,
},
dataList: [], //所有的折扣信息
dataList: [],//所有的折扣信息
tableList: [], //显示
benefitType: [], //福利类型
benefitTypeObj: {}, //福利类型对象
editFormObj: {
id: "",
benefits2: [],
ratio: "",
remark: ""
},
editRules: {
benefits2: [{ required: true, message: "请选择", trigger: "blur" }],
ratio: [{ required: true, message: "请输入", trigger: "blur" }],
},
};
},
components: {
BurtPagination,
},
watch: {
detailObj: {
handler(newVal){
let list = newVal.discountList || [];
this.pagination.total = list.length;
this.dataList = list;
this.getTableList();
},
immediate: true,
deep: true
}
},
async created() {
await this.getBenefitType();
this.getData();
this.getBenefitType();
},
methods: {
//过滤器
......@@ -140,23 +140,6 @@ export default {
});
});
},
//获取列表
getData() {
this.$apis
.PAYORDETAIL({
id: 1001,
})
.then((res) => {
if (res.returnCode == "0000") {
let list = res.content.discountList || [];
this.pagination.total = list.length;
this.dataList = list;
this.getTableList();
} else {
this.$message.error(res.returnMsg);
}
});
},
//分页
getTableList() {
let list = this.dataList.slice(
......@@ -166,42 +149,48 @@ export default {
this.tableList = list.map((item) => {
return {
...item,
edit: false,
benefits2: item.benefits ? item.benefits.split(",") : [],
};
});
},
//编辑
editEvt(record, index) {
this.tableList.forEach((item, i) => {
if (index != i) {
item.edit = false;
}
});
record.edit = !record.edit;
//保存
if (!record.edit) {
this.$apis
.PAYORADDDISCOUNT({
payorId: 1001,
id: record.id,
ratio: record.ratio,
remark: record.remark,
discountBenefitList: (record.benefits2 || []).map((item) => {
editEvt(record) {
this.editFormObj = {
id: record.id || "",
benefits2: record.benefits2 || [],
ratio: record.ratio || "",
remark: record.remark || ""
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
let funcName = this.editFormObj.id? 'PAYORADDDISCOUNTBENEFIT': 'PAYORADDDISCOUNT';
this.$apis[funcName]({
payorId: this.detailObj.id,
id: this.editFormObj.id,
ratio: this.editFormObj.ratio,
remark: this.editFormObj.remark,
discountBenefitList: (this.editFormObj.benefits2 || []).map((item) => {
return {
benefitCode: item,
discountId: record.id,
discountId: this.editFormObj.id,
};
}),
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.$emit('getDetail');
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
//删除
delRecord(index) {
......@@ -211,8 +200,7 @@ export default {
okText: "确定",
cancelText: "取消",
onOk: () => {
this.$apis
.PAYORDISCOUNTDELETE({
this.$apis.PAYORDISCOUNTDELETE({
id: this.tableList[index].id,
})
.then((res) => {
......@@ -239,4 +227,10 @@ export default {
color: #252631;
font-weight: bold;
}
.btns-div{
justify-content: space-between;
.ant-btn{
margin-left: 30px;
}
}
</style>
<template>
<div class="info-div">
<div class="title-div">下面的是写死为1001这条保险公司的-----详细信息</div>
<a-form-model ref="form" layout="vertical">
<a-row :gutter="30">
<a-col :lg="6" :sm="12">
......@@ -10,10 +9,7 @@
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="保险公司英文名称">
<a-input
v-model="detailObj.englishName"
placeholder="保险公司英文名称"
/>
<a-input v-model="detailObj.englishName" placeholder="保险公司英文名称" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
......@@ -35,20 +31,12 @@
<a-row :gutter="30">
<a-col :lg="12" :sm="12">
<a-form-model-item label="合同起始日期">
<a-date-picker
v-model="detailObj.startDate"
format="YYYY年MM月DD日"
placeholder="选择日期"
/>
<a-date-picker v-model="detailObj.startDate" format="YYYY年MM月DD日" placeholder="选择日期"/>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="12">
<a-form-model-item label="合同终止日期">
<a-date-picker
v-model="detailObj.endDate"
format="YYYY年MM月DD日"
placeholder="选择日期"
/>
<a-date-picker v-model="detailObj.endDate" format="YYYY年MM月DD日" placeholder="选择日期"/>
</a-form-model-item>
</a-col>
</a-row>
......@@ -60,26 +48,17 @@
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="网络联系人">
<a-input
v-model="detailObj.contactPerson"
placeholder="请输入联系人"
/>
<a-input v-model="detailObj.contactPerson" placeholder="请输入联系人"/>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="理赔件邮寄地址">
<a-input
v-model="detailObj.claimAddress"
placeholder="理赔件邮寄地址"
/>
<a-input v-model="detailObj.claimAddress" placeholder="理赔件邮寄地址"/>
</a-form-model-item>
</a-col>
<a-col :lg="4" :sm="12">
<a-form-model-item label="保险公司联系电话">
<a-input
v-model="detailObj.contactPhone"
placeholder="保险公司联系电话"
/>
<a-input v-model="detailObj.contactPhone" placeholder="保险公司联系电话"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
......@@ -99,34 +78,22 @@
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="客服邮件地址">
<a-input
v-model="detailObj.customerEmail"
placeholder="客服邮件地址"
/>
<a-input v-model="detailObj.customerEmail" placeholder="客服邮件地址" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="预授权邮件地址">
<a-input
v-model="detailObj.authorEmail"
placeholder="预授权邮件地址"
/>
<a-input v-model="detailObj.authorEmail" placeholder="预授权邮件地址" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="理赔邮件地址">
<a-input
v-model="detailObj.claimEmail"
placeholder="理赔邮件地址"
/>
<a-input v-model="detailObj.claimEmail" placeholder="理赔邮件地址" />
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="保险公司Protal链接">
<a-input
v-model="detailObj.portalUrl"
placeholder="保险公司Protal链接"
/>
<a-input v-model="detailObj.portalUrl" placeholder="保险公司Protal链接" />
</a-form-model-item>
</a-col>
<a-col :lg="4" :sm="12">
......@@ -136,11 +103,7 @@
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="密码">
<a-input
type="password"
v-model="detailObj.loginPwd"
placeholder="密码"
/>
<a-input type="password" v-model="detailObj.loginPwd" placeholder="密码" />
</a-form-model-item>
</a-col>
</a-row>
......@@ -159,33 +122,18 @@
<script>
export default {
props: {
detailObj: {}
},
data() {
return {
detailObj: {}
}
},
created(){
this.getDetail()
},
methods: {
//获取详细信息
getDetail() {
this.$apis
.PAYORDETAIL({
id: 1001,
})
.then((res) => {
if (res.returnCode == "0000") {
this.detailObj = res.content || {};
} else {
this.$message.error(res.returnMsg);
}
});
},
//新建保存
handlerSava(){
this.$apis
.CREATEPAY({
this.$apis.CREATEPAY({
...this.detailObj
})
.then((res) => {
......
......@@ -10,19 +10,12 @@
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="医疗机构英文名">
<a-input
v-model="detailObj.englishName"
placeholder="医疗机构英文名"
/>
<a-input v-model="detailObj.englishName" placeholder="医疗机构英文名" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="营业时间">
<a-date-picker
v-model="detailObj.businessHours"
format="YYYY年MM月DD日"
placeholder="选择日期"
/>
<a-date-picker v-model="detailObj.businessHours" format="YYYY年MM月DD日" placeholder="选择日期"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
......@@ -32,18 +25,12 @@
</a-col>
<a-col :lg="10" :sm="12">
<a-form-model-item label="诊所地址(中文)">
<a-input
v-model="detailObj.address"
placeholder="诊所地址(中文)"
/>
<a-input v-model="detailObj.address" placeholder="诊所地址(中文)" />
</a-form-model-item>
</a-col>
<a-col :lg="10" :sm="12">
<a-form-model-item label="诊所地址(英文)">
<a-input
v-model="detailObj.englishAddr"
placeholder="诊所地址(英文)"
/>
<a-input v-model="detailObj.englishAddr" placeholder="诊所地址(英文)" />
</a-form-model-item>
</a-col>
</a-row>
......@@ -63,11 +50,7 @@
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="银行账号">
<a-input
v-model="detailObj.bankAccount"
type="number"
placeholder="银行账号"
/>
<a-input v-model="detailObj.bankAccount" type="number" placeholder="银行账号" />
</a-form-model-item>
</a-col>
</a-row>
......@@ -77,45 +60,27 @@
<a-row :gutter="30">
<a-col :lg="8" :sm="12">
<a-form-model-item label="Beneficiiary Name 账号">
<a-input
v-model="detailObj.accountNameEng"
placeholder="Beneficiiary Name 账号"
/>
<a-input v-model="detailObj.accountNameEng" placeholder="Beneficiiary Name 账号" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="Bank Account No 银行账号">
<a-input
v-model="detailObj.bankAccountEng"
placeholder="Bank Account No 银行账号"
/>
<a-input v-model="detailObj.bankAccountEng" placeholder="Bank Account No 银行账号"/>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="Bank Name 银行名称">
<a-input
v-model="detailObj.bankAddrEng"
type="number"
placeholder="Bank Name 银行名称"
/>
<a-input v-model="detailObj.bankAddrEng" type="number" placeholder="Bank Name 银行名称" />
</a-form-model-item>
</a-col>
<a-col :sm="12">
<a-form-model-item label="Bank Address 银行地址">
<a-input
v-model="detailObj.bankAddr"
type="number"
placeholder="Bank Address 银行地址"
/>
<a-input v-model="detailObj.bankAddr" type="number" placeholder="Bank Address 银行地址"/>
</a-form-model-item>
</a-col>
<a-col :sm="12">
<a-form-model-item label="Swift Code 国际电汇代码">
<a-input
v-model="detailObj.telegraphicTransferCode"
type="number"
placeholder="Swift Code 国际电汇代码"
/>
<a-input v-model="detailObj.telegraphicTransferCode" type="number" placeholder="Swift Code 国际电汇代码" />
</a-form-model-item>
</a-col>
</a-row>
......@@ -127,40 +92,29 @@
</a-upload>
</div> -->
<div class="title-div">医生信息</div>
<a-table
:columns="columns"
:data-source="dataList"
:scroll="{ x: 'max-content' }"
:pagination="false"
>
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: 'max-content' }" :pagination="false">
<template slot="specialtyList" slot-scope="text, record">
<a-select
v-if="record.edit"
v-model="record.specialtyList2"
placeholder="请选择"
mode="multiple"
>
<a-select-option
:value="item.id"
v-for="item in specialtyList"
:key="item.id"
>{{ item.specialtyDesc }}</a-select-option
>
</a-select>
<span v-else>{{ filterSpecialty(record.specialtyList2) }}</span>
<span>{{ filterSpecialty(record.specialtyList) }}</span>
</template>
<template slot="operation" slot-scope="text, record, index">
<a-button type="link" @click.stop="editEvt(record, index)">{{
record.edit ? "保存" : "修改"
}}</a-button>
<a-button type="link" class="success">新增</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)"
>删除</a-button
>
<a-button type="link" @click.stop="editEvt(record)">{{ record.edit ? "保存" : "修改"}}</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template>
</a-table>
<!--分页-->
<BurtPagination :pagination="pagination" @pageChange="getDoctorList" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj"
:rules="editRules" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-form-model-item label="科室" prop="specialtyList">
<a-select v-model="editFormObj.specialtyList" placeholder="请选择" mode="multiple">
<a-select-option :value="item.id" v-for="item in specialtyList" :key="item.id">{{ item.specialtyDesc }}</a-select-option>
</a-select>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
......@@ -195,12 +149,16 @@ const columns = [
dataIndex: "operation",
scopedSlots: { customRender: "operation" },
fixed: "right",
width: "170px",
width: "120px",
align: "center",
},
];
export default {
data() {
return {
dialogShow: false,
labelCol: { span: 4 },
wrapperCol: { span: 20 },
columns,
dataList: [],
detailObj: {}, //详细信息
......@@ -211,6 +169,15 @@ export default {
},
specialtyList: [], //科室列表
specialtyObj: {}, //科室对象
editFormObj: {
id: "",
specialtyList: [],
},
editRules: {
specialtyList: [
{ required: true, message: "请选择", trigger: "change" },
],
},
};
},
components: {
......@@ -272,15 +239,14 @@ export default {
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = (content.list || []).map((item) => {
let specialtyList2 = (item.specialtyList || []).map(
let specialtyList = (item.specialtyList || []).map(
(innerItem) => {
return innerItem.specialtyId;
}
);
return {
...item,
specialtyList2: specialtyList2 || [],
edit: false,
specialtyList: specialtyList || [],
};
});
} else {
......@@ -288,20 +254,21 @@ export default {
}
});
},
//编辑
editEvt(record, index) {
this.dataList.forEach((item, i) => {
if (index != i) {
item.edit = false;
}
});
record.edit = !record.edit;
//保存
if (!record.edit) {
editEvt(record) {
this.editFormObj = {
id: record.id || "",
specialtyList: record.specialtyList || [],
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis
.DOCTORUPDATE({
id: record.id,
specialtyList: record.specialtyList2.map((item) => {
id: this.editFormObj.id,
specialtyList: this.editFormObj.specialtyList.map((item) => {
return {
specialtyId: item,
};
......@@ -310,11 +277,14 @@ export default {
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getDoctorList();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
//删除医生
delRecord(index) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment