From 53920cb951b6a9884474a113866056e085559a15 Mon Sep 17 00:00:00 2001 From: luozukai Date: Tue, 11 Jun 2019 16:58:20 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=AE=A1=E6=89=B9=E6=B5=81][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9][init]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflow/WxFlowAbleController.java | 45 ++++++++++++++++--- .../com/iformall/domain/po/WxFlowConfig.java | 4 ++ .../com/iformall/domain/po/WxFlowModel.java | 1 + .../iformall/mapper/WxFlowConfigMapper.java | 6 +++ .../iformall/mapper/WxFlowModelMapper.java | 1 + .../com/iformall/service/WxFlowService.java | 14 ++++++ .../service/impl/WxFlowServiceImpl.java | 17 ++++++- .../resources/mapper/WxFlowConfigMapper.xml | 18 ++++---- .../resources/mapper/WxFlowModelMapper.xml | 4 +- 9 files changed, 93 insertions(+), 17 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/workflow/WxFlowAbleController.java b/mallinkAdmin/src/main/java/com/iformall/controller/workflow/WxFlowAbleController.java index a52421d14..749d8dace 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/workflow/WxFlowAbleController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/workflow/WxFlowAbleController.java @@ -5,6 +5,7 @@ import com.iformall.annotation.SystemControllerLog; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.MallUserInfo; +import com.iformall.domain.po.WxFlowConfig; import com.iformall.domain.po.WxFlowModel; import com.iformall.domain.po.WxFlowRecord; import com.iformall.enums.EnumFlowRecordStatus; @@ -13,6 +14,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -224,9 +226,9 @@ public class WxFlowAbleController extends BaseController { @ApiOperation(value = "删除模板") @PostMapping(value = "delModel") @SystemControllerLog(description = "工作流-删除模板") - public ResultData delModel(@ModelAttribute WxFlowModel wxFlowModel) { + public ResultData delModel(@RequestBody WxFlowModel wxFlowModel) { wxFlowModel.setTenantId(getTenantId()); - return wxFlowService.createModel(wxFlowModel); + return wxFlowService.delModel(wxFlowModel); } /** @@ -255,10 +257,43 @@ public class WxFlowAbleController extends BaseController { @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true), }) @SystemControllerLog(description = "工作流-配置列表") - public ResultData configList(@ModelAttribute WxFlowModel wxFlowModel,Integer pageNum, Integer pageSize) { + public ResultData configList(@ModelAttribute WxFlowConfig wxFlowConfig, Integer pageNum, Integer pageSize) { logger.debug("[" + getIpAddr() + "] FlowAbleController::modelList"); - wxFlowModel.setTenantId(getTenantId()); - return new ResultData(wxFlowService.modelList(wxFlowModel,pageNum,pageSize)); + wxFlowConfig.setTenantId(getTenantId()); + if(pageSize == null){ + pageSize = 99999999; + } + if(pageNum == null){ + pageNum = 1; + } + + PageInfo pageInfo = wxFlowService.configList(wxFlowConfig,pageNum,pageSize); + List list = pageInfo.getList(); + for (WxFlowConfig c:list) { + if(CollectionUtils.isNotEmpty(c.getChilds())){ + for (WxFlowConfig ch:c.getChilds()) { + if(ch.getModelId() != null){ + WxFlowModel query = new WxFlowModel(); + query.setId(ch.getModelId()); + ch.setWxFlowModel((WxFlowModel)wxFlowService.findModelById(query).data); + } + } + } + } + pageInfo.setList(list); + return new ResultData(pageInfo); } + /** + * 类型设置 + */ + @ApiOperation(value = "类型设置") + @PostMapping(value = "updateConfig") + @SystemControllerLog(description = "工作流-类型设置") + public ResultData updateConfig(@RequestBody WxFlowConfig wxFlowConfig) { + wxFlowConfig.setTenantId(getTenantId()); + return wxFlowService.updateConfig(wxFlowConfig); + } + + } \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFlowConfig.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFlowConfig.java index c03d8995a..00217a18b 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxFlowConfig.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFlowConfig.java @@ -1,5 +1,6 @@ package com.iformall.domain.po; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; @@ -36,6 +37,9 @@ public class WxFlowConfig extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value="模板id",name="modelId") private Long modelId; + @io.swagger.annotations.ApiModelProperty(value="父类ID",name="parentId") + private Long parentId; + @io.swagger.annotations.ApiModelProperty(value="创建日期",name="createDate") private Date createDate; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java index 9a32bcf89..7a3da5901 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFlowModel.java @@ -1,5 +1,6 @@ package com.iformall.domain.po; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.iformall.domain.vo.UserTaskVo; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxFlowConfigMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxFlowConfigMapper.java index c45553609..f9c7dfbd9 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxFlowConfigMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxFlowConfigMapper.java @@ -10,4 +10,10 @@ import java.util.List; public interface WxFlowConfigMapper extends CommonMapper { List findList(WxFlowConfig wxFlowConfig); + /** + * 查找所有子 + * @return + */ + List findChildList(); + } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxFlowModelMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxFlowModelMapper.java index d49fb73a9..f55af0f39 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxFlowModelMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxFlowModelMapper.java @@ -12,4 +12,5 @@ import java.util.List; public interface WxFlowModelMapper extends CommonMapper { List findList(WxFlowModel wxFlowModel); + WxFlowModel selectById(Long id); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxFlowService.java b/mallinkService/src/main/java/com/iformall/service/WxFlowService.java index 1f67633ad..25cfc3fec 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxFlowService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxFlowService.java @@ -2,10 +2,12 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; +import com.iformall.domain.po.WxFlowConfig; import com.iformall.domain.po.WxFlowModel; import com.iformall.domain.po.WxFlowRecord; import org.springframework.web.bind.annotation.RequestBody; import javax.servlet.http.HttpServletResponse; +import java.util.List; import java.util.Map; /** @@ -112,4 +114,16 @@ public interface WxFlowService { * @return */ PageInfo modelList(WxFlowModel wxFlowModel,Integer pageIndex, Integer pageSize); + + /** + * 配置列表 + * @return + */ + PageInfo configList(WxFlowConfig wxFlowConfig, Integer pageIndex, Integer pageSize); + + /** + * 类型配置 + * @return + */ + ResultData updateConfig(WxFlowConfig wxFlowConfig); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index 26736dc58..3212ed947 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -97,6 +97,8 @@ public class WxFlowServiceImpl implements WxFlowService { private WxBillOtherDepositMapper wxBillOtherDepositMapper; @Autowired private WxFlowModelMapper wxFlowModelMapper; + @Autowired + private WxFlowConfigMapper wxFlowConfigMapper; /** * 获取流程key @@ -1159,9 +1161,9 @@ public class WxFlowServiceImpl implements WxFlowService { process.addFlowElement(sequenceFlow); wxFlowModel.setFlow(JsonUtil.obj2Json(wxFlowModel)); - final IdWorker idWorker = IdWorker.get(); - wxFlowModel.setId(idWorker.nextId()); if(wxFlowModel.getId() == null) { + final IdWorker idWorker = IdWorker.get(); + wxFlowModel.setId(idWorker.nextId()); wxFlowModelMapper.insertSelective(wxFlowModel); }else{ wxFlowModel.setUpdateDate(new Date()); @@ -1230,4 +1232,15 @@ public class WxFlowServiceImpl implements WxFlowService { wxFlowModelMapper.deleteByPrimaryKey(wxFlowModel.getId()); return new ResultData(); } + + @Override + public PageInfo configList(WxFlowConfig wxFlowConfig, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxFlowConfigMapper.findList(wxFlowConfig)); + } + + @Override + public ResultData updateConfig(WxFlowConfig wxFlowConfig) { + wxFlowConfigMapper.updateByPrimaryKeySelective(wxFlowConfig); + return new ResultData(); + } } diff --git a/mallinkService/src/main/resources/mapper/WxFlowConfigMapper.xml b/mallinkService/src/main/resources/mapper/WxFlowConfigMapper.xml index b836d6191..a06ccfe97 100644 --- a/mallinkService/src/main/resources/mapper/WxFlowConfigMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxFlowConfigMapper.xml @@ -5,20 +5,20 @@ - - + + - where 1 = 1 + where parent_id =0 and `tenant_id` = #{tenantId} @@ -26,16 +26,16 @@ and `name` like concat('%', #{name},'%') order by ${sortColumns} - order by id desc + order by id asc - + select * from wx_flow_config - - - + diff --git a/mallinkService/src/main/resources/mapper/WxFlowModelMapper.xml b/mallinkService/src/main/resources/mapper/WxFlowModelMapper.xml index 51fcbcd1e..7f6da0a88 100644 --- a/mallinkService/src/main/resources/mapper/WxFlowModelMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxFlowModelMapper.xml @@ -5,7 +5,6 @@ - @@ -32,6 +31,9 @@ +