MrShi
2024-11-19 0c6aa6e556a8771897b9251a296a7a0c15c57c46
优化
已修改18个文件
163 ■■■■ 文件已修改
company/src/api/business/worktype.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/assets/style/style.scss 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaInsuranceApplyWindow.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaSolutionsBaseWindow.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/OperaSolutionsDescWindow.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/detailsEntrustedInsurance.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/business/modification.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/addEmployeeWithDu.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/enterprise/additionSubtractionApplication.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/system/user/OperaUserWindow.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/components/system/user/allocationEnterprises.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/insuranceApply.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionApply.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionChange.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/business/unionChangeUnit.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/enterprise/insuranceApply.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/views/system/user.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
company/src/api/business/worktype.js
@@ -14,3 +14,8 @@
export function findListByDTO (data) {
    return request.post('/business/worktype/findListByDTO', data)
}
// 主方案导入工种
export function importExcelForSolution (data) {
    return request.post('/business/worktype/importExcelForSolution', data)
}
company/src/assets/style/style.scss
@@ -99,7 +99,15 @@
.settle-status1,.change-status6,
.tax-status2,.union-apply-status4,
.du-status2 {
  color: #F95601 !important;
  color: #f95601 !important;
}
.change-status6 {
  color: #999 !important;
}
.change-status5, .change-status8 {
  color: red !important;
}
.tip-warn {
company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -242,9 +242,9 @@
                            :key="Math.random()"
                            label="在保状态">
                            <template slot-scope="{row}">
                                <span v-if="row.applyStatus === 0">保障中</span>
                                <span v-if="row.applyStatus === 1">不在保</span>
                                <span v-if="row.applyStatus === 2">待生效</span>
                                <span v-if="row.applyStatus === 0" style="color: #00BA92;">保障中</span>
                                <span v-if="row.applyStatus === 1" style="color: #999;">不在保</span>
                                <span v-if="row.applyStatus === 2" style="color: #00BA92;">待生效</span>
                            </template>
                        </el-table-column>
                        <el-table-column
company/src/components/business/OperaSolutionsBaseWindow.vue
@@ -87,7 +87,11 @@
                    placeholder="请选择批改提醒时间">
                </el-time-picker>
            </el-form-item>
            <div style="display: flex; align-items: center;">
            <el-button type="primary" @click="add" style="margin-bottom: 10px;">添加工种</el-button>
                <el-button type="primary" @click="impor" style="margin-bottom: 10px;">导入工种</el-button>
                <el-button type="text" @click="exprot">导入模版xls</el-button>
            </div>
            <el-table
                :data="form.worktypeIdList"
                border
@@ -133,6 +137,8 @@
                <RichEditor :richData="form.ortherInfo" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor2" :readonly="false"/>
            </el-form-item>
        </el-form>
        <!--    上传工种    -->
        <input type="file" @change="getFile" style="opacity: 0;" ref="upload" accept=".xlsx" />
    </GlobalWindow>
</template>
@@ -140,7 +146,7 @@
  import BaseOpera from '@/components/base/BaseOpera'
  import GlobalWindow from '@/components/common/GlobalWindow'
  import { all } from '@/api/business/insurance'
  import { all as allWorktype } from '@/api/business/worktype'
  import { all as allWorktype, importExcelForSolution } from '@/api/business/worktype'
  import { solutionsBaseId } from '@/api/business/solutionsBase'
  import { pageAll as shopList } from '@/api/business/company'
  import UploadFile from '@/components/common/UploadFile'
@@ -233,6 +239,37 @@
      })
    },
    methods: {
      // 导入工种模板
      getFile(e) {
        const formdate = new FormData()
        formdate.append('file', e.target.files[0])
        formdate.append('insuranceId', this.form.insuranceId)
        importExcelForSolution(formdate)
          .then(res => {
            console.log(res)
            res.forEach(id => {
              if (this.form.worktypeIdList.length === 1 && !this.form.worktypeIdList[0].worktypeId) {
                this.form.worktypeIdList[0].worktypeId = id
              } else {
                this.form.worktypeIdList.push({ worktypeId: id })
              }
            })
          })
          .catch(err => {
            this.$message.error(err.message)
          })
          .finally(() => {
            this.$refs.upload.value = null
          })
      },
      impor() {
        if (!this.form.insuranceId) return this.$message.warning('请先选择企业')
        this.$refs.upload.click()
      },
      // 导出模板
      exprot() {
        window.open(process.env.VUE_APP_TYPEWORK_URL)
      },
      getWangedditor(val){
        this.form.specialAgreement = val;
      },
@@ -349,7 +386,6 @@
                this.form[key] = res[key]
              }
              this.form.correctWarnTime = `${this.form.correctWarnTime}:00`
              console.log(this.form.correctWarnTime)
              if (res.worktypeList) {
                this.form.worktypeIdList = res.worktypeList.map(item => {
                  return {
company/src/components/business/OperaSolutionsDescWindow.vue
@@ -57,8 +57,9 @@
                    <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>
            <div style="font-size: 18px; font-weight: bold; margin-bottom: 10px;">方案使用情况</div>
            <div style="font-size: 18px; font-weight: bold; margin-bottom: 10px;" v-if="userInfo.type === 0">方案使用情况</div>
            <el-table
                v-if="userInfo.type === 0"
                :data="list"
                border
                style="width: 100%; margin-bottom: 20px;">
company/src/components/business/detailsEntrustedInsurance.vue
@@ -11,7 +11,13 @@
        <div class="desc_item_label">
          <div class="desc_item_label_left">
            <span>投保人:{{ model.companyName }}</span>
            <span>保单状态:<span  :class="'union-apply-status'+model.status" >{{ model.statusInfo }}</span></span>
            <span>保单状态:
              <span v-if="model.status === 5 && model.statusInfo === '待审核'" style="color: #216EEE;">{{ model.statusInfo }}</span>
              <span v-else-if="model.status === 3 && model.statusInfo === '已过期'" style="color: #999;">{{ model.statusInfo }}</span>
              <span v-else-if="model.status === 3 && model.statusInfo === '待生效'" style="color: #f95601;">{{ model.statusInfo }}</span>
              <span v-else-if="model.status === 4 && model.statusInfo === '已退回'" style="color: red;">{{ model.statusInfo }}</span>
              <span :class="'union-apply-status'+model.status" v-else>{{ model.statusInfo }}</span>
            </span>
            <span>提交时间:{{ model.createDate }}</span>
          </div>
          <div class="desc_item_label_right">
@@ -189,9 +195,9 @@
              :key="Math.random()"
              label="在保状态">
              <template slot-scope="{row}">
                <span v-if="row.applyStatus === 0">保障中</span>
                <span v-if="row.applyStatus === 1">不在保</span>
                <span v-if="row.applyStatus === 2">待生效</span>
                <span v-if="row.applyStatus === 0" style="color: #00BA92;">保障中</span>
                <span v-if="row.applyStatus === 1" style="color: #999;">不在保</span>
                <span v-if="row.applyStatus === 2" style="color: #00BA92;">待生效</span>
              </template>
            </el-table-column>
            <el-table-column
company/src/components/business/modification.vue
@@ -10,6 +10,7 @@
        <el-table v-if="form.solutionList && form.solutionList.length>0"
            :data="form.solutionList"
            border
            border
            style="width: 100%">
            <el-table-column
                label="序号"
company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue
@@ -544,7 +544,7 @@
        this.$message.warning('请先选择保险方案')
        return
      }
      this.$refs.addEmployee.open('添加员工', { arr: this.tableData, price: this.price, solutionId: this.form.solutionId, companyId: this.form.companyId })
      this.$refs.addEmployee.open('添加员工', { arr: this.tableData, price: this.price, solutionId: this.form.solutionId, hasDispatchUnit: this.item.hasDispatchUnit, companyId: this.userInfo.type === 1 ? this.userInfo.companyId : this.form.companyId })
    },
    uploadUser () {
      if (!this.form.solutionId) {
company/src/components/enterprise/addEmployeeWithDu.vue
@@ -14,7 +14,7 @@
                <el-form-item label="身份证号" required>
                    <el-input v-model="item.idCard" maxlength="18" placeholder="请输入"></el-input>
                </el-form-item>
              <el-form-item label="派遣单位" v-if="!companyId">
              <el-form-item label="派遣单位" v-if="hasDispatchUnit !== 1">
                <el-select v-model="item.duId" @change="selectChange(index)" placeholder="请选择" clearable>
                  <el-option
                      v-for="item in dispatching"
@@ -58,6 +58,7 @@
      dispatching: [],
      solutionId: null,
      companyId: null,
      hasDispatchUnit: null,
      list: [
        {
          memberName: '',
@@ -81,6 +82,7 @@
      this.tempIndex = tempIndex
      this.solutionId = obj.solutionId
      this.companyId = obj.companyId
      this.hasDispatchUnit = obj.hasDispatchUnit
      this.dispatching = []
      this.list = [
        {
@@ -96,7 +98,7 @@
      ]
      this.arr = obj.arr
      this.price = obj.price
      if (!obj.companyId) {
      if (obj.hasDispatchUnit === 1) {
        this.getFindListByDTO()
      } else {
        worktype({ id: obj.solutionId, queryType: 0 })
company/src/components/enterprise/additionSubtractionApplication.vue
@@ -125,6 +125,7 @@
            </div>
        </div>
        <el-table
            v-if="item"
            :data="activeName === '0' ? form.addDetailList : form.delDetailList"
            border
            show-summary
@@ -373,7 +374,20 @@
      columns.forEach((column, index) => {
        if (index === 0) {
          sums[index] = '总价'
        } else if (index === 7) {
        } else if (this.item.hasDispatchUnit === 1 && index === 6) {
          let total = 0
          if (this.activeName === '0') {
            this.form.addDetailList.forEach(item => {
              total += item.fee || 0
            })
            sums[index] = (total || 0).toFixed(2)
          } else {
            this.form.delDetailList.forEach(item => {
              total += item.reducePrice
            })
            sums[index] = (total || 0).toFixed(2)
          }
        } else if (this.item.hasDispatchUnit !== 1 && index === 7) {
          let total = 0
          if (this.activeName === '0') {
            this.form.addDetailList.forEach(item => {
company/src/components/system/user/OperaUserWindow.vue
@@ -92,7 +92,7 @@
          return
        }
        let obj = JSON.parse(JSON.stringify(this.form))
        obj.departmentId = obj.departmentId[0]
        obj.departmentId = obj.departmentId[obj.departmentId.length - 1]
        // 调用新建接口
        this.isWorking = true
        this.api.create(obj)
@@ -115,7 +115,7 @@
          return
        }
        let obj = JSON.parse(JSON.stringify(this.form))
        obj.departmentId = obj.departmentId[0]
        obj.departmentId = obj.departmentId[obj.departmentId.length - 1]
        // 调用新建接口
        this.isWorking = true
        this.api.updateById(obj)
company/src/components/system/user/allocationEnterprises.vue
@@ -2,8 +2,8 @@
    <GlobalWindow
        :visible.sync="visible"
        :confirm-working="isWorking"
        width="582px"
        title="配置用户角色"
        width="800px"
        title="分配企业"
        @confirm="confirm"
    >
        <p class="tip" v-if="user != null">为用户 <em>{{user.realname}}</em> 分配企业</p>
@@ -91,9 +91,14 @@
        }
    }
</script>
<style>
    .el-transfer-panel {
        width: 300px !important;
    }
</style>
<style scoped lang="scss">
    @import "@/assets/style/variables.scss";
    // 角色配置
    .global-window {
        .tip {
company/src/views/business/insuranceApply.vue
@@ -70,7 +70,10 @@
                </el-table-column>
                <el-table-column prop="statusInfo"   align="center"  fixed label="状态">
                  <template slot-scope="{row}">
                    <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
                    <span style="color: #666;" v-if="[9,25,27,5].includes(row.status) && ['已关闭','已过期'].includes(row.statusInfo)">{{row.statusInfo}}</span>
                    <span style="color: red;" v-else-if="row.status === 4 && row.statusInfo === '已退回'">{{ row.statusInfo}}</span>
                    <span style="color: #f95601;" v-else-if="[5,27].includes(row.status) && row.statusInfo === '待生效'">{{ row.statusInfo}}</span>
                    <span :class="'apply-status'+row.status" v-else>{{row.statusInfo}}</span>
                  </template>
                </el-table-column>
                <el-table-column prop="solutionsName" fixed label="保险方案" align="center" min-width="150"></el-table-column>
@@ -208,6 +211,7 @@
          this.searchForm.timeOut = e.split(',')[1]
          this.searchForm.statusCollect = e.split(',')[0]
        } else {
          this.searchForm.timeOut = ''
          this.searchForm.statusCollect = e
        }
        this.search()
@@ -219,6 +223,7 @@
        reset () {
            this.$refs.searchForm.resetFields()
            this.statusCollect = ''
            this.searchForm.timeOut = ''
          this.searchForm.statusCollect = ''
            this.searchForm.createTimeS = ''
            this.searchForm.createTimeE = ''
company/src/views/business/unionApply.vue
@@ -2,13 +2,15 @@
    <TableLayout :permissions="['business:insuranceapply:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item label="保单状态" prop="status" >
                <el-select v-model="searchForm.status" placeholder="请选择"  clearable   @keypress.enter.native="search">
            <el-form-item label="保单状态" prop="queryStatus" >
                <el-select v-model="searchForm.queryStatus" placeholder="请选择" clearable @change="search">
                    <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="4"></el-option>
                    <el-option label="待生效" value="5"></el-option>
                    <el-option label="已过期" value="6"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="保险方案" prop="solutionId">
@@ -54,7 +56,11 @@
                </el-table-column>
                <el-table-column prop="statusInfo" label="状态" min-width="100px">
                    <template slot-scope="{row}">
                        <span :class="'union-apply-status'+row.status"  >{{ row.statusInfo}}</span>
                        <span v-if="row.status === 3 && row.statusInfo === '已过期'" style="color: #999;">{{ row.statusInfo}}</span>
                        <span v-else-if="row.status === 3 && row.statusInfo === '待生效'" style="color: #f95601;">{{ row.statusInfo}}</span>
                        <span v-else-if="row.status === 4 && row.statusInfo === '已退回'" style="color: red;">{{ row.statusInfo}}</span>
                        <span v-else-if="row.status === 5 && row.statusInfo === '待审核'" style="color: #216EEE;">{{ row.statusInfo}}</span>
                        <span :class="'union-apply-status'+row.status" v-else>{{ row.statusInfo}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="solutionName" label="保险方案" min-width="100px"></el-table-column>
@@ -106,7 +112,7 @@
                    queryStartTime: '',
                    queryEndTime: '',
                    solutionId: '',
                    status: '',
                    queryStatus: '',
                    time: []
                },
                solutionList: []
company/src/views/business/unionChange.vue
@@ -49,7 +49,7 @@
                        <span :class="'union-change-status'+row.status" v-if="row.status === 0">待签署</span>
                        <span :class="'union-change-status'+row.status" v-if="row.status === 1">待审核</span>
                        <span :class="'union-change-status'+row.status" v-if="row.status === 2">已生效</span>
                        <span :class="'union-change-status'+row.status" v-if="row.status === 3">已退回</span>
                        <span style="color: red;" v-if="row.status === 3">已退回</span>
                    </template>
                </el-table-column>
                 <el-table-column align="center" prop="applyCode" label="关联保单号" min-width="150px"></el-table-column>
company/src/views/business/unionChangeUnit.vue
@@ -4,10 +4,10 @@
    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
      <el-form-item label="保单状态" prop="status">
        <el-select v-model="searchForm.status" clearable  @change="search">
          <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="4"></el-option>
            <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-select>
      </el-form-item>
      <el-form-item label="保险方案" prop="solutionName">
@@ -49,7 +49,7 @@
            <span :class="'union-change-status'+row.status" v-if="row.status === 0">待签署</span>
            <span :class="'union-change-status'+row.status" v-if="row.status === 1">待审核</span>
            <span :class="'union-change-status'+row.status" v-if="row.status === 2">已生效</span>
            <span :class="'union-change-status'+row.status" v-if="row.status === 3">已退回</span>
              <span style="color: red;" v-if="row.status === 3">已退回</span>
          </template>
        </el-table-column>
         <el-table-column align="center" prop="applyCode" label="关联保单号" min-width="150px"></el-table-column>
company/src/views/enterprise/insuranceApply.vue
@@ -54,7 +54,11 @@
            </el-table-column>
            <el-table-column prop="statusInfo"   align="center"  fixed label="状态">
              <template slot-scope="{row}">
                <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
                  <span style="color: #666;" v-if="[9,25,27,5].includes(row.status) && ['已关闭','已过期'].includes(row.statusInfo)">{{row.statusInfo}}</span>
                  <span style="color: red;" v-else-if="row.status === 4 && row.statusInfo === '已退回'">{{ row.statusInfo}}</span>
                  <span style="color: #f95601;" v-else-if="[5,27].includes(row.status) && row.statusInfo === '待生效'">{{ row.statusInfo}}</span>
                  <span :class="'apply-status'+row.status" v-else>{{row.statusInfo}}</span>
<!--                <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>-->
              </template>
            </el-table-column>
            <el-table-column prop="solutionsName" fixed label="保险方案" align="center" min-width="150"></el-table-column>
@@ -202,12 +206,14 @@
        this.searchForm.timeOut = e.split(',')[1]
        this.searchForm.statusCollect = e.split(',')[0]
      } else {
        this.searchForm.timeOut = ''
        this.searchForm.statusCollect = e
      }
      this.search()
    },
      reset() {
        this.searchForm.createTimeS = ''
        this.searchForm.timeOut = ''
        this.searchForm.createTimeE = ''
        this.statusCollect = ''
        this.searchForm.statusCollect = ''
company/src/views/system/user.vue
@@ -76,8 +76,8 @@
        >
<!--          row.id !== userInfo.id &&-->
          <template v-if="isAdmin || (row.roles.findIndex(r => r.code === adminCode) === -1)" slot-scope="{row}">
            <el-button type="text" icon="el-icon-edit" @click="$refs.operaUserWindow.open('编辑用户', {...row, departmentId: [row.departmentId]})" v-permissions="['system:user:update']">编辑</el-button>
            <el-button type="text" @click="$refs.allocationEnterprises.open('分配企业', row)" v-if="userInfo.type === 0">分配企业</el-button>
            <el-button type="text" icon="el-icon-edit" @click="$refs.operaUserWindow.open('编辑用户', {...row, departmentId: row.companyDepartmentPathId.substring(0, row.companyDepartmentPathId.length - 1).split('/').map(val => +val)})" v-permissions="['system:user:update']">编辑</el-button>
            <el-button type="text" @click="$refs.allocationEnterprises.open('分配企业', row)" v-if="[0,2].includes(userInfo.type)">分配企业</el-button>
            <el-button type="text" icon="el-icon-s-custom" @click="$refs.roleConfigWindow.open(row)" v-permissions="['system:user:createUserRole']">配置角色</el-button>
            <el-button type="text" @click="$refs.resetPwdWindow.open(row)" v-permissions="['system:user:resetPwd']">重置密码</el-button>
<!--            <el-button v-if="!row.fixed" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:user:delete']">删除</el-button>-->