k94314517
2024-05-24 df59cad917c6db1db3b36a23f4b3e7be510e9ed0
company/src/components/business/OpearaUnionChange.vue
@@ -15,17 +15,18 @@
            <span style="color: #F95601; font-size: 14px;">(1. 请选择保险单后进行操作)</span>
          </div>
        </el-form-item>
        <el-form-item label="批单生效起期:" prop="applyDate" style="margin-left: 40px">
<!--        <el-form-item label="申请日期:" prop="applyDate" style="margin-left: 40px">
          <div style="display: flex; flex-direction: column;">
            <el-date-picker
                v-model="form.applyDate"
                type="date"
                format="yyyy 年 MM 月 dd 日"
                placeholder="前选择日期"
                :picker-options="pickerOptions"
                format="yyyy-MM-dd"
                placeholder="请选择日期"
                value-format="yyyy-MM-dd" />
            <span style="color: #F95601; font-size: 14px;">(2. 次日生效投保请于17:30前提交,超时提交以保险单为准)</span>
          </div>
        </el-form-item>
        </el-form-item>-->
        <el-form-item label="费用" v-if="model">
          <span>{{model.price}}元</span>
          <span v-if="model.timeUnit === 0">/天</span>
@@ -65,7 +66,11 @@
      </el-table-column>
      <el-table-column
          prop="applyStartTime"
          label="期望保险生效起期">
          label="批增生效日期">
      </el-table-column>
      <el-table-column
          prop="delValidTime"
          label="批减生效日期">
      </el-table-column>
      <el-table-column
          prop="addNum"
@@ -86,23 +91,23 @@
        </template>
      </el-table-column>
    </el-table>
    <div style="color: #F95601; font-size: 14px;width: 100%;text-align: left">(3. 请先选择至少一条申请后提交投保申请)</div>
    <div style="color: #F95601; font-size: 14px;width: 100%;text-align: left">(2. 请先选择至少一条申请后提交投保申请)</div>
    <div class="info" v-if="model">
      <span v-if="model.specialAgreement">{{model.specialAgreement}}</span>
      <span v-if="model.specialInfo">{{model.specialInfo}}</span>
      <span v-if="model.ortherInfo">{{model.ortherInfo}}</span>
      <span v-if="model.specialAgreement" v-html="model.specialAgreement"></span>
      <span v-if="model.specialInfo" v-html="model.specialInfo"> </span>
      <span v-if="model.ortherInfo" v-html="model.ortherInfo"> </span>
    </div>
    <!--    选择申请单    -->
    <ApplyChangeDetails ref="ApplyChangeDetails" @success="getValue" />
    <el-dialog
        title="选择保险单"
        :visible.sync="visibleSelect"
        width="70%"
        width="80%"
        :modal="true"
        :show-close="false"
        append-to-body
        center>
      <div class="desc_item_from">
      <div class="desc_item_from" id="selectTable">
        <el-table
            ref="multipleTable1"
            v-loading="isWorking.search"
@@ -115,7 +120,7 @@
         <el-table-column
            type="selection"
            width="55">
        </el-table-column>
         </el-table-column>
          <el-table-column label="序号" width="80px">
            <template slot-scope="scope">
              <span>{{scope.$index + 1}}</span>
@@ -129,6 +134,7 @@
          <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="addApplyNum" label="申请单数" min-width="100px"></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>
@@ -160,6 +166,7 @@
import ApplyChangeDetails from '@/components/business/ApplyChangeDetails'
import { fetchList as pageUnionList } from '@/api/business/unionApply'
import {getDetail} from "@/api/business/insuranceApply";
import {compareDates, getDate, getTomorrow} from "@/utils/util";
export default {
  name: 'add_subtract_entrust',
  extends: BaseOpera,
@@ -172,6 +179,7 @@
        applyDate: null,
        businessType: 0
      },
      pickerOptions: {},
      visibleSelect:false,
      solutions: [],
      currentPage:0,
@@ -187,9 +195,9 @@
        unionApplyId: [
          { required: true, message: '请选择保险单' }
        ],
        applyDate: [
          { required: true, message: '请选择保险生效起期' }
        ]
        // applyDate: [
        //   { required: true, message: '请选择保险生效起期' }
        // ]
      }
    }
  },
@@ -198,6 +206,15 @@
      api: '/business/insuranceApply',
      'field.id': 'id'
    })
 /*   var now = new Date()
    var start = now.setDate(now.getDate()+1)
    var end = now.setDate(now.getDate()+10)
    this.pickerOptions = {
      disabledDate (time) {
        console.log(( time.getTime() < start.getTime() ||  time.getTime()>end.getTime()))
        return ( time.getTime() < start.getTime() ||  time.getTime()>end.getTime())
      }
    }*/
  },
  methods: {
    rowselect(row){
@@ -237,6 +254,16 @@
        this.model = null
      }
    },
    convertToDate(dateString) {
      try {
        const parts = dateString.split(/[- : \/]/);
        const monthIndex = parts[1] - 1
        const convertedDate = new Date( parts[0], monthIndex, parts[2], parts[3], parts[5], parts[6] )
        return convertedDate
      }catch (e) {
        return new Date()
      }
    },
    selectDo(){
      if(!this.model){
        this.$tip.apiFailed({
@@ -245,8 +272,21 @@
        })
        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();
    },
    confirm () {
@@ -322,6 +362,7 @@
        capacity: 10,
        page: this.currentPage,
        model: {
          queryFlag:1,
          status: 3,
        }
      }).then(res => {
@@ -373,6 +414,9 @@
    align-items: center;
  }
}
::v-deep .desc_item_from .el-table__header .el-checkbox{
  display:none!important;
}
.submit {
  width: 100%;
  display: flex;