| | |
| | | export function findListByDTO (data) { |
| | | return request.post('/business/worktype/findListByDTO', data) |
| | | } |
| | | |
| | | // 主方案导入工种 |
| | | export function importExcelForSolution (data) { |
| | | return request.post('/business/worktype/importExcelForSolution', data) |
| | | } |
| | |
| | | .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 { |
| | |
| | | :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 |
| | |
| | | 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 |
| | |
| | | <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> |
| | | |
| | |
| | | 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' |
| | |
| | | }) |
| | | }, |
| | | 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; |
| | | }, |
| | |
| | | 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 { |
| | |
| | | <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;"> |
| | |
| | | <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"> |
| | |
| | | :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 |
| | |
| | | <el-table v-if="form.solutionList && form.solutionList.length>0" |
| | | :data="form.solutionList" |
| | | border |
| | | border |
| | | style="width: 100%"> |
| | | <el-table-column |
| | | label="序号" |
| | |
| | | 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) { |
| | |
| | | <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" |
| | |
| | | dispatching: [], |
| | | solutionId: null, |
| | | companyId: null, |
| | | hasDispatchUnit: null, |
| | | list: [ |
| | | { |
| | | memberName: '', |
| | |
| | | this.tempIndex = tempIndex |
| | | this.solutionId = obj.solutionId |
| | | this.companyId = obj.companyId |
| | | this.hasDispatchUnit = obj.hasDispatchUnit |
| | | this.dispatching = [] |
| | | this.list = [ |
| | | { |
| | |
| | | ] |
| | | this.arr = obj.arr |
| | | this.price = obj.price |
| | | if (!obj.companyId) { |
| | | if (obj.hasDispatchUnit === 1) { |
| | | this.getFindListByDTO() |
| | | } else { |
| | | worktype({ id: obj.solutionId, queryType: 0 }) |
| | |
| | | </div> |
| | | </div> |
| | | <el-table |
| | | v-if="item" |
| | | :data="activeName === '0' ? form.addDetailList : form.delDetailList" |
| | | border |
| | | show-summary |
| | |
| | | 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 => { |
| | |
| | | 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) |
| | |
| | | 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) |
| | |
| | | <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> |
| | |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | .el-transfer-panel { |
| | | width: 300px !important; |
| | | } |
| | | </style> |
| | | <style scoped lang="scss"> |
| | | @import "@/assets/style/variables.scss"; |
| | | |
| | | // 角色配置 |
| | | .global-window { |
| | | .tip { |
| | |
| | | </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> |
| | |
| | | this.searchForm.timeOut = e.split(',')[1] |
| | | this.searchForm.statusCollect = e.split(',')[0] |
| | | } else { |
| | | this.searchForm.timeOut = '' |
| | | this.searchForm.statusCollect = e |
| | | } |
| | | this.search() |
| | |
| | | reset () { |
| | | this.$refs.searchForm.resetFields() |
| | | this.statusCollect = '' |
| | | this.searchForm.timeOut = '' |
| | | this.searchForm.statusCollect = '' |
| | | this.searchForm.createTimeS = '' |
| | | this.searchForm.createTimeE = '' |
| | |
| | | <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"> |
| | |
| | | </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> |
| | |
| | | queryStartTime: '', |
| | | queryEndTime: '', |
| | | solutionId: '', |
| | | status: '', |
| | | queryStatus: '', |
| | | time: [] |
| | | }, |
| | | solutionList: [] |
| | |
| | | <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> |
| | |
| | | <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"> |
| | |
| | | <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> |
| | |
| | | </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> |
| | |
| | | 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 = '' |
| | |
| | | > |
| | | <!-- 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>--> |