package com.vci.web.controller; import com.vci.starter.web.pagemodel.BaseQueryObject; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import com.vci.starter.web.util.VciBaseUtil; import com.vci.dto.WFWorkflowNodeFavDTO; import com.vci.pagemodel.WFWorkflowNodeFavItemVO; import com.vci.pagemodel.WFWorkflowNodeFavVO; import com.vci.web.service.WFWorkflowNodeFavServiceI; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 流程负责人收藏控制器 * * @author weidy * @date 2021-06-08 */ @RestController @RequestMapping("/wFWorkflowNodeFavController") public class WFWorkflowNodeFavController { /** * 流程负责人收藏的服务 */ @Autowired private WFWorkflowNodeFavServiceI wFWorkflowNodeFavService; /** * 当前用户的流程收藏方案 * @param templateOid 流程的模板 * @param templateRevision 流程模板的版本号 * @return 方案的数据 */ @GetMapping("/listNodeFavByWorkflowTemplate") public DataGrid listNodeFavByWorkflowTemplate(String templateOid, String templateRevision){ if(StringUtils.isBlank(templateOid) || StringUtils.isBlank(templateRevision)){ return new DataGrid<>(); } Map conditionMap= new HashMap<>(); conditionMap.put("id",templateOid); conditionMap.put("wfTemplateRev",templateRevision); conditionMap.put("userId", VciBaseUtil.getCurrentUserId()); return wFWorkflowNodeFavService.gridWFWorkflowNodeFav(conditionMap,new PageHelper(-1)); } /** * 流程负责人收藏列表 * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等 * @return 流程负责人收藏显示对象列表 */ @GetMapping("/gridWFWorkflowNodeFav") public DataGrid gridWFWorkflowNodeFav(BaseQueryObject baseQueryObject){ if(baseQueryObject == null){ baseQueryObject = new BaseQueryObject(); } return wFWorkflowNodeFavService.gridWFWorkflowNodeFav(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper()); } /** * 增加 流程负责人收藏 * @param wFWorkflowNodeFavDTO 流程负责人收藏数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PostMapping("/addSave") public BaseResult addSave(@RequestBody WFWorkflowNodeFavDTO wFWorkflowNodeFavDTO){ //先判断方案名称是否一样,一样就直接做替换修改,不一样就新增 return BaseResult.success(wFWorkflowNodeFavService.addSave(wFWorkflowNodeFavDTO)); } /** * 修改 流程负责人收藏 * @param wFWorkflowNodeFavDTO 流程负责人收藏数据传输对象 * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 */ @PutMapping("/editSave") public BaseResult editSave(@RequestBody WFWorkflowNodeFavDTO wFWorkflowNodeFavDTO){ WFWorkflowNodeFavVO wFWorkflowNodeFavVO = wFWorkflowNodeFavService.editSave(wFWorkflowNodeFavDTO); return BaseResult.success(wFWorkflowNodeFavVO); } /** * 删除流程负责人收藏 * @param wFWorkflowNodeFavDTO 流程负责人收藏数据传输对象,oid和ts需要传输 * @return 删除结果反馈::success:成功,fail:失败 */ @DeleteMapping("/deleteData") public BaseResult delWFWorkflowNodeFav(WFWorkflowNodeFavDTO wFWorkflowNodeFavDTO) { return wFWorkflowNodeFavService.deleteWFWorkflowNodeFav(wFWorkflowNodeFavDTO); } /** * 使用主键获取对象 * @param oid 主键 * @return 对象 */ @GetMapping("/getObjectByOid") public BaseResult getObjectByOid(String oid){ WFWorkflowNodeFavVO wFWorkflowNodeFavVO = wFWorkflowNodeFavService.getObjectByOid(oid); return BaseResult.success(wFWorkflowNodeFavVO); } /** * 主键批量获取流程负责人收藏 * @param oids 主键,多个以逗号分隔,但是受性能影响,建议一次查询不超过10000个 * @return 流程负责人收藏显示对象 */ @PostMapping("/listDataByOids") public BaseResult listWFWorkflowNodeFavByOids(String oids){ Collection voCollection = wFWorkflowNodeFavService.listWFWorkflowNodeFavByOids(VciBaseUtil.str2List(oids)); BaseResult baseResult = BaseResult.success(); baseResult.setData(voCollection); return baseResult; } /** * 参照流程负责人收藏列表 * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等 * @return 流程负责人收藏显示对象列表,生效的内容 */ @GetMapping("/refDataGrid") public DataGrid refDataGridWFWorkflowNodeFav(BaseQueryObject baseQueryObject){ if(baseQueryObject == null){ baseQueryObject = new BaseQueryObject(); } return wFWorkflowNodeFavService.refDataGridWFWorkflowNodeFav(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper()); } /** * 根据方案的主键获取明细 * @param schemaOid 方案的主键 * @return 明细的内容 */ @GetMapping("/listNodeFavItemVOBySchema") public List listNodeFavItemVOBySchema(String schemaOid){ return wFWorkflowNodeFavService.listNodeFavItemVOBySchema(schemaOid); } }