From 3b372a24250bc03c8da22c5159cec44450fb71b7 Mon Sep 17 00:00:00 2001 From: = <=> Date: Thu, 16 Apr 2026 09:14:06 +0800 Subject: [PATCH] commit --- .../com/budwk/app/sys/models/Sys_user.java | 6 + ...ndolenceBranchUnionApprovalController.java | 2 +- .../controller/CondolenceMineController.java | 155 +++++++++- ...enceSchoolPrincipalApprovalController.java | 2 +- ...ndolenceSchoolUnionApprovalController.java | 2 +- .../condolence/model/Condolence.java | 10 + .../controller/WelfareListController.java | 26 ++ .../components/plugins/sysUpload/h5Index.vue | 13 +- .../views/platform/sys/data/user/pull.html | 1 + .../staffbenefit/condolence/apply/index.html | 289 ++++++++++-------- .../condolence/branchUnionApproval/index.html | 4 + .../staffbenefit/condolence/common/info.js | 18 +- .../staffbenefit/condolence/mine/index.html | 4 + .../schoolPrincipalApproval/index.html | 4 + .../condolence/schoolUnionApproval/index.html | 4 + .../zhgh/welfare/projectMange/index.html | 2 +- .../zhgh/welfare/welfareUser/index.html | 51 +++- .../staffbenefit/condolence/apply/index.html | 160 ++++++---- .../condolence/branchUnionApproval/index.html | 9 +- .../staffbenefit/condolence/common/info.js | 20 +- .../schoolPrincipalApproval/index.html | 9 +- .../condolence/schoolUnionApproval/index.html | 9 +- 22 files changed, 591 insertions(+), 209 deletions(-) diff --git a/src/main/java/com/budwk/app/sys/models/Sys_user.java b/src/main/java/com/budwk/app/sys/models/Sys_user.java index 0cf88ac..1389df0 100644 --- a/src/main/java/com/budwk/app/sys/models/Sys_user.java +++ b/src/main/java/com/budwk/app/sys/models/Sys_user.java @@ -198,6 +198,12 @@ public class Sys_user extends BaseModel implements Serializable { @DataCenterColumn(name = "教职工类别码", key = "JZGLBMC") private String personType; + @Column + @Comment("用人方式码") + @ColDefine(type = ColType.VARCHAR, width = 30) + @DataCenterColumn(name = "用人方式码", key = "YRFSMC") + private String employmentType; + @Column @Comment("编制类别码") @ColDefine(type = ColType.VARCHAR, width = 30) diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceBranchUnionApprovalController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceBranchUnionApprovalController.java index 6bbecf2..2a4d2fc 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceBranchUnionApprovalController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceBranchUnionApprovalController.java @@ -35,7 +35,7 @@ import java.util.List; */ @IocBean @At("/platform/condolence/branchUnionApproval") -@Api("职工慰问分工会审核") +@Api("职工慰问分工会主席审核") @Ok("json:full") public class CondolenceBranchUnionApprovalController { diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceMineController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceMineController.java index 99cebbd..7a86559 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceMineController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceMineController.java @@ -3,6 +3,8 @@ package com.budwk.app.zhgh.staffbenefit.condolence.controller; import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaMode; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Dict; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.constant.RoleConstant; @@ -11,17 +13,23 @@ import com.budwk.app.base.param.PageForm; import com.budwk.app.base.result.Result; import com.budwk.app.base.sms.SmsService; import com.budwk.app.base.utils.PageUtil; +import com.budwk.app.base.utils.SysOfficeTemplateUtil; 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.sys.views.View_user; import com.budwk.app.web.commons.auth.utils.AuthUtil; import com.budwk.app.web.commons.auth.utils.SecurityUtil; import com.budwk.app.zhgh.staffbenefit.condolence.model.Condolence; import com.budwk.app.zhgh.staffbenefit.condolence.model.CondolenceType; import com.budwk.app.zhgh.staffbenefit.condolence.service.CondolenceService; +import com.deepoove.poi.XWPFTemplate; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.dao.util.cri.SqlExpressionGroup; @@ -34,6 +42,20 @@ import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.Param; +import javax.servlet.http.HttpServletResponse; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.net.URLEncoder; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.HashMap; +import java.util.List; +import java.util.stream.Collectors; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + /** * @ClassName CondolenceApplyController * @Author JyuHsin @@ -45,12 +67,19 @@ import org.nutz.mvc.annotation.Param; @At("/platform/condolence/mine") @Api("职工慰问我的") @Ok("json:full") +@Slf4j public class CondolenceMineController { + @Inject + private SysOfficeTemplateUtil sysOfficeTemplateUtil; @Inject private CondolenceService condolenceService; @Inject private FlowEngine flowEngine; + @Inject + private SmsService smsService; + @Inject + private Dao dao; @At("/") @Ok("beetl:/platform/zhgh/staffbenefit/condolence/mine/index.html") @@ -106,13 +135,13 @@ public class CondolenceMineController { cnd.andEX("year(info.createTime)", "=", year); cnd.andEX("info.type", "=", type); cnd.and("info.createdBy", "=", SecurityUtil.getUserId()); + cnd.groupBy("info.id"); if (StrUtil.isNotBlank(pageForm.getPageOrderName()) && StrUtil.isNotBlank(pageForm.getPageOrderBy())) { cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy())); } else { cnd.desc("info.createTime"); } - sql.setCondition(cnd); Pagination pagination = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); return Result.success(pagination); @@ -140,6 +169,126 @@ public class CondolenceMineController { //smsService.send("20182040", "这是一条由智慧工会系统发出的测试消息。"); return Result.success(nutMap); } - @Inject - private SmsService smsService; + + @At + @Ok("void") + public void doExport(String id, HttpServletResponse response) throws Exception { + Condolence condolence = condolenceService.fetch(id); + if (condolence == null) { + throw new RuntimeException("慰问记录不存在"); + } + + Sql sql = Sqls.create(""" + SELECT + info.*, + type.name as typeName, + type.uploadFileDesc, + ins.id AS instanceId + FROM + `condolence` info + LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id + LEFT JOIN condolence_type type ON type.id = info.type + WHERE + ins.state = 20 AND info.id = @id + """).setParam("id", id); + sql.setCallback(Sqls.callback.map()); + dao.execute(sql); + NutMap info = (NutMap) sql.getResult(); + HashMap docData = new HashMap<>(); + + docData.put("applyUserName", condolence.getApplyUserName()); + docData.put("applyMobile", condolence.getApplyMobile()); + docData.put("helpUserName", condolence.getHelpUserName()); + docData.put("helpMobile", condolence.getHelpMobile()); + docData.put("applyUnionName", condolence.getApplyUnionName()); + docData.put("type", info.getString("typeName")); + docData.put("uploadFileDesc", info.getString("uploadFileDesc")); + + //附件名称导出 + if (condolence.getFiles() != null && !condolence.getFiles().isEmpty()) { + List fileNames = condolence.getFiles().stream() + .map(file -> file.getStr("name")) + .filter(StrUtil::isNotBlank) + .collect(Collectors.toList()); + docData.put("fileNames", String.join("\n", fileNames)); + } else { + docData.put("fileNames", "无"); + } + + docData.put("info", info); + docData.put("way", condolence.getWay()); + + + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + LocalDateTime createTime = LocalDateTime.parse(condolence.getCreateTime(), formatter); + String fileName = "工会会员慰问报销审批单_" + + DateUtil.format(createTime, "yyyyMMdd") + ".docx"; + + List doneTaskVos = new ArrayList<>(); + List doneTaskList = flowEngine.processTaskService().getDoneTaskList(info.getLong("instanceId"), null); + for (ProcessTask doneTask : doneTaskList) { + ProcessTaskVO taskVO = flowEngine.processTaskService().findById(doneTask.getId()); + doneTaskVos.add(taskVO); + } + + doneTaskVos.stream().filter(task -> "分工会主席审核".equals(task.getDisplayName())) + .max(Comparator.comparing(ProcessTaskVO::getCreatedAt)) + .ifPresent(v -> { + Dict taskFormData = v.getTaskFormData(); + HashMap approval = new HashMap<>(); + + approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日")); + approval.put("user", taskFormData.getStr("tf_userName")); + if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) { + approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign"))); + } + approval.put("opinion", taskFormData.getStr("tf_opinion")); + docData.put("fgh", approval); + }); + + doneTaskVos.stream().filter(task -> "校工会会计审核".equals(task.getDisplayName())) + .max(Comparator.comparing(ProcessTaskVO::getCreatedAt)) + .ifPresent(v -> { + Dict taskFormData = v.getTaskFormData(); + HashMap approval = new HashMap<>(); + + approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日")); + approval.put("user", taskFormData.getStr("tf_userName")); + if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) { + approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign"))); + } + approval.put("opinion", taskFormData.getStr("tf_opinion")); + docData.put("kj", approval); + }); + + doneTaskVos.stream().filter(task -> "工会主席审核".equals(task.getDisplayName())) + .max(Comparator.comparing(ProcessTaskVO::getCreatedAt)) + .ifPresent(v -> { + Dict taskFormData = v.getTaskFormData(); + HashMap approval = new HashMap<>(); + + approval.put("date", DateUtil.format(v.getFinishTime(), "yyyy年MM月dd日")); + approval.put("user", taskFormData.getStr("tf_userName")); + if (StrUtil.isNotBlank(taskFormData.getStr("tf_sign"))) { + approval.put("sign", sysOfficeTemplateUtil.createPictureRenderData(taskFormData.getStr("tf_sign"))); + } + approval.put("opinion", taskFormData.getStr("tf_opinion")); + docData.put("xgh", approval); + }); + + + response.setContentType("application/vnd.openxmlformats-officedocument.wordprocessingml.document"); + response.setHeader("content-disposition", "attachment;filename=" + + URLEncoder.encode(fileName, "UTF-8")); + + try { + XWPFTemplate.compile(sysOfficeTemplateUtil.getTemplate("condolence")) + .render(docData) + .write(response.getOutputStream()); + } catch (IOException e) { + log.error("导出慰问审批单失败,ID: {}, 错误信息: {}", id, e.getMessage()); + throw e; + } + } + } diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolPrincipalApprovalController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolPrincipalApprovalController.java index 7e7de9d..a7f182e 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolPrincipalApprovalController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolPrincipalApprovalController.java @@ -33,7 +33,7 @@ import java.util.List; */ @IocBean @At("/platform/condolence/schoolPrincipalApproval") -@Api("职工慰问校工会预审") +@Api("职工慰问校工会会计审核") @Ok("json:full") public class CondolenceSchoolPrincipalApprovalController { diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolUnionApprovalController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolUnionApprovalController.java index ac36de4..a1e3eb2 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolUnionApprovalController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/controller/CondolenceSchoolUnionApprovalController.java @@ -35,7 +35,7 @@ import java.util.List; */ @IocBean @At("/platform/condolence/schoolUnionApproval") -@Api("职工慰问校工会审核") +@Api("职工慰问工会主席审核") @Ok("json:full") public class CondolenceSchoolUnionApprovalController { diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/model/Condolence.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/model/Condolence.java index 8d6ce49..2ec7f24 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/model/Condolence.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/condolence/model/Condolence.java @@ -65,6 +65,11 @@ public class Condolence extends BaseModel { @ColDefine(type = ColType.VARCHAR, width = 100) private String applyUnitName; + @Column + @Comment("申请人手机号") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String applyMobile; + @Column @Comment("补助人ID") @ColDefine(type = ColType.VARCHAR, width = 32) @@ -100,6 +105,11 @@ public class Condolence extends BaseModel { @ColDefine(type = ColType.VARCHAR, width = 100) private String helpUnitName; + @Column + @Comment("补助人手机号") + @ColDefine(type = ColType.VARCHAR, width = 20) + private String helpMobile; + @Column @Comment("类型") @ColDefine(type = ColType.VARCHAR, width = 20) diff --git a/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java b/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java index e337c17..2ae3225 100644 --- a/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java +++ b/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java @@ -99,6 +99,32 @@ public class WelfareListController { return Result.success(welfareListService.notWelfareUserPageData(pageForm)); } + @At + @Aop(TransAop.READ_COMMITTED) + @ApiOperation("批量删除福利会员") + @SaCheckPermission("welfare.list.mange") + @SLog(tag = "福利名单管理", msg = "批量删除福利会员") + public Result batchDelete(@Param("ids") String[] ids, @Param("projectId") String projectId) { + if (ids == null || ids.length == 0) { + return Result.error("请选择要删除的数据"); + } + + List welfareLists = welfareListService.query(Cnd.where("id", "in", ids)); + List userIds = welfareLists.stream() + .map(WelfareList::getUserId) + .filter(StrUtil::isNotBlank) + .collect(Collectors.toList()); + + welfareListService.delete(ids); + + if (StrUtil.isNotBlank(projectId) && !userIds.isEmpty()) { + welfareListService.dao().clear(WelfareUserSelection.class, + Cnd.where("welfareId", "=", projectId).and("selectUserId", "in", userIds)); + } + + return Result.success("成功删除" + ids.length + "条数据"); + } + @At @SaCheckPermission("welfare.list.mange") @ApiOperation("添加用户到福利名单") diff --git a/src/main/resources/static/components/plugins/sysUpload/h5Index.vue b/src/main/resources/static/components/plugins/sysUpload/h5Index.vue index 1155afb..d036566 100644 --- a/src/main/resources/static/components/plugins/sysUpload/h5Index.vue +++ b/src/main/resources/static/components/plugins/sysUpload/h5Index.vue @@ -145,11 +145,18 @@ module.exports = { return true }, afterRead(files) { - this.fileList.map((f) => { - if (f.file && f.file.name === files.file.name) { - f.status = "loading" + const filesArray = Array.isArray(files) ? files : [files] + + filesArray.forEach(file => { + if (file && file.file) { + this.fileList.map((f) => { + if (f.file && f.file.name === file.file.name) { + f.status = "loading" + } + }) } }) + const uploadPromises = this.fileList .filter((f) => f.status === "loading") .map((f) => { diff --git a/src/main/resources/views/platform/sys/data/user/pull.html b/src/main/resources/views/platform/sys/data/user/pull.html index 39d117a..51508e0 100644 --- a/src/main/resources/views/platform/sys/data/user/pull.html +++ b/src/main/resources/views/platform/sys/data/user/pull.html @@ -79,6 +79,7 @@ layout("/layouts/platform.html"){ + diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/apply/index.html b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/apply/index.html index 2867334..1996690 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/apply/index.html +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/apply/index.html @@ -9,69 +9,101 @@ layout("/layouts/platform.html"){ class="flow-task-form"> {{formData.applyUserName}} + + + + + {{formData.applyLoginName}} {{formData.applyUnitName}} {{formData.applyUnionName}} + + + style="width: 100%" + v-model="formData.helpUserId" + filterable + clearable + remote + reserve-keyword + placeholder="请输入姓名或工号查询" + :remote-method="createRemoteMethod(helpUserOptions)" + @change="helpUserChange"> + v-for="item in helpUserOptions" + :key="item.id" + :label="item.userName+'('+item.loginName+')'+'('+item.unitName+')'" + :value="item.id"> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + v-for="item in payUserOptions" + :key="item.id" + :label="item.userName+'('+item.loginName+')'+'('+item.unitName+')'" + :value="item.id"> @@ -102,49 +134,49 @@ layout("/layouts/platform.html"){ + clearable + style="width: 100%" + v-model="formData.occurTime" + type="date" + value-format="yyyy-MM-dd" + placeholder="请选择慰问时间"> - - - - - + + + + + + - - - - - + + + + + + + - - - - - + + + + + + + @@ -191,11 +223,11 @@ layout("/layouts/platform.html"){ @@ -225,29 +257,29 @@ layout("/layouts/platform.html"){ taskId: GetQueryString("taskId"), formData: {}, formRules: { - helpUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - payUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - type: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - way: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - money: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - occurTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - child: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - hospital: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - hospitalHouseNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - hospitalHouseBedNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - hospitalBy: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - deadImmediateFamily: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - remark: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - files: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - signature: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - handlerUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - certifierUserId: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - bankCardNumber: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - bankUserName: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - bankOfDeposit: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - thisYearHospitalizationNum: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - leaveHospitalTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }], - hospitalizationTime: [{ required: true, message: "必填", trigger: ["change", "blur"] }], + helpUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}], + payUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}], + type: [{required: true, message: "必填", trigger: ["change", "blur"]}], + way: [{required: true, message: "必填", trigger: ["change", "blur"]}], + money: [{required: true, message: "必填", trigger: ["change", "blur"]}], + occurTime: [{required: true, message: "必填", trigger: ["change", "blur"]}], + child: [{required: true, message: "必填", trigger: ["change", "blur"]}], + hospital: [{required: true, message: "必填", trigger: ["change", "blur"]}], + hospitalHouseNum: [{required: true, message: "必填", trigger: ["change", "blur"]}], + hospitalHouseBedNum: [{required: true, message: "必填", trigger: ["change", "blur"]}], + hospitalBy: [{required: true, message: "必填", trigger: ["change", "blur"]}], + deadImmediateFamily: [{required: true, message: "必填", trigger: ["change", "blur"]}], + remark: [{required: true, message: "必填", trigger: ["change", "blur"]}], + files: [{required: true, message: "必填", trigger: ["change", "blur"]}], + signature: [{required: true, message: "必填", trigger: ["change", "blur"]}], + handlerUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}], + certifierUserId: [{required: true, message: "必填", trigger: ["change", "blur"]}], + bankCardNumber: [{required: true, message: "必填", trigger: ["change", "blur"]}], + bankUserName: [{required: true, message: "必填", trigger: ["change", "blur"]}], + bankOfDeposit: [{required: true, message: "必填", trigger: ["change", "blur"]}], + thisYearHospitalizationNum: [{required: true, message: "必填", trigger: ["change", "blur"]}], + leaveHospitalTime: [{required: true, message: "必填", trigger: ["change", "blur"]}], + hospitalizationTime: [{required: true, message: "必填", trigger: ["change", "blur"]}], }, chooseType: {}, payUserOptions: [], @@ -266,7 +298,7 @@ layout("/layouts/platform.html"){ }, selectQueryUser(keyword, options) { options.length = 0 - this.$axios.post("/platform/condolence/apply/listUser", { keyword: keyword }).then((res) => { + this.$axios.post("/platform/condolence/apply/listUser", {keyword: keyword}).then((res) => { if (res.code === 0) { options.push(...res.data) } @@ -275,19 +307,20 @@ layout("/layouts/platform.html"){ helpUserChange(val) { const user = this.helpUserOptions.find(o => o.id === val) if (user) { - const { userName, loginName, unitId, unitName, unionId, unionName } = user + const {userName, loginName, unitId, unitName, unionId, unionName, mobile} = user this.$set(this.formData, "helpUserName", userName) this.$set(this.formData, "helpLoginName", loginName) this.$set(this.formData, "helpUnitId", unitId) this.$set(this.formData, "helpUnitName", unitName) this.$set(this.formData, "helpUnionId", unionId) this.$set(this.formData, "helpUnionName", unionName) + this.$set(this.formData, "helpMobile", mobile) } }, handlerUserChange(val) { const user = this.handlerUserOptions.find(o => o.id === val) if (user) { - const { userName, loginName, unitId, unitName, unionId, unionName } = user + const {userName, loginName, unitId, unitName, unionId, unionName} = user this.$set(this.formData, "handlerUserName", userName) this.$set(this.formData, "handlerLoginName", loginName) this.$set(this.formData, "handlerUnitId", unitId) @@ -299,7 +332,7 @@ layout("/layouts/platform.html"){ certifierUserChange(val) { const user = this.certifierUserOptions.find(o => o.id === val) if (user) { - const { userName, loginName, unitId, unitName, unionId, unionName } = user + const {userName, loginName, unitId, unitName, unionId, unionName} = user this.$set(this.formData, "certifierUserName", userName) this.$set(this.formData, "certifierLoginName", loginName) this.$set(this.formData, "certifierUnitId", unitId) @@ -311,7 +344,7 @@ layout("/layouts/platform.html"){ payUserChange(val) { const user = this.payUserOptions.find(o => o.id === val) if (user) { - const { userName, loginName } = user + const {userName, loginName} = user this.$set(this.formData, "payUserName", userName) this.$set(this.formData, "payLoginName", loginName) } @@ -330,7 +363,7 @@ layout("/layouts/platform.html"){ cancelButtonText: "取消", type: "warning" }).then(() => { - this.$axios.post("/platform/condolence/apply/save", { data: JSON.stringify(this.formData) }).then(res => { + this.$axios.post("/platform/condolence/apply/save", {data: JSON.stringify(this.formData)}).then(res => { if (res.code === 0) { this.$message.success(res.msg) commonUtil.pjaxPush("/platform/condolence/mine") @@ -381,17 +414,18 @@ layout("/layouts/platform.html"){ }, init() { if (this.bizId) { - this.$axios.post("/platform/condolence/mine/info", { id: this.bizId }).then((res) => { + this.$axios.post("/platform/condolence/mine/info", {id: this.bizId}).then((res) => { if (res.code === 0) { this.formData = res.data this.selectQueryUser(this.formData.helpLoginName, this.helpUserOptions) + this.selectQueryUser(this.formData.payLoginName, this.payUserOptions) this.selectQueryUser(this.formData.certifierLoginName, this.certifierUserOptions) this.selectQueryUser(this.formData.handlerLoginName, this.handlerUserOptions) this.chooseType = this.typeOptions.find(o => o.id === this.formData.type) } }) } else { - const { username, loginname, id, unit, union, mobile } = this.$store.state.user + const {username, loginname, id, unit, union, mobile} = this.$store.state.user this.formData = { applyUserName: username, applyLoginName: loginname, @@ -399,7 +433,8 @@ layout("/layouts/platform.html"){ applyUnitId: unit?.id, applyUnitName: unit?.name, applyUnionId: union?.id, - applyUnionName: union?.name + applyUnionName: union?.name, + applyMobile: mobile } } }, diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/branchUnionApproval/index.html b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/branchUnionApproval/index.html index 9afd341..f2b4e47 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/branchUnionApproval/index.html +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/branchUnionApproval/index.html @@ -81,6 +81,10 @@ layout("/layouts/platform.html"){ :rules="[{required:true,message:'必填',trigger:['change','blur']}]"> + + + 取消 diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/common/info.js b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/common/info.js index 79252bf..37d32b2 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/common/info.js +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/common/info.js @@ -7,18 +7,22 @@ const condolenceInfo = { {{ viewData.applyUserName }} + {{ viewData.applyMobile }} {{ viewData.applyLoginName }} {{ viewData.applyUnitName }} {{ viewData.applyUnionName }} + {{ viewData.helpUserName }} + {{ viewData.helpMobile }} - {{ viewData.certifierUserName }} + + {{ viewData.payUserName }} {{ viewData.typeName }} {{ viewData.money }} {{ viewData.occurTime }} - {{ viewData.bankCardNumber }} - {{ viewData.bankUserName }} - {{ viewData.bankOfDeposit }} + + + diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/mine/index.html b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/mine/index.html index 662aea6..c04be11 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/mine/index.html +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/mine/index.html @@ -62,6 +62,7 @@ layout("/layouts/platform.html"){ 查看 编辑 撤回 + 导出报销单 删除 @@ -102,6 +103,9 @@ layout("/layouts/platform.html"){ } }, methods: { + doExport(row) { + window.location.href = "/platform/condolence/mine/doExport?id=" + (row.id || '') + }, onAdd() { commonUtil.pjaxPush('/platform/condolence/apply') }, diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolPrincipalApproval/index.html b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolPrincipalApproval/index.html index 6283e29..f72e4a9 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolPrincipalApproval/index.html +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolPrincipalApproval/index.html @@ -101,6 +101,10 @@ layout("/layouts/platform.html"){ :rules="[{required:true,message:'必填',trigger:['change','blur']}]"> + + + 取消 diff --git a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolUnionApproval/index.html b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolUnionApproval/index.html index 6283e29..f72e4a9 100644 --- a/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolUnionApproval/index.html +++ b/src/main/resources/views/platform/zhgh/staffbenefit/condolence/schoolUnionApproval/index.html @@ -101,6 +101,10 @@ layout("/layouts/platform.html"){ :rules="[{required:true,message:'必填',trigger:['change','blur']}]"> + + + 取消 diff --git a/src/main/resources/views/platform/zhgh/welfare/projectMange/index.html b/src/main/resources/views/platform/zhgh/welfare/projectMange/index.html index f6c89a5..ce5a8d5 100644 --- a/src/main/resources/views/platform/zhgh/welfare/projectMange/index.html +++ b/src/main/resources/views/platform/zhgh/welfare/projectMange/index.html @@ -115,7 +115,7 @@ layout("/layouts/platform.html"){ - + + + 批量删除 + 导出名单 @@ -148,14 +151,17 @@ layout("/layouts/platform.html"){ + + { + const ids = this.selectedRows.map(row => row.id) + const resp = await this.$axios.post("/platform/welfare/list/mange/batchDelete", + "ids=" + ids.join("&ids=") + "&projectId=" + this.pageForm.projectId, + { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } } + ) + if (resp.code === 0) { + this.$message.success(resp.msg || "删除成功") + this.$refs.tableRef.clearSelection() + this.doSearch() + } else { + this.$message.error(resp.msg) + } + }) + }, + handleSelectionChange(val) { + this.selectedRows = val + }, getWelfareList() { this.$axios.post("/platform/welfare/project/mange/getWelfareList", { year: this.pageForm.year }).then((res) => { this.projectSelectOptions = res.data diff --git a/src/main/resources/views/platform/zhghh5/staffbenefit/condolence/apply/index.html b/src/main/resources/views/platform/zhghh5/staffbenefit/condolence/apply/index.html index bded6b5..5fa4ec4 100644 --- a/src/main/resources/views/platform/zhghh5/staffbenefit/condolence/apply/index.html +++ b/src/main/resources/views/platform/zhghh5/staffbenefit/condolence/apply/index.html @@ -20,6 +20,14 @@ layout("/layouts/platform_h5.html"){ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - +