|
|
@@ -44,6 +44,14 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
+ <el-col :span="6">
|
|
|
+ <el-form-item label="费用状态">
|
|
|
+ <el-select style="width: 100%;" v-model="productpageRequest.validStatus" clearable>
|
|
|
+ <el-option label="启用" value="1"></el-option>
|
|
|
+ <el-option label="禁用" value="0"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
<el-col :span="6">
|
|
|
<el-form-item label="创建日期">
|
|
|
<el-date-picker style="width: 100%;" v-model="createDate" type="daterange" value-format="yyyy-MM-dd"
|
|
|
@@ -53,8 +61,8 @@
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="费用描述">
|
|
|
- <el-select style="width: 100%;" v-model="productpageRequest.costsDescription" multiple filterable allow-create default-first-option
|
|
|
- placeholder="关键字搜索 例:新能源、非车险、评分等">
|
|
|
+ <el-select style="width: 100%;" v-model="productpageRequest.costsDescription" multiple filterable allow-create
|
|
|
+ default-first-option placeholder="关键字搜索 例:新能源、非车险、评分等">
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
@@ -86,16 +94,16 @@
|
|
|
</div>
|
|
|
<kt-common-table :tableHeights="580" :SerialShow="false" :operationWidth="250" :showOperation="true"
|
|
|
:showBatchDelete="true" :showBatchSettled="false" :showBatchPrint="false" :customToolseletted="true"
|
|
|
- :data="productPageResult" :columns="productColumns" @findPage="productCostFindPage" button2Name="编辑"
|
|
|
- button2Type="text" button3Type="text" button5Type="text" :button2style="{ color: '#2D4D89' }"
|
|
|
- :button3style="{ color: '#D42426' }" :button5style="{ color: '#2D4D89' }" permsButton2="agreement:input:productCost"
|
|
|
- @handleButton2="productUpdate" deleteName="批量修改费用" @handleDelete="batchUpdate" @customTool="batchDelete"
|
|
|
- @customTool1="customTool1" customToolName1="批量修改起止时间"
|
|
|
- customToolName="批量删除" button3Name="删除" permsButton3="agreement:input:productCost" @handleButton3="productDelete"
|
|
|
+ :disableInBulk="false" :data="productPageResult" :columns="productColumns" @findPage="productCostFindPage"
|
|
|
+ button2Name="编辑" button2Type="text" button3Type="text" button5Type="text" button4Type="text"
|
|
|
+ :button2style="{ color: '#2D4D89' }" :button3style="{ color: '#D42426' }" :button5style="{ color: '#2D4D89' }"
|
|
|
+ permsButton2="agreement:input:productCost" @handleButton2="productUpdate" deleteName="批量修改费用"
|
|
|
+ @handleDelete="batchUpdate" @customTool="batchDelete" @customTool1="customTool1" customToolName1="批量修改起止时间"
|
|
|
+ customToolName="批量删除" button3Name="删除" permsButton3="agreement:input:productCost" @handleButton3="productDelete"
|
|
|
button5Name="轨迹" @handleButton5="trajectory" button3Icon="">
|
|
|
</kt-common-table>
|
|
|
- <el-dialog :append-to-body="true" :title="productCostAddDialogTitle" :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh"
|
|
|
- @close="productcloseDialog">
|
|
|
+ <el-dialog :append-to-body="true" :title="productCostAddDialogTitle"
|
|
|
+ :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh" @close="productcloseDialog">
|
|
|
<el-tabs v-model="activeName" type="card">
|
|
|
<el-tab-pane :label="tabtitle + '费用'" name="feiyong" class="tab-panestyle">
|
|
|
<div class="tab-panecent">
|
|
|
@@ -335,7 +343,7 @@
|
|
|
@click="productCostAddSubmit('productCostForm')">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-dialog :append-to-body="true" :visible.sync="ddgjdialogVisible" width="25%" title="订单轨迹">
|
|
|
+ <el-dialog :append-to-body="true" :visible.sync="ddgjdialogVisible" width="25%" title="订单轨迹">
|
|
|
<div class="tab-panestyle">
|
|
|
<div style="height: 400px; overflow-y: auto;padding: 6px;">
|
|
|
<el-steps direction="vertical" :active="trajectoryTable.length - 1">
|
|
|
@@ -351,7 +359,8 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
- <el-dialog :append-to-body="true" title="产品历史记录" :visible.sync="productHistoryRecordDialogVisible" width="70%" :fullscreen="true">
|
|
|
+ <el-dialog :append-to-body="true" title="产品历史记录" :visible.sync="productHistoryRecordDialogVisible" width="70%"
|
|
|
+ :fullscreen="true">
|
|
|
<div class="p-2">
|
|
|
<el-row class="queryFrom">
|
|
|
<el-form ref="queryFormRef" :model="productHistoryRecordForm" label-width="80px">
|
|
|
@@ -393,9 +402,10 @@
|
|
|
</div>
|
|
|
|
|
|
</el-dialog>
|
|
|
- <el-dialog :append-to-body="true" title="批量操作" :visible.sync="batchdialogVisible" width="50%">
|
|
|
+ <el-dialog :append-to-body="true" title="批量操作" :visible.sync="batchdialogVisible" width="50%">
|
|
|
<div class="tab-panestyle">
|
|
|
- <el-form :inline="true" :model="batchUpdateForm" id="bulkOperation" class="demo-form-inline tab-panecent" style="padding: 20px;">
|
|
|
+ <el-form :inline="true" :model="batchUpdateForm" id="bulkOperation" class="demo-form-inline tab-panecent"
|
|
|
+ style="padding: 20px;">
|
|
|
<!-- <el-row>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="费用起期:">
|
|
|
@@ -412,7 +422,7 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row> -->
|
|
|
- <el-row >
|
|
|
+ <el-row>
|
|
|
<div class="title">交强险费用</div>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="总费用比例" prop="jqCostsProportion">
|
|
|
@@ -552,14 +562,15 @@
|
|
|
@click="batchCostsubmit">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-dialog :append-to-body="true" title="费用复制窗口" :visible.sync="productCostCopyDialogVisible" :close-on-click-modal="false"
|
|
|
- :fullscreen="true">
|
|
|
+ <el-dialog :append-to-body="true" title="费用复制窗口" :visible.sync="productCostCopyDialogVisible"
|
|
|
+ :close-on-click-modal="false" :fullscreen="true">
|
|
|
<div class="p-2">
|
|
|
<el-form :inline="true" :model="productcopyItemPageRequest" class="demo-form-inline" size="small"
|
|
|
label-width="80px">
|
|
|
<el-form-item label="选择协议">
|
|
|
<el-select v-model="productcopyItemPageRequest.agreementId" placeholder="请选择协议">
|
|
|
- <el-option v-for="(item, index) in protocolpageResult" :key="index" :label="`${item.agreementName}-${item.businessDescription}-${item.jobDescription}`"
|
|
|
+ <el-option v-for="(item, index) in protocolpageResult" :key="index"
|
|
|
+ :label="`${item.agreementName}-${item.businessDescription}-${item.jobDescription}`"
|
|
|
:value="item.id"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
@@ -582,8 +593,8 @@
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="费用描述">
|
|
|
- <el-select style="width: 300px;" v-model="productcopyItemPageRequest.costsDescription" multiple filterable allow-create default-first-option
|
|
|
- placeholder="费用描述">
|
|
|
+ <el-select style="width: 300px;" v-model="productcopyItemPageRequest.costsDescription" multiple filterable
|
|
|
+ allow-create default-first-option placeholder="费用描述">
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
@@ -597,7 +608,8 @@
|
|
|
</kt-common-table>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
- <el-dialog :append-to-body="true" title="产品费用历史记录详情" :visible.sync="productHistoryDetailsDialogVisible" width="80%" top="6vh">
|
|
|
+ <el-dialog :append-to-body="true" title="产品费用历史记录详情" :visible.sync="productHistoryDetailsDialogVisible" width="80%"
|
|
|
+ top="6vh">
|
|
|
<div class="tab-panestyle">
|
|
|
<Product-Cost-Form v-if="productHistoryDetailsDialogVisible" :form="dynamicFormArray" :operator="operatorlist"
|
|
|
over-size="small" @cancelForm="productHistoryDetailsDialogVisible = false" :disabled="true"></Product-Cost-Form>
|
|
|
@@ -605,21 +617,22 @@
|
|
|
</el-dialog>
|
|
|
|
|
|
|
|
|
- <el-dialog :append-to-body="true" title="批量修改起止时间" :visible.sync="showUpdate1" width="30%" top="6vh">
|
|
|
+ <el-dialog :append-to-body="true" title="批量修改起止时间" :visible.sync="showUpdate1" width="30%" top="6vh">
|
|
|
<div class="tab-panestyle">
|
|
|
- <el-form :inline="true" :model="batchUpdateForm1" id="bulkOperation" class="demo-form-inline tab-panecent" style="padding: 20px;">
|
|
|
+ <el-form :inline="true" :model="batchUpdateForm1" id="bulkOperation" class="demo-form-inline tab-panecent"
|
|
|
+ style="padding: 20px;">
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="费用起期:">
|
|
|
- <el-date-picker size="small" v-model="batchUpdateForm1.costsStartDate" type="datetime"
|
|
|
+ <el-date-picker size="small" v-model="batchUpdateForm1.costsStartDate" type="datetime"
|
|
|
placeholder="选择开始日期" value-format="yyyy-MM-dd HH:mm:ss">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="费用止期:">
|
|
|
- <el-date-picker size="small" v-model="batchUpdateForm1.costsEndDate" type="datetime"
|
|
|
- placeholder="选择结束日期" value-format="yyyy-MM-dd HH:mm:ss" @change="checkStartDate1">
|
|
|
+ <el-date-picker size="small" v-model="batchUpdateForm1.costsEndDate" type="datetime" placeholder="选择结束日期"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss" @change="checkStartDate1">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
@@ -645,9 +658,9 @@ export default {
|
|
|
KtCommonTable,
|
|
|
ProductCostForm
|
|
|
},
|
|
|
- props:{
|
|
|
- messageInfo:{
|
|
|
- default:{}
|
|
|
+ props: {
|
|
|
+ messageInfo: {
|
|
|
+ default: {}
|
|
|
}
|
|
|
},
|
|
|
data() {
|
|
|
@@ -982,6 +995,7 @@ export default {
|
|
|
{ prop: "desc", label: "费用因子描述", minWidth: 520 },
|
|
|
{ prop: "priorityLevel", label: "方案优先级", minWidth: 100 },
|
|
|
{ prop: "isAudit", label: "审核状态", minWidth: 120, formatter: this.auditTypeFormation },
|
|
|
+ { prop: "validStatus", label: "费用状态", minWidth: 200, formatter: this.validStatusFormation },
|
|
|
{
|
|
|
prop: "jqCarCostsProportion",
|
|
|
label: "费用比例(交强)",
|
|
|
@@ -1175,6 +1189,7 @@ export default {
|
|
|
pageNum: 1,
|
|
|
pageSize: 20,
|
|
|
agreementId: "",
|
|
|
+ validStatus: "",
|
|
|
},
|
|
|
productPageResult: [],
|
|
|
insuranceCompanyId: "",
|
|
|
@@ -1232,7 +1247,7 @@ export default {
|
|
|
showUpdate1: false,
|
|
|
batchUpdateForm1: {},
|
|
|
carClassList: [],
|
|
|
- batchUpdatelist:[],
|
|
|
+ batchUpdatelist: [],
|
|
|
lineData: {},
|
|
|
}
|
|
|
},
|
|
|
@@ -1261,10 +1276,10 @@ export default {
|
|
|
if (res.code == 200) {
|
|
|
this.protocolpageResult = res.data;
|
|
|
this.protocolpageResult.forEach(item => {
|
|
|
- item.agreementName == null ? item.agreementName='' : item.agreementName,
|
|
|
- item.businessDescription == null ? item.businessDescription='' : item.businessDescription,
|
|
|
- item.jobDescription == null ? item.jobDescription='' : item.jobDescription
|
|
|
- });
|
|
|
+ item.agreementName == null ? item.agreementName = '' : item.agreementName,
|
|
|
+ item.businessDescription == null ? item.businessDescription = '' : item.businessDescription,
|
|
|
+ item.jobDescription == null ? item.jobDescription = '' : item.jobDescription
|
|
|
+ });
|
|
|
console.log(this.protocolpageResult);
|
|
|
} else {
|
|
|
this.$message.error(res.msg);
|
|
|
@@ -1273,6 +1288,7 @@ export default {
|
|
|
},
|
|
|
// 方法函数
|
|
|
methods: {
|
|
|
+
|
|
|
disabledDate1(time) {
|
|
|
let datetime = this.productcopyItemPageRequest.costStartDate;
|
|
|
const disabledTime = new Date(datetime).getTime() - 8.64e7;
|
|
|
@@ -1693,30 +1709,63 @@ export default {
|
|
|
// costsDateBatch
|
|
|
this.showUpdate1 = true
|
|
|
},
|
|
|
+ //批量禁用
|
|
|
+ batchdisableInBulkClick(data) {
|
|
|
+ this.$confirm('禁用后今日内可支付的订单将失效, 是否继续?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'danger'
|
|
|
+ }).then(() => {
|
|
|
+ this.$api.insCompany.productbatchDisable({ costsIdList: data }).then((res) => {
|
|
|
+ if (res.code == '200') {
|
|
|
+ this.$message({
|
|
|
+ type: 'success',
|
|
|
+ message: res.msg,
|
|
|
+ });
|
|
|
+ this.productCostFindPage();
|
|
|
+
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ type: 'error',
|
|
|
+ message: res.msg,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }).catch(() => {
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ },
|
|
|
//产品批量编辑
|
|
|
batchUpdate(data) {
|
|
|
- let listName=[];
|
|
|
- data.map(val=>{
|
|
|
- let name=this.productPageResult.content.find(ele=>ele.id==val).productName;
|
|
|
+ let listName = [];
|
|
|
+ data.map(val => {
|
|
|
+ let name = this.productPageResult.content.find(ele => ele.id == val).productName;
|
|
|
listName.push(name)
|
|
|
return val;
|
|
|
})
|
|
|
- this.batchUpdatelist=listName;
|
|
|
+ this.batchUpdatelist = listName;
|
|
|
console.log(this.batchUpdatelist)
|
|
|
let contains1 = listName.every(item => ['单交'].includes(item));
|
|
|
- let contains2 = listName.every(item => ['单商','单三'].includes(item));
|
|
|
- let contains3 = listName.every(item => ['交商','交三'].includes(item));
|
|
|
- if(contains1 || contains2 || contains3){
|
|
|
- this.batchUpdateForm = {
|
|
|
- ids: data,
|
|
|
- };
|
|
|
- this.batchdialogVisible = true;
|
|
|
- }else{
|
|
|
+ let contains2 = listName.every(item => ['单商', '单三'].includes(item));
|
|
|
+ let contains3 = listName.every(item => ['交商', '交三'].includes(item));
|
|
|
+ if (contains1 || contains2 || contains3) {
|
|
|
+ this.batchUpdateForm = {
|
|
|
+ ids: data,
|
|
|
+ };
|
|
|
+ this.batchdialogVisible = true;
|
|
|
+ } else {
|
|
|
return this.$message.error('险种选择错误,无法批量修改');
|
|
|
}
|
|
|
},
|
|
|
//产品编辑
|
|
|
productUpdate({ row, column }) {
|
|
|
+ if (row.validStatus === 1) {
|
|
|
+ return this.$message({
|
|
|
+ type: 'warning',
|
|
|
+ message: "请先禁用后再编辑费用",
|
|
|
+ });
|
|
|
+ }
|
|
|
this.$api.insCompany.productcostFactorQuery(row.id).then((res) => {
|
|
|
if (res.code == '200') {
|
|
|
let obj = Object.assign({}, res.data);
|
|
|
@@ -1877,6 +1926,35 @@ export default {
|
|
|
let expense = this.expenseAuditlist.find(val => val.value == expenseAudit).label;
|
|
|
return <el-tag type="success">{expense}</el-tag>;
|
|
|
},
|
|
|
+ validStatusFormation(row, column) {
|
|
|
+ let _this = this;
|
|
|
+ return <el-switch value={row.validStatus} active-value={1}
|
|
|
+ inactive-value={0} onChange={validStatuschange} ></el-switch>;
|
|
|
+ function validStatuschange(value) {
|
|
|
+ _this.$confirm('禁用后今日内可支付的订单将失效, 是否继续?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'danger'
|
|
|
+ }).then(() => {
|
|
|
+ _this.$api.insCompany.productdisable(row.id).then((res) => {
|
|
|
+ if (res.code == '200') {
|
|
|
+ _this.$message({
|
|
|
+ type: 'success',
|
|
|
+ message: res.msg,
|
|
|
+ });
|
|
|
+ _this.productCostFindPage();
|
|
|
+ } else {
|
|
|
+ _this.$message({
|
|
|
+ type: 'error',
|
|
|
+ message: res.msg,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }).catch(() => {
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
operatorTypeFormatter(row, column) {
|
|
|
let operatorType = row.operatorType;
|
|
|
switch (operatorType) {
|
|
|
@@ -1918,7 +1996,7 @@ export default {
|
|
|
}
|
|
|
return contains
|
|
|
},
|
|
|
- batchUpdateincludes(){
|
|
|
+ batchUpdateincludes() {
|
|
|
let a = ['单交'];
|
|
|
let contains = this.batchUpdatelist.every(item => a.includes(item));
|
|
|
return contains
|
|
|
@@ -2228,40 +2306,48 @@ export default {
|
|
|
background: #f2f7fc;
|
|
|
border-color: #fff;
|
|
|
}
|
|
|
+
|
|
|
// 批量操作弹窗样式
|
|
|
-#bulkOperation{
|
|
|
- .title{
|
|
|
+#bulkOperation {
|
|
|
+ .title {
|
|
|
color: #333;
|
|
|
font-size: 16px;
|
|
|
font-weight: 500;
|
|
|
padding-bottom: 20px;
|
|
|
}
|
|
|
- .el-form-item{
|
|
|
+
|
|
|
+ .el-form-item {
|
|
|
margin-bottom: 20px;
|
|
|
- >>>.el-form-item__content{
|
|
|
+
|
|
|
+ >>>.el-form-item__content {
|
|
|
width: 100%;
|
|
|
line-height: normal;
|
|
|
- .el-date-editor.el-input, .el-date-editor.el-input__inner{
|
|
|
+
|
|
|
+ .el-date-editor.el-input,
|
|
|
+ .el-date-editor.el-input__inner {
|
|
|
width: 100%;
|
|
|
}
|
|
|
}
|
|
|
- >>>.el-form-item__label{
|
|
|
+
|
|
|
+ >>>.el-form-item__label {
|
|
|
height: 22px;
|
|
|
line-height: 22px;
|
|
|
margin-bottom: 10px;
|
|
|
}
|
|
|
- >>>.el-input-number{
|
|
|
+
|
|
|
+ >>>.el-input-number {
|
|
|
width: 100%;
|
|
|
- .el-input__inner{
|
|
|
+
|
|
|
+ .el-input__inner {
|
|
|
color: #333;
|
|
|
text-align: left;
|
|
|
- &:focus{
|
|
|
+
|
|
|
+ &:focus {
|
|
|
color: #333;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
</style>
|
|
|
|