diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdJdPermissionApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdJdPermissionApplyRest.java new file mode 100644 index 0000000000..c94c1f3c5d --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdJdPermissionApplyRest.java @@ -0,0 +1,85 @@ +package com.yxt.anrui.oa.api; + +import com.yxt.anrui.oa.biz.adjdpermissionapply.AdJdPermissionApplyDto; +import com.yxt.anrui.oa.biz.adjdpermissionapply.AdJdPermissionApplyService; +import com.yxt.anrui.oa.biz.adjdpermissionapply.AdJdPermissionApplyVo; +import com.yxt.anrui.oa.biz.hrhireapply.HrHireApplyVo; +import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; +import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; +import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; + +/** + * @author wangpengfei + * @date 2025/1/22 17:12 + */ +@Api(tags = "金蝶账号权限申请") +@RestController +@RequestMapping("v1/adjdpermissionapply") +public class AdJdPermissionApplyRest { + + @Autowired + AdJdPermissionApplyService adJdPermissionApplyService; + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean saveOrUpdate(@RequestBody AdJdPermissionApplyDto dto) { + return adJdPermissionApplyService.saveOrUpdateDto(dto); + } + @ApiOperation("初始化(新增或修改)") + @GetMapping({"/getInit", "/getInit/{sid}"}) + public ResultBean getInit( + @PathVariable(value = "sid", required = false) String sid, + @RequestParam(value = "userSid", required = false) String userSid, + @RequestParam(value = "orgPath", required = false) String orgPath) { + ResultBean rb = ResultBean.fireFail(); + if (sid == null || sid.isEmpty()) { + // 执行新增初始化 + if (userSid == null || orgPath == null) { + return rb.setMsg("userSid和orgPath不能为空"); + } + return adJdPermissionApplyService.getSaveInit(userSid, orgPath); + } else { + // 执行修改初始化 + return adJdPermissionApplyService.getUpdateInit(sid); + } + } + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + AdJdPermissionApplyVo vo = adJdPermissionApplyService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + @ApiOperation("提交审批流程") + @PostMapping("/submit") + public ResultBean submit(@RequestBody AdJdPermissionApplyDto dto) { + return adJdPermissionApplyService.submit(dto); + } + + @ApiOperation(value = "驳回任务") + @PutMapping(value = "/reject") + public ResultBean reject(@Valid @RequestBody TaskDto dto) { + return adJdPermissionApplyService.reject(dto); + } + + @ApiOperation(value = "办理(同意)") + @PutMapping("/complete") + public ResultBean complete(@Valid @RequestBody CompleteDto dto) { + return adJdPermissionApplyService.complete(dto); + } + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap NodeQuery query) { + return adJdPermissionApplyService.getFlowOperateTitle(query); + } +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPermissionApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPermissionApplyRest.java deleted file mode 100644 index c5bc176d54..0000000000 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPermissionApplyRest.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.yxt.anrui.oa.api; - -import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyVo; -import com.yxt.anrui.oa.biz.adpermissionapply.AdPermissionApply; -import com.yxt.anrui.oa.biz.adpermissionapply.AdPermissionApplyDto; -import com.yxt.anrui.oa.biz.adpermissionapply.AdPermissionApplyService; -import com.yxt.anrui.oa.biz.adpermissionapply.AdPermissionApplyVo; -import com.yxt.anrui.oa.biz.hrhireapply.HrHireApplyDto; -import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; -import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; -import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; -import com.yxt.common.core.result.ResultBean; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cloud.openfeign.SpringQueryMap; -import org.springframework.web.bind.annotation.*; - -import javax.validation.Valid; - -/** - * @author wangpengfei - * @date 2025/1/22 17:12 - */ -@Api(tags = "金蝶账号权限申请") -@RestController -@RequestMapping("v1/adpermissionapply") -public class AdPermissionApplyRest { - - @Autowired - AdPermissionApplyService adPermissionApplyService; - - @ApiOperation("新增或修改") - @PostMapping("/save") - public ResultBean saveOrUpdate(@RequestBody AdPermissionApplyDto dto) { - return adPermissionApplyService.saveOrUpdateDto(dto); - } - @ApiOperation("根据SID获取一条记录") - @GetMapping("/fetchDetailsBySid/{sid}") - public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid) { - ResultBean rb = ResultBean.fireFail(); - AdPermissionApplyVo vo = adPermissionApplyService.fetchDetailsVoBySid(sid); - return rb.success().setData(vo); - } - - @ApiOperation("提交审批流程") - @PostMapping("/submit") - public ResultBean submit(@RequestBody AdPermissionApplyDto dto) { - return adPermissionApplyService.submit(dto); - } - - @ApiOperation(value = "驳回任务") - @PutMapping(value = "/reject") - public ResultBean reject(@Valid @RequestBody TaskDto dto) { - return adPermissionApplyService.reject(dto); - } - - @ApiOperation(value = "办理(同意)") - @PutMapping("/complete") - public ResultBean complete(@Valid @RequestBody CompleteDto dto) { - return adPermissionApplyService.complete(dto); - } - @ApiOperation("获取流程操作标题") - @GetMapping("/getFlowOperateTitle") - @ResponseBody - ResultBean getFlowOperateTitle(@SpringQueryMap NodeQuery query) { - return adPermissionApplyService.getFlowOperateTitle(query); - } -} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPlatformPermissionApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPlatformPermissionApplyRest.java new file mode 100644 index 0000000000..3104119253 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPlatformPermissionApplyRest.java @@ -0,0 +1,85 @@ +package com.yxt.anrui.oa.api; + + +import com.yxt.anrui.oa.biz.adjdpermissionapply.AdJdPermissionApplyVo; +import com.yxt.anrui.oa.biz.adplatformpermissionapply.AdPlatformPermissionApplyDto; +import com.yxt.anrui.oa.biz.adplatformpermissionapply.AdPlatformPermissionApplyService; +import com.yxt.anrui.oa.biz.adplatformpermissionapply.AdPlatformPermissionApplyVo; +import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; +import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; +import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; + +/** + * @author wangpengfei + * @date 2025/1/24 17:12 + */ +@Api(tags = "信息化平台权限和数据调整申请") +@RestController +@RequestMapping("v1/adplatformpermissionapply") +public class AdPlatformPermissionApplyRest { + + @Autowired + AdPlatformPermissionApplyService adPlatformPermissionApplyService; + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean saveOrUpdate(@RequestBody AdPlatformPermissionApplyDto dto) { + return adPlatformPermissionApplyService.saveOrUpdateDto(dto); + } + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + AdPlatformPermissionApplyVo vo = adPlatformPermissionApplyService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + @ApiOperation("初始化(新增或修改)") + @GetMapping({"/getInit", "/getInit/{sid}"}) + public ResultBean getInit( + @PathVariable(value = "sid", required = false) String sid, + @RequestParam(value = "userSid", required = false) String userSid, + @RequestParam(value = "orgPath", required = false) String orgPath) { + ResultBean rb = ResultBean.fireFail(); + if (sid == null || sid.isEmpty()) { + // 执行新增初始化 + if (userSid == null || orgPath == null) { + return rb.setMsg("userSid和orgPath不能为空"); + } + return adPlatformPermissionApplyService.getSaveInit(userSid, orgPath); + } else { + // 执行修改初始化 + return adPlatformPermissionApplyService.getUpdateInit(sid); + } + } + @ApiOperation("提交审批流程") + @PostMapping("/submit") + public ResultBean submit(@RequestBody AdPlatformPermissionApplyDto dto) { + return adPlatformPermissionApplyService.submit(dto); + } + + @ApiOperation(value = "驳回任务") + @PutMapping(value = "/reject") + public ResultBean reject(@Valid @RequestBody TaskDto dto) { + return adPlatformPermissionApplyService.reject(dto); + } + + @ApiOperation(value = "办理(同意)") + @PutMapping("/complete") + public ResultBean complete(@Valid @RequestBody CompleteDto dto) { + return adPlatformPermissionApplyService.complete(dto); + } + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap NodeQuery query) { + return adPlatformPermissionApplyService.getFlowOperateTitle(query); + } +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApply.java similarity index 82% rename from yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApply.java rename to yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApply.java index a09682e650..5327a95401 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApply.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApply.java @@ -1,4 +1,4 @@ -package com.yxt.anrui.oa.biz.adpermissionapply; +package com.yxt.anrui.oa.biz.adjdpermissionapply; import com.baomidou.mybatisplus.annotation.TableName; import com.yxt.common.core.domain.BaseEntity; @@ -12,8 +12,8 @@ import lombok.Data; */ @Data @ApiModel(value = "金蝶账号权限申请", description = "金蝶账号权限申请") -@TableName("ad_permission_apply") -public class AdPermissionApply extends BaseEntity { +@TableName("ad_jd_permission_apply") +public class AdJdPermissionApply extends BaseEntity { @ApiModelProperty("申请权限类别Key") private String permissionTypeKey; @ApiModelProperty("申请权限类别") @@ -22,4 +22,5 @@ public class AdPermissionApply extends BaseEntity { private String permissionDetails; @ApiModelProperty("基础表单sid") private String formSid; + } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyDto.java similarity index 89% rename from yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyDto.java rename to yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyDto.java index a75ad23a7f..4106b5e4bd 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyDto.java @@ -1,4 +1,4 @@ -package com.yxt.anrui.oa.biz.adpermissionapply; +package com.yxt.anrui.oa.biz.adjdpermissionapply; import com.yxt.anrui.oa.biz.oaform.OaFormDto; import io.swagger.annotations.ApiModel; @@ -14,7 +14,7 @@ import java.util.List; */ @Data @ApiModel(value = "金蝶账号权限申请 数据传输对象", description = "金蝶账号权限申请 数据传输对象") -public class AdPermissionApplyDto extends OaFormDto { +public class AdJdPermissionApplyDto extends OaFormDto { private String sid; @ApiModelProperty("申请权限类别Key") private String permissionTypeKey; diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.java new file mode 100644 index 0000000000..7aa9c7a83a --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.java @@ -0,0 +1,14 @@ +package com.yxt.anrui.oa.biz.adjdpermissionapply; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author wangpengfei + * @date 2025/1/23 9:18 + */ +@Mapper +public interface AdJdPermissionApplyMapper extends BaseMapper { + + AdJdPermissionApplyVo fetchDetailsVoBySid(String sid); +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.xml similarity index 67% rename from yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.xml rename to yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.xml index d0be483b95..e6ce7faade 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.xml +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyMapper.xml @@ -1,10 +1,10 @@ - + - + SELECT * from ad_Jd_permission_apply ${ew.sqlSegment} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyQuery.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyQuery.java similarity index 72% rename from yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyQuery.java rename to yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyQuery.java index 79ebc3431e..8d2c938d75 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyQuery.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyQuery.java @@ -1,4 +1,4 @@ -package com.yxt.anrui.oa.biz.adpermissionapply; +package com.yxt.anrui.oa.biz.adjdpermissionapply; import com.yxt.common.core.query.Query; import io.swagger.annotations.ApiModel; @@ -10,5 +10,5 @@ import lombok.Data; */ @Data @ApiModel(value = "金蝶账号权限申请 查询条件", description = "金蝶账号权限申请 查询条件") -public class AdPermissionApplyQuery implements Query { +public class AdJdPermissionApplyQuery implements Query { } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyService.java similarity index 71% rename from yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyService.java rename to yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyService.java index ff8d9b851d..4eb8b36f98 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adjdpermissionapply/AdJdPermissionApplyService.java @@ -1,18 +1,14 @@ -package com.yxt.anrui.oa.biz.adpermissionapply; +package com.yxt.anrui.oa.biz.adjdpermissionapply; import cn.hutool.core.bean.BeanUtil; -import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyVo; -import com.yxt.anrui.oa.biz.adexpatriatesdetail.AdExpatriatesDetailVo; -import com.yxt.anrui.oa.biz.adfixedassetledger.AdFixedAssetLedger; -import com.yxt.anrui.oa.biz.adfixedassetledger.AdFixedAssetLedgerMapper; import com.yxt.anrui.oa.biz.hrhireapply.HrHireApply; -import com.yxt.anrui.oa.biz.hrhireapply.HrHireApplyDto; -import com.yxt.anrui.oa.biz.hrhiredetails.HrHireDetailsDto; +import com.yxt.anrui.oa.biz.hrhireapply.HrHireApplyVo; +import com.yxt.anrui.oa.biz.hrhiredetails.HrHireDetailsVo; import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.FormCommon; import com.yxt.anrui.oa.biz.oaform.OaForm; import com.yxt.anrui.oa.biz.oaform.OaFormRuleEnum; import com.yxt.anrui.oa.biz.oaform.OaFormService; -import com.yxt.anrui.oa.biz.oaform.OaFormUrlEnum; import com.yxt.anrui.oa.biz.oaform.flowable.*; import com.yxt.anrui.oa.feign.file.OaFileEnum; import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; @@ -34,7 +30,7 @@ import java.util.Map; * @date 2025/1/23 9:17 */ @Service -public class AdPermissionApplyService extends MybatisBaseService { +public class AdJdPermissionApplyService extends MybatisBaseService { @Autowired OaFormService oaFormService; @Autowired @@ -42,14 +38,14 @@ public class AdPermissionApplyService extends MybatisBaseService saveOrUpdateDto(AdPermissionApplyDto dto) { + public ResultBean saveOrUpdateDto(AdJdPermissionApplyDto dto) { ResultBean rb = ResultBean.fireFail(); String sid = dto.getSid(); List files = dto.getFiles(); List appes = dto.getAppes(); if (StringUtils.isBlank(sid)) { // 新建操作 - AdPermissionApply entity = new AdPermissionApply(); + AdJdPermissionApply entity = new AdJdPermissionApply(); BeanUtil.copyProperties(dto, entity, "sid"); dto.setBillNo("JDZHQX"); dto.setSid(entity.getSid()); @@ -64,7 +60,7 @@ public class AdPermissionApplyService extends MybatisBaseService getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdJdPermissionApplyVo adJdPermissionApplyVo = new AdJdPermissionApplyVo(); + adJdPermissionApplyVo.setCreateBySid(userSid); + adJdPermissionApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adJdPermissionApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdJdPermissionApplyVo adJdPermissionApplyVo = new AdJdPermissionApplyVo(); + AdJdPermissionApply adJdPermissionApply = fetchBySid(sid); + if (adJdPermissionApply == null) { + return rb.setMsg("该申请不存在"); + } +// hrHireApplyVo.setTestPage(hrHireApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adJdPermissionApplyVo.setTaskId(oaForm.getTaskId()); + adJdPermissionApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adJdPermissionApplyVo.setOrgSidPath(orgSidPath); + adJdPermissionApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adJdPermissionApply, adJdPermissionApplyVo); +// FormCommon isFinanceObj = FormCommon.of(adJdPermissionApply.getIsFinanceKey(), adJdPermissionApply.getIsFinanceValue()); +// adJdPermissionApplyVo.setIsFinanceObj(isFinanceObj); + + FormCommon deptObj = FormCommon.of(adJdPermissionApply.getPermissionTypeKey(), adJdPermissionApply.getPermissionTypeValue()); + adJdPermissionApplyVo.setPermissionObj(deptObj); + List files = oaAppendixService.selectByLinkSid(sid); + adJdPermissionApplyVo.setFiles(files); + adJdPermissionApplyVo.setSid(sid); + return rb.success().setData(adJdPermissionApplyVo); + } // 保存文件 private void saveFiles(String sid, List files, String attachType, String fileType) { files.removeAll(Collections.singleton(null)); oaAppendixService.saveFile(sid, files, attachType, fileType); } - public AdPermissionApplyVo fetchDetailsVoBySid(String sid) { - AdPermissionApplyVo vo = baseMapper.fetchDetailsVoBySid(sid); + public AdJdPermissionApplyVo fetchDetailsVoBySid(String sid) { + AdJdPermissionApplyVo vo = baseMapper.fetchDetailsVoBySid(sid); List files = oaAppendixService.selectByLinkSid(sid); vo.setFiles(files); return vo; @@ -90,7 +121,7 @@ public class AdPermissionApplyService extends MybatisBaseService stringResultBean = saveOrUpdateDto(dto); if (!stringResultBean.getSuccess()) { @@ -193,11 +224,11 @@ public class AdPermissionApplyService extends MybatisBaseService files = new ArrayList<>(); @ApiModelProperty("附件") private List appes = new ArrayList<>(); + private String orgSidPath; + private String createBySid; + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + private FormCommon permissionObj; } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.java deleted file mode 100644 index 90ddedaa78..0000000000 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpermissionapply/AdPermissionApplyMapper.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.yxt.anrui.oa.biz.adpermissionapply; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyVo; -import org.apache.ibatis.annotations.Mapper; - -/** - * @author wangpengfei - * @date 2025/1/23 9:18 - */ -@Mapper -public interface AdPermissionApplyMapper extends BaseMapper { - - AdPermissionApplyVo fetchDetailsVoBySid(String sid); -} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApply.java new file mode 100644 index 0000000000..a3f7e226b4 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApply.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author wangpengfei + * @date 2025/1/24 9:18 + */ +@Data +@ApiModel(value = "信息化平台权限和数据调整申请", description = "信息化平台权限和数据调整申请") +@TableName("ad_platform_permission_apply") +public class AdPlatformPermissionApply extends BaseEntity { + @ApiModelProperty("申请权限类别Key") + private String permissionTypeKey; + @ApiModelProperty("申请权限类别") + private String permissionTypeValue; + @ApiModelProperty("权限详情") + private String permissionDetails; + @ApiModelProperty("基础表单sid") + private String formSid; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyDto.java new file mode 100644 index 0000000000..7e48b8ef14 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyDto.java @@ -0,0 +1,31 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import com.yxt.anrui.oa.biz.oaform.OaFormDto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author wangpengfei + * @date 2025/1/24 9:18 + */ +@Data +@ApiModel(value = "信息化平台权限和数据调整申请 数据传输对象", description = "信息化平台权限和数据调整申请 数据传输对象") +public class AdPlatformPermissionApplyDto extends OaFormDto { + private String sid; + @ApiModelProperty("申请权限类别Key") + private String permissionTypeKey; + @ApiModelProperty("申请权限类别") + private String permissionTypeValue; + @ApiModelProperty("权限详情") + private String permissionDetails; + @ApiModelProperty("基础表单sid") + private String formSid; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("文件") + private List appes = new ArrayList<>(); +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.java new file mode 100644 index 0000000000..3373a02c8d --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.java @@ -0,0 +1,14 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author wangpengfei + * @date 2025/1/24 9:18 + */ +@Mapper +public interface AdPlatformPermissionApplyMapper extends BaseMapper { + + AdPlatformPermissionApplyVo fetchDetailsVoBySid(String sid); +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.xml new file mode 100644 index 0000000000..55460b149c --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyQuery.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyQuery.java new file mode 100644 index 0000000000..9aeccbad61 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyQuery.java @@ -0,0 +1,14 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +/** + * @author wangpengfei + * @date 2025/1/24 9:18 + */ +@Data +@ApiModel(value = "信息化平台权限和数据调整申请 查询条件", description = "信息化平台权限和数据调整申请 查询条件") +public class AdPlatformPermissionApplyQuery implements Query { +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyService.java new file mode 100644 index 0000000000..dabb46309e --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyService.java @@ -0,0 +1,232 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.anrui.oa.biz.oaform.OaForm; +import com.yxt.anrui.oa.biz.oaform.OaFormRuleEnum; +import com.yxt.anrui.oa.biz.oaform.OaFormService; +import com.yxt.anrui.oa.biz.oaform.flowable.*; +import com.yxt.anrui.oa.feign.file.OaFileEnum; +import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author wangpengfei + * @date 2025/1/24 9:17 + */ +@Service +public class AdPlatformPermissionApplyService extends MybatisBaseService { + @Autowired + OaFormService oaFormService; + @Autowired + SysOrganizationFeign sysOrganizationFeign; + @Autowired + OaAppendixService oaAppendixService; + + public ResultBean saveOrUpdateDto(AdPlatformPermissionApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + List files = dto.getFiles(); + List appes = dto.getAppes(); + if (StringUtils.isBlank(sid)) { + // 新建操作 + AdPlatformPermissionApply entity = new AdPlatformPermissionApply(); + BeanUtil.copyProperties(dto, entity, "sid"); + dto.setBillNo("PlatformZHQX"); + dto.setSid(entity.getSid()); + dto.setCreateBySid(dto.getCreateBySid()); + ResultBean resultBean = oaFormService.saveOaForm(dto); + if (!resultBean.getSuccess()) { + return rb; + } + entity.setFormSid(resultBean.getData()); + entity.setCreateBySid(dto.getCreateBySid()); + baseMapper.insert(entity); + sid = entity.getSid(); + } else { + // 更新操作 + AdPlatformPermissionApply entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片"); + saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件"); + return rb.success().setData(sid); + } + // 保存文件 + private void saveFiles(String sid, List files, String attachType, String fileType) { + files.removeAll(Collections.singleton(null)); + oaAppendixService.saveFile(sid, files, attachType, fileType); + } + + public AdPlatformPermissionApplyVo fetchDetailsVoBySid(String sid) { + AdPlatformPermissionApplyVo vo = baseMapper.fetchDetailsVoBySid(sid); + List files = oaAppendixService.selectByLinkSid(sid); + vo.setFiles(files); + return vo; + } + public ResultBean getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdPlatformPermissionApplyVo adPlatformPermissionApplyVo = new AdPlatformPermissionApplyVo(); + adPlatformPermissionApplyVo.setCreateBySid(userSid); + adPlatformPermissionApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adPlatformPermissionApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdPlatformPermissionApplyVo adPlatformPermissionApplyVo = new AdPlatformPermissionApplyVo(); + AdPlatformPermissionApply adPlatformPermissionApply = fetchBySid(sid); + if (adPlatformPermissionApply == null) { + return rb.setMsg("该申请不存在"); + } +// hrHireApplyVo.setTestPage(hrHireApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adPlatformPermissionApplyVo.setTaskId(oaForm.getTaskId()); + adPlatformPermissionApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adPlatformPermissionApplyVo.setOrgSidPath(orgSidPath); + adPlatformPermissionApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adPlatformPermissionApply, adPlatformPermissionApplyVo); +// FormCommon isFinanceObj = FormCommon.of(adPlatformPermissionApply.getIsFinanceKey(), adPlatformPermissionApply.getIsFinanceValue()); +// adPlatformPermissionApplyVo.setIsFinanceObj(isFinanceObj); + + FormCommon deptObj = FormCommon.of(adPlatformPermissionApply.getPermissionTypeKey(), adPlatformPermissionApply.getPermissionTypeValue()); + adPlatformPermissionApplyVo.setPermissionObj(deptObj); + List files = oaAppendixService.selectByLinkSid(sid); + adPlatformPermissionApplyVo.setFiles(files); + adPlatformPermissionApplyVo.setSid(sid); + return rb.success().setData(adPlatformPermissionApplyVo); + } + /** + * 提交 + * + * @param dto + * @return + */ + public ResultBean submit(AdPlatformPermissionApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + ResultBean stringResultBean = saveOrUpdateDto(dto); + if (!stringResultBean.getSuccess()) { + return rb.setMsg(stringResultBean.getData()); + } + String businessSid = stringResultBean.getData(); + + SubmitDto submitDto = new SubmitDto(); + submitDto.setUserSid(dto.getCreateBySid()); + submitDto.setBusinessSid(businessSid); + + Map formVariables = new HashMap<>(); + Map appMap = new HashMap<>(); +// appMap.put("sid", businessSid); + formVariables = getMap(formVariables, businessSid); + submitDto.setFormVariables(formVariables); + submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId()); + submitDto.setNextTaskId(dto.getTaskId()); + submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule()); + return oaFormService.submit(submitDto); + } + /** + * 驳回 + * + * @param dto + * @return + */ + public ResultBean reject(TaskDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + + return oaFormService.reject(dto); + } + + /** + * 办理(同意) + * + * @param dto + * @return + */ + public ResultBean complete(CompleteDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); + BeanUtil.copyProperties(dto, businessVariablesDto); + return oaFormService.complete(businessVariablesDto); + } + + public ResultBean getFlowOperateTitle(NodeQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + Map formVariables = query.getFormVariables(); + formVariables = getMap(formVariables, query.getBusinessSid()); + query.setFormVariables(formVariables); + String data = ""; + if (next == 0) { + ResultBean> resultBean = oaFormService.getPreviousNodesForReject(query); + if (resultBean.getSuccess()) { + resultBean.getData().removeAll(Collections.singleton(null)); + data = resultBean.getData().get(0).getName(); + } else { + return rb.setMsg(resultBean.getMsg()); + } + } else if (next == 1) { + ResultBean> resultBean = oaFormService.getNextNodesForSubmit(query); + if (resultBean.getSuccess()) { + resultBean.getData().removeAll(Collections.singleton(null)); + data = resultBean.getData().get(0).getName(); + } else { + return rb.setMsg(resultBean.getMsg()); + } + } else { + return rb.setMsg("参数错误:next"); + } + return rb.success().setData(data); + } + public Map getMap(Map formVariables, String sid) { + Map appMap = new HashMap<>(); + appMap.put("sid", sid); + /*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid); + appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid); + appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle"); + appMap.put("agreeUrl", "oa/v1/HrHireApply/complete"); + appMap.put("stopUrl", "oa/v1/oaform/breakProcess"); + appMap.put("rejectUrl", "oa/v1/HrHireApply/reject"); + appMap.put("recallUrl", "oa/v1/oaform/revokeProcess"); + appMap.put("signUrl", "oa/v1/oaform/delegate"); + appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/ +// appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + sid); +// appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + sid); +// appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl()); +// appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl()); +// appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl()); +// appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl()); +// appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl()); +// appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl()); +// appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl()); +// formVariables.put("app", appMap); +// //根据组织查询是否是分公司 + OaForm oaForm = oaFormService.fetchBySid(sid); + AdPlatformPermissionApply adPermissionApply = fetchBySid(sid); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData(); + //是否是分公司 + formVariables.put("isTrue", sysOrganization.getIsDept() == 0); + + return formVariables; + } +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyVo.java new file mode 100644 index 0000000000..a18aeb290b --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adplatformpermissionapply/AdPlatformPermissionApplyVo.java @@ -0,0 +1,38 @@ +package com.yxt.anrui.oa.biz.adplatformpermissionapply; + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author wangpengfei + * @date 2025/1/23 9:19 + */ +@Data +@ApiModel(value = "信息化平台权限和数据调整申请 视图数据对象", description = "信息化平台权限和数据调整申请 视图数据对象") +public class AdPlatformPermissionApplyVo implements Vo { + private String sid; + @ApiModelProperty("申请权限类别Key") + private String permissionTypeKey; + @ApiModelProperty("申请权限类别") + private String permissionTypeValue; + @ApiModelProperty("权限详情") + private String permissionDetails; + @ApiModelProperty("基础表单sid") + private String formSid; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + private String orgSidPath; + private String createBySid; + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + private FormCommon permissionObj; +}