Browse Source

添加节点类型、标签等

master
陈裕财 4 years ago
parent
commit
f391d006d2
  1. 92
      xm-core/src/main/java/com/xm/core/ctrl/XmIterationMenuController.java
  2. 169
      xm-core/src/main/java/com/xm/core/entity/XmIterationMenu.java
  3. 17
      xm-core/src/main/java/com/xm/core/service/XmIterationMenuService.java
  4. 9
      xm-core/src/main/java/com/xm/core/service/XmMenuService.java
  5. 27
      xm-core/src/main/java/com/xm/core/vo/XmIterationMenuVo.java
  6. 16
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml

92
xm-core/src/main/java/com/xm/core/ctrl/XmIterationMenuController.java

@ -3,14 +3,17 @@ package com.xm.core.ctrl;
import com.mdp.core.entity.Tips; import com.mdp.core.entity.Tips;
import com.mdp.core.err.BizException; import com.mdp.core.err.BizException;
import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.RequestUtils;
import com.mdp.core.utils.ResponseHelper;
import com.mdp.mybatis.PageUtils; import com.mdp.mybatis.PageUtils;
import com.mdp.safe.client.entity.User; import com.mdp.safe.client.entity.User;
import com.mdp.safe.client.utils.LoginUtils; import com.mdp.safe.client.utils.LoginUtils;
import com.xm.core.entity.XmIteration;
import com.xm.core.entity.XmIterationMenu; import com.xm.core.entity.XmIterationMenu;
import com.xm.core.entity.XmMenu; import com.xm.core.entity.XmMenu;
import com.xm.core.service.XmIterationMenuService; import com.xm.core.service.XmIterationMenuService;
import com.xm.core.service.XmMenuService; import com.xm.core.service.XmMenuService;
import com.xm.core.service.push.XmMenuPushMsgService; import com.xm.core.service.push.XmMenuPushMsgService;
import com.xm.core.vo.XmIterationMenuVo;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
@ -39,9 +42,6 @@ public class XmIterationMenuController {
static Log logger=LogFactory.getLog(XmIterationMenuController.class); static Log logger=LogFactory.getLog(XmIterationMenuController.class);
@Autowired
private XmIterationMenuService xmIterationMenuService;
@Autowired @Autowired
@ -50,43 +50,6 @@ public class XmIterationMenuController {
@Autowired @Autowired
XmMenuService xmMenuService; XmMenuService xmMenuService;
@ApiOperation( value = "查询迭代定义信息列表",notes="listXmIterationMenu,条件之间是 and关系,模糊查询写法如 {studentName:'%才哥%'}")
@ApiImplicitParams({
@ApiImplicitParam(name="id",value="主键,主键",required=false),
@ApiImplicitParam(name="iterationId",value="对应的迭代编号",required=false),
@ApiImplicitParam(name="menuId",value="需求编号",required=false),
@ApiImplicitParam(name="productId",value="产品编号",required=false),
@ApiImplicitParam(name="ctime",value="关联时间",required=false),
@ApiImplicitParam(name="relStatus",value="关联状态0不再关联1正常关联",required=false),
@ApiImplicitParam(name="pageSize",value="每页记录数",required=false),
@ApiImplicitParam(name="currentPage",value="当前页码,从1开始",required=false),
@ApiImplicitParam(name="total",value="总记录数,服务器端收到0时,会自动计算总记录数,如果上传>0的不自动计算",required=false),
@ApiImplicitParam(name="orderFields",value="排序列 如性别、学生编号排序 ['sex','studentId']",required=false),
@ApiImplicitParam(name="orderDirs",value="排序方式,与orderFields对应,升序 asc,降序desc 如 性别 升序、学生编号降序 ['asc','desc']",required=false)
})
@ApiResponses({
@ApiResponse(code = 200,response= XmIterationMenu.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'错误码'},pageInfo:{total:总记录数},data:[数据对象1,数据对象2,...]}")
})
@RequestMapping(value="/list",method=RequestMethod.GET)
public Map<String,Object> listXmIterationMenu( @RequestParam Map<String,Object> xmIterationMenu){
Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("查询成功");
RequestUtils.transformArray(xmIterationMenu, "ids");
PageUtils.startPage(xmIterationMenu);
String iterationId=(String)xmIterationMenu.get("iterationId");
String menuId=(String)xmIterationMenu.get("menuId");
if(!(StringUtils.hasText(iterationId)||StringUtils.hasText(menuId))){
tips.setFailureMsg("迭代编号iterationId、需求编号menuId最少一个不能为空");
m.put("tips", tips);
return m;
}
List<Map<String,Object>> xmIterationMenuList = xmIterationMenuService.selectListMapByWhere(xmIterationMenu); //列出XmIterationMenu列表
PageUtils.responePage(m, xmIterationMenuList);
m.put("data",xmIterationMenuList);
m.put("tips", tips);
return m;
}
@ -130,11 +93,11 @@ public class XmIterationMenuController {
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}") @ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}")
}) })
@RequestMapping(value="/del",method=RequestMethod.POST) @RequestMapping(value="/del",method=RequestMethod.POST)
public Map<String,Object> delXmIterationMenu(@RequestBody XmIterationMenu xmIterationMenu){
public Map<String,Object> delXmIterationMenu(@RequestBody XmIterationMenuVo xmIterationMenus){
Map<String,Object> m = new HashMap<>(); Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功删除一条数据"); Tips tips=new Tips("成功删除一条数据");
try{ try{
xmIterationMenuService.deleteByPk(xmIterationMenu);
xmMenuService.batchUnIteration(xmIterationMenus);
User user = LoginUtils.getCurrentUserInfo(); User user = LoginUtils.getCurrentUserInfo();
this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】移出迭代"); this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】移出迭代");
}catch (BizException e) { }catch (BizException e) {
@ -181,18 +144,15 @@ public class XmIterationMenuController {
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}") @ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}")
}) })
@RequestMapping(value="/batchDel",method=RequestMethod.POST) @RequestMapping(value="/batchDel",method=RequestMethod.POST)
public Map<String,Object> batchDelXmIterationMenu(@RequestBody List<XmIterationMenu> xmIterationMenus) {
public Map<String,Object> batchDelXmIterationMenu(@RequestBody XmIterationMenuVo xmIterationMenus) {
Map<String,Object> m = new HashMap<>(); Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功删除"+xmIterationMenus.size()+"条数据");
Tips tips=new Tips("成功删除"+xmIterationMenus.getMenuIds().size()+"条数据");
try{ try{
xmMenuService.batchUnIteration(xmIterationMenus);
xmIterationMenuService.batchDelete(xmIterationMenus);
User user = LoginUtils.getCurrentUserInfo(); User user = LoginUtils.getCurrentUserInfo();
for (XmIterationMenu xmIterationMenu : xmIterationMenus) {
this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】移出迭代"); this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】移出迭代");
}
}catch (BizException e) { }catch (BizException e) {
tips=e.getTips(); tips=e.getTips();
logger.error("",e); logger.error("",e);
@ -204,27 +164,27 @@ public class XmIterationMenuController {
return m; return m;
} }
@RequestMapping(value="/batchAdd",method=RequestMethod.POST) @RequestMapping(value="/batchAdd",method=RequestMethod.POST)
public Map<String,Object> batchAddXmIterationMenu(@RequestBody List<XmIterationMenu> xmIterationMenus) {
public Map<String,Object> batchAddXmIterationMenu(@RequestBody XmIterationMenuVo xmIterationMenus) {
Map<String,Object> m = new HashMap<>(); Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功新增"+xmIterationMenus.size()+"条数据");
Tips tips=new Tips("成功将需求发布到迭代中");
try{ try{
if(xmIterationMenus==null || xmIterationMenus.size()==0) {
}else {
List<String> menuIds=new ArrayList<>();
for (XmIterationMenu xmIterationMenu : xmIterationMenus) {
xmIterationMenu.setCtime(new Date());
xmIterationMenu.setRelStatus("1");
xmIterationMenu.setId(xmIterationMenuService.createKey("id"));
menuIds.add(xmIterationMenu.getMenuId());
if(!StringUtils.hasText(xmIterationMenus.getIterationId())){
return ResponseHelper.failed("iterationId-0","迭代编号不能为空");
}
List<String> menuIds=xmIterationMenus.getMenuIds();
if(menuIds==null || menuIds.size()==0){
return ResponseHelper.failed("menuIds-0","需求编号不能为空");
}
List<XmMenu> menus=xmMenuService.selectListByIds(menuIds);
List<XmMenu> hadJoin=menus.stream().filter(i->StringUtils.hasText(i.getIterationId())).collect(Collectors.toList());
List<String> msgs=new ArrayList<>();
if(menus!=null && menus.size()==menuIds.size()){
return ResponseHelper.failed("menus-had-iteration","需求全部都已加入迭代,不能重复加入。");
} }
List<XmMenu> menus=xmMenuService.selectExistIterationMenus(menuIds);
if(menus!=null && menus.size()>0){
List<String> menuNames = menus.stream().map(XmMenu::getMenuName).collect(Collectors.toList()); List<String> menuNames = menus.stream().map(XmMenu::getMenuName).collect(Collectors.toList());
String menusNameStr=StringUtils.arrayToDelimitedString(menuNames.toArray(),","); String menusNameStr=StringUtils.arrayToDelimitedString(menuNames.toArray(),",");
tips.setFailureMsg("以下需求已加入本迭代计划,不能重复加入。"+menusNameStr);
}else{
xmIterationMenuService.batchInsert(xmIterationMenus);
msgs.add("以下需求已加入迭代计划,不能重复加入。"+menusNameStr);
xmMenuService.batchIteration(xmIterationMenus);
User user = LoginUtils.getCurrentUserInfo(); User user = LoginUtils.getCurrentUserInfo();
@ -232,10 +192,6 @@ public class XmIterationMenuController {
this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】加入迭代"); this.xmMenuPushMsgService.pushMenuRelUsersMsg(user.getBranchId(), xmIterationMenu.getMenuId(), user.getUserid(), user.getUsername(), user.getUsername()+"将需求【"+xmIterationMenu.getMenuId()+"】加入迭代");
}
}
} }
}catch (BizException e) { }catch (BizException e) {
tips=e.getTips(); tips=e.getTips();

169
xm-core/src/main/java/com/xm/core/entity/XmIterationMenu.java

@ -1,169 +0,0 @@
package com.xm.core.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
/**
* 组织 com.qqkj 顶级模块 oa 大模块 xm 小模块 <br>
* 实体 XmIterationMenu所有属性名: <br>
* id,iterationId,menuId,productId,ctime,relStatus,hasTask,cuserid,cusername;<br>
* XM.xm_iteration_menu 迭代定义的所有字段名: <br>
* id,iteration_id,menu_id,product_id,ctime,rel_status,has_task,cuserid,cusername;<br>
* 当前主键(包括多主键):<br>
* id;<br>
*/
@ApiModel(description="迭代定义")
public class XmIterationMenu implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(notes="主键,主键",allowEmptyValue=true,example="",allowableValues="")
String id;
@ApiModelProperty(notes="对应的迭代编号",allowEmptyValue=true,example="",allowableValues="")
String iterationId;
@ApiModelProperty(notes="需求编号",allowEmptyValue=true,example="",allowableValues="")
String menuId;
@ApiModelProperty(notes="产品编号",allowEmptyValue=true,example="",allowableValues="")
String productId;
@ApiModelProperty(notes="关联时间",allowEmptyValue=true,example="",allowableValues="")
Date ctime;
@ApiModelProperty(notes="关联状态0不再关联1正常关联",allowEmptyValue=true,example="",allowableValues="")
String relStatus;
@ApiModelProperty(notes="是否已有任务在关联0否1有",allowEmptyValue=true,example="",allowableValues="")
String hasTask;
@ApiModelProperty(notes="创建人编号",allowEmptyValue=true,example="",allowableValues="")
String cuserid;
@ApiModelProperty(notes="创建人姓名",allowEmptyValue=true,example="",allowableValues="")
String cusername;
/**主键**/
public XmIterationMenu(String id) {
this.id = id;
}
/**迭代定义**/
public XmIterationMenu() {
}
/**
* 主键
**/
public void setId(String id) {
this.id = id;
}
/**
* 对应的迭代编号
**/
public void setIterationId(String iterationId) {
this.iterationId = iterationId;
}
/**
* 需求编号
**/
public void setMenuId(String menuId) {
this.menuId = menuId;
}
/**
* 产品编号
**/
public void setProductId(String productId) {
this.productId = productId;
}
/**
* 关联时间
**/
public void setCtime(Date ctime) {
this.ctime = ctime;
}
/**
* 关联状态0不再关联1正常关联
**/
public void setRelStatus(String relStatus) {
this.relStatus = relStatus;
}
/**
* 是否已有任务在关联0否1有
**/
public void setHasTask(String hasTask) {
this.hasTask = hasTask;
}
/**
* 创建人编号
**/
public void setCuserid(String cuserid) {
this.cuserid = cuserid;
}
/**
* 创建人姓名
**/
public void setCusername(String cusername) {
this.cusername = cusername;
}
/**
* 主键
**/
public String getId() {
return this.id;
}
/**
* 对应的迭代编号
**/
public String getIterationId() {
return this.iterationId;
}
/**
* 需求编号
**/
public String getMenuId() {
return this.menuId;
}
/**
* 产品编号
**/
public String getProductId() {
return this.productId;
}
/**
* 关联时间
**/
public Date getCtime() {
return this.ctime;
}
/**
* 关联状态0不再关联1正常关联
**/
public String getRelStatus() {
return this.relStatus;
}
/**
* 是否已有任务在关联0否1有
**/
public String getHasTask() {
return this.hasTask;
}
/**
* 创建人编号
**/
public String getCuserid() {
return this.cuserid;
}
/**
* 创建人姓名
**/
public String getCusername() {
return this.cusername;
}
}

17
xm-core/src/main/java/com/xm/core/service/XmIterationMenuService.java

@ -1,17 +0,0 @@
package com.xm.core.service;
import com.mdp.core.service.BaseService;
import org.springframework.stereotype.Service;
/**
* 父类已经支持增删改查操作,因此,即使本类什么也不写,也已经可以满足一般的增删改查操作了.<br>
* 组织 com.qqkj 顶级模块 oa 大模块 xm 小模块 <br>
* 实体 XmIterationMenu XM.xm_iteration_menu 当前主键(包括多主键): id;
***/
@Service("xm.core.xmIterationMenuService")
public class XmIterationMenuService extends BaseService {
/** 请在此类添加自定义函数 */
}

9
xm-core/src/main/java/com/xm/core/service/XmMenuService.java

@ -4,6 +4,7 @@ import com.mdp.core.entity.Tips;
import com.mdp.core.service.BaseService; import com.mdp.core.service.BaseService;
import com.xm.core.entity.XmMenu; import com.xm.core.entity.XmMenu;
import com.xm.core.entity.XmTask; import com.xm.core.entity.XmTask;
import com.xm.core.vo.XmIterationMenuVo;
import com.xm.core.vo.XmMenuVo; import com.xm.core.vo.XmMenuVo;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -252,5 +253,13 @@ public class XmMenuService extends BaseService {
public List<XmMenu> selectListByIds(List<String> ids) { public List<XmMenu> selectListByIds(List<String> ids) {
return super.selectList("selectListByIds",ids); return super.selectList("selectListByIds",ids);
} }
public void batchUnIteration(XmIterationMenuVo xmIterationMenus) {
super.update("batchUnIteration",xmIterationMenus);
}
public void batchIteration(XmIterationMenuVo xmIterationMenus) {
super.update("batchIteration",xmIterationMenus);
}
} }

27
xm-core/src/main/java/com/xm/core/vo/XmIterationMenuVo.java

@ -0,0 +1,27 @@
package com.xm.core.vo;
import java.util.List;
public class XmIterationMenuVo {
String iterationId;
List<String> menuIds;
public String getIterationId() {
return iterationId;
}
public void setIterationId(String iterationId) {
this.iterationId = iterationId;
}
public List<String> getMenuIds() {
return menuIds;
}
public void setMenuIds(List<String> menuIds) {
this.menuIds = menuIds;
}
}

16
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml

@ -100,6 +100,22 @@
#{item} #{item}
</foreach> </foreach>
</select> </select>
<update id="batchUnIteration" parameterType="com.xm.core.vo.XmIterationMenuVo">
update xm_menu res set res.iteration_id = null where res.menu_id in
<foreach collection="menuIds" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
<if test="iterationId!=null and iterationId!=''">
and res.iteration_id=#{iterationId}
</if>
</update>
<update id="batchIteration" parameterType="com.xm.core.vo.XmIterationMenuVo">
update xm_menu res set res.iteration_id = #{iterationId} where res.menu_id in
<foreach collection="menuIds" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</update>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->

Loading…
Cancel
Save