commit
This commit is contained in:
+4
-3
@@ -125,7 +125,7 @@ public class MFamilyActivityController {
|
||||
String id = v.getId();
|
||||
NutMap nutMap = NutMap.NEW();
|
||||
List<FamilyUserCourse> familyUserCourses = collectMap.get(id);
|
||||
int remainingNum = v.getCourseLimitNum();
|
||||
int remainingNum = v.getCourseLimitNum() != null ? v.getCourseLimitNum() : 0;
|
||||
if (Lang.isNotEmpty(familyUserCourses)) {
|
||||
remainingNum = v.getCourseLimitNum() - familyUserCourses.size();
|
||||
}
|
||||
@@ -325,11 +325,12 @@ public class MFamilyActivityController {
|
||||
@At
|
||||
@ApiOperation("验证子活动是否能报名")
|
||||
@SaCheckPermission("h5.family.sign")
|
||||
public Object validateSourceSignUp(String activityCourseId) {
|
||||
public Object validateSourceSignUp(String activityCourseId, String courseId) {
|
||||
try {
|
||||
lock.lock();
|
||||
// 该时间段下已报名的人数
|
||||
int count = dao.count(FamilyUserCourse.class, Cnd.where("activityCourseId", "=", activityCourseId));
|
||||
int count = dao.count(FamilyUserCourse.class, Cnd.where("activityCourseId", "=", activityCourseId)
|
||||
.and("courseId", "=", courseId));
|
||||
// 获取改时间段下的活动课程限制报名人数
|
||||
FamilyActivityCourse course = dao.fetch(FamilyActivityCourse.class, activityCourseId);
|
||||
Integer courseLimitNum = course.getCourseLimitNum();
|
||||
|
||||
+5
-3
@@ -32,6 +32,7 @@ import org.nutz.mvc.annotation.*;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletionException;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -129,7 +130,7 @@ public class MTrainSignUpActivityController {
|
||||
String id = v.getId();
|
||||
NutMap nutMap = NutMap.NEW();
|
||||
List<TrainSignUpUserCourse> trainSignUpUserCourses = collectMap.get(id);
|
||||
int remainingNum = v.getCourseLimitNum();
|
||||
int remainingNum = v.getCourseLimitNum() != null ? v.getCourseLimitNum() : 0;
|
||||
if (Lang.isNotEmpty(trainSignUpUserCourses)) {
|
||||
remainingNum = v.getCourseLimitNum() - trainSignUpUserCourses.size();
|
||||
}
|
||||
@@ -328,11 +329,12 @@ public class MTrainSignUpActivityController {
|
||||
@At
|
||||
@ApiOperation("验证子活动是否能报名")
|
||||
@SaCheckPermission("h5.trainSignUp.sign")
|
||||
public Object validateSourceSignUp(String activityCourseId) {
|
||||
public Object validateSourceSignUp(String activityCourseId, String courseId) {
|
||||
try {
|
||||
lock.lock();
|
||||
// 该时间段下已报名的人数
|
||||
int count = dao.count(TrainSignUpUserCourse.class, Cnd.where("activityCourseId", "=", activityCourseId));
|
||||
int count = dao.count(TrainSignUpUserCourse.class, Cnd.where("activityCourseId", "=", activityCourseId)
|
||||
.and("courseId", "=", courseId));
|
||||
// 获取改时间段下的活动课程限制报名人数
|
||||
TrainSignUpActivityCourse course = dao.fetch(TrainSignUpActivityCourse.class, activityCourseId);
|
||||
Integer courseLimitNum = course.getCourseLimitNum();
|
||||
|
||||
+36
-70
@@ -2,44 +2,42 @@ package com.budwk.app.zhgh.staffbenefit.condolence.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
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;
|
||||
import com.budwk.app.base.page.Pagination;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.flow.constant.FlowConst;
|
||||
import com.budwk.app.flow.engine.FlowEngine;
|
||||
import com.budwk.app.flow.entity.ProcessInstance;
|
||||
import com.budwk.app.flow.entity.ProcessTask;
|
||||
import com.budwk.app.flow.enums.ProcessSubmitTypeEnum;
|
||||
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.dayofficework.article.models.Article;
|
||||
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.budwk.app.zhgh.staffbenefit.psychology.model.PsychologyDoctor;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
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;
|
||||
import org.nutz.ioc.aop.Aop;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.mvc.annotation.At;
|
||||
import org.nutz.mvc.annotation.Ok;
|
||||
import org.nutz.mvc.annotation.Param;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName CondolenceApplyController
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/7/28 11:06
|
||||
* @Date 2025/8/20 15:40
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
@@ -50,67 +48,46 @@ import java.util.List;
|
||||
public class CondolenceApplyController {
|
||||
|
||||
@Inject
|
||||
private CondolenceService condolenceService;
|
||||
private Dao dao;
|
||||
@Inject
|
||||
private FlowEngine flowEngine;
|
||||
@Inject
|
||||
private CondolenceService condolenceService;
|
||||
|
||||
@At("")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/apply/index.html")
|
||||
@SaCheckLogin
|
||||
public void index() {}
|
||||
|
||||
@At("/form")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/apply/form.html")
|
||||
@SaCheckLogin
|
||||
public void form() {}
|
||||
@At
|
||||
@ApiOperation("保存申请")
|
||||
@SaCheckPermission("condolence.apply")
|
||||
@SLog(type = "condolence", tag = "职工慰问-慰问申请", msg = "保存职工慰问申请")
|
||||
public Result save(@Param("data") Condolence condolence) {
|
||||
if(StrUtil.isBlank(condolence.getId())) condolence.setCreateTime(DateUtil.now());
|
||||
dao.insertOrUpdate(condolence);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@At
|
||||
@ApiOperation("分页查询")
|
||||
@ApiOperation("提交申请")
|
||||
@SaCheckPermission("condolence.apply")
|
||||
public Result pageData(PageForm pageForm,
|
||||
@Param(value = "year") Integer year,
|
||||
@Param(value = "type") String type) {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
info.*,
|
||||
type.name as typeName,
|
||||
ins.id AS instanceId,
|
||||
ins.businessNo,
|
||||
ins.state instanceState,
|
||||
ins.variable instanceVariable,
|
||||
t.id taskId,
|
||||
t.taskName AS taskKey,
|
||||
t.displayName taskName,
|
||||
t.taskType,
|
||||
t.performType taskPerformType,
|
||||
t.taskState,
|
||||
t.finishTime,
|
||||
t.taskParentId,
|
||||
t.variable taskVariable,
|
||||
IF((SELECT taskName FROM wf_process_task tt WHERE tt.id = t.taskParentId) = 'startTask', 1, 0) canRevoke,
|
||||
(select MAX(id) from wf_process_task where processInstanceId = ins.id and taskName = 'startTask') AS startTaskId
|
||||
FROM
|
||||
condolence info
|
||||
LEFT JOIN condolence_type type ON info.type = type.id
|
||||
LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id
|
||||
LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10
|
||||
LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) {
|
||||
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||
seg.or(Condolence::getHelpUserName, "like", "%" + pageForm.getSearchKeyword() + "%");
|
||||
seg.or(Condolence::getHelpLoginName, "like", "%" + pageForm.getSearchKeyword() + "%");
|
||||
cnd.and(seg);
|
||||
@SLog(type = "condolence", tag = "职工慰问-慰问申请", msg = "提交职工慰问申请")
|
||||
public Result submit(@Param("data") Condolence condolence) {
|
||||
if(StrUtil.isBlank(condolence.getId())) condolence.setCreateTime(DateUtil.now());
|
||||
dao.insertOrUpdate(condolence);
|
||||
// 开启流程实例
|
||||
Dict args = Dict.create();
|
||||
args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode());
|
||||
args.set(FlowConst.FORM_DATA, condolence);
|
||||
ProcessInstance instance = flowEngine.startProcessInstanceByKey("ZGWW", condolence.getId(), SecurityUtil.getUserId(), args);
|
||||
|
||||
// 自动完成第一个申请任务
|
||||
List<ProcessTask> doingTaskList = flowEngine.processTaskService().getDoingTaskList(instance.getId(), null);
|
||||
for (ProcessTask task : doingTaskList) {
|
||||
flowEngine.executeProcessTask(task.getId(), SecurityUtil.getUserId(), args);
|
||||
}
|
||||
cnd.andEX("year(info.createTime)", "=", year);
|
||||
cnd.andEX("info.type", "=", type);
|
||||
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
||||
cnd.desc("info.createTime");
|
||||
sql.setCondition(cnd);
|
||||
Pagination<NutMap> pagination = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
return Result.success(pagination);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@At
|
||||
@@ -153,15 +130,4 @@ public class CondolenceApplyController {
|
||||
Pagination pagination = condolenceService.listPageMap(1, 50, sql);
|
||||
return Result.success(pagination.getList());
|
||||
}
|
||||
|
||||
@At
|
||||
@ApiOperation("删除")
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
@SaCheckPermission("condolence.apply")
|
||||
@SLog(type = "condolence", tag = "删除职工慰问", msg = "删除职工慰问")
|
||||
public Result delete(@Param("id") String id) {
|
||||
condolenceService.delete(id);
|
||||
flowEngine.processInstanceService().deleteProcessInstanceByBusinessKey(id);
|
||||
return Result.success();
|
||||
}
|
||||
}
|
||||
|
||||
+8
-7
@@ -45,11 +45,6 @@ public class CondolenceBranchUnionApprovalController {
|
||||
@SaCheckLogin
|
||||
public void index() {}
|
||||
|
||||
@At("/form")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/branchUnionApproval/form.html")
|
||||
@SaCheckLogin
|
||||
public void form() {}
|
||||
|
||||
@At
|
||||
@ApiOperation("分页查询")
|
||||
@SaCheckPermission("condolence.branchUnionApproval")
|
||||
@@ -64,7 +59,8 @@ public class CondolenceBranchUnionApprovalController {
|
||||
ins.id AS instanceId,
|
||||
ins.businessNo,
|
||||
ins.state instanceState,
|
||||
ins.variable instanceVariable,
|
||||
ins.variable instanceVariale,
|
||||
ins.processDefineId instanceProcessDefineId,
|
||||
t.id taskId,
|
||||
t.taskName AS taskKey,
|
||||
t.displayName taskName,
|
||||
@@ -73,13 +69,17 @@ public class CondolenceBranchUnionApprovalController {
|
||||
t.taskState,
|
||||
t.finishTime,
|
||||
t.taskParentId,
|
||||
t.variable taskVariable
|
||||
t.variable taskVariable,
|
||||
IFNULL(GROUP_CONCAT(DISTINCT nt.displayName),'结束') curTaskName,
|
||||
IF(rt.id IS NOT NULL, 1, 0) AS canRevoke
|
||||
FROM
|
||||
wf_process_task t
|
||||
LEFT JOIN wf_process_instance ins ON ins.id = t.processInstanceId
|
||||
LEFT JOIN condolence info ON info.id = ins.businessNo
|
||||
LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id
|
||||
LEFT JOIN condolence_type type ON info.type = type.id
|
||||
LEFT JOIN wf_process_task nt ON nt.processInstanceId = ins.id AND nt.taskState = 10
|
||||
LEFT JOIN wf_process_task rt ON rt.processInstanceId = ins.id AND rt.taskParentId = t.id AND rt.taskState = 10
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
@@ -100,6 +100,7 @@ public class CondolenceBranchUnionApprovalController {
|
||||
} else {
|
||||
cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy()));
|
||||
}
|
||||
cnd.groupBy("t.id");
|
||||
sql.setCondition(cnd);
|
||||
Pagination<NutMap> pageVO = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
return Result.success(pageVO);
|
||||
|
||||
+128
@@ -0,0 +1,128 @@
|
||||
package com.budwk.app.zhgh.staffbenefit.condolence.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.budwk.app.base.annotation.SLog;
|
||||
import com.budwk.app.base.constant.RoleConstant;
|
||||
import com.budwk.app.base.page.Pagination;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.flow.engine.FlowEngine;
|
||||
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 io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Sqls;
|
||||
import org.nutz.dao.sql.Sql;
|
||||
import org.nutz.dao.util.cri.SqlExpressionGroup;
|
||||
import org.nutz.ioc.aop.Aop;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.mvc.annotation.At;
|
||||
import org.nutz.mvc.annotation.Ok;
|
||||
import org.nutz.mvc.annotation.Param;
|
||||
|
||||
/**
|
||||
* @ClassName CondolenceApplyController
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/7/28 11:06
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
@IocBean
|
||||
@At("/platform/condolence/mine")
|
||||
@Api("职工慰问我的")
|
||||
@Ok("json:full")
|
||||
public class CondolenceMineController {
|
||||
|
||||
@Inject
|
||||
private CondolenceService condolenceService;
|
||||
@Inject
|
||||
private FlowEngine flowEngine;
|
||||
|
||||
@At("")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/mine/index.html")
|
||||
@SaCheckLogin
|
||||
public void index() {}
|
||||
|
||||
@At
|
||||
@ApiOperation("分页查询")
|
||||
@SaCheckPermission("condolence.mine")
|
||||
public Result pageData(PageForm pageForm,
|
||||
@Param(value = "year") Integer year,
|
||||
@Param(value = "type") String type) {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
info.*,
|
||||
type.name as typeName,
|
||||
ins.id AS instanceId,
|
||||
ins.businessNo,
|
||||
ins.state instanceState,
|
||||
ins.variable instanceVariable,
|
||||
ins.processDefineId instanceProcessDefineId,
|
||||
t.id taskId,
|
||||
t.taskName AS taskKey,
|
||||
t.displayName taskName,
|
||||
t.taskType,
|
||||
t.performType taskPerformType,
|
||||
t.taskState,
|
||||
t.finishTime,
|
||||
t.taskParentId,
|
||||
t.variable taskVariable,
|
||||
IF((SELECT taskName FROM wf_process_task tt WHERE tt.id = t.taskParentId) = 'startTask', 1, 0) canRevoke,
|
||||
(select MAX(id) from wf_process_task where processInstanceId = ins.id and taskName = 'startTask') AS startTaskId
|
||||
FROM
|
||||
condolence info
|
||||
LEFT JOIN condolence_type type ON info.type = type.id
|
||||
LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id
|
||||
LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10
|
||||
LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) {
|
||||
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||
seg.or(Condolence::getHelpUserName, "like", "%" + pageForm.getSearchKeyword() + "%");
|
||||
seg.or(Condolence::getHelpLoginName, "like", "%" + pageForm.getSearchKeyword() + "%");
|
||||
cnd.and(seg);
|
||||
}
|
||||
cnd.andEX("year(info.createTime)", "=", year);
|
||||
cnd.andEX("info.type", "=", type);
|
||||
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
||||
cnd.desc("info.createTime");
|
||||
sql.setCondition(cnd);
|
||||
Pagination<NutMap> pagination = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
return Result.success(pagination);
|
||||
}
|
||||
|
||||
@At
|
||||
@ApiOperation("删除")
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
@SaCheckPermission("condolence.mine")
|
||||
@SLog(type = "condolence", tag = "删除职工慰问", msg = "删除职工慰问")
|
||||
public Result delete(@Param("id") String id) {
|
||||
condolenceService.delete(id);
|
||||
flowEngine.processInstanceService().deleteProcessInstanceByBusinessKey(id);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@At
|
||||
@ApiOperation("查询单个慰问申请信息")
|
||||
@SaCheckPermission("condolence.mine")
|
||||
public Result info(String id) {
|
||||
Condolence condolence = condolenceService.fetch(id);
|
||||
CondolenceType type = condolenceService.dao().fetch(CondolenceType.class, Cnd.where(CondolenceType::getId, "=", condolence.getType()));
|
||||
NutMap nutMap = Lang.obj2nutmap(condolence);
|
||||
nutMap.put("typeName", type.getName());
|
||||
return Result.success(nutMap);
|
||||
}
|
||||
}
|
||||
+8
-7
@@ -45,11 +45,6 @@ public class CondolenceSchoolUnionApprovalController {
|
||||
@SaCheckLogin
|
||||
public void index() {}
|
||||
|
||||
@At("/form")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/schoolUnionApproval/form.html")
|
||||
@SaCheckLogin
|
||||
public void form() {}
|
||||
|
||||
@At
|
||||
@ApiOperation("分页查询")
|
||||
@SaCheckPermission("condolence.schoolUnionApproval")
|
||||
@@ -66,7 +61,8 @@ public class CondolenceSchoolUnionApprovalController {
|
||||
ins.id AS instanceId,
|
||||
ins.businessNo,
|
||||
ins.state instanceState,
|
||||
ins.variable instanceVariable,
|
||||
ins.variable instanceVariale,
|
||||
ins.processDefineId instanceProcessDefineId,
|
||||
t.id taskId,
|
||||
t.taskName AS taskKey,
|
||||
t.displayName taskName,
|
||||
@@ -75,13 +71,17 @@ public class CondolenceSchoolUnionApprovalController {
|
||||
t.taskState,
|
||||
t.finishTime,
|
||||
t.taskParentId,
|
||||
t.variable taskVariable
|
||||
t.variable taskVariable,
|
||||
IFNULL(GROUP_CONCAT(DISTINCT nt.displayName),'结束') curTaskName,
|
||||
IF(rt.id IS NOT NULL, 1, 0) AS canRevoke
|
||||
FROM
|
||||
wf_process_task t
|
||||
LEFT JOIN wf_process_instance ins ON ins.id = t.processInstanceId
|
||||
LEFT JOIN condolence info ON info.id = ins.businessNo
|
||||
LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id
|
||||
LEFT JOIN condolence_type type ON info.type = type.id
|
||||
LEFT JOIN wf_process_task nt ON nt.processInstanceId = ins.id AND nt.taskState = 10
|
||||
LEFT JOIN wf_process_task rt ON rt.processInstanceId = ins.id AND rt.taskParentId = t.id AND rt.taskState = 10
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
@@ -104,6 +104,7 @@ public class CondolenceSchoolUnionApprovalController {
|
||||
} else {
|
||||
cnd.orderBy(pageForm.getPageOrderName(), PageUtil.getOrder(pageForm.getPageOrderBy()));
|
||||
}
|
||||
cnd.groupBy("t.id");
|
||||
sql.setCondition(cnd);
|
||||
Pagination<NutMap> pageVO = condolenceService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
return Result.success(pageVO);
|
||||
|
||||
-50
@@ -1,50 +0,0 @@
|
||||
package com.budwk.app.zhgh.staffbenefit.condolence.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.zhgh.democratic.suggestionBox.models.SuggestionBox;
|
||||
import com.budwk.app.zhgh.staffbenefit.condolence.model.Condolence;
|
||||
import com.budwk.app.zhgh.staffbenefit.condolence.model.CondolenceType;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.Lang;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.mvc.annotation.At;
|
||||
import org.nutz.mvc.annotation.Ok;
|
||||
|
||||
/**
|
||||
* @ClassName CondolenceViewController
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/7/30 10:46
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
@IocBean
|
||||
@At("/platform/condolence/view")
|
||||
@Api("职工慰问查看")
|
||||
@Ok("json:full")
|
||||
public class CondolenceViewController {
|
||||
|
||||
@Inject
|
||||
private Dao dao;
|
||||
|
||||
@At("/index")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/condolence/view/index.html")
|
||||
@SaCheckLogin
|
||||
public void index() {
|
||||
|
||||
}
|
||||
|
||||
@At("/info")
|
||||
@SaCheckLogin
|
||||
public Result info(String id) {
|
||||
Condolence condolence = dao.fetch(Condolence.class, id);
|
||||
CondolenceType type = dao.fetch(CondolenceType.class, Cnd.where(CondolenceType::getId, "=", condolence.getType()));
|
||||
NutMap nutMap = Lang.obj2nutmap(condolence);
|
||||
nutMap.put("typeName", type.getName());
|
||||
return Result.success(nutMap);
|
||||
}
|
||||
}
|
||||
+6
-1
@@ -7,7 +7,9 @@ import com.budwk.app.base.constant.RoleConstant;
|
||||
import com.budwk.app.base.page.Pagination;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.sys.models.Sys_role;
|
||||
import com.budwk.app.sys.models.Sys_user_role;
|
||||
import com.budwk.app.sys.services.SysRoleService;
|
||||
import com.budwk.app.sys.views.View_user;
|
||||
import com.budwk.app.zhgh.staffbenefit.legal.model.LegalDoctor;
|
||||
import com.budwk.app.zhgh.staffbenefit.legal.service.LegalDoctorService;
|
||||
@@ -46,6 +48,8 @@ public class LegalDoctorController {
|
||||
private Dao dao;
|
||||
@Inject
|
||||
private LegalDoctorService doctorService;
|
||||
@Inject
|
||||
private SysRoleService sysRoleService;
|
||||
|
||||
@At("")
|
||||
@SaCheckPermission("legal.doctorManage")
|
||||
@@ -74,6 +78,7 @@ public class LegalDoctorController {
|
||||
@SaCheckPermission("legal.doctorManage")
|
||||
@SLog(type = "legal", tag = "新增/修改法律援助师", msg = "新增/修改法律援助师")
|
||||
public Object onSubmit(LegalDoctor doctor) {
|
||||
Sys_role role = sysRoleService.getByCode(RoleConstant.LEGAL_DOCTOR);
|
||||
if(StrUtil.isBlank(doctor.getId())) {
|
||||
int count = doctorService.count(Cnd.where(LegalDoctor::getUserId, "=", doctor.getUserId()));
|
||||
if(count > 0) {
|
||||
@@ -89,7 +94,7 @@ public class LegalDoctorController {
|
||||
//插入角色
|
||||
Sys_user_role userRole = new Sys_user_role();
|
||||
userRole.setUserId(doctor.getUserId());
|
||||
userRole.setRoleId(RoleConstant.PSYCHOLOGY_DOCTOR.name());
|
||||
userRole.setRoleId(role.getId());
|
||||
dao.insert(userRole);
|
||||
}
|
||||
doctorService.insertOrUpdate(doctor);
|
||||
|
||||
+6
-1
@@ -7,7 +7,9 @@ import com.budwk.app.base.constant.RoleConstant;
|
||||
import com.budwk.app.base.page.Pagination;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.sys.models.Sys_role;
|
||||
import com.budwk.app.sys.models.Sys_user_role;
|
||||
import com.budwk.app.sys.services.SysRoleService;
|
||||
import com.budwk.app.sys.views.View_user;
|
||||
import com.budwk.app.zhgh.staffbenefit.psychology.model.PsychologyDoctor;
|
||||
import com.budwk.app.zhgh.staffbenefit.psychology.service.PsychologyDoctorService;
|
||||
@@ -46,6 +48,8 @@ public class PsychologyDoctorController {
|
||||
private Dao dao;
|
||||
@Inject
|
||||
private PsychologyDoctorService doctorService;
|
||||
@Inject
|
||||
private SysRoleService sysRoleService;
|
||||
|
||||
@At("")
|
||||
@SaCheckPermission("psychology.doctorManage")
|
||||
@@ -74,6 +78,7 @@ public class PsychologyDoctorController {
|
||||
@SaCheckPermission("psychology.doctorManage")
|
||||
@SLog(type = "psychology", tag = "新增/修改心理咨询师", msg = "新增/修改心理咨询师")
|
||||
public Object onSubmit(PsychologyDoctor doctor) {
|
||||
Sys_role role = sysRoleService.getByCode(RoleConstant.PSYCHOLOGY_DOCTOR);
|
||||
if(StrUtil.isBlank(doctor.getId())) {
|
||||
int count = doctorService.count(Cnd.where(PsychologyDoctor::getUserId, "=", doctor.getUserId()));
|
||||
if(count > 0) {
|
||||
@@ -89,7 +94,7 @@ public class PsychologyDoctorController {
|
||||
//插入角色
|
||||
Sys_user_role userRole = new Sys_user_role();
|
||||
userRole.setUserId(doctor.getUserId());
|
||||
userRole.setRoleId(RoleConstant.PSYCHOLOGY_DOCTOR.name());
|
||||
userRole.setRoleId(role.getId());
|
||||
dao.insert(userRole);
|
||||
}
|
||||
doctorService.insertOrUpdate(doctor);
|
||||
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
package com.budwk.app.zhgh.staffbenefit.recuperation.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.service.RecuperationAuditService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.ioc.loader.annotation.Inject;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
import org.nutz.mvc.annotation.At;
|
||||
import org.nutz.mvc.annotation.Ok;
|
||||
|
||||
/**
|
||||
* @ClassName RecuperationBranchUnionAuditController
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/8/20 14:37
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
@Slf4j
|
||||
@IocBean
|
||||
@At("/platform/recuperation/branchUnionAudit")
|
||||
@Api("疗休养分工会审核")
|
||||
@Ok("json:full")
|
||||
public class RecuperationBranchUnionAuditController {
|
||||
|
||||
@Inject
|
||||
private Dao dao;
|
||||
@Inject
|
||||
private RecuperationAuditService auditService;
|
||||
|
||||
@At("")
|
||||
@Ok("beetl:/platform/zhgh/staffbenefit/recuperation/branchUnionAudit/index.html")
|
||||
@SaCheckLogin
|
||||
public void index() {}
|
||||
|
||||
@At
|
||||
@ApiOperation("分页查询")
|
||||
@SaCheckLogin
|
||||
public Result findOne(String id) {
|
||||
NutMap nutMap = auditService.findOne(id);
|
||||
return Result.success(nutMap);
|
||||
}
|
||||
}
|
||||
+52
-21
@@ -12,6 +12,8 @@ import com.budwk.app.base.annotation.SLog;
|
||||
import com.budwk.app.base.page.Pagination;
|
||||
import com.budwk.app.base.param.PageForm;
|
||||
import com.budwk.app.base.result.Result;
|
||||
import com.budwk.app.base.utils.CommonDownloadUtil;
|
||||
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.constant.RecuperationState;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationConfig;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationEnroll;
|
||||
@@ -183,7 +185,6 @@ public class RecuperationSchoolUnionUserQueryController {
|
||||
return Result.success(pagination);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 设置出行人员
|
||||
*
|
||||
@@ -283,6 +284,50 @@ public class RecuperationSchoolUnionUserQueryController {
|
||||
return Result.success(list);
|
||||
}
|
||||
|
||||
@At
|
||||
@Aop(TransAop.READ_COMMITTED)
|
||||
@ApiOperation("修改报名信息")
|
||||
@SaCheckPermission("recuperation.schoolUnionUserQuery")
|
||||
@SLog(type = "recuperation", tag = "修改报名信息", msg = "修改报名信息")
|
||||
public Result doEdit(RecuperationEnroll enroll) {
|
||||
enroll.setNormal(true);
|
||||
dao.updateIgnoreNull(enroll);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@At
|
||||
@ApiOperation("获取分工会选择的线路")
|
||||
@SaCheckPermission("recuperation.schoolUnionUserQuery")
|
||||
public Result getUnionSelectLine() {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
rlus.id,
|
||||
rlus.unionId,
|
||||
rlus.lineId,
|
||||
rlus.selectUserId,
|
||||
DATE_FORMAT( rlus.playStartTime, '%Y-%m-%d' ) AS playStartTime,
|
||||
DATE_FORMAT( rlus.playEndTime, '%Y-%m-%d' ) AS playEndTime,
|
||||
rl.lineName,
|
||||
rl.regionalNature,
|
||||
if(rlus.signUpMode=1,'分工会','校工会') AS signUpMode,
|
||||
lot.lotName
|
||||
FROM
|
||||
`recuperation_line_select` rlus
|
||||
LEFT JOIN `recuperation_line` rl ON rlus.lineId = rl.id
|
||||
LEFT JOIN `recuperation_lot` lot ON rl.lotId = lot.id
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.and(Cnd.exps("rlus.isOpen","=",1).or("rlus.unionId","=", SecurityUtil.getUnionId()));
|
||||
cnd.and("YEAR(rlus.selectTime)","=",DateUtil.thisYear());
|
||||
// cnd.and("rlus.signUpMode","=",signUpMode);
|
||||
cnd.desc("lot.lotValue");
|
||||
cnd.desc("rl.lineName");
|
||||
sql.setCondition(cnd);
|
||||
List<NutMap> listMap = enrollService.listMap(sql);
|
||||
return Result.success(listMap);
|
||||
}
|
||||
|
||||
@At
|
||||
@Ok("void")
|
||||
@ApiOperation("导出")
|
||||
@@ -394,18 +439,12 @@ public class RecuperationSchoolUnionUserQueryController {
|
||||
|
||||
}
|
||||
excelEntities.add(new ExcelExportEntity("备注", "bz", 20));
|
||||
response.setContentType("application/octet-stream");
|
||||
response.setHeader("Content-Disposition", "attachment;filename=" + new String(("报名人员.xlsx").getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1));
|
||||
|
||||
ExportParams exportParams = new ExportParams();
|
||||
exportParams.setType(ExcelType.XSSF);
|
||||
|
||||
try {
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelEntities, list);
|
||||
workbook.write(response.getOutputStream());
|
||||
workbook.close();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelEntities, list);
|
||||
CommonDownloadUtil.download("报名人员.xlsx", workbook, response);
|
||||
}
|
||||
|
||||
@At
|
||||
@@ -421,8 +460,7 @@ public class RecuperationSchoolUnionUserQueryController {
|
||||
u.sex,
|
||||
u.mobile,
|
||||
u.unitname as unitName,
|
||||
u.name as unionName,
|
||||
u.remark
|
||||
u.unionname as unionName
|
||||
from
|
||||
activity_user_scope us
|
||||
left join vw_user u on u.id = us.userId
|
||||
@@ -448,16 +486,9 @@ public class RecuperationSchoolUnionUserQueryController {
|
||||
excelEntities.add(new ExcelExportEntity("所属单位", "unitName", 20));
|
||||
excelEntities.add(new ExcelExportEntity("所属工会", "unionName", 20));
|
||||
|
||||
response.setContentType("application/octet-stream");
|
||||
response.setHeader("Content-Disposition", "attachment;filename=" + new String((DateUtil.thisYear() + "未报名人员.xlsx").getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1));
|
||||
ExportParams exportParams = new ExportParams();
|
||||
exportParams.setType(ExcelType.XSSF);
|
||||
try {
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelEntities, listMap);
|
||||
workbook.write(response.getOutputStream());
|
||||
workbook.close();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelEntities, listMap);
|
||||
CommonDownloadUtil.download(DateUtil.thisYear() + "未报名人员.xlsx", workbook, response);
|
||||
}
|
||||
}
|
||||
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.budwk.app.zhgh.staffbenefit.recuperation.service;
|
||||
|
||||
import com.budwk.app.base.service.BaseService;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationEnroll;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
|
||||
/**
|
||||
* @ClassName RecuperationAuditService
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/8/20 14:38
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
public interface RecuperationAuditService extends BaseService<RecuperationEnroll> {
|
||||
|
||||
NutMap findOne(String id);
|
||||
}
|
||||
+81
@@ -0,0 +1,81 @@
|
||||
package com.budwk.app.zhgh.staffbenefit.recuperation.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.budwk.app.base.model.Audit;
|
||||
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationEnroll;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationEnrollBed;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.model.RecuperationEnrollCompanion;
|
||||
import com.budwk.app.zhgh.staffbenefit.recuperation.service.RecuperationAuditService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nutz.dao.Cnd;
|
||||
import org.nutz.dao.Dao;
|
||||
import org.nutz.dao.Sqls;
|
||||
import org.nutz.dao.sql.Sql;
|
||||
import org.nutz.ioc.loader.annotation.IocBean;
|
||||
import org.nutz.lang.Strings;
|
||||
import org.nutz.lang.util.NutMap;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName RecuperationAuditServiceImpl
|
||||
* @Author JyuHsin
|
||||
* @Date 2025/8/20 14:38
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
*/
|
||||
@Slf4j
|
||||
@IocBean(args = {"refer:dao"})
|
||||
public class RecuperationAuditServiceImpl extends BaseServiceImpl<RecuperationEnroll> implements RecuperationAuditService {
|
||||
|
||||
public RecuperationAuditServiceImpl(Dao dao) {
|
||||
super(dao);
|
||||
}
|
||||
|
||||
@Override
|
||||
public NutMap findOne(String id) {
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
lxs.travelAgencyName,
|
||||
enroll.*,
|
||||
line.lineName,
|
||||
if(enroll.takePartInUnionId!=enroll.selfUnionId,true,false) isTransferIn,
|
||||
(SELECT COUNT(1) FROM recuperation_enroll_companion WHERE trreId=enroll.id and relation='亲属') isFamily
|
||||
FROM
|
||||
`recuperation_enroll` enroll
|
||||
LEFT JOIN recuperation_line_select lineu ON lineu.id = enroll.takePartInLineId
|
||||
LEFT JOIN recuperation_line line ON line.id = lineu.lineId
|
||||
LEFT JOIN recuperation_travel_agency lxs ON lxs.id = line.travelAgencyId
|
||||
where enroll.id=@id
|
||||
""").setParam("id", id);
|
||||
sql.setCallback(Sqls.callback.map());
|
||||
this.dao().execute(sql);
|
||||
NutMap fetch = sql.getObject(NutMap.class);
|
||||
NutMap map = NutMap.NEW();
|
||||
if (Strings.isNotBlank(fetch.getString("selfUnionAuditId"))) {
|
||||
Audit selfUnionAudit = dao().fetch(Audit.class, fetch.getString("selfUnionAuditId"));
|
||||
fetch.setv("selfUnionAudit", selfUnionAudit);
|
||||
}
|
||||
if (Strings.isNotBlank(fetch.getString("joinLineUnionAuditId"))) {
|
||||
Audit joinLineUnionAudit = dao().fetch(Audit.class, fetch.getString("joinLineUnionAuditId"));
|
||||
fetch.setv("joinLineUnionAudit", joinLineUnionAudit);
|
||||
}
|
||||
if (Strings.isNotBlank(fetch.getString("schoolUnionAuditId"))) {
|
||||
Audit schoolUnionAudit = dao().fetch(Audit.class, fetch.getString("schoolUnionAuditId"));
|
||||
fetch.setv("schoolUnionAudit", schoolUnionAudit);
|
||||
}
|
||||
if (Strings.isNotBlank(fetch.getString("bedInfoId"))) {
|
||||
RecuperationEnrollBed bedInfo = dao().fetch(RecuperationEnrollBed.class, fetch.getString("bedInfoId"));
|
||||
fetch.setv("bedInfo", bedInfo);
|
||||
}
|
||||
List<RecuperationEnrollCompanion> companionList = dao().query(RecuperationEnrollCompanion.class, Cnd.where("trreId", "=", id));
|
||||
companionList.forEach(v -> {
|
||||
if(StrUtil.isNotBlank(v.getBedInfoId())) {
|
||||
v.setBedInfo(dao().fetch(RecuperationEnrollBed.class, v.getBedInfoId()));
|
||||
}
|
||||
});
|
||||
map.addv("viewData", fetch.setv("companionList", companionList));
|
||||
return map;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user