MrShi
2024-11-16 49522fcc80c31225bcd7bab78315206567e84146
优化
已添加1个文件
已修改21个文件
435 ■■■■ 文件已修改
company/src/api/business/solutions.js 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeCheckWindow.vue 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeDetailWindow.vue 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaApplyChangeUnitDetailWindow.vue 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaCompanyDescWindow.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaCompanyUserApplyCarefulWindow.vue 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaCompanyUserApplyWindow.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaContractWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaInsuranceApplyWindow.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaUnionChangeUnitCheckWindow.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaUnionChangeUnitDetailWindow.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/detailsEntrustedInsurance.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/modification.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/operaCompanyUserApplyDescWindow.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/main.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/utils/request.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/utils/resetMessage.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/contract.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/solutions.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/switchCourt.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/index.vue 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/indexShop.vue 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/api/business/solutions.js
@@ -13,7 +13,10 @@
}
// æŸ¥è¯¢å…¨éƒ¨ä¿é™©æ–¹æ¡ˆ
export function all (data) {
export function all (data, type) {
    if (!type) {
        data.status = 0
    }
    return request.post('/business/solutions/list', data)
}
@@ -47,3 +50,7 @@
    return request.get(`/business/solutions/getUseList?companyId=${companyId}&dateType=${dateType}`)
}
// æ ¹æ®ID删除
export function deleteById (id) {
    return request.get(`/business/solutions/delete/${id}`)
}
company/src/components/business/OperaApplyChangeCheckWindow.vue
@@ -101,7 +101,7 @@
                <div class="form_item">
                    <div class="form_item_label"><span>*</span>上传批单:</div>
                    <div class="form_item_val">
                      <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" />
                      <UploadFile :limit="99" :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @remove="removePIDAN" @uploadSuccess="baoxianFileUploaded" />
                    </div>
                </div>
            </div>
@@ -185,7 +185,7 @@
        applyStartTime: null,
        delValidTime: null,
        validCode: null,
        pidanFile: null,
        pidanFile: [],
        editPidanFile: null,
        fileList1: [],
        fileList2: [],
@@ -217,7 +217,7 @@
        delValidTime: null,
        applyStartTime: null,
        validCode: null,
        pidanFile: null,
        pidanFile: [],
        editPidanFile: null,
        fileList1: [],
        fileList2: [],
@@ -313,7 +313,14 @@
      }
    },
    baoxianFileUploaded (data) {
      this.form.pidanFile = data
      this.form.pidanFile.push(data)
    },
    removePIDAN(e) {
      this.form.pidanFile.forEach((item, index) => {
        if (e === item.imgaddr) {
          this.form.pidanFile.splice(index, 1)
        }
      })
    },
    editBaoxianFileUploaded (data) {
      this.form.editPidanFile = data
@@ -353,7 +360,7 @@
            applyStartTime: (this.model.delOnlyReplace != 1 ? this.form.applyStartTime : this.form.delValidTime),
            delValidTime: this.form.delValidTime,
            validCode: this.form.validCode,
            pidanFile: this.form.pidanFile
            pidanFileList: this.form.pidanFile
          })
            .then(response => {
              this.visible = false
company/src/components/business/OperaApplyChangeDetailWindow.vue
@@ -147,6 +147,7 @@
                            label="身份证号">
                        </el-table-column>
                        <el-table-column
                            v-if="apply && apply.hasDispatchUnit !== 1"
                            prop="duName"
                            label="派遣单位">
                        </el-table-column>
@@ -243,11 +244,20 @@
                <el-button @click="visiblePhone=false">取 æ¶ˆ</el-button>
            </span>
      </el-dialog>
        <el-dialog title="批单列表" :modal="false" :visible.sync="flieVisible">
            <el-table :data="model.pidanFileList">
                <el-table-column property="name" label="文件名称"></el-table-column>
                <el-table-column label="操作" width="90">
                    <template slot-scope="{row}">
                        <el-button type="primary" @click="yulan(row.name, row.fileurlFull)">预览</el-button>
                    </template>
                </el-table-column>
            </el-table>
        </el-dialog>
      <template v-slot:footer>
        <el-button @click="visible=false">返回</el-button>
      </template>
    </GlobalWindow>
</template>
<script>
@@ -321,7 +331,8 @@
      activeName: '0',
        total: 0,
      currentPage: 1,
        loading: false
        loading: false,
      flieVisible: false,
    }
  },
  created () {
@@ -448,10 +459,10 @@
       }
    },
    viewPidan(){
      if(this.model.pidanFile && this.model.pidanFile.fileurlFull){
        this.$refs.OperaPdfViewerWindow.open('查看批单',this.model.pidanFile.fileurlFull)
        // window.open(this.model.pidanFile.fileurlFull)
      }
       this.flieVisible = true
    },
    yulan(name, url) {
      this.$refs.OperaPdfViewerWindow.open(name, url)
    },
    handleSizeChange(val){
        console.log(val)
company/src/components/business/OperaApplyChangeUnitDetailWindow.vue
@@ -127,6 +127,7 @@
                            label="身份证号">
                        </el-table-column>
                        <el-table-column
                            v-if="hasDispatchUnit !== 1"
                            prop="oldDuName"
                            label="原派遣单位">
                        </el-table-column>
@@ -139,6 +140,7 @@
                            label="保险生效起期">
                        </el-table-column>
                      <el-table-column
                          v-if="hasDispatchUnit !== 1"
                          prop="duName"
                          label="更换后派遣单位">
                      </el-table-column>
@@ -212,6 +214,27 @@
                <el-button @click="visiblePhone=false">取 æ¶ˆ</el-button>
            </span>
      </el-dialog>
        <el-dialog
                title="查看批单"
                :visible.sync="visibleFile"
                width="800px"
                :modal="false"
                :show-close="true"
                :close-on-click-modal="false"
                append-to-body
                center>
            <el-table :data="model.pidanFileList">
                <el-table-column property="name" label="文件名"></el-table-column>
                <el-table-column label="操作" width="90px">
                    <template slot-scope="{row}">
                        <el-button type="primary" @click="chakan(row.name, row.fileurlFull)">查看</el-button>
                    </template>
                </el-table-column>
            </el-table>
            <span slot="footer" class="dialog-footer">
                <el-button @click="visibleFile=false">关 é—­</el-button>
            </span>
        </el-dialog>
        <ApplyChangeUnitDetails ref="ApplyChangeDetails" @success="successEvent" />
        <OperaApplyChangeUnitCheckWindow ref="OperaApplyChangeCheckWindow" @success="successEvent" />
        <!--    ä¼ä¸šç”³è¯·é€€å›ž    -->
@@ -308,7 +331,9 @@
      activeName: '0',
      total: 0,
      currentPage: 1,
        loading: false
        loading: false,
      hasDispatchUnit: null,
      visibleFile: false
    }
  },
  created () {
@@ -331,6 +356,9 @@
      this.timer=null
      this.getDetail()
      this.getList()
    },
    chakan(name, url) {
      this.$refs.OperaPdfViewerWindow.open(name, url)
    },
    send () {
      sendSms({
@@ -440,10 +468,11 @@
      }
    },
    viewPidan(){
      if(this.model.pidanFile && this.model.pidanFile.fileurlFull){
        this.$refs.OperaPdfViewerWindow.open('查看批单',this.model.pidanFile.fileurlFull)
        // window.open(this.model.pidanFile.fileurlFull)
      }
      this.visibleFile = true
      // if(this.model.pidanFile && this.model.pidanFile.fileurlFull){
      //   this.$refs.OperaPdfViewerWindow.open('查看批单',this.model.pidanFile.fileurlFull)
      //   // window.open(this.model.pidanFile.fileurlFull)
      // }
    },
    handleSizeChange (val) {
      console.log(val)
@@ -458,15 +487,14 @@
    },
    getDetail () {
      getDetail(this.dataId).then(res => {
        this.hasDispatchUnit = res.hasDispatchUnit
        this.apply = res
        console.log(this.tableData)
      }).catch(err => {
      })
      getChangeDetail(this.modelId).then(res => {
        this.model = res
        this.tableData = new Array()
        this.tableData.push(res)
        console.log(this.tableData)
        this.activities = res.applyLogList
      }).catch(err => {
      })
company/src/components/business/OperaCompanyDescWindow.vue
@@ -179,6 +179,7 @@
        <OperaCompanyWindow ref="operaCompanyWindow" @success="callback"/>
        <!-- ä¿®æ”¹ä¿é™©æ–¹æ¡ˆ -->
        <modification ref="modification" @success="callback"/>
        <OperaPdfViewerWindow ref="operaPdfViewerWindow" />
        <!-- ä¿®æ”¹æ‰‹æœºå· -->
        <el-dialog
            title="更改绑定手机号"
@@ -217,13 +218,14 @@
import GlobalWindow from '@/components/common/GlobalWindow'
import OperaCompanyWindow from '@/components/business/OperaCompanyWindow'
import modification from '@/components/business/modification'
import OperaPdfViewerWindow from '@/components/business/OperaPdfViewerWindow'
import { getById, updatePhone } from '@/api/business/company'
import { listForCompany } from '@/api/business/solutions'
import { sendSms } from '@/api/business/smsEmail'
export default {
  name: 'OperaCompanyDescWindow',
  extends: BaseOpera,
  components: { GlobalWindow, OperaCompanyWindow, modification },
  components: { GlobalWindow, OperaCompanyWindow, modification, OperaPdfViewerWindow },
  data () {
    return {
      ruleForm: {
@@ -250,7 +252,7 @@
  },
  methods: {
    openFile(url) {
      window.open(url)
      this.$refs.operaPdfViewerWindow.open('方案确认书', url)
    },
    close () {
      this.visiblePhone = false
company/src/components/business/OperaCompanyUserApplyCarefulWindow.vue
@@ -37,15 +37,17 @@
                    <el-radio :label="2">审核不通过</el-radio>
                </el-radio-group>
            </el-form-item>
            <el-form-item label="驳回理由" prop="checkInfo" :rules="form.status === 2 ? { required: true, message: '驳回理由不能为空', trigger: 'blur' } : { required: false } ">
            <el-form-item :label="form.status === 1 ? '备注理由' : '驳回理由'" prop="checkInfo" :rules="form.status === 2 ? { required: true, message: '驳回理由不能为空', trigger: 'blur' } : { required: false } ">
                <el-input
                    type="textarea"
                    placeholder="请输入驳回理由"
                    placeholder="请输入"
                    v-model="form.checkInfo"
                    maxlength="300"
                    show-word-limit />
            </el-form-item>
        </el-form>
        <!-- é¢„览pdf -->
        <OperaPdfViewerWindow ref="OperaPdfViewerWindow" />
    </GlobalWindow>
</template>
@@ -53,11 +55,12 @@
  import BaseOpera from '@/components/base/BaseOpera'
  import GlobalWindow from '@/components/common/GlobalWindow'
  import UploadFile from '@/components/common/UploadFile'
  import OperaPdfViewerWindow from '@/components/business/OperaPdfViewerWindow'
  import { audit, getById } from '@/api/business/companyUserApply'
  export default {
    name: 'OperaCompanyUserApplyCarefulWindow',
    extends: BaseOpera,
    components: { GlobalWindow, UploadFile },
    components: { GlobalWindow, UploadFile, OperaPdfViewerWindow },
    data () {
      return {
        // è¡¨å•数据
@@ -84,7 +87,7 @@
          })
      },
      openFile(url) {
        window.open(url)
        this.$refs.OperaPdfViewerWindow.open('附件', url)
      },
      confirm() {
        this.$refs.form.validate((valid) => {
company/src/components/business/OperaCompanyUserApplyWindow.vue
@@ -22,8 +22,6 @@
                    v-model="form.companyIds"
                    multiple
                    filterable
                    allow-create
                    default-first-option
                    placeholder="请选择">
                    <el-option
                        v-for="item in company"
company/src/components/business/OperaContractWindow.vue
@@ -43,7 +43,7 @@
                </el-radio-group>
            </el-form-item>
            <el-form-item label="合同附件" prop="multifile" :rules="[{required:true,message:'请上传方案确认书'}]">
                <div>
                <div v-if="visible">
                    <UploadFile @remove="deleFile" :uploadData="{ folder: 'contract', fileType:'.pdf' }" :fileList="fileList" @uploadSuccess="editFanganFile" />
                </div>
            </el-form-item>
company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -38,16 +38,16 @@
                        <el-button v-if="[12].includes(model.status)" type="primary" @click="review">投保复审</el-button>
                      <el-button type="primary" @click="$refs.InsuranceDetails.open('投保详情单',model,0)">导出详单</el-button>
                      <el-button v-if="[2, 3, 5, 7, 8].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                      <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                      <el-button v-if="[27,5].includes(model.status)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                      <el-button v-if="[2,10].includes(model.status) && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button>
                      <el-button v-if="model.status == 3 && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>
                      <el-button v-if="model.status === 3 && userInfo.type === 0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>
<!--                        <el-button v-if="model.status == 26 && model.solutionType == 1" type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>-->
                      <el-button  v-if="[6,7,8,11].includes(model.status) && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button>
                      <el-button v-if="[22, 0].includes(model.status) && [0,1].includes(model.solutionType)" type="primary" @click="$refs.InsuranceDetails.open('投保审核',model,1)">投保审核</el-button>
                      <el-button v-if="![1, 4, 5].includes(model.status) && [0,1].includes(model.solutionType)" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('退回申请',model,1)">退回申请</el-button>
                      <el-button v-if="model.status == 5  && model.solutionType ==0" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('修改保险单',model,4)">修改保险单</el-button>
                      <el-button v-if="[5,27].includes(model.status) && userInfo.type === 0" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('修改保险单',model,4)">修改保险单</el-button>
                    </template>
                  </div>
                </div>
company/src/components/business/OperaUnionChangeUnitCheckWindow.vue
@@ -35,7 +35,7 @@
        <el-input v-model="form.code" placeholder="请输入" v-trim/>
      </el-form-item>
      <el-form-item label="上传批单:" prop="baoxianFile">
        <UploadFile @remove="dele3"  :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" />
        <UploadFile @remove="dele3" :limit="99" :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" />
      </el-form-item>
      <div class="box_table">
        <div class="box_table_head">
@@ -108,7 +108,7 @@
        backCheckInfo: '',
        applyTime: null,
        code: null,
        baoxianFile: null,
        baoxianFile: [],
        bxdMultifileList: [],
        fileList1: [],
        selectRadio: 0
@@ -134,8 +134,12 @@
        this.form.bxdMultifileList[index].name = null
      }
    },
    dele3 () {
      this.form.baoxianFile = null
    dele3 (e) {
        this.form.baoxianFile.forEach((item, index) => {
          if (e === item.imgaddr) {
            this.form.baoxianFile.splice(index, 1)
          }
        })
    },
    open (title, target, flag) {
      this.visible = true
@@ -145,7 +149,7 @@
        backCheckInfo: '',
        startTime: null,
        code: null,
        baoxianFile: null,
        baoxianFile: [],
        bxdMultifileList:[],
        fileList1: [],
        selectRadio: 0,
@@ -198,7 +202,7 @@
      }
    },
    baoxianFileUploaded (data) {
      this.form.baoxianFile = data
      this.form.baoxianFile.push(data)
    },
    baoxianFileUploaded2 (data) {
      this.form.bxdMultifileList[data.index].fileurl = data.fileurl
@@ -225,8 +229,9 @@
              id: this.model.id,
              applyDate: this.form.applyTime,
              code: this.form.code,
              fileurl: this.form.baoxianFile.fileurl,
              name: this.form.baoxianFile.name,
              // fileurl: this.form.baoxianFile.fileurl,
              // name: this.form.baoxianFile.name,
              pidanFileList: this.form.baoxianFile,
              applyChangeBXDList:this.form.bxdMultifileList
            }
            uploadBXD(param)
company/src/components/business/OperaUnionChangeUnitDetailWindow.vue
@@ -10,7 +10,7 @@
            <div class="desc_item">
                <div class="desc_item_label">
                    <div class="desc_item_label_left">
                        <span>投保人:{{ model.shopName}}</span>
                        <span>投保人:{{ model.shopName}} </span>
                      <span v-if="model.status === 0">保单状态:<span  :class="'change-status'+model.status" >待签署</span></span>
                      <span v-if="model.status === 1">保单状态:<span  :class="'change-status'+model.status" >待审核</span></span>
                      <span v-if="model.status === 2">保单状态:<span  :class="'change-status'+model.status" >已生效</span></span>
@@ -113,6 +113,7 @@
                          label="被保险人">
                      </el-table-column>
                      <el-table-column
                          v-if="hasDispatchUnit !== 1"
                          prop="oldDuName"
                          label="原派遣单位">
                      </el-table-column>
@@ -121,6 +122,7 @@
                          label="原所属工种">
                      </el-table-column>
                      <el-table-column
                          v-if="hasDispatchUnit !== 1"
                          prop="duName"
                          label="更换后派遣单位">
                      </el-table-column>
@@ -203,21 +205,29 @@
            </span>
      </el-dialog>
      <el-dialog
          title="查看保险单"
          title="查看批单"
          :visible.sync="visibleFile"
          width="800px"
          :modal="true"
          :modal="false"
          :show-close="true"
          :close-on-click-modal="false"
          append-to-body
          center>
        <div class="desc_item_from" v-for="(item, index) in pidanFileData" :key="index"  style="margin-bottom: 15px">
          <span v-if="index ==0">{{item.name}}:</span>
          <span v-if="index >0">被保险人({{item.name}})保险单:</span>
          <a  style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index ==0" @click="openFile(item.file.fileurlFull,item.name)">在线预览</a>
          <a  style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index !=0 " @click="openFile(item.file.fileurlFull,'被保险人('+item.name+')保险单')">在线预览</a>
          <span v-if="!item.file || !item.file.fileurl">未上传</span>
        </div>
          <el-table :data="model.pidanFileList">
              <el-table-column property="name" label="文件名"></el-table-column>
              <el-table-column label="操作" width="90px">
                  <template slot-scope="{row}">
                      <el-button type="primary" @click="chakan(row.name, row.fileurlFull)">查看</el-button>
                  </template>
              </el-table-column>
          </el-table>
<!--        <div class="desc_item_from" v-for="(item, index) in pidanFileData" :key="index"  style="margin-bottom: 15px">-->
<!--          <span v-if="index ==0">{{item.name}}:</span>-->
<!--          <span v-if="index >0">被保险人({{item.name}})保险单:</span>-->
<!--          <a  style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index ==0" @click="openFile(item.file.fileurlFull,item.name)">在线预览</a>-->
<!--          <a  style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index !=0 " @click="openFile(item.file.fileurlFull,'被保险人('+item.name+')保险单')">在线预览</a>-->
<!--          <span v-if="!item.file || !item.file.fileurl">未上传</span>-->
<!--        </div>-->
<!--
        <div class="desc_item_from" v-for="(item, index) in pidanFileData" :key="index"  style="margin-bottom: 15px">
          <span v-if="index ==0">{{item.name}}:</span>
@@ -283,6 +293,7 @@
      model: {},
      visiblePhone: false,
      visibleFile:false,
      hasDispatchUnit: null,
      form: {
          businessId: null,
          phone: this.$store.state.userInfo.company? this.$store.state.userInfo.company.phone:null,
@@ -336,6 +347,9 @@
        this.getDetail()
        this.getList()
     },
    chakan(name, url) {
       this.$refs.OperaPdfViewerWindow.open(name, url)
    },
    send () {
      sendSms({
        phone: this.form.phone
@@ -472,6 +486,7 @@
    getApplyList () {
      applyList({ unionChangeId: this.model.id, getFiles: 1 }).then(res => {
        this.model.applyList = res
        this.hasDispatchUnit = res[0].hasDispatchUnit
        if (res && res.length > 0) {
          res.forEach(item => {
            if (item.pidanFile) {
company/src/components/business/detailsEntrustedInsurance.vue
@@ -20,7 +20,7 @@
              <el-button v-if="[0].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button>
              <el-button v-if="model.status == 1" type="primary" :disabled="loading" :loading="loading" @click="getSignLink(0)">签署投保单</el-button>
              <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>
              <el-button v-if="[2].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>
<!--              <el-button v-if="[2].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>-->
              <el-button v-if="model.status == 3" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
              <el-button v-if="[0,1,2].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回申请',model,1)">退回申请</el-button>
            </template>
company/src/components/business/modification.vue
@@ -23,8 +23,7 @@
                align="center"
                label="保险方案">
                <template slot-scope="scope">
<!--                    :value="{ id:item.id, baseId: item.baseId }"-->
                    <el-select v-model="scope.row.solution.id" filterable @change="changeSolution($event, scope.$index)" placeholder="请选择">
                    <el-select v-model="scope.row.solution.id" :disabled="scope.row.disabled" filterable @change="changeSolution($event, scope.$index)" placeholder="请选择">
                        <el-option
                            v-for="item in programme"
                            :key="item.id"
@@ -38,7 +37,7 @@
              align="center"
              label="委托商户">
            <template slot-scope="scope">
              <el-select :ref="'shopSelect'+scope.$index" :disabled="scope.row.solution.type ==1" v-model="scope.row.shopId" clearable value-key="id" placeholder="请选择">
              <el-select :ref="'shopSelect'+scope.$index" disabled v-model="scope.row.shopId" clearable value-key="id" placeholder="请选择">
                <el-option
                    v-for="item in shops"
                    :key="item.id"
@@ -61,7 +60,7 @@
                label="签署状态">
                <template slot-scope="{row}">
                    <template v-if="row.signStatus === 0">待签章</template>
                    <template v-if="row.signStatus === 1">已签章</template>
                    <template v-else-if="row.signStatus === 1">已签章</template>
                </template>
            </el-table-column>
            <el-table-column
@@ -69,7 +68,7 @@
                align="center"
                width="100">
                <template slot-scope="scope">
                    <el-button type="text" size="small" style="color: red;" @click="dele(scope.$index)" v-if="scope.row.signStatus === 0 || !scope.row.signStatus">删除</el-button>
                    <el-button type="text" size="small" style="color: red;" @click="dele(scope.$index)">删除</el-button>
                </template>
            </el-table-column>
        </el-table>
@@ -171,18 +170,20 @@
        .then(resa => {
          resa.forEach(item => {
            this.form.solutionList.push({
              disabled: true,
              solution: { id: item.solutionId, baseId: item.solutionBaseId,type:item.solutionType },
              shopId: item.shopId,
              canAdd: 1,
              canReduce: 1
              canReduce: 1,
              signStatus: item.signStatus
            })
          })
          console.log(this.form.solutionList)
          that.visible = true
        })
    },
    add () {
      this.form.solutionList.push({
        disabled: false,
        solution: { id: null, baseId: null },
        shopId: null,
        canAdd: 1,
company/src/components/business/operaCompanyUserApplyDescWindow.vue
@@ -97,7 +97,6 @@
          })
      },
      openFile(name, url) {
        console.log(url)
        this.$refs.OperaPdfViewerWindow.open(name, url)
      }
    }
company/src/main.js
@@ -10,7 +10,6 @@
import plugins from './plugins'
import { mapState, mapMutations } from 'vuex'
import { fetchMenuTree } from './api/system/menu'
Vue.config.productionTip = false
Vue.use(ElementUI, {
  size: 'small'
@@ -19,7 +18,6 @@
Vue.use(directives)
Vue.use(filters)
Vue.use(plugins)
new Vue({
  data: {
    loading: false
company/src/utils/request.js
@@ -42,8 +42,6 @@
// æ–°å»ºå“åº”拦截器
axiosInstance.interceptors.response.use((response) => {
  // console.log(response.status)
  // debugger
  // è¯·æ±‚失败
  if (response.status !== 200) {
    return Promise.reject(new Error('服务器繁忙,请稍后再试'))
company/src/utils/resetMessage.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
//resetMessage.js
/**重置message,防止重复点击重复弹出message消息提示 */
import {
  Message
} from 'element-ui';
let messageInstance = null;
const resetMessage = (options) => {
  if(messageInstance) {
    messageInstance.close();
  }
  Message.closeAll(); //手动关闭所有消息提示实例
  messageInstance = Message(options);
  // console.log(Message(options));
};
['error','success','info','warning'].forEach(type => {
  resetMessage[type] = options => {
    if(typeof options === 'string') {
      options = {
        message:options
      }
    }
    options.type = type
    return resetMessage(options)
  }
})
export const message = resetMessage
company/src/views/business/contract.vue
@@ -30,7 +30,7 @@
        <!-- è¡¨æ ¼å’Œåˆ†é¡µ -->
        <template v-slot:table-wrap>
            <ul class="toolbar" v-permissions="['business:contract:create']" v-if="[0,2].includes(userInfo.type)">
                <li><el-button type="primary" @click="$refs.operaContractWindow.open('新建合同信息表', null, 2)" icon="el-icon-plus" v-permissions="['business:contract:create']">新建</el-button></li>
                <li><el-button type="primary" @click="$refs.operaContractWindow.open('新建合同信息表', null, userInfo.type)" icon="el-icon-plus" v-permissions="['business:contract:create']">新建</el-button></li>
            </ul>
            <el-table
                v-loading="isWorking.search"
@@ -72,7 +72,7 @@
                </el-table-column>
                <el-table-column
                    label="操作"
                    min-width="220"
                    min-width="150"
                    fixed="right"
                >
                    <template slot-scope="{row}">
company/src/views/business/solutions.vue
@@ -38,8 +38,8 @@
                <el-table-column prop="solutionBaseName" label="主方案" min-width="100px" v-if="userInfo.type === 0"></el-table-column>
                <el-table-column label="投保类型" min-width="120px" align="center">
                    <template slot-scope="{row}">
                        <span v-if="row.type === 0">直保</span>
                        <span v-if="row.type === 1">委托<div style="color: blue;display:  block" >{{row.shopName||'-'}}</div></span>
                        <span v-if="row.type === 0">直保<div style="color: blue;display:  block" >{{ row.shopName || '-' }}</div></span>
                        <span v-if="row.type === 1">委托<div style="color: blue;display:  block" >{{ row.shopName || '-' }}</div></span>
                    </template>
                </el-table-column>
                <el-table-column label="投保价格" min-width="100px">
@@ -100,6 +100,7 @@
                        <template v-if="userInfo.type === 1 && row.signStatus === 1">
                            <el-button type="text" icon="el-icon-tickets" @click="seeFleSignUrl(row.fileSignUrl)">查看方案确认书</el-button>
                        </template>
                        <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:solutions:delete']">删除</el-button>
                    </template>
                </el-table-column>
            </el-table>
company/src/views/business/switchCourt.vue
@@ -79,6 +79,7 @@
            <span :class="'change-status'+ row.status" v-if="row.status === 3 || row.status === 4">退回申请</span>
            <span :class="'change-status'+ row.status" v-if="row.status ===5 || row.status === 8">已退回</span>
            <span :class="'change-status'+ row.status" v-if="row.status ===6">已关闭</span>
            <span :class="'change-status'+ row.status" v-if="row.status ===9">批改申请中</span>
          </template>
        </el-table-column>
        <el-table-column prop="companyName" label="投保企业" min-width="150px" align="center"></el-table-column>
company/src/views/index.vue
@@ -123,10 +123,105 @@
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '6'">
          <div class="home_content_right_list" v-if="tableData6 && tableData6.length">
            <div class="list_item" v-for="(item, index) in tableData6" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span @click="jump('/business/contract')">查看</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">
            <el-pagination
              @current-change="handleCurrentChange2"
              :current-page="page6"
              :page-size="5"
              layout="total, prev, pager, next, jumper"
              :total="totalPage6">
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '7'">
          <div class="home_content_right_list" v-if="tableData7 && tableData7.length">
            <div class="list_item" v-for="(item, index) in tableData7" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span @click="jump('/business/solutions')">查看</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">
            <el-pagination
              @current-change="handleCurrentChange2"
              :current-page="page7"
              :page-size="5"
              layout="total, prev, pager, next, jumper"
              :total="totalPage7">
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '8'">
          <div class="home_content_right_list" v-if="tableData7 && tableData7.length">
            <div class="list_item" v-for="(item, index) in tableData7" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span @click="jump('/business/companyUserApply')">查看</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">
            <el-pagination
              @current-change="handleCurrentChange2"
              :current-page="page7"
              :page-size="5"
              layout="total, prev, pager, next, jumper"
              :total="totalPage7">
            </el-pagination>
          </div>
        </div>
      </div>
    </div>
    <OperaInsuranceApplyWindow ref="operaInsuranceApplyWindow" @success="handleCurrentChange0()"/>
    <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" @success="handleCurrentChange0()"/>
    <OperaWtbApplyShopWindow ref="OperaWatbApplyShopWindow" @success="handleCurrentChange0()"/>
    <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="handleCurrentChange0()"/>
    <OperaSettleClaimsWindow ref="operaSettleClaimsWindow" @success="handleCurrentChange2()"/>
    <OperaApplyChangeUnitDetailWindow ref="operaApplyChangeUnitDetailWindow" @success="handleCurrentChange0()"/>
@@ -165,12 +260,21 @@
      page0: 1,
      page1: 1,
      page2: 1,
      page6: 1,
      page7: 1,
      page8: 1,
      totalPage8: 0,
      totalPage7: 0,
      totalPage6: 0,
      totalPage2: 0,
      totalPage1: 0,
      totalPage0: 0,
      tableData0: [],
      tableData1: [],
      tableData2: [],
      tableData6: [],
      tableData7: [],
      tableData8: [],
      cate: [
        {
          name: '投保申请',
@@ -317,9 +421,22 @@
          if (type === 1) {
            this.tableData1 = response.records
            this.totalPage1 = response.total
          } if (type === 2) {
          }
          if (type === 2) {
            this.tableData2 = response.records
            this.totalPage2 = response.total
          }
          if (type === 6) {
            this.tableData6 = response.records
            this.totalPage6 = response.total
          }
          if (type === 7) {
            this.tableData7 = response.records
            this.totalPage7 = response.total
          }
          if (type === 8) {
            this.tableData8 = response.records
            this.totalPage8 = response.total
          }
        })
        .catch(e => {
@@ -341,10 +458,12 @@
        this.tabs.push({ name: '2', label: '理赔提醒' })
        // this.handleCurrentChange2(0);
      }
      //新增分类
      if (pemissons.includes('business:notice:settle')) {
        this.tabs.push({ name: '3', label: '合同签署提醒' })
        // this.handleCurrentChange2(0);
      if (this.userInfo.type === 1) {
        this.tabs.push({ name: '7', label: '方案签署提醒' })
      }
      this.tabs.push({ name: '6', label: '合同签署提醒' })
      if (this.userInfo.type === 0) {
        this.tabs.push({ name: '8', label: '集团申请提醒' })
      }
      /* if (pemissons.includes('business:notice:insurance')) {
        this.getNoticeList(0, this.page0)
@@ -364,6 +483,12 @@
        this.handleCurrentChange1(0)
      } else if (this.activeName === '2') {
        this.handleCurrentChange2(0)
      } else if (this.activeName === '6') {
        this.handleCurrentChange6(0)
      } else if (this.activeName === '7') {
        this.handleCurrentChange7(0)
      } else if (this.activeName === '8') {
        this.handleCurrentChange8(0)
      }
    },
    handleCurrentChange0 (page) {
@@ -378,6 +503,18 @@
      this.page2 = page
      this.getNoticeList(2, this.page2)
    },
    handleCurrentChange6 (page) {
      this.page6 = page
      this.getNoticeList(6, this.page6)
    },
    handleCurrentChange7 (page) {
      this.page7 = page
      this.getNoticeList(7, this.page7)
    },
    handleCurrentChange8 (page) {
      this.page8 = page
      this.getNoticeList(8, this.page8)
    },
    jump (url) {
      if (!url) return
      this.$router.push({ path: url })
company/src/views/indexShop.vue
@@ -86,6 +86,39 @@
            </el-pagination>
          </div>
        </div>
        <div v-if="activeName === '6'"  >
          <div class="home_content_right_list" v-if="tableData6&&tableData6.length">
            <div class="list_item"  v-for="(item, index) in tableData6" :key="index">
              <div class="list_item_left">
                <span>{{item.title}}({{ item.typeDetail }})</span>
                <span>{{item.info}}({{item.content}})</span>
              </div>
              <div class="list_item_center">
                <span>{{item.companyName}}</span>
                <span>提交时间  {{item.createDate}}</span>
              </div>
              <div class="list_item_right">
                <span @click="jump('/business/contract')">查看</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">
            <el-pagination
              @current-change="handleCurrentChange1"
              :current-page="page1"
              :page-size="5"
              layout="total, prev, pager, next, jumper"
              :total="totalPage1">
            </el-pagination>
          </div>
        </div>
      </div>
    </div>
    <OperaInsuranceApplyWindow ref="operaInsuranceApplyWindow" @success="handleCurrentChange0()"/>
@@ -118,12 +151,15 @@
      page0: 1,
      page1: 1,
      page2: 1,
      page6: 1,
      totalPage6: 0,
      totalPage2: 0,
      totalPage1: 0,
      totalPage0: 0,
      tableData0: [],
      tableData1: [],
      tableData2: [],
      tableData6: [],
      cate: [
        {
          name: '投保申请审核',
@@ -201,6 +237,7 @@
    initLoadData () {
        this.handleCurrentChange0(0)
        this.handleCurrentChange1(0)
        this.handleCurrentChange6(0)
    },
    getNoticeList (type, page) {
      noticeList({
@@ -218,6 +255,10 @@
            this.tableData1 = response.records
            this.totalPage1 = response.total
          }
          if (type === 6) {
            this.tableData6 = response.records
            this.totalPage6 = response.total
          }
        })
        .catch(e => {
          this.$tip.apiFailed(e)
@@ -226,6 +267,7 @@
    initPanel () {
      this.tabs.push({ name: '0', label: '直接投保待办' })
      this.tabs.push({ name: '1', label: '委托投保待办' })
      this.tabs.push({ name: '6', label: '合同签署提醒' })
    },
    handleClick (e) {
      this.activeName = e.name
@@ -233,6 +275,8 @@
        this.handleCurrentChange0(0)
      } else if (this.activeName === '1') {
        this.handleCurrentChange1(0)
      } else if (this.activeName === '6') {
        this.handleCurrentChange6(0)
      }
    },
    handleCurrentChange0 (page) {
@@ -243,6 +287,10 @@
      this.page1 = page
      this.getNoticeList(4, this.page1)
    },
    handleCurrentChange6 (page) {
      this.page6 = page
      this.getNoticeList(6, this.page6)
    },
    jump (url) {
      if (!url) return
      this.$router.push({ path: url })