Commit 56864db484685f8e09eab6373abd7916985e15ac

Authored by jason
1 parent c186d279

修改 文件重命名问题

Showing 15 changed files with 6 additions and 691 deletions
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/OaLeaveController.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa;  
2 -  
3 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.*;  
4 -import cn.iocoder.yudao.adminserver.modules.activiti.convert.oa.OALeaveConvert;  
5 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;  
6 -import cn.iocoder.yudao.adminserver.modules.activiti.service.oa.OALeaveService;  
7 -import cn.iocoder.yudao.framework.common.pojo.CommonResult;  
8 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
9 -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;  
10 -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;  
11 -import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;  
12 -import io.swagger.annotations.Api;  
13 -import io.swagger.annotations.ApiImplicitParam;  
14 -import io.swagger.annotations.ApiOperation;  
15 -import org.springframework.security.access.prepost.PreAuthorize;  
16 -import org.springframework.validation.annotation.Validated;  
17 -import org.springframework.web.bind.annotation.*;  
18 -  
19 -import javax.annotation.Resource;  
20 -import javax.servlet.http.HttpServletResponse;  
21 -import javax.validation.Valid;  
22 -import java.io.IOException;  
23 -import java.util.Collection;  
24 -import java.util.List;  
25 -  
26 -import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;  
27 -import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;  
28 -  
29 -  
30 -@Api(tags = "请假申请")  
31 -@RestController  
32 -@RequestMapping("/oa/leave")  
33 -@Validated  
34 -public class OALeaveController {  
35 -  
36 - @Resource  
37 - private OALeaveService leaveService;  
38 -  
39 - @PostMapping("/create")  
40 - @ApiOperation("创建请假申请")  
41 - @PreAuthorize("@ss.hasPermission('oa:leave:create')")  
42 - public CommonResult<Long> createLeave(@Valid @RequestBody OALeaveCreateReqVO createReqVO) {  
43 - // TODO @芋艿:processKey 自己去理解下。不过得把 leave 变成枚举  
44 - // TODO @芋艿 该方法没有用到, 是前一个版本的, 可以删掉。  
45 - createReqVO.setProcessKey("leave");  
46 - return success(leaveService.createLeave(createReqVO));  
47 - }  
48 -  
49 - @PostMapping("/form-key/create")  
50 - @ApiOperation("创建外置请假申请")  
51 - public CommonResult<Long> createFormKeyLeave(@Valid @RequestBody OALeaveCreateReqVO createReqVO) {  
52 - // TODO @芋艿:processKey 自己去理解下。不过得把 formkey 变成枚举  
53 - // TODO @芋艿 : processKey 是 bpmn <process> 中定义的id, 提交业务表单时候, 需要启动流程, 或许从前台传更合适  
54 - createReqVO.setProcessKey("leave-formkey");  
55 - return success(leaveService.createLeave(createReqVO));  
56 - }  
57 -  
58 - @PutMapping("/update")  
59 - @ApiOperation("更新请假申请")  
60 - @PreAuthorize("@ss.hasPermission('oa:leave:update')")  
61 - public CommonResult<Boolean> updateLeave(@Valid @RequestBody OALeaveUpdateReqVO updateReqVO) {  
62 - leaveService.updateLeave(updateReqVO);  
63 - return success(true);  
64 - }  
65 -  
66 - @DeleteMapping("/delete")  
67 - @ApiOperation("删除请假申请")  
68 - @ApiImplicitParam(name = "id", value = "编号", required = true)  
69 - @PreAuthorize("@ss.hasPermission('oa:leave:delete')")  
70 - public CommonResult<Boolean> deleteLeave(@RequestParam("id") Long id) {  
71 - leaveService.deleteLeave(id);  
72 - return success(true);  
73 - }  
74 -  
75 - @GetMapping("/get")  
76 - @ApiOperation("获得请假申请")  
77 - @ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)  
78 - @PreAuthorize("@ss.hasPermission('oa:leave:query')")  
79 - public CommonResult<OALeaveRespVO> getLeave(@RequestParam("id") Long id) {  
80 - OALeaveDO leave = leaveService.getLeave(id);  
81 - return success(OALeaveConvert.INSTANCE.convert(leave));  
82 - }  
83 -  
84 - @GetMapping("/list")  
85 - @ApiOperation("获得请假申请列表")  
86 - @ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)  
87 - @PreAuthorize("@ss.hasPermission('oa:leave:query')")  
88 - public CommonResult<List<OALeaveRespVO>> getLeaveList(@RequestParam("ids") Collection<Long> ids) {  
89 - List<OALeaveDO> list = leaveService.getLeaveList(ids);  
90 - return success(OALeaveConvert.INSTANCE.convertList(list));  
91 - }  
92 -  
93 - @GetMapping("/page")  
94 - @ApiOperation("获得请假申请分页")  
95 - @PreAuthorize("@ss.hasPermission('oa:leave:query')")  
96 - public CommonResult<PageResult<OALeaveRespVO>> getLeavePage(@Valid OALeavePageReqVO pageVO) {  
97 - //值查询自己申请请假  
98 - // TODO @芋艿:这里的传值,到底前端搞,还是后端搞。  
99 - pageVO.setUserId(SecurityFrameworkUtils.getLoginUser().getUsername());  
100 - PageResult<OALeaveDO> pageResult = leaveService.getLeavePage(pageVO);  
101 - return success(OALeaveConvert.INSTANCE.convertPage(pageResult));  
102 - }  
103 -  
104 - @GetMapping("/export-excel")  
105 - @ApiOperation("导出请假申请 Excel")  
106 - @PreAuthorize("@ss.hasPermission('oa:leave:export')")  
107 - @OperateLog(type = EXPORT)  
108 - public void exportLeaveExcel(@Valid OALeaveExportReqVO exportReqVO,  
109 - HttpServletResponse response) throws IOException {  
110 - List<OALeaveDO> list = leaveService.getLeaveList(exportReqVO);  
111 - // 导出 Excel  
112 - List<OALeaveExcelVO> datas = OALeaveConvert.INSTANCE.convertList02(list);  
113 - ExcelUtils.write(response, "请假申请.xls", "数据", OALeaveExcelVO.class, datas);  
114 - }  
115 -  
116 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveBaseVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import java.util.*;  
5 -import io.swagger.annotations.*;  
6 -import javax.validation.constraints.*;  
7 -import org.springframework.format.annotation.DateTimeFormat;  
8 -  
9 -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;  
10 -  
11 -/**  
12 -* 请假申请 Base VO,提供给添加、修改、详细的子 VO 使用  
13 -* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成  
14 -*/  
15 -@Data  
16 -public class OALeaveBaseVO {  
17 -  
18 - @ApiModelProperty(value = "流程id")  
19 - private String processInstanceId;  
20 -  
21 - @ApiModelProperty(value = "状态", required = true)  
22 - private Integer status;  
23 -  
24 - @ApiModelProperty(value = "申请人id", required = true)  
25 - private String userId;  
26 -  
27 - @ApiModelProperty(value = "开始时间", required = true)  
28 - @NotNull(message = "开始时间不能为空")  
29 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
30 - private Date startTime;  
31 -  
32 - @ApiModelProperty(value = "结束时间", required = true)  
33 - @NotNull(message = "结束时间不能为空")  
34 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
35 - private Date endTime;  
36 -  
37 - @ApiModelProperty(value = "请假类型")  
38 - private String leaveType;  
39 -  
40 - @ApiModelProperty(value = "原因")  
41 - private String reason;  
42 -  
43 - @ApiModelProperty(value = "申请时间", required = true)  
44 - @NotNull(message = "申请时间不能为空")  
45 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
46 - private Date applyTime;  
47 -  
48 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveCreateReqVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import io.swagger.annotations.*;  
5 -  
6 -@ApiModel("请假申请创建 Request VO")  
7 -@Data  
8 -@EqualsAndHashCode(callSuper = true)  
9 -@ToString(callSuper = true)  
10 -public class OALeaveCreateReqVO extends OALeaveBaseVO {  
11 -  
12 - private String processKey;  
13 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveExcelVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import java.util.*;  
5 -import io.swagger.annotations.*;  
6 -  
7 -import com.alibaba.excel.annotation.ExcelProperty;  
8 -  
9 -/**  
10 - * 请假申请 Excel VO  
11 - *  
12 - * @author 芋艿  
13 - */  
14 -@Data  
15 -public class OALeaveExcelVO {  
16 -  
17 - @ExcelProperty("请假表单主键")  
18 - private Long id;  
19 -  
20 - @ExcelProperty("流程id")  
21 - private String processInstanceId;  
22 -  
23 - @ExcelProperty("状态")  
24 - private Integer status;  
25 -  
26 - @ExcelProperty("申请人id")  
27 - private String userId;  
28 -  
29 - @ExcelProperty("开始时间")  
30 - private Date startTime;  
31 -  
32 - @ExcelProperty("结束时间")  
33 - private Date endTime;  
34 -  
35 - @ExcelProperty("请假类型")  
36 - private String leaveType;  
37 -  
38 - @ExcelProperty("原因")  
39 - private String reason;  
40 -  
41 - @ExcelProperty("申请时间")  
42 - private Date applyTime;  
43 -  
44 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveExportReqVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import java.util.*;  
5 -import io.swagger.annotations.*;  
6 -import cn.iocoder.yudao.framework.common.pojo.PageParam;  
7 -import org.springframework.format.annotation.DateTimeFormat;  
8 -  
9 -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;  
10 -  
11 -@ApiModel(value = "请假申请 Excel 导出 Request VO", description = "参数和 OaLeavePageReqVO 是一致的")  
12 -@Data  
13 -public class OALeaveExportReqVO {  
14 -  
15 - @ApiModelProperty(value = "流程id")  
16 - private String processInstanceId;  
17 -  
18 - @ApiModelProperty(value = "状态")  
19 - private Integer status;  
20 -  
21 - @ApiModelProperty(value = "申请人id")  
22 - private String userId;  
23 -  
24 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
25 - @ApiModelProperty(value = "开始开始时间")  
26 - private Date beginStartTime;  
27 -  
28 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
29 - @ApiModelProperty(value = "结束开始时间")  
30 - private Date endStartTime;  
31 -  
32 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
33 - @ApiModelProperty(value = "开始结束时间")  
34 - private Date beginEndTime;  
35 -  
36 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
37 - @ApiModelProperty(value = "结束结束时间")  
38 - private Date endEndTime;  
39 -  
40 - @ApiModelProperty(value = "请假类型")  
41 - private String leaveType;  
42 -  
43 - @ApiModelProperty(value = "原因")  
44 - private String reason;  
45 -  
46 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
47 - @ApiModelProperty(value = "开始申请时间")  
48 - private Date beginApplyTime;  
49 -  
50 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
51 - @ApiModelProperty(value = "结束申请时间")  
52 - private Date endApplyTime;  
53 -  
54 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeavePageReqVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import java.util.*;  
5 -import io.swagger.annotations.*;  
6 -import cn.iocoder.yudao.framework.common.pojo.PageParam;  
7 -import org.springframework.format.annotation.DateTimeFormat;  
8 -  
9 -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;  
10 -  
11 -@ApiModel("请假申请分页 Request VO")  
12 -@Data  
13 -@EqualsAndHashCode(callSuper = true)  
14 -@ToString(callSuper = true)  
15 -public class OALeavePageReqVO extends PageParam {  
16 -  
17 - @ApiModelProperty(value = "流程id")  
18 - private String processInstanceId;  
19 -  
20 - @ApiModelProperty(value = "状态")  
21 - private Integer status;  
22 -  
23 - @ApiModelProperty(value = "申请人id")  
24 - private String userId;  
25 -  
26 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
27 - @ApiModelProperty(value = "开始开始时间")  
28 - private Date beginStartTime;  
29 -  
30 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
31 - @ApiModelProperty(value = "结束开始时间")  
32 - private Date endStartTime;  
33 -  
34 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
35 - @ApiModelProperty(value = "开始结束时间")  
36 - private Date beginEndTime;  
37 -  
38 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
39 - @ApiModelProperty(value = "结束结束时间")  
40 - private Date endEndTime;  
41 -  
42 - @ApiModelProperty(value = "请假类型")  
43 - private String leaveType;  
44 -  
45 - @ApiModelProperty(value = "原因")  
46 - private String reason;  
47 -  
48 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
49 - @ApiModelProperty(value = "开始申请时间")  
50 - private Date beginApplyTime;  
51 -  
52 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
53 - @ApiModelProperty(value = "结束申请时间")  
54 - private Date endApplyTime;  
55 -  
56 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveRespVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import lombok.*;  
4 -import io.swagger.annotations.*;  
5 -  
6 -@ApiModel("请假申请 Response VO")  
7 -@Data  
8 -@EqualsAndHashCode(callSuper = true)  
9 -@ToString(callSuper = true)  
10 -public class OALeaveRespVO extends OALeaveBaseVO {  
11 -  
12 - @ApiModelProperty(value = "请假表单主键", required = true)  
13 - private Long id;  
14 -  
15 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/controller/oa/vo/OaLeaveUpdateReqVO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo;  
2 -  
3 -import io.swagger.annotations.ApiModel;  
4 -import io.swagger.annotations.ApiModelProperty;  
5 -import lombok.Data;  
6 -import lombok.EqualsAndHashCode;  
7 -import lombok.ToString;  
8 -  
9 -import javax.validation.constraints.NotNull;  
10 -import java.util.Map;  
11 -  
12 -@ApiModel("请假申请更新 Request VO")  
13 -@Data  
14 -@EqualsAndHashCode(callSuper = true)  
15 -@ToString(callSuper = true)  
16 -public class OALeaveUpdateReqVO extends OALeaveBaseVO {  
17 -  
18 - @ApiModelProperty(value = "请假表单主键", required = true)  
19 - @NotNull(message = "请假表单主键不能为空")  
20 - private Long id;  
21 -  
22 - // TODO @json:swagger 和 validator 的注解要加哈。  
23 -  
24 - private String taskId;  
25 -  
26 - private String comment;  
27 -  
28 - private Map<String,Object> variables;  
29 -  
30 - // TODO @芋艿:variables 的作用是啥。  
31 -  
32 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/convert/oa/OaLeaveConvert.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.convert.oa;  
2 -  
3 -import java.util.*;  
4 -  
5 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;  
6 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
7 -  
8 -import org.mapstruct.Mapper;  
9 -import org.mapstruct.factory.Mappers;  
10 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.*;  
11 -  
12 -/**  
13 - * 请假申请 Convert  
14 - *  
15 - * @author 芋艿  
16 - */  
17 -@Mapper  
18 -public interface OALeaveConvert {  
19 -  
20 - OALeaveConvert INSTANCE = Mappers.getMapper(OALeaveConvert.class);  
21 -  
22 - OALeaveDO convert(OALeaveCreateReqVO bean);  
23 -  
24 - OALeaveDO convert(OALeaveUpdateReqVO bean);  
25 -  
26 - OALeaveRespVO convert(OALeaveDO bean);  
27 -  
28 - List<OALeaveRespVO> convertList(List<OALeaveDO> list);  
29 -  
30 - PageResult<OALeaveRespVO> convertPage(PageResult<OALeaveDO> page);  
31 -  
32 - List<OALeaveExcelVO> convertList02(List<OALeaveDO> list);  
33 -  
34 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/dal/dataobject/oa/OaLeaveDO.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa;  
2 -  
3 -import lombok.*;  
4 -import java.util.*;  
5 -import com.baomidou.mybatisplus.annotation.*;  
6 -import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;  
7 -  
8 -/**  
9 - * 请假申请 DO  
10 - *  
11 - * @author 芋艿  
12 - */  
13 -@TableName("oa_leave")  
14 -@Data  
15 -@EqualsAndHashCode(callSuper = true)  
16 -@ToString(callSuper = true)  
17 -@Builder  
18 -@NoArgsConstructor  
19 -@AllArgsConstructor  
20 -public class OALeaveDO extends BaseDO {  
21 -  
22 - /**  
23 - * 请假表单主键  
24 - */  
25 - @TableId  
26 - private Long id;  
27 - /**  
28 - * 流程id  
29 - */  
30 - private String processInstanceId;  
31 - /**  
32 - * 状态  
33 - */  
34 - private Integer status;  
35 - /**  
36 - * 申请人id  
37 - */  
38 - private String userId;  
39 - /**  
40 - * 开始时间  
41 - */  
42 - private Date startTime;  
43 - /**  
44 - * 结束时间  
45 - */  
46 - private Date endTime;  
47 - /**  
48 - * 请假类型  
49 - */  
50 - private String leaveType;  
51 - /**  
52 - * 原因  
53 - */  
54 - private String reason;  
55 - /**  
56 - * 申请时间  
57 - */  
58 - private Date applyTime;  
59 -  
60 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/dal/mysql/oa/OaLeaveMapper.java renamed to yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/dal/mysql/oa/OALeaveMapper.java
@@ -15,7 +15,7 @@ import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.*; @@ -15,7 +15,7 @@ import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.*;
15 * @author 芋艿 15 * @author 芋艿
16 */ 16 */
17 @Mapper 17 @Mapper
18 -public interface OaLeaveMapper extends BaseMapperX<OALeaveDO> { 18 +public interface OALeaveMapper extends BaseMapperX<OALeaveDO> {
19 19
20 default PageResult<OALeaveDO> selectPage(OALeavePageReqVO reqVO) { 20 default PageResult<OALeaveDO> selectPage(OALeavePageReqVO reqVO) {
21 return selectPage(reqVO, new QueryWrapperX<OALeaveDO>() 21 return selectPage(reqVO, new QueryWrapperX<OALeaveDO>()
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/OaLeaveService.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.service.oa;  
2 -  
3 -  
4 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveCreateReqVO;  
5 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveUpdateReqVO;  
6 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveExportReqVO;  
7 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeavePageReqVO;  
8 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;  
9 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
10 -  
11 -import javax.validation.Valid;  
12 -import java.util.Collection;  
13 -import java.util.List;  
14 -  
15 -/**  
16 - * 请假申请 Service 接口  
17 - *  
18 - * @author 芋艿  
19 - */  
20 -public interface OALeaveService {  
21 -  
22 - /**  
23 - * 创建请假申请  
24 - *  
25 - * @param createReqVO 创建信息  
26 - * @return 编号  
27 - */  
28 - Long createLeave(@Valid OALeaveCreateReqVO createReqVO);  
29 -  
30 - /**  
31 - * 更新请假申请  
32 - *  
33 - * @param updateReqVO 更新信息  
34 - */  
35 - void updateLeave(@Valid OALeaveUpdateReqVO updateReqVO);  
36 -  
37 - /**  
38 - * 删除请假申请  
39 - *  
40 - * @param id 编号  
41 - */  
42 - void deleteLeave(Long id);  
43 -  
44 - /**  
45 - * 获得请假申请  
46 - *  
47 - * @param id 编号  
48 - * @return 请假申请  
49 - */  
50 - OALeaveDO getLeave(Long id);  
51 -  
52 - /**  
53 - * 获得请假申请列表  
54 - *  
55 - * @param ids 编号  
56 - * @return 请假申请列表  
57 - */  
58 - List<OALeaveDO> getLeaveList(Collection<Long> ids);  
59 -  
60 - /**  
61 - * 获得请假申请分页  
62 - *  
63 - * @param pageReqVO 分页查询  
64 - * @return 请假申请分页  
65 - */  
66 - PageResult<OALeaveDO> getLeavePage(OALeavePageReqVO pageReqVO);  
67 -  
68 - /**  
69 - * 获得请假申请列表, 用于 Excel 导出  
70 - *  
71 - * @param exportReqVO 查询条件  
72 - * @return 请假申请列表  
73 - */  
74 - List<OALeaveDO> getLeaveList(OALeaveExportReqVO exportReqVO);  
75 -  
76 -}  
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/ReportBackEndProcessor.java
1 package cn.iocoder.yudao.adminserver.modules.activiti.service.oa; 1 package cn.iocoder.yudao.adminserver.modules.activiti.service.oa;
2 2
3 import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO; 3 import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;
4 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.mysql.oa.OaLeaveMapper; 4 +import cn.iocoder.yudao.adminserver.modules.activiti.dal.mysql.oa.OALeaveMapper;
5 import org.activiti.engine.delegate.DelegateExecution; 5 import org.activiti.engine.delegate.DelegateExecution;
6 import org.activiti.engine.delegate.ExecutionListener; 6 import org.activiti.engine.delegate.ExecutionListener;
7 import org.springframework.stereotype.Component; 7 import org.springframework.stereotype.Component;
@@ -14,7 +14,7 @@ import javax.annotation.Resource; @@ -14,7 +14,7 @@ import javax.annotation.Resource;
14 public class ReportBackEndProcessor implements ExecutionListener { 14 public class ReportBackEndProcessor implements ExecutionListener {
15 15
16 @Resource 16 @Resource
17 - private OaLeaveMapper leaveMapper; 17 + private OALeaveMapper leaveMapper;
18 18
19 @Override 19 @Override
20 @Transactional(rollbackFor = Exception.class) 20 @Transactional(rollbackFor = Exception.class)
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/impl/OALeaveServiceImpl.java
@@ -6,7 +6,7 @@ import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveExp @@ -6,7 +6,7 @@ import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveExp
6 import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeavePageReqVO; 6 import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeavePageReqVO;
7 import cn.iocoder.yudao.adminserver.modules.activiti.convert.oa.OALeaveConvert; 7 import cn.iocoder.yudao.adminserver.modules.activiti.convert.oa.OALeaveConvert;
8 import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO; 8 import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;
9 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.mysql.oa.OaLeaveMapper; 9 +import cn.iocoder.yudao.adminserver.modules.activiti.dal.mysql.oa.OALeaveMapper;
10 import cn.iocoder.yudao.adminserver.modules.activiti.service.oa.OALeaveService; 10 import cn.iocoder.yudao.adminserver.modules.activiti.service.oa.OALeaveService;
11 import cn.iocoder.yudao.framework.common.pojo.PageResult; 11 import cn.iocoder.yudao.framework.common.pojo.PageResult;
12 import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; 12 import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
@@ -35,7 +35,7 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU @@ -35,7 +35,7 @@ import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionU
35 public class OALeaveServiceImpl implements OALeaveService { 35 public class OALeaveServiceImpl implements OALeaveService {
36 36
37 @Resource 37 @Resource
38 - private OaLeaveMapper leaveMapper; 38 + private OALeaveMapper leaveMapper;
39 39
40 @Resource 40 @Resource
41 private RuntimeService runtimeService; 41 private RuntimeService runtimeService;
@@ -52,6 +52,7 @@ public class OALeaveServiceImpl implements OALeaveService { @@ -52,6 +52,7 @@ public class OALeaveServiceImpl implements OALeaveService {
52 // 插入 OA 请假单 52 // 插入 OA 请假单
53 OALeaveDO leave = OALeaveConvert.INSTANCE.convert(createReqVO); 53 OALeaveDO leave = OALeaveConvert.INSTANCE.convert(createReqVO);
54 leave.setStatus(1); 54 leave.setStatus(1);
  55 + // TODO @jason:应该是存储 userId??
55 leave.setUserId(SecurityFrameworkUtils.getLoginUser().getUsername()); 56 leave.setUserId(SecurityFrameworkUtils.getLoginUser().getUsername());
56 leaveMapper.insert(leave); 57 leaveMapper.insert(leave);
57 58
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/activiti/service/oa/impl/OaLeaveServiceImpl.java deleted
1 -package cn.iocoder.yudao.adminserver.modules.activiti.service.oa.impl;  
2 -  
3 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveCreateReqVO;  
4 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveUpdateReqVO;  
5 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeaveExportReqVO;  
6 -import cn.iocoder.yudao.adminserver.modules.activiti.controller.oa.vo.OALeavePageReqVO;  
7 -import cn.iocoder.yudao.adminserver.modules.activiti.convert.oa.OALeaveConvert;  
8 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.dataobject.oa.OALeaveDO;  
9 -import cn.iocoder.yudao.adminserver.modules.activiti.dal.mysql.oa.OaLeaveMapper;  
10 -import cn.iocoder.yudao.adminserver.modules.activiti.service.oa.OALeaveService;  
11 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
12 -import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;  
13 -import org.activiti.api.task.model.Task;  
14 -import org.activiti.api.task.model.builders.TaskPayloadBuilder;  
15 -import org.activiti.api.task.runtime.TaskRuntime;  
16 -import org.activiti.engine.RuntimeService;  
17 -import org.activiti.engine.runtime.ProcessInstance;  
18 -import org.springframework.stereotype.Service;  
19 -import org.springframework.transaction.annotation.Transactional;  
20 -import org.springframework.validation.annotation.Validated;  
21 -  
22 -import javax.annotation.Resource;  
23 -import java.util.*;  
24 -  
25 -import static cn.iocoder.yudao.adminserver.modules.activiti.enums.OAErrorCodeConstants.LEAVE_NOT_EXISTS;  
26 -import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;  
27 -  
28 -/**  
29 - * 请假申请 Service 实现类  
30 - *  
31 - * @author 芋艿  
32 - */  
33 -@Service  
34 -@Validated  
35 -public class OALeaveServiceImpl implements OALeaveService {  
36 -  
37 - @Resource  
38 - private OaLeaveMapper leaveMapper;  
39 -  
40 - @Resource  
41 - private RuntimeService runtimeService;  
42 -  
43 - @Resource  
44 - private org.activiti.engine.TaskService activitiTaskService;  
45 -  
46 - @Resource  
47 - private TaskRuntime taskRuntime;  
48 -  
49 - @Override  
50 - @Transactional(rollbackFor = Exception.class)  
51 - public Long createLeave(OALeaveCreateReqVO createReqVO) {  
52 - // 插入 OA 请假单  
53 - OALeaveDO leave = OALeaveConvert.INSTANCE.convert(createReqVO);  
54 - leave.setStatus(1);  
55 - // TODO @jason:应该是存储 userId??  
56 - leave.setUserId(SecurityFrameworkUtils.getLoginUser().getUsername());  
57 - leaveMapper.insert(leave);  
58 -  
59 - // 创建工作流  
60 - Map<String, Object> variables = new HashMap<>();  
61 - // 如何得到部门领导人,暂时写死  
62 - variables.put("deptLeader", "admin"); // TODO @芋艿:需要部门的负责人  
63 - Long id = leave.getId();  
64 - String businessKey = String.valueOf(id);  
65 - ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(createReqVO.getProcessKey(), businessKey, variables);  
66 - String processInstanceId = processInstance.getProcessInstanceId();  
67 -  
68 - // 将工作流的编号,更新到 OA 请假单中  
69 - OALeaveDO updateDo = new OALeaveDO();  
70 - updateDo.setProcessInstanceId(processInstanceId);  
71 - updateDo.setId(id);  
72 - leaveMapper.updateById(updateDo);  
73 - return id;  
74 - }  
75 -  
76 - @Override  
77 - @Transactional(rollbackFor = Exception.class)  
78 - public void updateLeave(OALeaveUpdateReqVO updateReqVO) {  
79 - // 校验存在  
80 - this.validateLeaveExists(updateReqVO.getId());  
81 -  
82 - final Task task = taskRuntime.task(updateReqVO.getTaskId());  
83 - activitiTaskService.addComment(task.getId(), task.getProcessInstanceId(), updateReqVO.getComment());  
84 - Map<String, Object> variables = updateReqVO.getVariables();  
85 -  
86 - //如何得到部门领导人, 暂时写死  
87 - variables.put("deptLeader", "admin");  
88 - taskRuntime.complete(TaskPayloadBuilder.complete().withTaskId(task.getId())  
89 - .withVariables(variables)  
90 - .build());  
91 -  
92 - // TOTO @芋道源码 貌似 IDEA 会自动加上final(不需要加 final 哈。虽然是不变,但是代码比较少这么去写)  
93 - Object reApply = variables.get("reApply");  
94 - if(Objects.equals(reApply, true)){  
95 - // 更新 表单  
96 - OALeaveDO updateObj = OALeaveConvert.INSTANCE.convert(updateReqVO);  
97 - leaveMapper.updateById(updateObj);  
98 - }  
99 - }  
100 -  
101 - @Override  
102 - public void deleteLeave(Long id) {  
103 - // 校验存在  
104 - this.validateLeaveExists(id);  
105 - // 删除  
106 - leaveMapper.deleteById(id);  
107 - // TODO @jason:需要调用 runtimeService 的 delete 方法,删除???  
108 - // TOTO @芋道源码 目前页面暂时没有实现基于业务表单的删除, 该代码自动生成的。  
109 - // TODO @芋道源码 我理解提交流程后,是不允许删除的? , 只能在流程处理中作废流程  
110 - }  
111 -  
112 - private void validateLeaveExists(Long id) {  
113 - if (leaveMapper.selectById(id) == null) {  
114 - throw exception(LEAVE_NOT_EXISTS);  
115 - }  
116 - }  
117 -  
118 - @Override  
119 - public OALeaveDO getLeave(Long id) {  
120 - return leaveMapper.selectById(id);  
121 - }  
122 -  
123 - @Override  
124 - public List<OALeaveDO> getLeaveList(Collection<Long> ids) {  
125 - return leaveMapper.selectBatchIds(ids);  
126 - }  
127 -  
128 - @Override  
129 - public PageResult<OALeaveDO> getLeavePage(OALeavePageReqVO pageReqVO) {  
130 - return leaveMapper.selectPage(pageReqVO);  
131 - }  
132 -  
133 - @Override  
134 - public List<OALeaveDO> getLeaveList(OALeaveExportReqVO exportReqVO) {  
135 - return leaveMapper.selectList(exportReqVO);  
136 - }  
137 -  
138 -}