|
|
@@ -1,100 +1,100 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
<el-main ref="elMain" style="padding: 0px">
|
|
|
- <!-- 右侧列表页面Start -->
|
|
|
- <!-- 工具区域Start -->
|
|
|
- <el-form class="queryForm p-2 flex" ref="queryFormRef" :model="queryForm" :inline="true" label-width="100px">
|
|
|
- <el-form-item>
|
|
|
- <el-button :size="overSize" type="success" @click="handleAdd">添加协议</el-button>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="录入时间">
|
|
|
- <el-date-picker value-format="yyyy-MM-dd" v-model="queryForm.date" style="width: 250px" :size="overSize"
|
|
|
- type="daterange" align="left" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
|
|
|
- </el-date-picker>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="供应商类型">
|
|
|
- <el-select :size="overSize" v-model="supplierType" placeholder="请选择供应商" clearable >
|
|
|
- <el-option v-for="(item,index) in supplierTypeEnumoptions" :key="index" :label="item.dictTag" :value="item.dictValue"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="保险公司">
|
|
|
- <el-cascader style="width:220px" v-model="agreement.partnerCompaniesId" :size="overSize"
|
|
|
- :show-all-levels="false" :options="ztreeNodes" :props="optionProps" @change="handleChange" clearable
|
|
|
- filterable></el-cascader>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否有效">
|
|
|
- <el-select :size="overSize" v-model="queryForm.validStatus" placeholder="请选择" clearable style="width: 100%">
|
|
|
- <el-option label="有效" :value="1"></el-option>
|
|
|
- <el-option label="无效" :value="0"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <el-button :size="overSize" type="primary" @click="queryEsmInfo">查询</el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <el-table :size="overSize" :data="pageResult" height="680" border v-loading="loading" highlight-current-row
|
|
|
- stripe :header-cell-style="{
|
|
|
- background: '#F2F7FC',
|
|
|
- fontWeight: '700',
|
|
|
- color: '#606266',
|
|
|
- }">
|
|
|
- <el-table-column prop="id" label="编号" width="130" align="center"></el-table-column>
|
|
|
- <el-table-column prop="agreementCode" label="协议代码" width="210" align="center"></el-table-column>
|
|
|
- <el-table-column prop="agreementName" label="协议名称" align="center" width="200"></el-table-column>
|
|
|
- <el-table-column prop="agreementType" label="协议类型" align="center" width="160"
|
|
|
- :formatter="agreementtypeFormatter"></el-table-column>
|
|
|
- <el-table-column prop="startDate" label="协议生效日期" align="center" width="130"></el-table-column>
|
|
|
- <el-table-column prop="endDate" label="协议失效日期" align="center" width="130"></el-table-column>
|
|
|
- <el-table-column prop="matchType" label="匹配日期类型" align="center" width="130"
|
|
|
- :formatter="matchtypeFormatter"></el-table-column>
|
|
|
- <el-table-column prop="moneyTime" label="结算周期" align="center" width="100"
|
|
|
- :formatter="moneytimeFormatter"></el-table-column>
|
|
|
- <el-table-column prop="validStatus" label="状态" align="center" width="110"
|
|
|
- :formatter="agreestatusFormatter"></el-table-column>
|
|
|
- <el-table-column prop="updateTime" label="修改时间" align="center" width="160"
|
|
|
- :formatter="updatetimeFormatter"></el-table-column>
|
|
|
- <el-table-column prop="validStatus" label="是否有效" align="center" width="80">
|
|
|
- <template slot-scope="scope">
|
|
|
- <span :size="overSize" type="primary" @click="uplatequery(scope.$index, scope.row)">{{
|
|
|
- scope.row.validStatus == 1 ? "有效" : "无效" }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="modifiedBy" label="修改人" align="center" width="130"></el-table-column>
|
|
|
- <el-table-column label="操作" align="center" width="200" fixed="right">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button :size="overSize" type="text" @click="uplatequery(scope.$index, scope.row)"
|
|
|
- style="color: #e6a23c">编辑</el-button>
|
|
|
- <el-button :size="overSize" type="text" @click="deletequery(scope.$index, scope.row)"
|
|
|
- style="color: #f56c6c">删除</el-button>
|
|
|
- <el-button type="text" size="mini">
|
|
|
- <el-dropdown trigger="click">
|
|
|
- <span class="el-dropdown-link" style="font-size: 12px">
|
|
|
- 更多<i class="el-icon-arrow-down el-icon--right"></i>
|
|
|
- </span>
|
|
|
- <el-dropdown-menu slot="dropdown">
|
|
|
- <el-dropdown-item>
|
|
|
- <el-button type="text" :size="overSize"
|
|
|
- @click="historyRecord(scope.$index, scope.row)">协议历史记录</el-button>
|
|
|
- </el-dropdown-item>
|
|
|
- <el-dropdown-item>
|
|
|
- <el-button type="text" :size="overSize"
|
|
|
- @click="productCost(scope.$index, scope.row)">产品费用</el-button>
|
|
|
- </el-dropdown-item>
|
|
|
- <el-dropdown-item>
|
|
|
- <el-button type="text" :size="overSize" @click="
|
|
|
- underwritingRulesButton(scope.$index, scope.row)
|
|
|
- ">承保规则</el-button>
|
|
|
- </el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </el-dropdown>
|
|
|
- </el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
|
|
|
- :page-sizes="[20, 50, 100, 200]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper"
|
|
|
- :total="totalSize">
|
|
|
- </el-pagination>
|
|
|
+ <!-- 右侧列表页面Start -->
|
|
|
+ <!-- 工具区域Start -->
|
|
|
+ <el-form class="queryForm p-2 flex" ref="queryFormRef" :model="queryForm" :inline="true" label-width="100px">
|
|
|
+ <el-form-item>
|
|
|
+ <el-button :size="overSize" type="success" @click="handleAdd">添加协议</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="录入时间">
|
|
|
+ <el-date-picker value-format="yyyy-MM-dd" v-model="queryForm.date" style="width: 250px" :size="overSize"
|
|
|
+ type="daterange" align="left" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="供应商类型">
|
|
|
+ <el-select :size="overSize" v-model="supplierType" placeholder="请选择供应商" clearable>
|
|
|
+ <el-option v-for="(item, index) in supplierTypeEnumoptions" :key="index" :label="item.dictTag"
|
|
|
+ :value="item.dictValue"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="保险公司">
|
|
|
+ <el-cascader style="width:220px" v-model="agreement.partnerCompaniesId" :size="overSize"
|
|
|
+ :show-all-levels="false" :options="ztreeNodes" :props="optionProps" @change="handleChange" clearable
|
|
|
+ filterable></el-cascader>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="是否有效">
|
|
|
+ <el-select :size="overSize" v-model="queryForm.validStatus" placeholder="请选择" clearable style="width: 100%">
|
|
|
+ <el-option label="有效" :value="1"></el-option>
|
|
|
+ <el-option label="无效" :value="0"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button :size="overSize" type="primary" @click="queryEsmInfo">查询</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-table :size="overSize" :data="pageResult" height="680" border v-loading="loading" highlight-current-row stripe
|
|
|
+ :header-cell-style="{
|
|
|
+ background: '#F2F7FC',
|
|
|
+ fontWeight: '700',
|
|
|
+ color: '#606266',
|
|
|
+ }">
|
|
|
+ <el-table-column prop="id" label="编号" width="130" align="center"></el-table-column>
|
|
|
+ <el-table-column prop="agreementCode" label="协议代码" width="210" align="center"></el-table-column>
|
|
|
+ <el-table-column prop="agreementName" label="协议名称" align="center" width="200"></el-table-column>
|
|
|
+ <el-table-column prop="agreementType" label="协议类型" align="center" width="160"
|
|
|
+ :formatter="agreementtypeFormatter"></el-table-column>
|
|
|
+ <el-table-column prop="startDate" label="协议生效日期" align="center" width="130"></el-table-column>
|
|
|
+ <el-table-column prop="endDate" label="协议失效日期" align="center" width="130"></el-table-column>
|
|
|
+ <el-table-column prop="matchType" label="匹配日期类型" align="center" width="130"
|
|
|
+ :formatter="matchtypeFormatter"></el-table-column>
|
|
|
+ <el-table-column prop="moneyTime" label="结算周期" align="center" width="100"
|
|
|
+ :formatter="moneytimeFormatter"></el-table-column>
|
|
|
+ <el-table-column prop="validStatus" label="状态" align="center" width="110"
|
|
|
+ :formatter="agreestatusFormatter"></el-table-column>
|
|
|
+ <el-table-column prop="updateTime" label="修改时间" align="center" width="160"
|
|
|
+ :formatter="updatetimeFormatter"></el-table-column>
|
|
|
+ <el-table-column prop="validStatus" label="是否有效" align="center" width="80">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span :size="overSize" type="primary" @click="uplatequery(scope.$index, scope.row)">{{
|
|
|
+ scope.row.validStatus == 1 ? "有效" : "无效" }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="modifiedBy" label="修改人" align="center" width="130"></el-table-column>
|
|
|
+ <el-table-column label="操作" align="center" width="200" fixed="right">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button :size="overSize" type="text" @click="uplatequery(scope.$index, scope.row)"
|
|
|
+ style="color: #e6a23c">编辑</el-button>
|
|
|
+ <el-button :size="overSize" type="text" @click="deletequery(scope.$index, scope.row)"
|
|
|
+ style="color: #f56c6c">删除</el-button>
|
|
|
+ <el-button type="text" size="mini">
|
|
|
+ <el-dropdown trigger="click">
|
|
|
+ <span class="el-dropdown-link" style="font-size: 12px">
|
|
|
+ 更多<i class="el-icon-arrow-down el-icon--right"></i>
|
|
|
+ </span>
|
|
|
+ <el-dropdown-menu slot="dropdown">
|
|
|
+ <el-dropdown-item>
|
|
|
+ <el-button type="text" :size="overSize"
|
|
|
+ @click="historyRecord(scope.$index, scope.row)">协议历史记录</el-button>
|
|
|
+ </el-dropdown-item>
|
|
|
+ <el-dropdown-item>
|
|
|
+ <el-button type="text" :size="overSize" @click="productCost(scope.$index, scope.row)">产品费用</el-button>
|
|
|
+ </el-dropdown-item>
|
|
|
+ <el-dropdown-item>
|
|
|
+ <el-button type="text" :size="overSize" @click="
|
|
|
+ underwritingRulesButton(scope.$index, scope.row)
|
|
|
+ ">承保规则</el-button>
|
|
|
+ </el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </el-dropdown>
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="pageNum"
|
|
|
+ :page-sizes="[20, 50, 100, 200]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="totalSize">
|
|
|
+ </el-pagination>
|
|
|
</el-main>
|
|
|
<!-- 新增协议的对话框 -->
|
|
|
<el-dialog :title="dialogTitle" v-dialogDrag :visible.sync="agreementdialogVisible" width="70%"
|
|
|
@@ -439,7 +439,8 @@
|
|
|
</el-col>
|
|
|
<el-col :span="10" :offset="2">
|
|
|
<el-form-item label="优先级" prop="sort">
|
|
|
- <el-input style="width: 100%" v-model="productCostForm.priorityLevel" label="方案匹配优先级"></el-input>
|
|
|
+ <el-input style="width: 100%" v-model="productCostForm.priorityLevel"
|
|
|
+ onkeyup="value=value.replace(/\D/g,'')" label="方案匹配优先级"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
@@ -458,7 +459,7 @@
|
|
|
<el-input disabled v-model="productCostForm.jqCarOtherCostsProportion" placeholder="请输入其他费用比例"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="5" :offset="1" v-if="permissions">
|
|
|
+ <el-col :span="5" :offset="1" v-if="permissions">
|
|
|
<el-form-item label="总费用比例" prop="jqCostsProportion">
|
|
|
<el-input v-model="productCostForm.jqCostsProportion" @blur="jqCostsProportioninput"
|
|
|
placeholder="请输入总费用比例"></el-input>
|
|
|
@@ -603,7 +604,7 @@
|
|
|
<el-button :size="overSize" type="primary" @click="productCostAddSubmit('productCostForm')">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-dialog title="承保规则录入" :visible.sync="underwritingRulesVehicleFactorVisible" width="60%" :fullscreen="true">
|
|
|
+ <el-dialog title="承保规则" :visible.sync="underwritingRulesVehicleFactorVisible" width="60%" :fullscreen="true">
|
|
|
<div class="flex a-c p-2">
|
|
|
<el-button type="warning " style="background-color: #52c578; border: #52c578" size="small"
|
|
|
@click="addUnderwritingRule">添加规则</el-button>
|
|
|
@@ -617,7 +618,7 @@
|
|
|
button3Background="#F56C6C" @handleButton3="underwritingRulesDelete" button3Icon="">
|
|
|
</kt-common-table>
|
|
|
</el-dialog>
|
|
|
- <el-dialog :title="factorDialogTitle" :visible.sync="underwritingRulesAddVehicleFactorVisible"
|
|
|
+ <el-dialog :title="underwritingRulesAddDialogTitle" :visible.sync="underwritingRulesAddVehicleFactorVisible"
|
|
|
:close-on-click-modal="false" :fullscreen="true" width="70%" top="6vh" @close="underwritingRulescloseDialog">
|
|
|
<el-form ref="form" :model="underwritingRulesForm" label-width="80px" size="small">
|
|
|
<el-form-item label="是否有效">
|
|
|
@@ -627,10 +628,11 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="规则描述">
|
|
|
- <el-input type="textarea" v-model="underwritingRulesForm.ruleDescription" placeholder="请输入承保规则描述"></el-input>
|
|
|
+ <el-input type="textarea" v-model="underwritingRulesForm.ruleDescription" placeholder="请输入承保规则描述"
|
|
|
+ maxlength="100" show-word-limit></el-input>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <Product-Cost-Form :form="dynamicFormArray" :operator="operatorlist" over-size="small"
|
|
|
+ <Product-Cost-Form v-if="underwritingRulesAddVehicleFactorVisible" :form="dynamicFormArray" :operator="operatorlist" over-size="small"
|
|
|
@saveForm="underwritingRulesSaveForm" @cancelForm="underwritingRulesCancelForm"></Product-Cost-Form>
|
|
|
</el-dialog>
|
|
|
|
|
|
@@ -655,7 +657,7 @@
|
|
|
</kt-common-table>
|
|
|
</el-dialog>
|
|
|
<el-dialog title="产品因子录入" :visible.sync="productCostFactorDialogVisible" :close-on-click-modal="false" width="70%"
|
|
|
- top="6vh" :fullscreen="true" @open="productCostFactoropenDialog">
|
|
|
+ top="6vh" :fullscreen="true" @close="productCostFactoropenDialog">
|
|
|
<Product-Cost-Form v-if="productCostFactorDialogVisible" :form="dynamicFormArray" :operator="operatorlist"
|
|
|
over-size="small" @saveForm="productCostFactorSaveForm"
|
|
|
@cancelForm="productCostFactorCancelForm"></Product-Cost-Form>
|
|
|
@@ -1033,10 +1035,6 @@ export default {
|
|
|
|
|
|
{ prop: "priorityLevel", label: "方案优先级", minWidth: 120 },
|
|
|
],
|
|
|
- isCarCollapsed: true,
|
|
|
- isCarownersCollapsed: true,
|
|
|
- isApplicantCollapsed: true,
|
|
|
- isInsuredCollapsed: true,
|
|
|
labelWidth: "160px",
|
|
|
factorDialogTitle: "承保规则录入", //配置因子弹框标题
|
|
|
factorType: "1", //1 费用因子 2 核保因子
|
|
|
@@ -1046,27 +1044,6 @@ export default {
|
|
|
copyAgreementId: "", //复制选中的协议ID
|
|
|
syncAgreementIds: [], //同步选中的协议ID列表
|
|
|
//调整使用性质联动勾选-starting
|
|
|
- isIndeterminateYy: false,
|
|
|
- checkAllYy: false,
|
|
|
- userNatureYy: [
|
|
|
- "营业出租",
|
|
|
- "营业租赁",
|
|
|
- "营业公交",
|
|
|
- "营业客运",
|
|
|
- "营业货运",
|
|
|
- "营业旅游",
|
|
|
- ],
|
|
|
- checkedUserNatureYy: [],
|
|
|
- isIndeterminateFyy: false,
|
|
|
- checkAllFyy: false,
|
|
|
- userNatureFyy: [
|
|
|
- "家庭自用",
|
|
|
- "非营业机关、事业",
|
|
|
- "非营业企业",
|
|
|
- "非营业货运",
|
|
|
- ],
|
|
|
- checkedUserNatureFyy: [],
|
|
|
- //调整使用性质联动勾选-ending
|
|
|
supplierType: "1", //协议类型
|
|
|
agreementId: "",
|
|
|
overSize: "mini",
|
|
|
@@ -1169,7 +1146,9 @@ export default {
|
|
|
validInd: "1", //是否有效
|
|
|
rulesAttrList: [],//规则属性
|
|
|
},
|
|
|
+ //规则数据集
|
|
|
dynamicFormArray: [],
|
|
|
+
|
|
|
//分页数据
|
|
|
productpageRequest: {
|
|
|
pageNum: 1,
|
|
|
@@ -1513,11 +1492,7 @@ export default {
|
|
|
this.getAllCompany();
|
|
|
},
|
|
|
methods: {
|
|
|
- productCostFactoropenDialog() {
|
|
|
- if (this.productCostAddDialogType == 'add') {
|
|
|
- this.getFactorTemplate();
|
|
|
- }
|
|
|
- },
|
|
|
+
|
|
|
getFactorTemplate() {
|
|
|
this.$api.insCompany.productConfigItem().then(res => {
|
|
|
if (res.code == '200') {
|
|
|
@@ -1718,7 +1693,9 @@ export default {
|
|
|
return val;
|
|
|
})
|
|
|
this.$nextTick(() => {
|
|
|
+ this.dynamicFormArray=obj.costsAttrLinks;
|
|
|
this.productCostForm = obj;
|
|
|
+ this.productCostForm.costsAttrLinks = [];
|
|
|
});
|
|
|
this.productCostAddDialogType = "edit";
|
|
|
this.productCostAddDialogTitle = "产品编辑";
|
|
|
@@ -1743,7 +1720,13 @@ export default {
|
|
|
return val;
|
|
|
})
|
|
|
this.$nextTick(() => {
|
|
|
- this.underwritingRulesForm = obj;
|
|
|
+ this.dynamicFormArray = obj.costsAttrLinks;
|
|
|
+ this.underwritingRulesForm = {
|
|
|
+ agreementId: obj.agreementId, //协议id
|
|
|
+ ruleDescription: obj.ruleDescription, //规则描述
|
|
|
+ validInd: obj.validInd, //是否有效
|
|
|
+ rulesAttrList: [],//规则属性
|
|
|
+ };
|
|
|
});
|
|
|
this.underwritingRulesAddDialogType = "edit";
|
|
|
this.underwritingRulesAddDialogTitle = "承保规则编辑";
|
|
|
@@ -2058,6 +2041,11 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ productCostFactoropenDialog() {
|
|
|
+ if (this.productCostAddDialogType == 'edit') {
|
|
|
+ this.getFactorTemplate();
|
|
|
+ }
|
|
|
+ },
|
|
|
//弹框打开事件
|
|
|
productcloseDialog() {
|
|
|
for (const key in this.productCostForm) {
|
|
|
@@ -2065,15 +2053,17 @@ export default {
|
|
|
this.productCostForm[key] = "";
|
|
|
}
|
|
|
}
|
|
|
- // this.getFactorTemplate();
|
|
|
this.roductList1 = null;
|
|
|
},
|
|
|
underwritingRulescloseDialog() {
|
|
|
for (let key in this.underwritingRulesForm) {
|
|
|
- if (key != "agreementId") {
|
|
|
+ if (key !== "agreementId" && key !== "rulesAttrList") {
|
|
|
this.underwritingRulesForm[key] = "";
|
|
|
}
|
|
|
}
|
|
|
+ if(this.underwritingRulesAddDialogType=='edit'){
|
|
|
+ this.getFactorTemplate();
|
|
|
+ }
|
|
|
},
|
|
|
//弹框打开事件,清空表单
|
|
|
closeDialog() {
|