k94314517
2024-04-07 3e72240f9926463bba8d2d5cbec743dbcdcf9bd3
Merge remote-tracking branch 'origin/1.0.1' into 1.0.1
已修改28个文件
320 ■■■■ 文件已修改
company/src/components/business/ApplyChangeDetails.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeDetailWindow.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeUnitDetailWindow.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaCompanyDescWindow.vue 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaCompanyWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaShopDescWindow.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaShopWindow.vue 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaSolutionsDescWindow.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaSolutionsWindow.vue 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/modification.vue 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/addEmployee.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/additionSubtractionApplication.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/applyChange.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/applyChangeShop.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/insuranceApply.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/insuranceApplyShop.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/policyList.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/switchCourt.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/switchCourtShop.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionChange.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionChangeUnit.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/enterprise/insuranceApply.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/indexShop.vue 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/CompanySolutionServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/ApplyChangeDetails.vue
@@ -171,7 +171,6 @@
                     var addModel = addDetailList.length > i?addDetailList[i]:{}
                     var delModel = delDetailList.length > i?delDetailList[i]:{}
                     that.detailList.push({add:addModel,del:delModel});
                     console.log(detailList)
                   }
                 }).catch(err => {})
           },
company/src/components/business/OperaApplyChangeDetailWindow.vue
@@ -31,7 +31,7 @@
                          <el-button v-if="model.status == 2" type="primary" @click="viewPidan">查看批单</el-button>
                          <el-button v-if="[5,8].includes(model.status)" type="primary" @click="closeOrder">关闭订单</el-button>
                      </template>
                        <template v-if="2">
                        <template v-if="userInfo.type ===2">
                            <el-button type="primary"  @click="$refs.ApplyChangeDetails.open('加减保详单',apply,model,0)">导出详单</el-button>
                            <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">查看申请单</el-button>
                            <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">查看批单</el-button>
@@ -40,16 +40,16 @@
                            <el-button v-if=" model.solutionType == 1 && [7].includes(model.status)" type="danger" @click="closeOrder">关闭订单</el-button>
                            <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('上传批单',model,3)">上传批单</el-button>
                            <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button>
                            <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                            <el-button  v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                            <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('修改批单',model,4)">修改批单</el-button>
                        </template>
                        <template  v-if="0">
                        <template  v-if="userInfo.type ===0">
                          <el-button type="primary" @click="$refs.ApplyChangeDetails.open('加减保详单',apply,model,0)">导出详单</el-button>
                          <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">查看申请单</el-button>
                          <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">查看批单</el-button>
                          <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('上传批单',model,3)">上传批单</el-button>
                          <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button>
                          <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                          <el-button  v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                          <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('修改批单',model,4)">修改批单</el-button>
                        </template>
                  </div>
company/src/components/business/OperaApplyChangeUnitDetailWindow.vue
@@ -40,7 +40,7 @@
                      <el-button v-if=" model.solutionType == 1 && [7].includes(model.status)" type="danger" @click="closeOrder">关闭订单</el-button>
                      <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('上传批单',model,3)">上传批单</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('修改批单',model,4)">修改批单</el-button>
                    </template>
                    <template  v-if="userInfo.type === 0">
@@ -49,7 +49,7 @@
                      <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">查看批单</el-button>
                      <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('上传批单',model,3)">上传批单</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[3,4].includes(model.status)"  type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('退回投保',model,1)">退回投保</el-button>
                      <el-button  v-if="model.solutionType == 0 &&[2].includes(model.status)"  type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('修改批单',model,4)">修改批单</el-button>
                    </template>
                  </div>
company/src/components/business/OperaCompanyDescWindow.vue
@@ -29,6 +29,10 @@
                    <div class="info_list_item_val">{{form.username || '-'}}</div>
                </div>
                <div class="info_list_item">
                <div class="info_list_item_label">法人姓名:</div>
                <div class="info_list_item_val">{{form.legalName || '-'}}</div>
              </div>
                <div class="info_list_item">
                    <div class="info_list_item_label">绑定手机号:</div>
                    <div class="info_list_item_val">
                        {{form.phone || '-'}}
@@ -112,7 +116,7 @@
                <div class="info_list_item">
                    <div class="info_list_item_label" style="width: 100px;">法人身份证:</div>
                    <div class="info_list_item_val">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>1 && form.idcardImgList[0].fileurlFull">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>0 && form.idcardImgList[0].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[0].fileurlFull"
@@ -121,7 +125,7 @@
                              :preview-src-list="[form.idcardImgList[0].fileurlFull]">
                          </el-image>
                        </div>
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>2 && form.idcardImgList[1].fileurlFull">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>1 && form.idcardImgList[1].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[1].fileurlFull"
@@ -249,6 +253,8 @@
        this.code = ''
        clearInterval(this.timer)
        this.num = 0
      }) .catch(e => {
        this.$tip.apiFailed(e)
      })
    },
    send () {
@@ -260,6 +266,8 @@
        .then(res => {
          this.num = 60
          this.setTime()
        }) .catch(e => {
        this.$tip.apiFailed(e)
        })
    },
    setTime () {
@@ -308,11 +316,11 @@
            this.form.file.imgurl = res.businessImg.fileurl
            this.form.file.imgurlfull = res.businessImg.fileurlFull
          }
          if (res.idcardImgList&& res.idcardImgList.length>1) {
          if (res.idcardImgList&& res.idcardImgList.length>0) {
            this.form.file1.imgurl = res.idcardImgList[0].fileurl
            this.form.file1.imgurlfull = res.idcardImgList[0].fileurlFull
          }
          if (res.idcardImgList && res.idcardImgList.length>2) {
          if (res.idcardImgList && res.idcardImgList.length>1) {
            this.form.file2.imgurl = res.idcardImgList[1].fileurl
            this.form.file2.imgurlfull = res.idcardImgList[1].fileurlFull
          }
company/src/components/business/OperaCompanyWindow.vue
@@ -100,7 +100,7 @@
                align="center"
                label="委托商户">
                <template slot-scope="scope">
                  <el-select  v-model="scope.row.shopId" clearable="true" value-key="id" placeholder="请选择" >
                  <el-select  v-model="scope.row.shopId" clearable value-key="id" placeholder="请选择" >
                    <el-option
                        v-for="item in shops"
                        :key="item.id"
company/src/components/business/OperaShopDescWindow.vue
@@ -39,6 +39,10 @@
                    <div class="info_list_item_val">{{form.email || '-'}}</div>
                </div>
                <div class="info_list_item">
                <div class="info_list_item_label">法人姓名:</div>
                <div class="info_list_item_val">{{form.legalName || '-'}}</div>
              </div>
<!--                <div class="info_list_item">
                    <div class="info_list_item_label">纳税人识别号:</div>
                    <div class="info_list_item_val">{{form.taxCode || '-'}}</div>
                </div>
@@ -61,7 +65,7 @@
                <div class="info_list_item" style="width: 100%;">
                    <div class="info_list_item_label">纸质发票接收地址:</div>
                    <div class="info_list_item_val">{{form.invoiceAddr || '-'}}</div>
                </div>
                </div>-->
            </div>
            <div class="info_list" v-if="JSON.stringify(form) !== '{}'">
                <div class="info_list_item">
@@ -80,7 +84,7 @@
                <div class="info_list_item">
                    <div class="info_list_item_label" style="width: 100px;">法人身份证:</div>
                    <div class="info_list_item_val">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>1 && form.idcardImgList[0].fileurlFull">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>0 && form.idcardImgList[0].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[0].fileurlFull"
@@ -89,7 +93,7 @@
                              :preview-src-list="[form.idcardImgList[0].fileurlFull]">
                          </el-image>
                        </div>
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>2 && form.idcardImgList[1].fileurlFull">
                        <div class="image" v-if="form.idcardImgList && form.idcardImgList .length>1 && form.idcardImgList[1].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[1].fileurlFull"
@@ -261,11 +265,11 @@
            this.form.file.imgurl = res.businessImg.fileurl
            this.form.file.imgurlfull = res.businessImg.fileurlFull
          }
          if (res.idcardImgList&& res.idcardImgList.length>1) {
          if (res.idcardImgList&& res.idcardImgList.length>0) {
            this.form.file1.imgurl = res.idcardImgList[0].fileurl
            this.form.file1.imgurlfull = res.idcardImgList[0].fileurlFull
          }
          if (res.idcardImgList && res.idcardImgList.length>2) {
          if (res.idcardImgList && res.idcardImgList.length>1) {
            this.form.file2.imgurl = res.idcardImgList[1].fileurl
            this.form.file2.imgurlfull = res.idcardImgList[1].fileurlFull
          }
company/src/components/business/OperaShopWindow.vue
@@ -32,7 +32,7 @@
            <el-form-item label="认证邮箱" prop="email" >
                <el-input v-model="form.email" placeholder="请输入" v-trim/>
            </el-form-item>
            <el-form-item label="纳税人识别号" prop="taxCode">
<!--            <el-form-item label="纳税人识别号" prop="taxCode">
                <el-input v-model="form.taxCode" placeholder="请输入" v-trim/>
            </el-form-item>
            <el-form-item label="银行账号" prop="taxAccount">
@@ -49,7 +49,7 @@
            </el-form-item>
            <el-form-item label="纸质发票接收地址" prop="invoiceAddr">
                <el-input v-model="form.invoiceAddr" placeholder="请输入" v-trim/>
            </el-form-item>
            </el-form-item>-->
            <el-form-item label="营业执照" prop="businessImg">
                <div style="width: 100%; height: 100px; display: flex; align-items: center;">
                    <UploadAvatarImage :uploadData="{ folder: 'company' }" :file="form.file" @uploadSuccess="result" />
@@ -107,7 +107,7 @@
          fileurl: '',
          name: ''
        },
        idcardImgList: [],
        idcardImgList: [{},{}],
        signImg: {
          fileurl: '',
          name: ''
@@ -256,12 +256,14 @@
    open (title, target, type) {
      this.title = title
      this.visible = true
      this.form = this.initParam
      this.clearFrom()
      console.log(this.form)
      this.getAll()
      // 新建
      if (target == null) {
        this.$nextTick(() => {
          this.$refs.form.resetFields()
          // this.$refs.form.resetFields()
          this.form[this.configData['field.id']] = null
        })
        return
@@ -273,6 +275,58 @@
        }
      })
    },
    clearFrom(){
      this.form ={
        id: null,
        name: '',
        code: '',
        legalName: '',
        taxCode: '',
        taxAccount: '',
        username: '',
        taxBank: '',
        taxAddr: '',
        invoiceEmail: '',
        invoiceAddr: '',
        phone: '',
        email: '',
        type: 1,
        actionType: 0,
        captche: '',
        businessImg: {
          fileurl: '',
          name: ''
        },
        idcardImgList: [{},{}],
        signImg: {
          fileurl: '',
          name: ''
        },
        solutionList: [
          {
            solution: null,
            canAdd: 0,
            canReduce: 0
          }
        ],
        file: {
          imgurl: '',
          imgurlfull: ''
        },
        file1: {
          imgurl: '',
          imgurlfull: ''
        },
        file2: {
          imgurl: '',
          imgurlfull: ''
        },
        file3: {
          imgurl: '',
          imgurlfull: ''
        }
      }
    },
    // 获取全部方案
    getAll () {
      all({})
company/src/components/business/OperaSolutionsDescWindow.vue
@@ -1,7 +1,7 @@
<template>
    <GlobalWindow
        :title="title"
        width="50%"
        width="70%"
        text="修改"
        :withFooter="userInfo.type !== 1"
        :visible.sync="visible"
@@ -63,6 +63,10 @@
                <div class="info_list_item">
                    <div class="info_list_item_label">接收文件邮箱:</div>
                    <div class="info_list_item_val">{{form.email}}</div>
                </div>
              <div class="info_list_item" style="width: 100%" v-if="form.type==1">
                <div class="info_list_item_label">方案确认书:</div>
                <div class="info_list_item_val" ><a v-if="form.fanganFile && form.fanganFile.fileurlFull" style="cursor: pointer;color: #2E68EC" title="点击查看" @click="openFile(form.fanganFile.fileurlFull)">{{ form.fanganFile.name || '点击查看' }}</a></div>
                </div>
            </div>
            <el-table
@@ -165,11 +169,13 @@
                    specialAgreement: '',
                    specialInfo: '',
                    ortherInfo: '',
                    fanganFile:null,
                    insuranceName: '',
                    signKeyword: '',
                    worktypeList: [],
                    worktypeIdList: []
              }
                this.$nextTick(() => {
                    for (const key in this.form) {
                        this.form[key] = target[key]
@@ -177,6 +183,11 @@
                    this.getDetails()
                })
            },
          openFile (url) {
            setTimeout(() => {
              window.open(url)
            }, 500)
          },
            getDetails() {
                solutionsId(this.form.id)
                    .then(res => {
company/src/components/business/OperaSolutionsWindow.vue
@@ -80,12 +80,12 @@
                </div>
            </el-form-item>
            <el-form-item label="投保类型" prop="type">
                <el-radio-group v-model="form.type">
                <el-radio-group v-model="form.type" :disabled="form.id!=null">
                    <el-radio :label="0">直保</el-radio>
                    <el-radio :label="1">委托投保</el-radio>
                </el-radio-group>
            </el-form-item>
          <el-form-item label="委托商户" prop="shopId" v-if="form.type =='1'">
          <el-form-item label="委托商户" prop="shopId" v-if="form.type =='1'" :rules="form.type===1?[{required:true,message:'请选择商户'}]:[{required:false}]">
            <el-select v-model="form.shopId"  placeholder="请选择委托商户">
              <el-option
                  v-for="item in shops"
@@ -95,8 +95,8 @@
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="上传方案确认书:" prop="fanganFile" v-if="form.type =='1'">
            <UploadFile   :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="editFanganFile" />
          <el-form-item label="上传方案确认书:" prop="fanganFile" v-if="form.type =='1'" :rules="form.type===1?[{required:true,message:'请上传方案确认书'}]:[{required:false}]">
            <UploadFile  @remove="deleFile" :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="editFanganFile" />
          </el-form-item>
            <el-form-item label="接收文件邮箱" prop="email">
                <el-input v-model="form.email" placeholder="请输入" v-trim/>
@@ -258,6 +258,10 @@
        if (!valid) {
          return
        }
        if(data.type===1 &&  (!data.fanganFile || !data.fanganFile.fileurl)){
          this.$message.error('请上传方案确认书!')
          return;
        }
        // 调用新建接口
        this.isWorking = true
        if (data.id == null || data.id === '') {
@@ -289,13 +293,16 @@
        }
      })
    },
    deleFile(){
      this.form.fanganFile={}
    },
    open (title, target) {
      this.title = title
      this.visible = true
      this.form.maxAge = ''
      this.form.timeUnit = ''
      this.form.insureCycleUnit = ''
      this.form.validTypeNum = ''
      this.visible = true
      this.form.fanganFile=null
      this.form.fileList1= new Array();
      this.form.worktypeIdList = [{ worktypeId: '' }]
@@ -306,6 +313,13 @@
      if (target == null) {
        this.$nextTick(() => {
          this.$refs.form.resetFields()
          this.form.maxAge = ''
          this.form.timeUnit = ''
          this.form.insureCycleUnit = ''
          this.form.validTypeNum = ''
          this.form.fanganFile=null
          this.form.fileList1= new Array();
          this.form.worktypeIdList = [{ worktypeId: '' }]
          this.form[this.configData['field.id']] = null
        })
        return
@@ -338,6 +352,7 @@
        this.typeWork = res
      })
    },
    // 查询全部保险公司
    allCompany () {
      all({ dataType: 2, status: 0 })
company/src/components/business/modification.vue
@@ -7,7 +7,7 @@
        @confirm="confirm"
    >
        <el-button type="primary" style="margin-bottom: 15px;" @click="add">添加</el-button>
        <el-table
        <el-table v-if="form.solutionList && form.solutionList.length>0"
            :data="form.solutionList"
            border
            style="width: 100%">
@@ -38,7 +38,7 @@
              align="center"
              label="委托商户">
            <template slot-scope="scope">
              <el-select  v-model="scope.row.shopId" clearable="true" value-key="id" placeholder="请选择">
              <el-select :ref="'shopSelect'+scope.$index" :disabled="scope.row.solution.type ==1" v-model="scope.row.shopId" clearable value-key="id" placeholder="请选择">
                <el-option
                    v-for="item in shops"
                    :key="item.id"
@@ -52,8 +52,8 @@
                align="center"
                label="加减保功能">
                <template slot-scope="{row}">
                    <el-checkbox :true-label="1" :false-label="0" v-model="row.canAdd">加保</el-checkbox>
                    <el-checkbox :true-label="1" :false-label="0" v-model="row.canReduce">减保</el-checkbox>
                    <el-checkbox :true-label="1" :false-label="0" disabled  v-model="row.canAdd">加保</el-checkbox>
                    <el-checkbox :true-label="1" :false-label="0"  disabled   v-model="row.canReduce">减保</el-checkbox>
                </template>
            </el-table-column>
            <el-table-column
@@ -86,8 +86,9 @@
        id: null,
        solutionList: [
          {
            solution: { id: null, baseId: null },
            solution: { id: null, baseId: null,type:0 },
            canAdd: 0,
            shopId:null,
            canReduce: 0
          }
        ]
@@ -114,8 +115,13 @@
      this.programme.forEach(item => {
        if (item.id === e) {
          baseId = item.baseId
          this.form.solutionList[index].solution.type = item.type
          if(item.type == 1){
            this.form.solutionList[index].shopId =item.shopId
          }
        }
      })
      this.form.solutionList[index].solution.baseId = baseId
    },
    confirm () {
@@ -152,17 +158,18 @@
        this.form[key] = target[key]
      }
      this.getAll()
      this.form.solutionList=[]
      listForCompany({ companyId: target.id })
        .then(resa => {
          that.form.solutionList = resa.map(item => {
            return {
              solution: { id: item.solutionId, baseId: item.solutionBaseId },
          resa.forEach(item => {
            this.form.solutionList.push({
              solution: { id: item.solutionId, baseId: item.solutionBaseId,type:item.solutionType },
              shopId: item.shopId,
              canAdd: item.canAdd,
              canReduce: item.canReduce
            }
              canAdd: 1,
              canReduce: 1
          })
          console.log(that.form.solutionList)
          })
          console.log(this.form.solutionList)
          that.visible = true
        })
    },
@@ -170,8 +177,8 @@
      this.form.solutionList.push({
        solution: { id: null, baseId: null },
        shopId: null,
        canAdd: '',
        canReduce: ''
        canAdd: 1,
        canReduce: 1
      })
    },
    dele (index) {
company/src/components/enterprise/addEmployee.vue
@@ -32,6 +32,7 @@
        components: { GlobalWindow },
        data () {
            return {
                tempIndex : -1,
                list: [
                    {
                        memberName: '',
@@ -48,9 +49,10 @@
            }
        },
        methods: {
            open (title, obj) {
            open (title, obj,tempIndex) {
                this.title = title
                this.visible = true
                this.tempIndex = tempIndex
                this.list = [
                    {
                        memberName: '',
@@ -73,7 +75,8 @@
                    worktypeId: '',
                    duName: '',
                    duId: '',
                    fee: ''
                    fee: '',
                     id:this.tempIndex - 1
                })
            },
            dele(index) {
company/src/components/enterprise/additionSubtractionApplication.vue
@@ -202,8 +202,9 @@
                    applyStartTime: '',
                    applyEndTime: '',
                    addDetailList: [],
                    delDetailList: [],
        delDetailList: []
                },
      tempMemberIndex: -1,
                activeName: '0',
                pickerOptions: {},
                price: '',
@@ -237,6 +238,7 @@
                this.list = []
                this.form.id = null
                this.item = null
      this.tempMemberIndex = -1
                this.form.solutionId = ''
                this.form.solutionsName = ''
                this.form.applyStartTime = ''
@@ -310,7 +312,7 @@
                                    }
                                }
                            }
                        };
          }
                        // this.changeSolution1(res.solutionId)
                    })
            },
@@ -320,7 +322,6 @@
                columns.forEach((column, index) => {
                    if (index === 0) {
                        sums[index] = '总价'
                        return
                    } else if (index === 7) {
                        let total = 0
                        if (this.activeName === '0') {
@@ -328,13 +329,11 @@
                                total += item.fee
                            })
                            sums[index] = total
                            return
                        } else {
                            this.form.delDetailList.forEach(item => {
                                total += item.fee
                            })
                            sums[index] = '-' + total
                            return
                        }
                    }
                })
@@ -348,7 +347,7 @@
                if (this.activeName === '0') {
                    this.seleData.forEach(item => {
                        this.form.addDetailList.forEach((row, index) => {
                            if (item === row.name) {
            if (item === row.idCard) {
                                this.form.addDetailList.splice(index, 1)
                            }
                        })
@@ -356,7 +355,7 @@
                } else {
                    this.seleData.forEach(item => {
                        this.form.delDetailList.forEach((row, index) => {
                            if (item === row.name) {
            if (item === row.idCard) {
                                this.form.delDetailList.splice(index, 1)
                            }
                        })
@@ -483,9 +482,9 @@
                    return
                }
                if (this.activeName === '0') {
                    this.$refs.importEmployees.open('上传名单', { arr: this.form.addDetailList, price: this.price })
        this.$refs.importEmployees.open('上传名单', { arr: this.form.addDetailList, price: this.price, solutionId: this.form.solutionId })
                } else {
                    this.$refs.importEmployees.open('上传名单', { arr: this.form.delDetailList, price: this.price })
        this.$refs.importEmployees.open('上传名单', { arr: this.form.delDetailList, price: this.price, solutionId: this.form.solutionId })
                }
            },
            // 切换方案
@@ -509,10 +508,11 @@
                }
            },
            getUser(obj) {
      console.log(this.seleData)
                this.seleData.forEach(item => {
                    if (this.activeName === '0') {
                        this.form.addDetailList.forEach(row => {
                            if (item === row.name) {
            if (item === row.idCard) {
                                row.workTypeName = obj.workTypeName
                                row.worktypeId = obj.worktypeId
                                row.duName = obj.duName
@@ -521,7 +521,7 @@
                        })
                    } else {
                        this.form.delDetailList.forEach(row => {
                            if (item === row.name) {
            if (item === row.idCard) {
                                row.workTypeName = obj.workTypeName
                                row.worktypeId = obj.worktypeId
                                row.duName = obj.duName
@@ -531,7 +531,7 @@
                    }
                })
                this.seleData = []
                this.$refs.multipleTable.clearSelection();
      this.$refs.multipleTable.clearSelection()
            },
            // 选择员工
            sele() {
@@ -577,9 +577,15 @@
                return sexAndAge.age
            },
            handleSelectionChange (e) {
                this.seleData = e.map(item => item.name)
      this.seleData = e.map(item => item.idCard)
            },
            getValue(list) {
      list.forEach(item => {
        const temIndex = this.tempMemberIndex
        item.id = temIndex
        item.name = item.memberName
        this.tempMemberIndex = this.tempMemberIndex - 1
      })
                if (this.activeName === '0') {
                    this.form.addDetailList.push(...list)
                } else {
company/src/views/business/applyChange.vue
@@ -142,7 +142,7 @@
  },
  methods: {
    loadSelectList() {
      solutionAll({dataType:2}).then(res => {
      solutionAll({dataType:2,type:0}).then(res => {
        this.solutionList = res
      }).catch(err => {
      })
company/src/views/business/applyChangeShop.vue
@@ -8,7 +8,7 @@
          <el-option label="待签署" value="0"></el-option>
          <el-option label="待审核" value="1"></el-option>
          <el-option label="已生效" value="2"></el-option>
          <el-option label="申请退回" value="3"></el-option>
<!--          <el-option label="申请退回" value="3"></el-option>-->
          <el-option label="已退回" value="5"></el-option>
          <el-option label="已关闭" value="6"></el-option>
          <el-option label="待出单" value="7"></el-option>
company/src/views/business/insuranceApply.vue
@@ -62,7 +62,7 @@
                        <span>{{scope.$index + 1}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="statusInfo" label="投保状态" min-width="100px">
                <el-table-column prop="statusInfo" label="保单状态" min-width="100px">
                  <template slot-scope="{row}">
                    <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
                  </template>
@@ -154,7 +154,7 @@
        //   this.search()
        // },
        loadSelectList() {
          solutionAll({dataType:2}).then(res => {
          solutionAll({dataType:2,type:0}).then(res => {
              this.solutionList = res
            }).catch(err => {
            })
company/src/views/business/insuranceApplyShop.vue
@@ -61,7 +61,7 @@
                        <span>{{scope.$index + 1}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="statusInfo" label="投保状态" min-width="100px">
                <el-table-column prop="statusInfo" label="保单状态" min-width="100px">
                  <template slot-scope="{row}">
                    <span :class="'apply-status'+row.statusCollect" >{{row.statusInfo}}</span>
                  </template>
company/src/views/business/policyList.vue
@@ -65,7 +65,7 @@
            <span>{{scope.$index + 1}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="statusInfo" label="投保状态" align="center" min-width="100px">
        <el-table-column prop="statusInfo" label="保单状态" align="center" min-width="100px">
          <template slot-scope="{row}">
            <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
          </template>
@@ -144,7 +144,7 @@
    //   this.search()
    // },
    loadSelectList() {
      solutionAll({dataType:2}).then(res => {
      solutionAll({dataType:2,type:0}).then(res => {
        this.solutionList = res
      }).catch(err => {
      })
company/src/views/business/switchCourt.vue
@@ -140,7 +140,7 @@
  },
  methods: {
    loadSelectList() {
      solutionAll({dataType:2}).then(res => {
      solutionAll({dataType:2,type:0}).then(res => {
        this.solutionList = res
      }).catch(err => {
      })
company/src/views/business/switchCourtShop.vue
@@ -8,7 +8,7 @@
          <el-option label="待签署" value="0"></el-option>
          <el-option label="待审核" value="1"></el-option>
          <el-option label="已生效" value="2"></el-option>
          <el-option label="申请退回" value="3"></el-option>
<!--          <el-option label="申请退回" value="3"></el-option>-->
          <el-option label="待出单" value="7"></el-option>
          <el-option label="投保中" value="9"></el-option>
          <!--                    3 4 都是退回申请中-->
company/src/views/business/unionChange.vue
@@ -31,7 +31,7 @@
        </el-form>
        <!-- 表格和分页 -->
        <template v-slot:table-wrap>
            <ul class="toolbar" v-permissions="['business:unionchange:create']">
            <ul class="toolbar"  v-if="userInfo.type==2" v-permissions="['business:unionchange:create']">
                <li><el-button type="primary" @click="$refs.OpearaUnionChange.open('加减保申请')" v-permissions="['business:unionchange:create']">提交申请</el-button></li>
            </ul>
            <el-table
company/src/views/business/unionChangeUnit.vue
@@ -31,7 +31,7 @@
    </el-form>
    <!-- 表格和分页 -->
    <template v-slot:table-wrap>
      <ul class="toolbar" v-permissions="['business:unionchange:create']">
      <ul class="toolbar"  v-if="userInfo.type==2" v-permissions="['business:unionchange:create']">
        <li><el-button type="primary" @click="$refs.OpearaUnionChangeUnit.open('更换派遣单位申请')" v-permissions="['business:unionchange:create']">提交申请</el-button></li>
      </ul>
      <el-table
company/src/views/enterprise/insuranceApply.vue
@@ -12,7 +12,7 @@
                    <el-option label="已退回" value="4"></el-option>
                    <el-option label="退回申请中" value="5"></el-option>
                    <el-option label="已关闭" value="6"></el-option>
                    <el-option label="投保中" value="25"></el-option>
                    <el-option label="投保中" value="26"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="保险方案" prop="baseSolutionId">
company/src/views/index.vue
@@ -31,7 +31,7 @@
          </el-tab-pane>
        </el-tabs>
        <div v-if="activeName === '0'"  v-permissions="['business:notice:insurance']" >
          <div class="home_content_right_list">
          <div class="home_content_right_list" v-if="tableData0 && tableData0.length">
            <div class="list_item" v-for="(item, index) in tableData0" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
@@ -46,6 +46,11 @@
              </div>
            </div>
          </div>
          <div class="home_content_right_list" v-else>
            <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
              暂无消息
            </div>
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange0"
@@ -57,7 +62,7 @@
          </div>
        </div>
        <div v-if="activeName === '1'"  v-permissions="['business:notice:tax']">
          <div class="home_content_right_list">
          <div class="home_content_right_list" v-if="tableData1 && tableData1.length">
            <div class="list_item" v-for="(item, index) in tableData1" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
@@ -72,6 +77,11 @@
              </div>
            </div>
          </div>
          <div class="home_content_right_list" v-else>
            <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
              暂无消息
            </div>
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange1"
@@ -83,7 +93,7 @@
          </div>
        </div>
        <div v-if="activeName === '2'"  v-permissions="['business:notice:settle']">
          <div class="home_content_right_list">
          <div class="home_content_right_list" v-if="tableData2 && tableData2.length">
            <div class="list_item" v-for="(item, index) in tableData2" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
@@ -98,6 +108,11 @@
              </div>
            </div>
          </div>
          <div class="home_content_right_list" v-else>
            <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
              暂无消息
            </div>
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange2"
company/src/views/indexShop.vue
@@ -25,7 +25,7 @@
          </el-tab-pane>
        </el-tabs>
        <div v-if="activeName === '0'"   >
          <div class="home_content_right_list">
          <div class="home_content_right_list" v-if="tableData0&&tableData0.length">
            <div class="list_item" v-for="(item, index) in tableData0" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
@@ -40,6 +40,11 @@
              </div>
            </div>
          </div>
          <div class="home_content_right_list" v-else>
            <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
              暂无消息
            </div>
          </div>
          <div class="home_content_right_page">
            <el-pagination
                @current-change="handleCurrentChange0"
@@ -51,7 +56,7 @@
          </div>
        </div>
        <div v-if="activeName === '1'"  >
          <div class="home_content_right_list">
          <div class="home_content_right_list" v-if="tableData1&&tableData1.length">
            <div class="list_item" v-for="(item, index) in tableData1" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
@@ -64,6 +69,11 @@
              <div class="list_item_right">
                <span @click="detail(item)">查看</span>
              </div>
            </div>
          </div>
          <div class="home_content_right_list" v-else>
            <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
              暂无消息
            </div>
          </div>
          <div class="home_content_right_page">
@@ -79,8 +89,7 @@
      </div>
    </div>
    <OperaInsuranceApplyWindow ref="operaInsuranceApplyWindow" @success="handleCurrentChange0()"/>
    <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="handleCurrentChange0()"/>
    <OperaSettleClaimsWindow ref="operaSettleClaimsWindow" @success="handleCurrentChange2()"/>
    <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" @success="handleCurrentChange0()"/>
    <OperaApplyChangeUnitDetailWindow ref="operaApplyChangeUnitDetailWindow" @success="handleCurrentChange0()"/>
    <OperaApplyChangeDetailWindow ref="operaApplyChangeDetailWindow" @success="handleCurrentChange0()"/>
    <OperaTaxesWindow ref="OperaTaxesWindow" @success="handleCurrentChange1()"/>
@@ -91,20 +100,16 @@
import * as echarts from 'echarts'
import { mapState } from 'vuex'
import OperaInsuranceApplyWindow from '@/components/business/OperaInsuranceApplyWindow'
import dispatchUnitDetailsPlat from '@/components/business/dispatchUnitDetailsPlat'
import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
import OperaApplyChangeUnitDetailWindow from '@/components/business/OperaApplyChangeUnitDetailWindow'
import OperaSettleClaimsWindow from '@/components/business/OperaSettleClaimsWindow'
import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
import OperaTaxesWindow from '@/components/business/OperaTaxesWindow'
import { fetchList as noticeList, deleById } from '@/api/business/notices'
import { fetchList as noticeList } from '@/api/business/notices'
export default {
  components: {
    OperaInsuranceApplyWindow,
    dispatchUnitDetailsPlat,
    OperaTaxesWindow,
    OperaSettleClaimsWindow,
    OperaApplyChangeDetailWindow,
    OperaApplyChangeUnitDetailWindow
    OperaApplyChangeUnitDetailWindow,
    OperaWtbApplyShopWindow
  },
  name: 'Index',
  data () {
@@ -168,7 +173,7 @@
    detail (obj) {
      if(obj && obj.type === 7){
        if (obj.objType === 0) {
          this.$refs.operaInsuranceApplyWindow.open('投保申请详情', { id: obj.objId })
          this.$refs.OperaWtbApplyShopWindow.open('投保申请详情', { id: obj.objId })
        } else if (obj.objType === 1) {
          this.$refs.operaApplyChangeDetailWindow.open('加减保详情', { id: obj.objId, applyId: obj.param1 })
        } else if (obj.objType === 2) {
@@ -206,16 +211,13 @@
        sorts: []
      })
        .then(response => {
          if (type === 0) {
          if (type === 3) {
            this.tableData0 = response.records
            this.totalPage0 = response.total
          }
          if (type === 1) {
          if (type === 4) {
            this.tableData1 = response.records
            this.totalPage1 = response.total
          } if (type === 2) {
            this.tableData2 = response.records
            this.totalPage2 = response.total
          }
        })
        .catch(e => {
server/service/src/main/java/com/doumee/dao/business/model/CompanySolution.java
@@ -79,6 +79,10 @@
    @ApiModelProperty(value = "方案名称" )
    @TableField(exist = false)
    private String solutionName  ;
    @ApiModelProperty(value = "类型 0直保 1委托投保", example = "1")
    @TableField(exist = false)
    private Integer solutionType;
    @ApiModelProperty(value = "委托商户名称" )
    @TableField(exist = false)
    private String shopName  ;
server/service/src/main/java/com/doumee/service/business/impl/CompanySolutionServiceImpl.java
@@ -88,6 +88,7 @@
    public List<CompanySolution> findListForCompany(CompanySolution companySolution) {
        MPJLambdaWrapper<CompanySolution> csWrapper = new MPJLambdaWrapper<>();
        csWrapper.selectAll(CompanySolution.class);
        csWrapper.selectAs(Solutions::getType,CompanySolution::getSolutionType);
        csWrapper.selectAs(Solutions::getName,CompanySolution::getSolutionName);
        csWrapper.selectAs(Company::getName,CompanySolution::getShopName);
        csWrapper.leftJoin(Solutions.class,Solutions::getId,CompanySolution::getSolutionBaseId);
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -1917,9 +1917,14 @@
        queryWrapper.eq(pageWrap.getModel().getBaseSolutionId()!=null,Solutions::getBaseId,pageWrap.getModel().getBaseSolutionId());
        queryWrapper.in(statusList.size()>0,InsuranceApply::getStatus,statusList);
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getSolutionName()),Solutions::getName,pageWrap.getModel().getSolutionName());
        if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.THREE) ){
        if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.ApplyCollectStatus.YGQ.getKey()) ){
            //如果是已過期
            queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey());
            queryWrapper.lt(InsuranceApply::getEndTime, Utils.Date.getStart(new Date()));
        }else if(Constants.equalsInteger(pageWrap.getModel().getStatusCollect(),Constants.ApplyCollectStatus.BZZ.getKey()) ){
            //如果是保障中
            queryWrapper.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey());
            queryWrapper.gt(InsuranceApply::getEndTime, Utils.Date.getStart(new Date()));
        }
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -156,7 +156,7 @@
//                ||Constants.formatIntegerNum(solutions.getPriceCycleUnit()) < 0
                ||Constants.formatIntegerNum(solutions.getInsureCycle()) < 0
                ||Constants.formatIntegerNum(solutions.getInsureCycleUnit()) < 0
                || solutions.getMinAge() >solutions.getMaxAge()
                ||Constants.formatIntegerNum( solutions.getMinAge()) >Constants.formatIntegerNum(solutions.getMaxAge())
                || Constants.formatBigdecimal(solutions.getPrice()).compareTo(new BigDecimal(0)) !=1
        ){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
@@ -194,6 +194,7 @@
        }
        //数据有效性校验
        initCreateParam(solutions);
        solutions.setType(null);//不支持修改投保方案
        if(solutionsMapper.selectCount(new QueryWrapper<Solutions>().lambda()
                .eq(Solutions::getName,solutions.getName())
                .eq(Solutions::getIsdeleted,Constants.ZERO)
@@ -213,7 +214,6 @@
                .eq(Solutions::getDataType,Constants.TWO)
                .last("limit 1")
        );
        if(Objects.isNull(oldVersion)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到历史版本数据");