省级互助保障修改
This commit is contained in:
+17
-27
@@ -20,7 +20,9 @@ import com.budwk.app.flow.service.FlowCommonService;
|
|||||||
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
import com.budwk.app.web.commons.auth.utils.AuthUtil;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
import com.budwk.app.zhgh.staffbenefit.maternityLeave.models.MaternityLeave;
|
import com.budwk.app.zhgh.staffbenefit.maternityLeave.models.MaternityLeave;
|
||||||
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.model.MutualInsuranceProject;
|
||||||
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.model.MutualInsuranceUserInfo;
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.model.MutualInsuranceUserInfo;
|
||||||
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.service.MutualInsuranceProjectService;
|
||||||
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.service.MutualInsuranceUserService;
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.service.MutualInsuranceUserService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
@@ -67,6 +69,8 @@ public class MutualInsuranceApplyController {
|
|||||||
@Inject
|
@Inject
|
||||||
private FlowCommonService flowCommonService;
|
private FlowCommonService flowCommonService;
|
||||||
@Inject
|
@Inject
|
||||||
|
private MutualInsuranceProjectService mutualInsuranceProjectService;
|
||||||
|
@Inject
|
||||||
private MutualInsuranceUserService mutualInsuranceUserService;
|
private MutualInsuranceUserService mutualInsuranceUserService;
|
||||||
|
|
||||||
@At("/index")
|
@At("/index")
|
||||||
@@ -86,6 +90,7 @@ public class MutualInsuranceApplyController {
|
|||||||
@SLog(tag = "生育休假-休假申请", msg = "保存休假申请")
|
@SLog(tag = "生育休假-休假申请", msg = "保存休假申请")
|
||||||
public Result save(@Param("data") MutualInsuranceUserInfo mutualInsuranceUserInfo) {
|
public Result save(@Param("data") MutualInsuranceUserInfo mutualInsuranceUserInfo) {
|
||||||
if (StrUtil.isBlank(mutualInsuranceUserInfo.getId())) mutualInsuranceUserInfo.setApplyTime(new Date());
|
if (StrUtil.isBlank(mutualInsuranceUserInfo.getId())) mutualInsuranceUserInfo.setApplyTime(new Date());
|
||||||
|
mutualInsuranceUserInfo.setIsSubmit("未提交");
|
||||||
dao.insertOrUpdate(mutualInsuranceUserInfo);
|
dao.insertOrUpdate(mutualInsuranceUserInfo);
|
||||||
return Result.success();
|
return Result.success();
|
||||||
}
|
}
|
||||||
@@ -95,37 +100,11 @@ public class MutualInsuranceApplyController {
|
|||||||
@SaCheckPermission(value = {"mutualInsurance.apply", "h5.mutualInsurance.apply"}, mode = SaMode.OR)
|
@SaCheckPermission(value = {"mutualInsurance.apply", "h5.mutualInsurance.apply"}, mode = SaMode.OR)
|
||||||
public Result submit(@Param("data") MutualInsuranceUserInfo mutualInsuranceUserInfo) {
|
public Result submit(@Param("data") MutualInsuranceUserInfo mutualInsuranceUserInfo) {
|
||||||
if (StrUtil.isBlank(mutualInsuranceUserInfo.getId())) mutualInsuranceUserInfo.setApplyTime(new Date());
|
if (StrUtil.isBlank(mutualInsuranceUserInfo.getId())) mutualInsuranceUserInfo.setApplyTime(new Date());
|
||||||
|
mutualInsuranceUserInfo.setIsSubmit("已提交");
|
||||||
dao.insertOrUpdate(mutualInsuranceUserInfo);
|
dao.insertOrUpdate(mutualInsuranceUserInfo);
|
||||||
// 开启流程实例
|
|
||||||
Dict args = Dict.create();
|
|
||||||
args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode());
|
|
||||||
args.set(FlowConst.FORM_DATA, mutualInsuranceUserInfo);
|
|
||||||
ProcessInstance instance = flowEngine.startProcessInstanceByKey("SJHZBZ", mutualInsuranceUserInfo.getId(), SecurityUtil.getUserId(), args);
|
|
||||||
|
|
||||||
// 自动完成第一个申请任务
|
|
||||||
List<ProcessTask> doingTaskList = flowEngine.processTaskService().getDoingTaskList(instance.getId(), null);
|
|
||||||
for (ProcessTask task : doingTaskList) {
|
|
||||||
flowEngine.executeProcessTask(task.getId(), SecurityUtil.getUserId(), args);
|
|
||||||
}
|
|
||||||
return Result.success();
|
return Result.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
@At
|
|
||||||
@ApiOperation("重新提交申请")
|
|
||||||
@Aop(TransAop.READ_COMMITTED)
|
|
||||||
@SaCheckPermission(value = {"mutualInsurance.apply", "h5.mutualInsurance.apply"}, mode = SaMode.OR)
|
|
||||||
public Result submitAgain(@Param("data") MutualInsuranceUserInfo mutualInsuranceUserInfo, @Param("taskId") Long taskId) {
|
|
||||||
if (StrUtil.isBlank(mutualInsuranceUserInfo.getId())) mutualInsuranceUserInfo.setApplyTime(new Date());
|
|
||||||
|
|
||||||
dao.insertOrUpdate(mutualInsuranceUserInfo);
|
|
||||||
|
|
||||||
Dict dict = Dict.create();
|
|
||||||
dict.set(FlowConst.PROCESS_TASK_ID_KEY, taskId);
|
|
||||||
dict.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.RE_APPLY.getCode());
|
|
||||||
flowCommonService.executeTask(dict);
|
|
||||||
return Result.success();
|
|
||||||
}
|
|
||||||
|
|
||||||
@At
|
@At
|
||||||
@SaCheckLogin
|
@SaCheckLogin
|
||||||
@@ -133,6 +112,17 @@ public class MutualInsuranceApplyController {
|
|||||||
return Result.success(baseService.dao().fetch(MutualInsuranceUserInfo.class, id));
|
return Result.success(baseService.dao().fetch(MutualInsuranceUserInfo.class, id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@ApiOperation("查询事项列表")
|
||||||
|
@SaCheckPermission(value = {"mutualInsurance.apply", "h5.mutualInsurance.apply"}, mode = SaMode.OR)
|
||||||
|
public Result listProject(Integer year){
|
||||||
|
Cnd cnd = Cnd.NEW();
|
||||||
|
cnd.andEX("`year`", "=", year == null ? DateUtil.thisYear() : year);
|
||||||
|
cnd.and("isOpen", "=", true);
|
||||||
|
List<MutualInsuranceProject> query = mutualInsuranceProjectService.query(cnd);
|
||||||
|
return Result.success(query);
|
||||||
|
}
|
||||||
|
|
||||||
@At
|
@At
|
||||||
@ApiOperation("获取受助人")
|
@ApiOperation("获取受助人")
|
||||||
@SaCheckPermission("mutualInsurance.apply")
|
@SaCheckPermission("mutualInsurance.apply")
|
||||||
|
|||||||
+1
-1
@@ -119,7 +119,7 @@ public class MutualInsuranceCollectController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 只查询流程实例状态为20的数据(已完成状态)
|
// 只查询流程实例状态为20的数据(已完成状态)
|
||||||
cnd.and("ins.state", "=", 20);
|
// cnd.and("ins.state", "=", 20);
|
||||||
|
|
||||||
cnd.desc("info.applyTime");
|
cnd.desc("info.applyTime");
|
||||||
sql.setCondition(cnd);
|
sql.setCondition(cnd);
|
||||||
|
|||||||
+59
-1
@@ -2,18 +2,35 @@ package com.budwk.app.zhgh.staffbenefit.mutualInsurance.controller;
|
|||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
import cn.dev33.satoken.annotation.SaMode;
|
import cn.dev33.satoken.annotation.SaMode;
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import cn.hutool.core.convert.NumberChineseFormatter;
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.lang.Dict;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.budwk.app.base.annotation.SLog;
|
import com.budwk.app.base.annotation.SLog;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.param.PageForm;
|
import com.budwk.app.base.param.PageForm;
|
||||||
import com.budwk.app.base.result.Result;
|
import com.budwk.app.base.result.Result;
|
||||||
|
import com.budwk.app.base.utils.CommonDownloadUtil;
|
||||||
|
import com.budwk.app.base.utils.SysOfficeTemplateUtil;
|
||||||
import com.budwk.app.flow.engine.FlowEngine;
|
import com.budwk.app.flow.engine.FlowEngine;
|
||||||
|
import com.budwk.app.flow.entity.ProcessTask;
|
||||||
|
import com.budwk.app.flow.vo.ProcessTaskVO;
|
||||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||||
|
import com.budwk.app.web.commons.base.Globals;
|
||||||
|
import com.budwk.app.zhgh.activity.declarereimbursement.vo.ActivityBudgetVO;
|
||||||
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.model.MutualInsuranceUserInfo;
|
||||||
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.service.MutualInsuranceUserService;
|
import com.budwk.app.zhgh.staffbenefit.mutualInsurance.service.MutualInsuranceUserService;
|
||||||
|
import com.deepoove.poi.XWPFTemplate;
|
||||||
|
import com.deepoove.poi.config.Configure;
|
||||||
|
import com.deepoove.poi.plugin.table.LoopRowTableRenderPolicy;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
|
import org.nutz.dao.Dao;
|
||||||
import org.nutz.dao.Sqls;
|
import org.nutz.dao.Sqls;
|
||||||
import org.nutz.dao.sql.Sql;
|
import org.nutz.dao.sql.Sql;
|
||||||
import org.nutz.ioc.aop.Aop;
|
import org.nutz.ioc.aop.Aop;
|
||||||
@@ -24,6 +41,14 @@ import org.nutz.mvc.annotation.At;
|
|||||||
import org.nutz.mvc.annotation.Ok;
|
import org.nutz.mvc.annotation.Ok;
|
||||||
import org.nutz.mvc.annotation.Param;
|
import org.nutz.mvc.annotation.Param;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.math.RoundingMode;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @Author zzr
|
* @Author zzr
|
||||||
@@ -39,9 +64,13 @@ import org.nutz.mvc.annotation.Param;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class MutualInsuranceMineController {
|
public class MutualInsuranceMineController {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private Dao dao;
|
||||||
@Inject
|
@Inject
|
||||||
private FlowEngine flowEngine;
|
private FlowEngine flowEngine;
|
||||||
@Inject
|
@Inject
|
||||||
|
private SysOfficeTemplateUtil sysOfficeTemplateUtil;
|
||||||
|
@Inject
|
||||||
private MutualInsuranceUserService mutualInsuranceUserService;
|
private MutualInsuranceUserService mutualInsuranceUserService;
|
||||||
|
|
||||||
@At("/index")
|
@At("/index")
|
||||||
@@ -49,6 +78,7 @@ public class MutualInsuranceMineController {
|
|||||||
@SaCheckPermission("mutualInsurance.mine")
|
@SaCheckPermission("mutualInsurance.mine")
|
||||||
public void index() {
|
public void index() {
|
||||||
}
|
}
|
||||||
|
|
||||||
@At("/h5")
|
@At("/h5")
|
||||||
@Ok("beetl:/platform/zhghh5/staffbenefit/mutualInsurance/mine/index.html")
|
@Ok("beetl:/platform/zhghh5/staffbenefit/mutualInsurance/mine/index.html")
|
||||||
@SaCheckPermission("h5.mutualInsurance.mine")
|
@SaCheckPermission("h5.mutualInsurance.mine")
|
||||||
@@ -100,10 +130,38 @@ public class MutualInsuranceMineController {
|
|||||||
@ApiOperation("删除")
|
@ApiOperation("删除")
|
||||||
@Aop(TransAop.READ_COMMITTED)
|
@Aop(TransAop.READ_COMMITTED)
|
||||||
@SaCheckPermission(value = {"mutualInsurance.mine", "h5.mutualInsurance.mine"}, mode = SaMode.OR)
|
@SaCheckPermission(value = {"mutualInsurance.mine", "h5.mutualInsurance.mine"}, mode = SaMode.OR)
|
||||||
@SLog( tag = "删除工会报销", msg = "删除工会报销")
|
@SLog(tag = "删除工会报销", msg = "删除工会报销")
|
||||||
public Result delete(@Param("id") String id) {
|
public Result delete(@Param("id") String id) {
|
||||||
mutualInsuranceUserService.delete(id);
|
mutualInsuranceUserService.delete(id);
|
||||||
flowEngine.processInstanceService().deleteProcessInstanceByBusinessKey(id);
|
flowEngine.processInstanceService().deleteProcessInstanceByBusinessKey(id);
|
||||||
return Result.success();
|
return Result.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@Ok("void")
|
||||||
|
@SaCheckPermission("mutualInsurance.mine")
|
||||||
|
@SLog(tag = "省级互助保障", msg = "导出给付申请书")
|
||||||
|
public void doExportApply(@Valid String id, HttpServletResponse response) {
|
||||||
|
MutualInsuranceUserInfo info = dao.fetch(MutualInsuranceUserInfo.class, id);
|
||||||
|
Map<String, Object> docData = BeanUtil.beanToMap(info);
|
||||||
|
|
||||||
|
String dangerEvent = sysOfficeTemplateUtil.convertRichTextToDocText(info.getDangerEvent());
|
||||||
|
dangerEvent = dangerEvent.trim().replaceAll("^<p>", "").replaceAll("</p>$", "");
|
||||||
|
docData.put("dangerEvent", dangerEvent);
|
||||||
|
docData.put("isRenewal", info.getIsRenewal() ? " √" : "×");
|
||||||
|
docData.put("guaranteedStartTime", DateUtil.format(info.getGuaranteedStartTime(), "yyyy-MM-dd"));
|
||||||
|
docData.put("guaranteedEndTime", DateUtil.format(info.getGuaranteedEndTime(), "yyyy-MM-dd"));
|
||||||
|
docData.put("dangerTime", DateUtil.format(info.getDangerTime(), "yyyy-MM-dd HH:mm:ss"));
|
||||||
|
docData.put("applyTime", DateUtil.format(info.getApplyTime(), "yyyy年MM月dd日"));
|
||||||
|
|
||||||
|
|
||||||
|
String fileName = Globals.AppName + "【" + info.getProjectName() + "】给付申请书.docx";
|
||||||
|
|
||||||
|
try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) {
|
||||||
|
XWPFTemplate.compile(sysOfficeTemplateUtil.getTemplate("mutual_insurance_user_info")).render(docData).writeAndClose(byteArrayOutputStream);
|
||||||
|
CommonDownloadUtil.download(fileName, byteArrayOutputStream.toByteArray(), response);
|
||||||
|
} catch (IOException e) {
|
||||||
|
log.error("给付申请书表导出失败,id:{},错误信息:{}", id, e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
-13
@@ -105,19 +105,6 @@ public class MutualInsuranceProjectController {
|
|||||||
return Result.success();
|
return Result.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@At
|
|
||||||
@ApiOperation("查询事项列表")
|
|
||||||
@SaCheckPermission(value = {"mutualInsurance.project", "h5.mutualInsurance.project"}, mode = SaMode.OR)
|
|
||||||
public Result listProject(Integer year){
|
|
||||||
Cnd cnd = Cnd.NEW();
|
|
||||||
cnd.andEX("`year`", "=", year == null ? DateUtil.thisYear() : year);
|
|
||||||
cnd.and("isOpen", "=", true);
|
|
||||||
List<MutualInsuranceProject> query = mutualInsuranceProjectService.query(cnd);
|
|
||||||
return Result.success(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@At
|
@At
|
||||||
@SaCheckPermission(value = {"mutualInsurance.project", "h5.mutualInsurance.project"}, mode = SaMode.OR)
|
@SaCheckPermission(value = {"mutualInsurance.project", "h5.mutualInsurance.project"}, mode = SaMode.OR)
|
||||||
public Result findOne(String id){
|
public Result findOne(String id){
|
||||||
|
|||||||
+81
-25
@@ -4,6 +4,7 @@ import com.budwk.app.base.model.BaseModel;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import org.nutz.dao.entity.annotation.*;
|
import org.nutz.dao.entity.annotation.*;
|
||||||
|
import org.nutz.dao.interceptor.annotation.PrevInsert;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@@ -20,11 +21,10 @@ import java.util.Date;
|
|||||||
@Comment("个人信息")
|
@Comment("个人信息")
|
||||||
public class MutualInsuranceUserInfo extends BaseModel implements Serializable {
|
public class MutualInsuranceUserInfo extends BaseModel implements Serializable {
|
||||||
|
|
||||||
@Column
|
|
||||||
@Name
|
@Name
|
||||||
@Comment("id")
|
@Comment("id")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||||
@Prev(els = {@EL("uuid()")})
|
@PrevInsert(uu32 = true)
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@@ -68,25 +68,10 @@ public class MutualInsuranceUserInfo extends BaseModel implements Serializable {
|
|||||||
private String loginName;
|
private String loginName;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("姓名")
|
@Comment("申请人")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||||
private String userName;
|
private String userName;
|
||||||
|
|
||||||
@Column
|
|
||||||
@Comment("性别")
|
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 4)
|
|
||||||
private String sex;
|
|
||||||
|
|
||||||
@Column
|
|
||||||
@Comment("手机号")
|
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
|
||||||
private String mobile;
|
|
||||||
|
|
||||||
@Column
|
|
||||||
@Comment("身份证件号")
|
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 20)
|
|
||||||
private String idCard;
|
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("所属单位Id")
|
@Comment("所属单位Id")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 32)
|
@ColDefine(type = ColType.VARCHAR, width = 32)
|
||||||
@@ -108,19 +93,90 @@ public class MutualInsuranceUserInfo extends BaseModel implements Serializable {
|
|||||||
private String unionName;
|
private String unionName;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("在职状态(年度在岗,不在岗,有个时间范围,在某个时间之后退休的不能参加)")
|
@Comment("年龄")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||||
private String insuranceUserState;
|
private String age;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("不在岗时间")
|
@Comment("性别")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
@ColDefine(type = ColType.VARCHAR, width = 4)
|
||||||
private Date noDutyTime;
|
private String sex;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("医保状态")
|
@Comment("手机号")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||||
private String medicalInsuranceState;
|
private String mobile;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("身份证件号")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 20)
|
||||||
|
private String idCard;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("住址")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String address;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("计划书号码")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String planNumber;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("是否续保")
|
||||||
|
@ColDefine(type = ColType.BOOLEAN)
|
||||||
|
@Default("0")
|
||||||
|
private Boolean isRenewal;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("保障开始时间")
|
||||||
|
@ColDefine(type = ColType.DATE)
|
||||||
|
private Date guaranteedStartTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("保障结束时间")
|
||||||
|
@ColDefine(type = ColType.DATE)
|
||||||
|
private Date guaranteedEndTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("出险时间")
|
||||||
|
@ColDefine(type = ColType.DATE)
|
||||||
|
private Date dangerTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("出险地点")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String dangerAddress;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("出险原因、经过、结果")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String dangerEvent;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("开户名")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String bankUserName;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("开户支行")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String bankOfDeposit;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("银行卡账号")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String bankCardNumber;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("赔付金额")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String amount;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("是否提交")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||||
|
private String isSubmit;
|
||||||
|
|
||||||
@Column
|
@Column
|
||||||
@Comment("签字")
|
@Comment("签字")
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ layout("/layouts/platform.html"){
|
|||||||
office: [{ required: true, message: '请输入办证机关', trigger: 'blur' }],
|
office: [{ required: true, message: '请输入办证机关', trigger: 'blur' }],
|
||||||
honorFiles: [{ required: true, message: '请上传独生子女父母光荣证', trigger: 'change' }],
|
honorFiles: [{ required: true, message: '请上传独生子女父母光荣证', trigger: 'change' }],
|
||||||
retireFiles: [{ required: true, message: '请上传退休证', trigger: 'change' }],
|
retireFiles: [{ required: true, message: '请上传退休证', trigger: 'change' }],
|
||||||
sign: [{ required: true, message: '请签字', trigger: 'change' }],
|
//sign: [{ required: true, message: '请签字', trigger: 'change' }],
|
||||||
declarationAgreed: [{ required: true, message: '请勾选申报理由', trigger: 'change', type: 'enum', enum: [true] }]
|
declarationAgreed: [{ required: true, message: '请勾选申报理由', trigger: 'change', type: 'enum', enum: [true] }]
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
+119
-47
@@ -5,7 +5,7 @@ layout("/layouts/platform.html"){
|
|||||||
<guava ref="guava">
|
<guava ref="guava">
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
<snaker-start slot="header" label="省级互助保障" define_key="SJHZBZ"></snaker-start>
|
<snaker-start slot="header" label="省级互助保障" define_key="SJHZBZ" ></snaker-start>
|
||||||
<el-form :model="formData" ref="formRef" :rules="formRules" label-width="140px" label-position="right"
|
<el-form :model="formData" ref="formRef" :rules="formRules" label-width="140px" label-position="right"
|
||||||
label-suffix=":">
|
label-suffix=":">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
@@ -104,34 +104,105 @@ layout("/layouts/platform.html"){
|
|||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item prop="medicalInsuranceState" label="医保状态">
|
<el-form-item prop="age" label="年龄">
|
||||||
<dict-select v-model="formData.medicalInsuranceState" code="USER_MEDICINE" style="width: 100%"></dict-select>
|
<el-input v-model="formData.age" placeholder="请输入年龄"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item prop="insuranceUserState" label="在职状态">
|
<el-form-item prop="planNumber" label="计划书号码">
|
||||||
<el-select clearable placeholder="请选择在职状态"
|
<el-input v-model="formData.planNumber" placeholder="请输入计划书号码"></el-input>
|
||||||
style="width: 100%;"
|
</el-form-item>
|
||||||
v-model="formData.insuranceUserState">
|
</el-col>
|
||||||
<el-option :label="item.name" :value="item.code" :key="item.code"
|
|
||||||
v-for="item in dict.type.USER_STATE"></el-option>
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="isRenewal" label="是否续保">
|
||||||
|
<el-select v-model="formData.isRenewal" placeholder="请选择是否续保" style="width: 100%">
|
||||||
|
<el-option label="是" value="1"></el-option>
|
||||||
|
<el-option label="否" value="0"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item prop="noDutyTime" label="不在岗时间">
|
<el-form-item prop="guaranteedStartTime" label="保障开始时间">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="formData.noDutyTime"
|
v-model="formData.guaranteedStartTime"
|
||||||
|
type="date"
|
||||||
|
format="yyyy-MM-dd"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
clearable
|
||||||
|
placeholder="请选择保障开始时间"
|
||||||
|
@change="calculateEndTime">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="guaranteedEndTime" label="保障结束时间">
|
||||||
|
<el-date-picker
|
||||||
|
v-model="formData.guaranteedEndTime"
|
||||||
|
type="date"
|
||||||
|
format="yyyy-MM-dd"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
clearable
|
||||||
|
placeholder="请选择保障结束时间"
|
||||||
|
:readonly="true">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="dangerTime" label="出险时间">
|
||||||
|
<el-date-picker
|
||||||
|
v-model="formData.dangerTime"
|
||||||
type="datetime"
|
type="datetime"
|
||||||
format="yyyy-MM-dd HH:mm"
|
format="yyyy-MM-dd HH:mm"
|
||||||
value-format="yyyy-MM-dd HH:mm"
|
value-format="yyyy-MM-dd HH:mm"
|
||||||
clearable
|
clearable
|
||||||
placeholder="请选择不在岗时间">
|
placeholder="请选择出险时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="dangerAddress" label="出险地点">
|
||||||
|
<el-input v-model="formData.dangerAddress" placeholder="请输入出险地点"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="address" label="住址">
|
||||||
|
<el-input v-model="formData.address" placeholder="请输入住址"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="bankUserName" label="开户名">
|
||||||
|
<el-input v-model="formData.bankUserName" placeholder="请输入开户名"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="bankOfDeposit" label="开户支行">
|
||||||
|
<el-input v-model="formData.bankOfDeposit" placeholder="请输入开户支行"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item prop="bankCardNumber" label="银行卡账号">
|
||||||
|
<el-input v-model="formData.bankCardNumber" placeholder="请输入银行卡账号"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="出险原因、经过、结果" prop="content">
|
||||||
|
<text-editor v-model="formData.dangerEvent"></text-editor>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-form-item prop="sign" label="签字">
|
<el-form-item prop="sign" label="签字">
|
||||||
<pc-signature v-model="formData.sign"></pc-signature>
|
<pc-signature v-model="formData.sign"></pc-signature>
|
||||||
@@ -222,6 +293,7 @@ layout("/layouts/platform.html"){
|
|||||||
this.$set(this.formData, 'nation', user.nation);
|
this.$set(this.formData, 'nation', user.nation);
|
||||||
this.$set(this.formData, 'birthday', user.birthday);
|
this.$set(this.formData, 'birthday', user.birthday);
|
||||||
this.$set(this.formData, 'mobile', user.mobile);
|
this.$set(this.formData, 'mobile', user.mobile);
|
||||||
|
this.$set(this.formData, 'idCard', user.idCard);
|
||||||
} else {
|
} else {
|
||||||
// 替他人申请,清空被帮助人信息
|
// 替他人申请,清空被帮助人信息
|
||||||
this.$set(this.formData, 'proxyUserId', user.id);
|
this.$set(this.formData, 'proxyUserId', user.id);
|
||||||
@@ -238,20 +310,11 @@ layout("/layouts/platform.html"){
|
|||||||
this.$set(this.formData, 'nation', null);
|
this.$set(this.formData, 'nation', null);
|
||||||
this.$set(this.formData, 'birthday', null);
|
this.$set(this.formData, 'birthday', null);
|
||||||
this.$set(this.formData, 'mobile', null);
|
this.$set(this.formData, 'mobile', null);
|
||||||
|
// 清空年龄和身份证号
|
||||||
|
this.$set(this.formData, 'idCard', null);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 查询受助人
|
|
||||||
queryRecipients(key) {
|
|
||||||
this.$axios.get("/platform/mutualInsurance/apply/queryRecipients", {
|
|
||||||
params: { key }
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code === 0) {
|
|
||||||
this.subsidizedList = res.data;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
// 用户选择变化
|
// 用户选择变化
|
||||||
async userChange() {
|
async userChange() {
|
||||||
const user = this.subsidizedList.find(item => item.id === this.formData.userId);
|
const user = this.subsidizedList.find(item => item.id === this.formData.userId);
|
||||||
@@ -266,6 +329,7 @@ layout("/layouts/platform.html"){
|
|||||||
this.$set(this.formData, 'unionName', user.unionName);
|
this.$set(this.formData, 'unionName', user.unionName);
|
||||||
this.$set(this.formData, 'birthday', user.birthday);
|
this.$set(this.formData, 'birthday', user.birthday);
|
||||||
this.$set(this.formData, 'mobile', user.mobile);
|
this.$set(this.formData, 'mobile', user.mobile);
|
||||||
|
this.$set(this.formData, 'idCard', user.idCard);
|
||||||
} else {
|
} else {
|
||||||
this.$set(this.formData, 'userId', null);
|
this.$set(this.formData, 'userId', null);
|
||||||
this.$set(this.formData, 'userName', null);
|
this.$set(this.formData, 'userName', null);
|
||||||
@@ -277,11 +341,40 @@ layout("/layouts/platform.html"){
|
|||||||
this.$set(this.formData, 'unionName', null);
|
this.$set(this.formData, 'unionName', null);
|
||||||
this.$set(this.formData, 'birthday', null);
|
this.$set(this.formData, 'birthday', null);
|
||||||
this.$set(this.formData, 'mobile', null);
|
this.$set(this.formData, 'mobile', null);
|
||||||
|
this.$set(this.formData, 'idCard', null);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// 修改 calculateEndTime 方法中的模板字符串部分
|
||||||
|
calculateEndTime(startDate) {
|
||||||
|
if (startDate) {
|
||||||
|
const start = new Date(startDate);
|
||||||
|
const end = new Date(start);
|
||||||
|
end.setFullYear(start.getFullYear() + 1);
|
||||||
|
// 格式化为 yyyy-MM-dd (转义反引号)
|
||||||
|
const year = end.getFullYear();
|
||||||
|
const month = String(end.getMonth() + 1).padStart(2, '0');
|
||||||
|
const day = String(end.getDate()).padStart(2, '0');
|
||||||
|
this.$set(this.formData, 'guaranteedEndTime', year + '-' + month + '-' + day);
|
||||||
|
} else {
|
||||||
|
this.$set(this.formData, 'guaranteedEndTime', null);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 查询受助人
|
||||||
|
queryRecipients(key) {
|
||||||
|
this.$axios.get("/platform/mutualInsurance/apply/queryRecipients", {
|
||||||
|
params: { key }
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code === 0) {
|
||||||
|
this.subsidizedList = res.data;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
// 保存
|
// 保存
|
||||||
onSave() {
|
onSave() {
|
||||||
this.$confirm("您确定保存吗?", "提示", {
|
this.$confirm("您确定保存吗?(提交后方可打印)", "提示", {
|
||||||
confirmButtonText: "确定",
|
confirmButtonText: "确定",
|
||||||
cancelButtonText: "取消",
|
cancelButtonText: "取消",
|
||||||
type: "warning"
|
type: "warning"
|
||||||
@@ -312,7 +405,7 @@ layout("/layouts/platform.html"){
|
|||||||
const isValid = await this.validateBeforeSubmit();
|
const isValid = await this.validateBeforeSubmit();
|
||||||
if (!isValid) return;
|
if (!isValid) return;
|
||||||
|
|
||||||
this.$confirm("您确定要提交吗?", "提示", {
|
this.$confirm("您确定要提交吗?(需准备证明材料、伤残、入、出院记录、病理报告或交通事故责任认定书等)", "提示", {
|
||||||
confirmButtonText: "确定",
|
confirmButtonText: "确定",
|
||||||
cancelButtonText: "取消",
|
cancelButtonText: "取消",
|
||||||
type: "warning"
|
type: "warning"
|
||||||
@@ -327,27 +420,6 @@ layout("/layouts/platform.html"){
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 再次提交
|
|
||||||
async onFinishTask() {
|
|
||||||
const isValid = await this.validateBeforeSubmit();
|
|
||||||
if (!isValid) return;
|
|
||||||
|
|
||||||
this.$confirm("您确定要提交吗?", "提示", {
|
|
||||||
confirmButtonText: "确定",
|
|
||||||
cancelButtonText: "取消",
|
|
||||||
type: "warning"
|
|
||||||
}).then(() => {
|
|
||||||
this.$axios.post('/platform/mutualInsurance/apply/submitAgain', {
|
|
||||||
data: JSON.stringify(this.formData),
|
|
||||||
taskId: GetQueryString("taskId")
|
|
||||||
}).then(res => {
|
|
||||||
if (res.code === 0) {
|
|
||||||
this.$message.success("提交成功")
|
|
||||||
commonUtil.pjaxPush('/platform/mutualInsurance/mine/index')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
onView() {
|
onView() {
|
||||||
this.$refs.guava.view(() => {
|
this.$refs.guava.view(() => {
|
||||||
this.$refs.projectInfoRef.onOpen(this.formData.projectId)
|
this.$refs.projectInfoRef.onOpen(this.formData.projectId)
|
||||||
@@ -364,7 +436,7 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
async listProject() {
|
async listProject() {
|
||||||
const currentYear = new Date().getFullYear().toString();
|
const currentYear = new Date().getFullYear().toString();
|
||||||
const resp = await $.post('/platform/mutualInsurance/project/listProject', {year: currentYear})
|
const resp = await $.post('/platform/mutualInsurance/apply/listProject', {year: currentYear})
|
||||||
if (resp.code === 0) {
|
if (resp.code === 0) {
|
||||||
this.projectList = resp.data
|
this.projectList = resp.data
|
||||||
if (resp.data && resp.data.length > 0) {
|
if (resp.data && resp.data.length > 0) {
|
||||||
|
|||||||
+3
-10
@@ -62,18 +62,11 @@ layout("/layouts/platform.html"){
|
|||||||
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
|
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
|
||||||
<el-table-column prop="userName" label="职工姓名"></el-table-column>
|
<el-table-column prop="userName" label="职工姓名"></el-table-column>
|
||||||
<el-table-column prop="sex" label="性别"></el-table-column>
|
<el-table-column prop="sex" label="性别"></el-table-column>
|
||||||
|
<el-table-column prop="age" label="年龄"></el-table-column>
|
||||||
<el-table-column prop="unionName" label="所属工会"></el-table-column>
|
<el-table-column prop="unionName" label="所属工会"></el-table-column>
|
||||||
<el-table-column prop="unitName" label="所属单位"></el-table-column>
|
<el-table-column prop="unitName" label="所属单位"></el-table-column>
|
||||||
<el-table-column prop="insuranceUserState" label="在职状态"></el-table-column>
|
<el-table-column prop="projectName" label="所属事项" width="300px"></el-table-column>
|
||||||
<el-table-column prop="medicalInsuranceState" label="医保状态"></el-table-column>
|
|
||||||
<el-table-column prop="applyTime" label="申请时间"></el-table-column>
|
<el-table-column prop="applyTime" label="申请时间"></el-table-column>
|
||||||
<el-table-column prop="taskName" label="当前节点"></el-table-column>·
|
|
||||||
<el-table-column prop="instanceState" label="流程状态">
|
|
||||||
<template slot-scope="{row}">
|
|
||||||
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
|
|
||||||
size="small"></enum-tag>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" fixed="right" width="300px">
|
<el-table-column label="操作" fixed="right" width="300px">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
||||||
@@ -160,7 +153,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 修改为互助保障项目的查询接口
|
// 修改为互助保障项目的查询接口
|
||||||
const res = await this.$axios.post("/platform/mutualInsurance/project/listProject", {
|
const res = await this.$axios.post("/platform/mutualInsurance/apply/listProject", {
|
||||||
year: this.pageForm.year
|
year: this.pageForm.year
|
||||||
});
|
});
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
|||||||
+25
-43
@@ -11,16 +11,26 @@ const userInfo = {
|
|||||||
<el-descriptions-item label="申请模式">{{ viewData.mode}}</el-descriptions-item>
|
<el-descriptions-item label="申请模式">{{ viewData.mode}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="填写人姓名">{{ viewData.proxyUserName }}</el-descriptions-item>
|
<el-descriptions-item label="填写人姓名">{{ viewData.proxyUserName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="填写人工号">{{ viewData.proxyLoginName }}</el-descriptions-item>
|
<el-descriptions-item label="填写人工号">{{ viewData.proxyLoginName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="姓名">{{viewData.userName}}</el-descriptions-item>
|
<el-descriptions-item label="申请人">{{viewData.userName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="工号">{{viewData.loginName}}</el-descriptions-item>
|
<el-descriptions-item label="工号">{{viewData.loginName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="所属单位">{{viewData.unitName}}</el-descriptions-item>
|
<el-descriptions-item label="所属单位">{{viewData.unitName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="所属工会">{{viewData.unionName}}</el-descriptions-item>
|
<el-descriptions-item label="所属工会">{{viewData.unionName}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="性别">{{viewData.sex}}</el-descriptions-item>
|
<el-descriptions-item label="性别">{{viewData.sex}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="手机号">{{viewData.mobile}}</el-descriptions-item>
|
<el-descriptions-item label="手机号">{{viewData.mobile}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="身份证号">{{viewData.idCard}}</el-descriptions-item>
|
<el-descriptions-item label="身份证号">{{viewData.idCard}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="医保状态" >{{viewData.medicalInsuranceState}}</el-descriptions-item>
|
<el-descriptions-item label="年龄">{{viewData.age}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="在职状态">{{viewData.insuranceUserState}}</el-descriptions-item>
|
<el-descriptions-item label="计划书号码">{{viewData.planNumber}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="不在岗时间">{{viewData.noDutyTime}}</el-descriptions-item>
|
<el-descriptions-item label="是否续保">{{viewData.isRenewal}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="保障开始时间">{{viewData.guaranteedStartTime}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="保障结束时间">{{viewData.guaranteedEndTime}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="出险时间">{{viewData.dangerTime}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="出险地点">{{viewData.dangerAddress}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="住址">{{viewData.address}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="开户名">{{viewData.bankUserName}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="开户支行">{{viewData.bankOfDeposit}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="银行卡账号" >{{viewData.bankCardNumber}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="赔付金额" :span="2">{{viewData.amount}}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="出险原因、经过、结果" :span="2">{{viewData.dangerEvent}}</el-descriptions-item>
|
||||||
<el-descriptions-item label="签字" >
|
<el-descriptions-item label="签字" >
|
||||||
<el-image v-if="viewData.sign"
|
<el-image v-if="viewData.sign"
|
||||||
:src="viewData.sign"
|
:src="viewData.sign"
|
||||||
@@ -30,46 +40,7 @@ const userInfo = {
|
|||||||
<span v-else>暂无</span>
|
<span v-else>暂无</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<template v-for="task in doneTasks">
|
|
||||||
<div class="mt10">
|
|
||||||
<div class="process-title">{{ task.displayName }}</div>
|
|
||||||
<el-descriptions border class="flow-task-form" :column="3" :key="task.id"
|
|
||||||
v-if="task.ext.isFirstTaskNode">
|
|
||||||
<el-descriptions-item label="申请用户">{{ task.ext.initiatorName
|
|
||||||
}}({{task.ext.initiatorAccount}})
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="申请时间">{{ task.finishTime }}</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="办理结果">
|
|
||||||
<dict-tag :options="dict.type.PROCESS_TASK_SUBMIT_TYPE"
|
|
||||||
:value="task.ext.submitType"></dict-tag>
|
|
||||||
</el-descriptions-item>
|
|
||||||
</el-descriptions>
|
|
||||||
|
|
||||||
<el-descriptions border class="flow-task-form" :column="3" :key="task.id" v-else>
|
|
||||||
<el-descriptions-item label="办理用户">{{ task.taskFormData.userName
|
|
||||||
}}({{task.taskFormData.loginName}})
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="办理时间">{{ task.finishTime }}</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="办理结果">
|
|
||||||
<dict-tag :options="dict.type.PROCESS_TASK_SUBMIT_TYPE"
|
|
||||||
:value="task.ext.submitType"></dict-tag>
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="办理意见" :span="3" v-if="!task.ext.isFirstTaskNode">{{
|
|
||||||
task.taskFormData.opinion }}
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="签字" :span="3" v-if="!task.ext.isFirstTaskNode">
|
|
||||||
<el-image :src="task.ext.tf_userSign"
|
|
||||||
v-if="task.ext.tf_userSign"
|
|
||||||
class="signature-image"
|
|
||||||
style="height: 60px"
|
|
||||||
></el-image>
|
|
||||||
<span v-else>暂无</span>
|
|
||||||
</el-descriptions-item>
|
|
||||||
</el-descriptions>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
|
|
||||||
<snaker-chart ref="snakerChartRef"></snaker-chart>
|
<snaker-chart ref="snakerChartRef"></snaker-chart>
|
||||||
</div>
|
</div>
|
||||||
`,
|
`,
|
||||||
@@ -98,6 +69,17 @@ const userInfo = {
|
|||||||
this.$axios.post('/platform/mutualInsurance/apply/findOne', {id: this.row.id}).then((res) => {
|
this.$axios.post('/platform/mutualInsurance/apply/findOne', {id: this.row.id}).then((res) => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.viewData = res.data
|
this.viewData = res.data
|
||||||
|
// 格式化日期只显示年月日
|
||||||
|
if (this.viewData.guaranteedStartTime) {
|
||||||
|
this.viewData.guaranteedStartTime = this.viewData.guaranteedStartTime.substring(0, 10);
|
||||||
|
}
|
||||||
|
if (this.viewData.guaranteedEndTime) {
|
||||||
|
this.viewData.guaranteedEndTime = this.viewData.guaranteedEndTime.substring(0, 10);
|
||||||
|
}
|
||||||
|
// 去除 dangerEvent 字段的 <p> 标签
|
||||||
|
if (this.viewData.dangerEvent) {
|
||||||
|
this.viewData.dangerEvent = this.viewData.dangerEvent.replace(/^<p>/, '').replace(/<\/p>$/, '');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
+9
-13
@@ -17,25 +17,17 @@ layout("/layouts/platform.html"){
|
|||||||
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
|
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
|
||||||
<el-table-column prop="userName" label="职工姓名"></el-table-column>
|
<el-table-column prop="userName" label="职工姓名"></el-table-column>
|
||||||
<el-table-column prop="sex" label="性别"></el-table-column>
|
<el-table-column prop="sex" label="性别"></el-table-column>
|
||||||
|
<el-table-column prop="age" label="年龄"></el-table-column>
|
||||||
<el-table-column prop="unionName" label="所属工会"></el-table-column>
|
<el-table-column prop="unionName" label="所属工会"></el-table-column>
|
||||||
<el-table-column prop="unitName" label="所属单位"></el-table-column>
|
<el-table-column prop="unitName" label="所属单位"></el-table-column>
|
||||||
<el-table-column prop="insuranceUserState" label="在职状态"></el-table-column>
|
<el-table-column prop="projectName" label="所属事项" width="300px"></el-table-column>
|
||||||
<el-table-column prop="medicalInsuranceState" label="医保状态"></el-table-column>
|
|
||||||
<el-table-column prop="applyTime" label="申请时间"></el-table-column>
|
<el-table-column prop="applyTime" label="申请时间"></el-table-column>
|
||||||
<el-table-column prop="taskName" label="当前节点"></el-table-column>·
|
|
||||||
<el-table-column prop="instanceState" label="流程状态">
|
|
||||||
<template slot-scope="{row}">
|
|
||||||
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
|
|
||||||
size="small"></enum-tag>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" fixed="right" width="300px">
|
<el-table-column label="操作" fixed="right" width="300px">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
<el-button @click="onView(row)" size="mini" type="primary">查看</el-button>
|
||||||
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onEdit(row)" size="mini" type="primary">编辑</el-button>
|
<el-button @click="onEdit(row)" size="mini" type="primary" v-if="row.isSubmit =='未提交'">编辑</el-button>
|
||||||
<el-button v-if="row.canRevoke" @click="onRevoke(row)" size="mini" type="danger">撤回
|
<el-button @click="onDelete(row.id)" size="mini" type="danger" >删除</el-button>
|
||||||
</el-button>
|
<el-button @click="doExportApply(row)" size="mini" type="primary" v-if="row.isSubmit =='已提交'">申请表导出</el-button>
|
||||||
<el-button v-if="row.taskKey === 'startTask' || !row.instanceId" @click="onDelete(row.id)" size="mini" type="danger">删除</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -68,6 +60,10 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
,
|
,
|
||||||
methods: {
|
methods: {
|
||||||
|
// 导出示例
|
||||||
|
doExportApply(row){
|
||||||
|
this.$downLoad('/platform/mutualInsurance/mine/doExportApply?id=' + row.id)
|
||||||
|
},
|
||||||
onView(row) {
|
onView(row) {
|
||||||
this.$refs.guava.view(()=>{
|
this.$refs.guava.view(()=>{
|
||||||
this.$refs.userInfoInfoRef.onOpen(row)
|
this.$refs.userInfoInfoRef.onOpen(row)
|
||||||
|
|||||||
+1
-1
@@ -202,7 +202,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 修改为互助保障项目的查询接口
|
// 修改为互助保障项目的查询接口
|
||||||
const res = await this.$axios.post("/platform/mutualInsurance/project/listProject", {
|
const res = await this.$axios.post("/platform/mutualInsurance/apply/listProject", {
|
||||||
year: this.pageForm.year
|
year: this.pageForm.year
|
||||||
});
|
});
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
|||||||
+1
-1
@@ -202,7 +202,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 修改为互助保障项目的查询接口
|
// 修改为互助保障项目的查询接口
|
||||||
const res = await this.$axios.post("/platform/mutualInsurance/project/listProject", {
|
const res = await this.$axios.post("/platform/mutualInsurance/apply/listProject", {
|
||||||
year: this.pageForm.year
|
year: this.pageForm.year
|
||||||
});
|
});
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
|||||||
+1
-1
@@ -202,7 +202,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 修改为互助保障项目的查询接口
|
// 修改为互助保障项目的查询接口
|
||||||
const res = await this.$axios.post("/platform/mutualInsurance/project/listProject", {
|
const res = await this.$axios.post("/platform/mutualInsurance/apply/listProject", {
|
||||||
year: this.pageForm.year
|
year: this.pageForm.year
|
||||||
});
|
});
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
|||||||
+51
-14
@@ -73,18 +73,51 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</van-cell-group>
|
</van-cell-group>
|
||||||
|
|
||||||
<van-cell-group title="假期类型" class="form-section">
|
<van-cell-group title="假期类型" class="form-section">
|
||||||
<van-field label="陪产假" v-model="formData.withLeave" placeholder="请输入天数" type="number"
|
<van-field label="陪产假" v-model="formData.withLeave" readonly type="number"
|
||||||
v-if="isMale" required></van-field>
|
v-if="isMale" required></van-field>
|
||||||
<van-field label="育儿假" v-model="formData.parentalLeave" placeholder="请输入天数" type="number"
|
<van-field label="育儿假" v-model="formData.parentalLeave" readonly type="number"
|
||||||
v-if="isMale" required></van-field>
|
v-if="isMale" required></van-field>
|
||||||
<van-field label="产假" v-model="formData.maternityLeave" placeholder="请输入天数" type="number"
|
<van-field label="产假" v-model="formData.maternityLeave" placeholder="请输入天数" type="number"
|
||||||
v-if="isFemale" required></van-field>
|
v-if="isFemale" required></van-field>
|
||||||
<van-field label="延长假" v-model="formData.extendLeave" placeholder="请输入天数" type="number"
|
<van-field label="延长假" v-model="formData.extendLeave" placeholder="请输入天数" type="number"
|
||||||
v-if="isFemale" required></van-field>
|
v-if="isFemale" required></van-field>
|
||||||
<van-field label="多胞胎" v-model="formData.birthsLeave" placeholder="请输入天数" type="number"
|
<!-- 替换原有的多胞胎和难产假输入框 -->
|
||||||
v-if="isFemale" required></van-field>
|
<van-field
|
||||||
<van-field label="难产假" v-model="formData.difficultLeave" placeholder="请输入天数" type="number"
|
v-if="isFemale"
|
||||||
v-if="isFemale" required></van-field>
|
label="多胞胎"
|
||||||
|
v-model="formData.birthsLeave"
|
||||||
|
readonly
|
||||||
|
placeholder="请选择天数"
|
||||||
|
@click="showBirthsLeavePicker = true"
|
||||||
|
clickable
|
||||||
|
></van-field>
|
||||||
|
<van-popup position="bottom" round v-model:show="showBirthsLeavePicker">
|
||||||
|
<van-picker
|
||||||
|
:columns="[{value: 15, text: '15天'}]"
|
||||||
|
@cancel="showBirthsLeavePicker = false"
|
||||||
|
@confirm="onBirthsLeaveConfirm"
|
||||||
|
show-toolbar
|
||||||
|
></van-picker>
|
||||||
|
</van-popup>
|
||||||
|
|
||||||
|
<van-field
|
||||||
|
v-if="isFemale"
|
||||||
|
label="难产假"
|
||||||
|
v-model="formData.difficultLeave"
|
||||||
|
readonly
|
||||||
|
placeholder="请选择天数"
|
||||||
|
@click="showDifficultLeavePicker = true"
|
||||||
|
clickable
|
||||||
|
></van-field>
|
||||||
|
<van-popup position="bottom" round v-model:show="showDifficultLeavePicker">
|
||||||
|
<van-picker
|
||||||
|
:columns="[{value: 15, text: '15天'}]"
|
||||||
|
@cancel="showDifficultLeavePicker = false"
|
||||||
|
@confirm="onDifficultLeaveConfirm"
|
||||||
|
show-toolbar
|
||||||
|
></van-picker>
|
||||||
|
</van-popup>
|
||||||
|
|
||||||
<van-field label="寒假" v-model="formData.winterLeave" placeholder="请输入天数"
|
<van-field label="寒假" v-model="formData.winterLeave" placeholder="请输入天数"
|
||||||
type="number" ></van-field>
|
type="number" ></van-field>
|
||||||
<van-field label="暑假" v-model="formData.summerLeave" placeholder="请输入天数"
|
<van-field label="暑假" v-model="formData.summerLeave" placeholder="请输入天数"
|
||||||
@@ -180,6 +213,8 @@ layout("/layouts/platform_h5.html"){
|
|||||||
showStartTimePicker: false,
|
showStartTimePicker: false,
|
||||||
showEndTimePicker: false,
|
showEndTimePicker: false,
|
||||||
showChildrenBirthdayPicker: false,
|
showChildrenBirthdayPicker: false,
|
||||||
|
showBirthsLeavePicker: false,
|
||||||
|
showDifficultLeavePicker: false,
|
||||||
minDate: new Date(1950, 0, 1), // 设置最小日期为1950年1月1日
|
minDate: new Date(1950, 0, 1), // 设置最小日期为1950年1月1日
|
||||||
maxDate: new Date(2040, 12, 31), // 设置最大日期为2040年12月31日
|
maxDate: new Date(2040, 12, 31), // 设置最大日期为2040年12月31日
|
||||||
// 表单验证规则
|
// 表单验证规则
|
||||||
@@ -193,8 +228,6 @@ layout("/layouts/platform_h5.html"){
|
|||||||
parentalLeave: [{ required: true, message: '请输入育儿假天数' }],
|
parentalLeave: [{ required: true, message: '请输入育儿假天数' }],
|
||||||
maternityLeave: [{ required: true, message: '请输入产假天数' }],
|
maternityLeave: [{ required: true, message: '请输入产假天数' }],
|
||||||
extendLeave: [{ required: true, message: '请输入延长假天数' }],
|
extendLeave: [{ required: true, message: '请输入延长假天数' }],
|
||||||
birthsLeave: [{ required: true, message: '请输入多胞胎天数' }],
|
|
||||||
difficultLeave: [{ required: true, message: '请输入难产假天数' }],
|
|
||||||
startTime: [{ required: true, message: '请选择休假开始时间' }],
|
startTime: [{ required: true, message: '请选择休假开始时间' }],
|
||||||
endTime: [{ required: true, message: '请选择休假结束时间' }],
|
endTime: [{ required: true, message: '请选择休假结束时间' }],
|
||||||
childrenBirthday: [{ required: true, message: '请选择子女出生日期' }]
|
childrenBirthday: [{ required: true, message: '请选择子女出生日期' }]
|
||||||
@@ -370,12 +403,6 @@ layout("/layouts/platform_h5.html"){
|
|||||||
if (!this.formData.extendLeave && this.formData.extendLeave !== 0) {
|
if (!this.formData.extendLeave && this.formData.extendLeave !== 0) {
|
||||||
errors.push('请输入延长假天数');
|
errors.push('请输入延长假天数');
|
||||||
}
|
}
|
||||||
if (!this.formData.birthsLeave && this.formData.birthsLeave !== 0) {
|
|
||||||
errors.push('请输入多胞胎天数');
|
|
||||||
}
|
|
||||||
if (!this.formData.difficultLeave && this.formData.difficultLeave !== 0) {
|
|
||||||
errors.push('请输入难产假天数');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.formData.startTime) {
|
if (!this.formData.startTime) {
|
||||||
@@ -467,6 +494,16 @@ layout("/layouts/platform_h5.html"){
|
|||||||
this.showChildrenBirthdayPicker = false;
|
this.showChildrenBirthdayPicker = false;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onBirthsLeaveConfirm(value) {
|
||||||
|
this.$set(this.formData, "birthsLeave", value.value);
|
||||||
|
this.showBirthsLeavePicker = false;
|
||||||
|
},
|
||||||
|
|
||||||
|
onDifficultLeaveConfirm(value) {
|
||||||
|
this.$set(this.formData, "difficultLeave", value.value);
|
||||||
|
this.showDifficultLeavePicker = false;
|
||||||
|
},
|
||||||
|
|
||||||
onLoverNationConfirm(o) {
|
onLoverNationConfirm(o) {
|
||||||
this.$set(this.formData, "loverNationName", o.text); // 显示名称
|
this.$set(this.formData, "loverNationName", o.text); // 显示名称
|
||||||
this.$set(this.formData, "loverNation", o.value); // 字典值
|
this.$set(this.formData, "loverNation", o.value); // 字典值
|
||||||
|
|||||||
Reference in New Issue
Block a user