From 61af96f56cf37a17574ea63aacf3f8692607a376 Mon Sep 17 00:00:00 2001 From: Yen Date: Wed, 30 Aug 2023 15:50:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=AF=BC=E5=85=A5=E9=A2=84?= =?UTF-8?q?=E7=AE=97=E5=AE=A1=E6=89=B9(=E6=B7=BB=E5=8A=A0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3,=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E4=B8=AD);?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../goods/controller/api/GoodsSpuApi.java | 2 +- .../tbs/common/consts/ChangeTypeEnum.java | 14 ++++++++ .../tbs/common/dto/TbsBudgetChangeVo.java | 2 ++ .../controller/TbsBudgetBatchController.java | 8 +++-- .../controller/TbsBudgetChangeController.java | 5 +-- .../serve/modules/tbs/entity/TbsBudget.java | 3 ++ .../modules/tbs/entity/TbsBudgetBatch.java | 2 +- .../modules/tbs/entity/TbsBudgetChange.java | 6 ++++ .../tbs/service/TbsBudgetChangeService.java | 12 +++++-- .../impl/TbsBudgetBatchServiceImpl.java | 3 ++ .../impl/TbsBudgetChangeServiceImpl.java | 33 ++++++++++++++++--- .../service/impl/TbsBudgetServiceImpl.java | 3 +- .../mapper/tbs/TbsBudgetChangeMapper.xml | 6 ++-- 13 files changed, 83 insertions(+), 16 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/tbs/common/consts/ChangeTypeEnum.java diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java index 17db7adc..0183dc50 100644 --- a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java @@ -43,7 +43,7 @@ public class GoodsSpuApi { PageUtil.startPage(); LambdaQueryWrapper spuWrapper = new LambdaQueryWrapper<>(param); //销售分组id(默认0,表所有 不进行条件过滤) - if(param.getGoodsSaleGroupId().equals(0L)){ + if(param.getGoodsSaleGroupId()!=null&¶m.getGoodsSaleGroupId().equals(0L)){ param.setGoodsSaleGroupId(null); } if(StringUtils.hasText(param.getSearchValue())){ diff --git a/src/main/java/com/qs/serve/modules/tbs/common/consts/ChangeTypeEnum.java b/src/main/java/com/qs/serve/modules/tbs/common/consts/ChangeTypeEnum.java new file mode 100644 index 00000000..f8ecacb4 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/tbs/common/consts/ChangeTypeEnum.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.tbs.common.consts; + +/** + * @author YenHex + * @since 2023/8/30 + */ +public enum ChangeTypeEnum { + + batchApply, + batchChange, + apply, + change + +} diff --git a/src/main/java/com/qs/serve/modules/tbs/common/dto/TbsBudgetChangeVo.java b/src/main/java/com/qs/serve/modules/tbs/common/dto/TbsBudgetChangeVo.java index e1b31956..b30f5343 100644 --- a/src/main/java/com/qs/serve/modules/tbs/common/dto/TbsBudgetChangeVo.java +++ b/src/main/java/com/qs/serve/modules/tbs/common/dto/TbsBudgetChangeVo.java @@ -122,4 +122,6 @@ public class TbsBudgetChangeVo { @Length(max = 255,message = "备注长度不能超过255字") private String remark; + /** 是否批量提交 */ + private Integer batchApplyFlag; } diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetBatchController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetBatchController.java index b5e4177d..0ed64199 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetBatchController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetBatchController.java @@ -11,6 +11,7 @@ import com.qs.serve.common.util.PageUtil; import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.seeyon.entity.bo.CtpAddNodeParam; +import com.qs.serve.modules.tbs.common.consts.ChangeTypeEnum; import com.qs.serve.modules.tbs.entity.TbsBudgetBatchItem; import com.qs.serve.modules.tbs.entity.TbsBudgetChange; import com.qs.serve.modules.tbs.entity.bo.TbsAffairCommitBo; @@ -80,17 +81,18 @@ public class TbsBudgetBatchController { */ @GetMapping("/getById/{id}") @SysLog(module = SystemModule.Budget, title = "批量申请", biz = BizType.QUERY) - @PreAuthorize("hasRole('tbs:budgetBatch:query')") public R getById(@PathVariable("id") String id){ TbsBudgetBatch budgetBatch = tbsBudgetBatchService.getById(id); List budgetBatchItemList = budgetBatchItemService.listByBatchId(budgetBatch.getId()); List changeList = new ArrayList<>(); for (TbsBudgetBatchItem batchItem : budgetBatchItemList) { if(batchItem.getChangeId()!=null){ - TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailById(batchItem.getChangeId().toString()); + TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailById(batchItem.getChangeId().toString(), + ChangeTypeEnum.batchChange); changeList.add(budgetChange); }else { - TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailByBudgetId(batchItem.getBudgetId().toString()); + TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailByBudgetId(batchItem.getBudgetId().toString(), + ChangeTypeEnum.batchApply); changeList.add(budgetChange); } } diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetChangeController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetChangeController.java index 0d2bc7fe..ef39af5f 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetChangeController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetChangeController.java @@ -14,6 +14,7 @@ import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.sys.service.SysAttachService; import com.qs.serve.modules.tbs.common.TbsBudgetCheckState; +import com.qs.serve.modules.tbs.common.consts.ChangeTypeEnum; import com.qs.serve.modules.tbs.common.dto.TbsBudgetChangeVo; import com.qs.serve.modules.tbs.entity.*; import com.qs.serve.modules.tbs.entity.so.TbsBudgetChangeSo; @@ -73,7 +74,7 @@ public class TbsBudgetChangeController { */ @GetMapping("/{id}") public R getList(@PathVariable("id")String id ){ - TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailById(id); + TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailById(id, null); if (budgetChange.getBudgetCheckState().equals(TbsBudgetCheckState.State_1_apply)){ AsyncManager.me().execute(AsyncFactory.submitBudgetChange(id)); } @@ -87,7 +88,7 @@ public class TbsBudgetChangeController { */ @GetMapping("/apply/{id}") public R getApplyBudget(@PathVariable("id")String id ){ - TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailByBudgetId(id); + TbsBudgetChange budgetChange = tbsBudgetChangeService.getDetailByBudgetId(id, null); return R.ok(budgetChange); } diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudget.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudget.java index f3f07b03..06b67974 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudget.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudget.java @@ -121,6 +121,9 @@ public class TbsBudget implements Serializable { /** 提交审批时间 */ private LocalDateTime submitTime; + /** 是否批量提交 */ + private Integer batchApplyFlag; + /** 创建时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetBatch.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetBatch.java index af9aa9f5..2555dcb5 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetBatch.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetBatch.java @@ -51,7 +51,7 @@ public class TbsBudgetBatch implements Serializable { private LocalDateTime finishedTime; /** 预算类型 0->修改;1->新增 */ - private Integer batchType; + //private Integer batchType; /** 致远表单id */ @Length(max = 255,message = "致远表单id长度不能超过255字") diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetChange.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetChange.java index e606b25b..4f7f51d5 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetChange.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetChange.java @@ -112,6 +112,9 @@ public class TbsBudgetChange implements Serializable { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime submitTime; + /** 是否批量提交 */ + private Integer batchApplyFlag; + /** 申请人 */ @NotBlank(message = "申请人不能为空") @Length(max = 32,message = "申请人长度不能超过32字") @@ -185,6 +188,9 @@ public class TbsBudgetChange implements Serializable { @TableField(exist = false) private List orgAttachInfos; + @TableField(exist = false) + private String applyType; + public static TbsBudgetChange toNewObject(TbsBudget source){ TbsBudgetChange budgetChange = new TbsBudgetChange(); //budgetChange.setId(source.getId()); diff --git a/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetChangeService.java b/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetChangeService.java index e5c0b08b..372f88a8 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetChangeService.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetChangeService.java @@ -1,6 +1,7 @@ package com.qs.serve.modules.tbs.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.qs.serve.modules.tbs.common.consts.ChangeTypeEnum; import com.qs.serve.modules.tbs.common.dto.TbsBudgetChangeVo; import com.qs.serve.modules.tbs.entity.TbsBudgetChange; import com.qs.serve.modules.tbs.entity.bo.TbsBudgetUpdateAfterStartBo; @@ -20,11 +21,18 @@ public interface TbsBudgetChangeService extends IService { /** * 获取详情 * @param id + * @param applyType * @return */ - TbsBudgetChange getDetailById(String id); + TbsBudgetChange getDetailById(String id, ChangeTypeEnum applyType); - TbsBudgetChange getDetailByBudgetId(String budgetId); + /** + * 获取详情 + * @param budgetId + * @param applyType + * @return + */ + TbsBudgetChange getDetailByBudgetId(String budgetId,ChangeTypeEnum applyType); /** * 提交修改 diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetBatchServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetBatchServiceImpl.java index d6f7e4c4..6b03d2db 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetBatchServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetBatchServiceImpl.java @@ -226,6 +226,7 @@ public class TbsBudgetBatchServiceImpl extends ServiceImpl!StringUtils.hasText(a.getBudgetNumber())).collect(Collectors.toList()); for (TbsBudgetBatchBo.BudgetMain budgetMain : addBudgetList) { TbsBudget newBudget = new TbsBudget(); + newBudget.setBatchApplyFlag(1); TbsSchedule schedule = scheduleMap.get(budgetMain.getScheduleName()); this.initBudget4Update(sysUser,schedule, subjectMap, centerDtoMap, budgetMain, newBudget); tbsBudgetService.save(newBudget); @@ -310,6 +312,7 @@ public class TbsBudgetBatchServiceImpl extends ServiceImpl changeScheduleItemList = tbsBudgetChangeScheduleItemService.listByChangeId(budgetChange.getId()); List changeConditionList = tbsBudgetChangeConditionService.listByChangeId(budgetChange.getId()); Map> map = changeConditionList.stream().collect(Collectors.groupingBy(TbsBudgetChangeCondition::getSourceFlag)); @@ -78,7 +86,7 @@ public class TbsBudgetChangeServiceImpl extends ServiceImpl conditionLqw = new LambdaQueryWrapper<>(); conditionLqw.eq(TbsBudgetCondition::getBudgetId,budgetId); @@ -88,6 +96,13 @@ public class TbsBudgetChangeServiceImpl extends ServiceImpl scheduleItemBudgetList = tbsScheduleItemBudgetService.list(schItemBudgetLqw); TbsBudgetChange budgetChange = TbsBudgetChange.toNewObject(budget); + if(applyType==null){ + budgetChange.setApplyType(budget.getBatchApplyFlag().equals(1)? + ChangeTypeEnum.batchApply.name(): + ChangeTypeEnum.apply.name()); + }else { + budgetChange.setApplyType(applyType.name()); + } List budgetChangeConditions = conditions.stream() .map(TbsBudgetChangeCondition::toNewObject).collect(Collectors.toList()); List budgetChangeScheduleItemList = scheduleItemBudgetList.stream() @@ -98,14 +113,24 @@ public class TbsBudgetChangeServiceImpl extends ServiceImpl selectChangeVoList(TbsBudgetChangeSo query) { query.setPageSize(PageUtil.getPageSize()); query.setStartRow(PageUtil.getStartRow()); - return baseMapper.selectChangeVoList(query); + List result = baseMapper.selectChangeVoList(query); + for (TbsBudgetChangeVo changeVo : result) { + if(changeVo.getBatchApplyFlag().equals(1)){ + if(changeVo.getType().equals(ChangeTypeEnum.change.name())){ + changeVo.setType(ChangeTypeEnum.batchChange.name()); + }else { + changeVo.setType(ChangeTypeEnum.batchApply.name()); + } + } + } + return result; } @Override diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetServiceImpl.java index f210ad0a..194c523a 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsBudgetServiceImpl.java @@ -99,7 +99,7 @@ public class TbsBudgetServiceImpl extends ServiceImpl SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId()); TbsBudget tbsBudget = this.getById(id); if(tbsBudget.getBudgetState().equals(1)){ - Assert.throwEx(""); + Assert.throwEx("已开启"); } Map data = new HashMap<>(); data.put("exsp5", tbsBudget.getBudgetCode()); @@ -137,6 +137,7 @@ public class TbsBudgetServiceImpl extends ServiceImpl tbsBudget.setUserId(sysUser.getId()); tbsBudget.setUserCode(sysUser.getCode()); tbsBudget.setUserName(sysUser.getName()); + tbsBudget.setBatchApplyFlag(0); this.updateById(tbsBudget); //创建流程后回调 diff --git a/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml b/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml index 78f5a78f..a9a6d357 100644 --- a/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml +++ b/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml @@ -53,7 +53,8 @@ tbs_budget.`user_id`, tbs_budget.`user_code`, tbs_budget.`user_name`, - tbs_budget.`remark` + tbs_budget.`remark`, + tbs_budget.`batch_apply_flag` from tbs_budget where tbs_budget.del_flag = 0 and `tbs_budget`.`budget_check_state` != 0 and `tbs_budget`.`id` = #{query.budgetId} @@ -92,7 +93,8 @@ tbs_budget_change.`remark`, tbs_budget_change.`user_id`, tbs_budget_change.`user_code`, - tbs_budget_change.`user_name` + tbs_budget_change.`user_name`, + tbs_budget_change.`batch_apply_flag` from tbs_budget_change where tbs_budget_change.del_flag = 0