jiangping
2024-06-20 f3cd7cfc310d5ef87ca79c26d7a77dfb1eacb388
提交一把
已删除1个文件
已修改13个文件
864 ■■■■ 文件已修改
company/.env.development 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/.env.developmentCom 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/.env.developmentShop 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OpearaUnionApply.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OpearaUnionChange.vue 95 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OpearaUnionChangeUnit.vue 68 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeDetailWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaPolicyListWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaUnionChangeDetailWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/OperaInsuranceApplyAddWindowNew.vue 651 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/addEmployeeWithDu.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/additionSubtractionApplication.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionApply.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/.env.development
@@ -10,6 +10,6 @@
# VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
VUE_APP_API = 'http://localhost:10030/'
#VUE_APP_API = 'http://192.168.0.135:10030/'
#VUE_APP_API = 'http://localhost:10030/'
VUE_APP_API = 'http://192.168.0.135:10030/'
#VUE_APP_API = 'https://www.yyb.red/yyb_admin_api/'
company/.env.developmentCom
@@ -8,6 +8,7 @@
VUE_APP_COOKIE_NAME='doumee-auth-token'
# VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
VUE_APP_API = 'http://localhost:10031/'
#VUE_APP_API = 'http://192.168.0.135:10031/'
#VUE_APP_API = 'http://localhost:10031/'
VUE_APP_API = 'http://192.168.0.135:10031/'
#VUE_APP_API = 'https://www.yyb.red/yyb_web_api/'
company/.env.developmentShop
@@ -7,8 +7,8 @@
VUE_APP_SYSTEM_TITLE = '云易保客户服务系统-商户端'
#VUE_APP_API = 'https://www.yyb.red/yyb_shop_api/'
# VUE_APP_API = 'http://192.168.0.135:10032/'
 VUE_APP_API = 'http://192.168.0.135:10032/'
VUE_APP_API = 'http://localhost:10032/'
#VUE_APP_API = 'http://localhost:10032/'
#VUE_APP_API = 'https://www.yyb.red/yyb_shop_api/'
company/src/components/business/OpearaUnionApply.vue
@@ -19,7 +19,7 @@
                            :value="item.id">
                        </el-option>
                    </el-select>
                  <span style="color: #F95601; font-size: 14px;">(1. è¯·å…ˆé€‰æ‹©æ–¹æ¡ˆæŸ¥çœ‹ç”³è¯·è®°å½•)</span>
                  <span style="color: orange; font-size: 14px;"><i class="el-icon-warning"></i>1. è¯·å…ˆé€‰æ‹©æ–¹æ¡ˆæŸ¥çœ‹ç”³è¯·è®°å½•</span>
                  </div>
                </el-form-item>
                <el-form-item label="保险生效起止期:" prop="startDate" style="margin-left: 40px">
@@ -33,7 +33,7 @@
                            range-separator="至"
                            start-placeholder="开始日期"
                            end-placeholder="结束日期" />
                        <span style="color: #F95601; font-size: 14px;">(2. æ¬¡æ—¥ç”Ÿæ•ˆæŠ•保请于17:30前提交,超时提交以保险单为准)</span>
                        <span style="color: orange; font-size: 14px;"><i class="el-icon-warning"></i>2. æ¬¡æ—¥ç”Ÿæ•ˆæŠ•保请于17:30前提交,超时提交以保险单为准</span>
                    </div>
                </el-form-item>
                <el-form-item label="费用" v-if="item">
@@ -101,7 +101,7 @@
                </template>
            </el-table-column>
        </el-table>
      <div style="color: #F95601; font-size: 14px;width: 100%;text-align: left">(3. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请)</div>
      <div style="color: orange; font-size: 14px;width: 100%;text-align: left"><i class="el-icon-warning"></i>3. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请</div>
        <div class="info" v-if="item">
            <span v-if="item.specialAgreement" v-html="item.specialAgreement"></span>
            <span v-if="item.specialInfo" v-html="item.specialInfo"></span>
company/src/components/business/OpearaUnionChange.vue
@@ -12,7 +12,7 @@
        <el-form-item label=" " prop="unionApplyId" >
          <div style=" display: flex; flex-direction: column;">
            <el-button type="primary" size="small" @click="selectBaoxiandan"> é€‰æ‹©ä¿é™©å•</el-button>
            <span style="color: #F95601; font-size: 14px;">(1. è¯·é€‰æ‹©ä¿é™©å•后进行操作)</span>
            <span style="color: orange; font-size: 14px;"><i class="el-icon-warning"></i>1. è¯·é€‰æ‹©ä¿é™©å•后进行操作</span>
          </div>
        </el-form-item>
<!--        <el-form-item label="申请日期:" prop="applyDate" style="margin-left: 40px">
@@ -91,7 +91,7 @@
        </template>
      </el-table-column>
    </el-table>
    <div style="color: #F95601; font-size: 14px;width: 100%;text-align: left">(2. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请)</div>
    <div style="color: orange; font-size: 14px;width: 100%;text-align: left"><i class="el-icon-warning"></i>2. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请</div>
    <div class="info" v-if="model">
      <span v-if="model.specialAgreement" v-html="model.specialAgreement"></span>
      <span v-if="model.specialInfo" v-html="model.specialInfo"> </span>
@@ -108,19 +108,19 @@
        append-to-body
        center>
      <div class="desc_item_from" id="selectTable">
        <div style="width: 100%;  text-align: right; align-items: center;margin-bottom: 10px">
          <span class="tip-warn"  style="color: orange; font-size: 14px; margin-right: 20px ;text-align: left">
            <i class="el-icon-warning"></i>注:只能选择申请单数大于0的申请记录进行操作
          </span>
          <el-checkbox :true-label="1" :false-label="0"   v-model="hasApplying" style="font-size: 12px;" @change="handleCurrentChange(1)">只显示有申请单记录</el-checkbox>
        </div>
        <el-table
            border
            ref="multipleTable1"
            v-loading="isWorking.search"
            :data="tableData.list"
            @row-click="rowselect1"
            row-key="id"
            @selection-change="handleSelectionChange1"
            :data="tableData"
            stripe
        >
         <el-table-column
            type="selection"
            width="55">
         </el-table-column>
          <el-table-column label="序号" width="80px">
            <template slot-scope="scope">
              <span>{{scope.$index + 1}}</span>
@@ -133,16 +133,26 @@
          </el-table-column>
          <el-table-column prop="code" label="保单号" min-width="100px"></el-table-column>
          <el-table-column prop="solutionName" label="保险方案" min-width="100px"></el-table-column>
          <el-table-column prop="insureNum" label="投保人数" min-width="100px"></el-table-column>
          <el-table-column prop="guaranteeNum" label="在保人数" min-width="100px"></el-table-column>
          <el-table-column prop="addApplyNum" label="申请单数" min-width="100px"></el-table-column>
          <el-table-column prop="insureNum" label="投保人数" min-width="90px"></el-table-column>
          <el-table-column prop="guaranteeNum" label="在保人数" min-width="90px"></el-table-column>
          <el-table-column prop="addApplyNum" label="申请单数" min-width="80px"></el-table-column>
          <el-table-column prop="fee" label="总费用(元)" min-width="100px"></el-table-column>
          <el-table-column prop="createDate" label="提交时间" min-width="100px"></el-table-column>
          <el-table-column prop="createDate" label="提交时间" min-width="180px"></el-table-column>
          <el-table-column
              label="操作"
              min-width="100"
              fixed="right"
              align="center"
          >
            <template slot-scope="{row}">
              <el-button  v-if="row.addApplyNum >0" type="primary"   @click="selectDo(row)">选择</el-button>
            </template>
          </el-table-column>
        </el-table>
        <div class="desc_item_from_page">
          <el-pagination
              @current-change="handleCurrentChange"
              :current-page="currentPage"
              :current-page="currentPage1"
              :page-size="10"
              layout="total, prev, pager, next, jumper"
              :total="tableTotal">
@@ -150,7 +160,7 @@
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
                <el-button type="primary" @click="selectDo()">ç¡®  å®š</el-button>
<!--                <el-button type="primary" @click="selectDo()">ç¡®  å®š</el-button>-->
                <el-button @click="model=null;visibleSelect=false">取 æ¶ˆ</el-button>
            </span>
    </el-dialog>
@@ -180,12 +190,13 @@
        applyDate: null,
        businessType: 0
      },
      hasApplying:0,
      pickerOptions: {},
      visibleSelect:false,
      visibleSelect: true,
      solutions: [],
      currentPage:0,
      currentPage1:1,
      list: [],
      tableData:[],
      tableData:null,
      tableTotal:0,
      endTime: '',
      item: null,
@@ -265,7 +276,33 @@
        return new Date()
      }
    },
    selectDo(){
    selectDo(row){
      this.model =row
      if(!this.model){
        this.$tip.apiFailed({
          type: 'error',
          message: '请选择至少一条申请记录进行操作'
        })
        return
      }
      this.form.applyDate=null
      this.visibleSelect=false
      this.form.unionApplyId = this.model.id
      var that =this
      this.pickerOptions = {
        disabledDate (time) {
          var start = new Date(that.model.startTime)
          start.setDate(start.getDate() + 1)
          var end = new Date(that.model.endTime)
          // console.log(end )
          // console.log(time )
          return ( time.getTime() < start.getTime() ||  time.getTime()>end.getTime())
        }
      }
      this.getList();
    },
    selectDoOld(){
      if(!this.model){
        this.$tip.apiFailed({
          type: 'error',
@@ -353,24 +390,23 @@
    },
    selectBaoxiandan(){
      this.currentPage = 1
      this.currentPage1 = 1
      this.visibleSelect=true
      this.$refs.multipleTable.clearSelection();
      this.getUnionApplyList()
    },
    getUnionApplyList(){
      pageUnionList({
        capacity: 10,
        page: this.currentPage,
        page: this.currentPage1,
        model: {
          queryFlag:1,
          status: 3,
          hasApplying: this.hasApplying,
          status: 3
        }
      }).then(res => {
        this.tableData.list = res.records
        this.tableTotal = res.total
        this.$nextTick(() => {
          console.log(this.$refs.multipleTable1)
          this.tableData = res.records
          this.tableTotal = res.total
          if (this.$refs.multipleTable1 && this.$refs.multipleTable1.doLayout) {
            this.$refs.multipleTable1.doLayout()
          }
@@ -393,7 +429,7 @@
      })
    },
    handleCurrentChange (val) {
      this.currentPage = val
      this.currentPage1 = val
      this.getUnionApplyList()
    }
  }
@@ -418,6 +454,9 @@
::v-deep .desc_item_from .el-table__header .el-checkbox{
  display:none!important;
}
::v-deep .el-checkbox__label{
  font-size: 12px;
}
.submit {
  width: 100%;
  display: flex;
company/src/components/business/OpearaUnionChangeUnit.vue
@@ -12,7 +12,7 @@
        <el-form-item label=" " prop="unionApplyId" >
          <div style=" display: flex; flex-direction: column;">
            <el-button type="primary" size="small" @click="selectBaoxiandan"> é€‰æ‹©ä¿é™©å•</el-button>
            <span style="color: #F95601; font-size: 14px;">(1. è¯·é€‰æ‹©ä¿é™©å•后进行操作)</span>
            <span style="color: orange; font-size: 14px;"><i class="el-icon-warning"></i>1. è¯·é€‰æ‹©ä¿é™©å•后进行操作</span>
          </div>
        </el-form-item>
        <el-form-item label="批单生效起期:" prop="applyDate" style="margin-left: 40px">
@@ -24,7 +24,8 @@
                type="date"
                format="yyyy-MM-dd"
                value-format="yyyy-MM-dd" />
            <span style="color: #F95601; font-size: 14px;">(2. æ¬¡æ—¥ç”Ÿæ•ˆæŠ•保请于17:30前提交,超时提交以保险单为准)</span>
            <span style="color: orange; font-size: 14px;">
          <i class="el-icon-warning"></i>2. æ¬¡æ—¥ç”Ÿæ•ˆæŠ•保请于17:30前提交,超时提交以保险单为准</span>
          </div>
        </el-form-item>
        <el-form-item label="费用" v-if="model">
@@ -87,7 +88,7 @@
        </template>
      </el-table-column>
    </el-table>
    <div style="color: #F95601; font-size: 14px;width: 100%;text-align: left">(3. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请)</div>
    <div style="color: orange; font-size: 14px;width: 100%;text-align: left"><i class="el-icon-warning"></i>3. è¯·å…ˆé€‰æ‹©è‡³å°‘一条申请后提交投保申请</div>
    <div class="info" v-if="model">
      <span v-if="model.specialAgreement" v-html="model.specialAgreement"></span>
      <span v-if="model.specialInfo" v-html="model.specialInfo"> </span>
@@ -104,13 +105,18 @@
        append-to-body
        center>
      <div class="desc_item_from">
        <div style="width: 100%;  text-align: right; align-items: center;margin-bottom: 10px">
             <span class="tip-warn"  style="color: orange; font-size: 14px; margin-right: 20px ;text-align: left">
            <i class="el-icon-warning"></i>注:只能选择申请单数大于0的申请记录进行操作
          </span>
          <el-checkbox :true-label="2" :false-label="0"   v-model="hasApplying" style="font-size: 12px;" @change="handleCurrentChange(1)">只显示有申请单记录</el-checkbox>
        </div>
        <el-table
            border
            ref="multipleTable1"
            v-loading="isWorking.search"
            :data="tableData.list"
            @row-click="rowselect1"
            :data="tableData"
            row-key="id"
            @selection-change="handleSelectionChange1"
            stripe
        >
         <el-table-column
@@ -129,11 +135,21 @@
          </el-table-column>
          <el-table-column prop="code" label="保单号" min-width="100px"></el-table-column>
          <el-table-column prop="solutionName" label="保险方案" min-width="100px"></el-table-column>
          <el-table-column prop="insureNum" label="投保人数" min-width="100px"></el-table-column>
          <el-table-column prop="guaranteeNum" label="在保人数" min-width="100px"></el-table-column>
          <el-table-column prop="changeApplyNum" label="申请单数" min-width="100px"></el-table-column>
          <el-table-column prop="insureNum" label="投保人数" min-width="90px"></el-table-column>
          <el-table-column prop="guaranteeNum" label="在保人数" min-width="90px"></el-table-column>
          <el-table-column prop="changeApplyNum" label="申请单数" min-width="90px"></el-table-column>
          <el-table-column prop="fee" label="总费用(元)" min-width="100px"></el-table-column>
          <el-table-column prop="createDate" label="提交时间" min-width="100px"></el-table-column>
          <el-table-column prop="createDate" label="提交时间" min-width="180px"></el-table-column>
          <el-table-column
              label="操作"
              min-width="100"
              fixed="right"
              align="center"
          >
            <template slot-scope="{row}">
              <el-button v-if="row.changeApplyNum >0" type="primary"   @click="selectDo(row)">选择</el-button>
            </template>
          </el-table-column>
        </el-table>
        <div class="desc_item_from_page">
          <el-pagination
@@ -146,7 +162,9 @@
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
<!--
                <el-button type="primary" @click="selectDo()">ç¡®  å®š</el-button>
-->
                <el-button @click="model=null;visibleSelect=false">取 æ¶ˆ</el-button>
            </span>
    </el-dialog>
@@ -181,6 +199,7 @@
      list: [],
      pickerOptions: {},
      tableData: [],
      hasApplying: 0,
      tableTotal: 0,
      endTime: '',
      item: null,
@@ -241,7 +260,29 @@
        this.model = null
      }
    },
    selectDo () {
    selectDo (row){
      this.model =row
      if (!this.model) {
        this.$tip.apiFailed({
          type: 'error',
          message: '请选择至少一条申请记录进行操作'
        })
        return
      }
      this.visibleSelect = false
      this.form.unionApplyId = this.model.id
      var that = this
      this.pickerOptions = {
        disabledDate (time) {
          var start = new Date(that.model.startTime)
          start.setDate(start.getDate() + 1)
          var end = new Date(that.model.endTime)
          return (time.getTime() < start.getTime() || time.getTime() > end.getTime())
        }
      }
      this.getList()
    },
    selectDo1 () {
      if (!this.model) {
        this.$tip.apiFailed({
          type: 'error',
@@ -305,6 +346,7 @@
      this.model = null
      this.list = []
      this.visibleSelect = false
      this.hasApplying= 0
      this.tableData = []
      this.tableTotal = 0
      this.item = null
@@ -335,14 +377,14 @@
        capacity: 10,
        page: this.currentPage,
        model: {
          hasApplying:this.hasApplying,
          queryFlag: 2,
          status: 3
        }
      }).then(res => {
        this.tableData.list = res.records
        this.tableData = res.records
        this.tableTotal = res.total
        this.$nextTick(() => {
          console.log(this.$refs.multipleTable1)
          if (this.$refs.multipleTable1 && this.$refs.multipleTable1.doLayout) {
            this.$refs.multipleTable1.doLayout()
          }
company/src/components/business/OperaApplyChangeDetailWindow.vue
@@ -163,7 +163,7 @@
                        </el-table-column>
                      <el-table-column
                          prop="fee"
                          label="已产生费用(元)">
                          label="费用变更(元)">
                      </el-table-column>
                      <el-table-column
                          prop="remark"
company/src/components/business/OperaPolicyListWindow.vue
@@ -157,7 +157,7 @@
                        </el-table-column>
                        <el-table-column
                                prop="address"
                                label="已产生费用(元)">
                                label="费用变更(元)">
                        </el-table-column>
                    </el-table>
                    <div class="desc_item_from_page">
company/src/components/business/OperaUnionChangeDetailWindow.vue
@@ -153,7 +153,7 @@
                        </el-table-column>
                        <el-table-column
                            prop="fee"
                            label="已产生费用(元)">
                            label="费用变更(元)">
                        </el-table-column>
                        <el-table-column
                            prop="remark"
company/src/components/enterprise/OperaInsuranceApplyAddWindowNew.vue
ÎļþÒÑɾ³ý
company/src/components/enterprise/addEmployeeWithDu.vue
@@ -79,6 +79,7 @@
      this.visible = true
      this.tempIndex = tempIndex
      this.solutionId = obj.solutionId
      this.dispatching=[]
      this.list = [
        {
          memberName: '',
company/src/components/enterprise/additionSubtractionApplication.vue
@@ -195,7 +195,7 @@
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import selectEmployees from '@/components/enterprise/selectEmployees'
import addEmployee from '@/components/enterprise/addEmployee'
import addEmployee from '@/components/enterprise/addEmployeeWithDu'
import importEmployees from '@/components/enterprise/importEmployees'
import confirmJobType from '@/components/enterprise/confirmJobType'
import ApplyChangeDetails1 from '@/components/business/ApplyChangeDetails1'
@@ -496,9 +496,9 @@
        return
      }
      if (this.activeName === '0') {
        this.$refs.addEmployee.open('添加加保员工', { arr: this.form.addDetailList, price: this.price })
        this.$refs.addEmployee.open('添加加保员工', { arr: this.form.addDetailList, solutionId: this.item.newVersionSolutionId, price: this.price })
      } else {
        this.$refs.addEmployee.open('添加减保员工', { arr: this.form.delDetailList, price: this.reducePrice })
        this.$refs.addEmployee.open('添加减保员工', { arr: this.form.delDetailList, solutionId: this.item.newVersionSolutionId, price: this.reducePrice })
      }
    },
    uploadUser () {
@@ -506,10 +506,11 @@
        this.$message.warning('请先选择保险方案')
        return
      }
      if (this.activeName === '0') {
        this.$refs.importEmployees.open('加保员工名单', { arr: this.form.addDetailList,type:1, price: this.price, solutionId: this.form.solutionId })
        this.$refs.importEmployees.open('加保员工名单', { arr: this.form.addDetailList, type: 1, price: this.price, solutionId: this.item.newVersionSolutionId })
      } else {
        this.$refs.importEmployees.open('减保员工名单', { arr: this.form.delDetailList,type:0, price: this.reducePrice, solutionId: this.form.solutionId,insuranceApplyId: this.form.id  })
        this.$refs.importEmployees.open('减保员工名单', { arr: this.form.delDetailList, type: 0, price: this.reducePrice, solutionId: this.item.newVersionSolutionId, insuranceApplyId: this.form.id })
      }
    },
    // åˆ‡æ¢æ–¹æ¡ˆ
company/src/views/business/unionApply.vue
@@ -39,8 +39,8 @@
        </el-form>
        <!-- è¡¨æ ¼å’Œåˆ†é¡µ -->
        <template v-slot:table-wrap>
            <ul class="toolbar"  v-if="userInfo.type==2"  v-permissions="['business:insurance:create']">
                <li><el-button type="primary" @click="$refs.OpearaUnionApply.open('委托投保申请')" v-permissions="['business:insurance:create']">提交申请</el-button></li>
            <ul class="toolbar"  v-if="userInfo.type==2"  v-permissions="['business:unionapply:create']">
                <li><el-button type="primary" @click="$refs.OpearaUnionApply.open('委托投保申请')" v-permissions="['business:unionapply:create']">提交申请</el-button></li>
            </ul>
            <el-table
                v-loading="isWorking.search"
server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -410,7 +410,7 @@
        Map<String,String> idCardMap = new HashMap<>();
        for(MemberReduceImport model : dataList){
            //校验参数是否合法
            validReduceImportParam(model,idCardMap,dataList,index);
            validReduceImportParam(model,idCardMap,index);
            index += 1;
        }
        index = Constants.TWO;
@@ -431,7 +431,10 @@
                            .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(new Date(),1))
                            .ge(ApplyDetail::getEndTime,DateUtil.getMontageDate(new Date(),3)));
            if(detail == null){
                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "当前保单下,员工【" + model.getName()+model.getIdCard() + "】非在保人员,如法进行该操作");
                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "当前保单下,员工【" + model.getName()+model.getIdCard() + "】非在保人员,无法进行该操作");
            }
            if(!StringUtils.equals(model.getName(), detail.getMemberName())){
                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "当前保单下,员工【" +model.getName()+ model.getIdCard() + "】与其登记在保记录姓名不一致,请核实填写正确再操作");
            }
            model.setDuId(detail.getDuId());
            model.setDuName(detail.getDuName());
@@ -447,7 +450,7 @@
        return dataList;
    }
    private void validReduceImportParam(MemberReduceImport model, Map<String, String> idCardMap, List<MemberReduceImport> dataList, int index) {
    private void validReduceImportParam(MemberReduceImport model, Map<String, String> idCardMap, int index) {
        if(StringUtils.isBlank(model.getName())){
            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第"+index+"行数据姓名不能为空!");
        }