Browse Source

添加节点类型、标签等

master
陈裕财 4 years ago
parent
commit
f03122eebb
  1. 92
      xm-core/src/main/java/com/xm/core/entity/XmMenu.java
  2. 71
      xm-core/src/main/java/com/xm/core/entity/XmProduct.java
  3. 122
      xm-core/src/main/java/com/xm/core/entity/XmProjectGroup.java
  4. 7
      xm-core/src/main/java/com/xm/core/entity/XmProjectGroupUser.java
  5. 120
      xm-core/src/main/java/com/xm/core/entity/XmProjectPhase.java
  6. 28
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml
  7. 78
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProductMapper.xml
  8. 86
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProjectGroupMapper.xml
  9. 60
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProjectGroupUserMapper.xml
  10. 16
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProjectPhaseMapper.xml

92
xm-core/src/main/java/com/xm/core/entity/XmMenu.java

@ -3,13 +3,14 @@ package com.xm.core.entity;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.util.Date; import java.util.Date;
import java.math.BigDecimal;
/** /**
* 组织 com 顶级模块 xm 大模块 core 小模块 <br> * 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmMenu所有属性名: <br> * 实体 XmMenu所有属性名: <br>
* menuId,menuName,pmenuId,productId,remark,status,online,demandUrl,codeUrl,designUrl,docUrl,helpUrl,operDocUrl,seqNo,mmUserid,mmUsername,ctime,ntype,sinceVersion,childrenCnt,ltime,tagIds,tagNames,pidPaths,lvl,isTpl;<br>
* menuId,menuName,pmenuId,productId,remark,status,online,demandUrl,codeUrl,designUrl,docUrl,helpUrl,operDocUrl,seqNo,mmUserid,mmUsername,ctime,ntype,sinceVersion,childrenCnt,ltime,tagIds,tagNames,pidPaths,lvl,isTpl,budgetHours,budgetStaffNu,budgetWorkload,budgetAmount,phaseId;<br>
* xm_menu 功能表的所有字段名: <br> * xm_menu 功能表的所有字段名: <br>
* menu_id,menu_name,pmenu_id,product_id,remark,status,online,demand_url,code_url,design_url,doc_url,help_url,oper_doc_url,seq_no,mm_userid,mm_username,ctime,ntype,since_version,children_cnt,ltime,tag_ids,tag_names,pid_paths,lvl,is_tpl;<br>
* menu_id,menu_name,pmenu_id,product_id,remark,status,online,demand_url,code_url,design_url,doc_url,help_url,oper_doc_url,seq_no,mm_userid,mm_username,ctime,ntype,since_version,children_cnt,ltime,tag_ids,tag_names,pid_paths,lvl,is_tpl,budget_hours,budget_staff_nu,budget_workload,budget_amount,phase_id;<br>
* 当前主键(包括多主键):<br> * 当前主键(包括多主键):<br>
* menu_id;<br> * menu_id;<br>
*/ */
@ -61,10 +62,10 @@ public class XmMenu implements java.io.Serializable {
@ApiModelProperty(notes="排序序号",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="排序序号",allowEmptyValue=true,example="",allowableValues="")
String seqNo; String seqNo;
@ApiModelProperty(notes="需求管理员编号",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="故事管理员编号",allowEmptyValue=true,example="",allowableValues="")
String mmUserid; String mmUserid;
@ApiModelProperty(notes="需求管理员姓名",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="故事管理员姓名",allowEmptyValue=true,example="",allowableValues="")
String mmUsername; String mmUsername;
@ApiModelProperty(notes="创建时间",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="创建时间",allowEmptyValue=true,example="",allowableValues="")
@ -96,6 +97,21 @@ public class XmMenu implements java.io.Serializable {
@ApiModelProperty(notes="是否为模板",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="是否为模板",allowEmptyValue=true,example="",allowableValues="")
String isTpl; String isTpl;
@ApiModelProperty(notes="预算工时总数从上到下分配",allowEmptyValue=true,example="",allowableValues="")
BigDecimal budgetHours;
@ApiModelProperty(notes="投入人员数,从上到下分配",allowEmptyValue=true,example="",allowableValues="")
Integer budgetStaffNu;
@ApiModelProperty(notes="总工作量单位人时,从上到下分配,下级汇总不能大于上级",allowEmptyValue=true,example="",allowableValues="")
BigDecimal budgetWorkload;
@ApiModelProperty(notes="预算金额,从上到下汇总,从上到下分配,下级汇总不能大于上级",allowEmptyValue=true,example="",allowableValues="")
BigDecimal budgetAmount;
@ApiModelProperty(notes="计划编号",allowEmptyValue=true,example="",allowableValues="")
String phaseId;
/**功能编号**/ /**功能编号**/
public XmMenu(String menuId) { public XmMenu(String menuId) {
@ -191,13 +207,13 @@ public class XmMenu implements java.io.Serializable {
this.seqNo = seqNo; this.seqNo = seqNo;
} }
/** /**
* 需求管理员编号
* 故事管理员编号
**/ **/
public void setMmUserid(String mmUserid) { public void setMmUserid(String mmUserid) {
this.mmUserid = mmUserid; this.mmUserid = mmUserid;
} }
/** /**
* 需求管理员姓名
* 故事管理员姓名
**/ **/
public void setMmUsername(String mmUsername) { public void setMmUsername(String mmUsername) {
this.mmUsername = mmUsername; this.mmUsername = mmUsername;
@ -262,6 +278,36 @@ public class XmMenu implements java.io.Serializable {
public void setIsTpl(String isTpl) { public void setIsTpl(String isTpl) {
this.isTpl = isTpl; this.isTpl = isTpl;
} }
/**
* 预算工时总数从上到下分配
**/
public void setBudgetHours(BigDecimal budgetHours) {
this.budgetHours = budgetHours;
}
/**
* 投入人员数从上到下分配
**/
public void setBudgetStaffNu(Integer budgetStaffNu) {
this.budgetStaffNu = budgetStaffNu;
}
/**
* 总工作量单位人时从上到下分配下级汇总不能大于上级
**/
public void setBudgetWorkload(BigDecimal budgetWorkload) {
this.budgetWorkload = budgetWorkload;
}
/**
* 预算金额从上到下汇总从上到下分配下级汇总不能大于上级
**/
public void setBudgetAmount(BigDecimal budgetAmount) {
this.budgetAmount = budgetAmount;
}
/**
* 计划编号
**/
public void setPhaseId(String phaseId) {
this.phaseId = phaseId;
}
/** /**
* 功能编号 * 功能编号
@ -348,13 +394,13 @@ public class XmMenu implements java.io.Serializable {
return this.seqNo; return this.seqNo;
} }
/** /**
* 需求管理员编号
* 故事管理员编号
**/ **/
public String getMmUserid() { public String getMmUserid() {
return this.mmUserid; return this.mmUserid;
} }
/** /**
* 需求管理员姓名
* 故事管理员姓名
**/ **/
public String getMmUsername() { public String getMmUsername() {
return this.mmUsername; return this.mmUsername;
@ -419,5 +465,35 @@ public class XmMenu implements java.io.Serializable {
public String getIsTpl() { public String getIsTpl() {
return this.isTpl; return this.isTpl;
} }
/**
* 预算工时总数从上到下分配
**/
public BigDecimal getBudgetHours() {
return this.budgetHours;
}
/**
* 投入人员数从上到下分配
**/
public Integer getBudgetStaffNu() {
return this.budgetStaffNu;
}
/**
* 总工作量单位人时从上到下分配下级汇总不能大于上级
**/
public BigDecimal getBudgetWorkload() {
return this.budgetWorkload;
}
/**
* 预算金额从上到下汇总从上到下分配下级汇总不能大于上级
**/
public BigDecimal getBudgetAmount() {
return this.budgetAmount;
}
/**
* 计划编号
**/
public String getPhaseId() {
return this.phaseId;
}
} }

71
xm-core/src/main/java/com/xm/core/entity/XmProduct.java

@ -3,13 +3,14 @@ package com.xm.core.entity;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.util.Date; import java.util.Date;
import java.math.BigDecimal;
/** /**
* 组织 com 顶级模块 xm 大模块 core 小模块 <br> * 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmProduct所有属性名: <br> * 实体 XmProduct所有属性名: <br>
* id,productName,branchId,remark,version,pmUserid,pmUsername,ctime,deptid,pstatus,startTime,endTime,deptName,admUserid,admUsername,assistantUserid,assistantUsername,bizProcInstId,bizFlowState,isTpl,baselineId,baseTime,code;<br>
* id,productName,branchId,remark,version,pmUserid,pmUsername,ctime,deptid,pstatus,startTime,endTime,deptName,admUserid,admUsername,assistantUserid,assistantUsername,bizProcInstId,bizFlowState,isTpl,baselineId,baseTime,code,pbudgetWorkload,pbudgetAmount,pmenuBudgetWorkload,pmenuBudgetAmount;<br>
* xm_product 产品表的所有字段名: <br> * xm_product 产品表的所有字段名: <br>
* id,product_name,branch_id,remark,version,pm_userid,pm_username,ctime,deptid,pstatus,start_time,end_time,dept_name,adm_userid,adm_username,assistant_userid,assistant_username,biz_proc_inst_id,biz_flow_state,is_tpl,baseline_id,base_time,code;<br>
* id,product_name,branch_id,remark,version,pm_userid,pm_username,ctime,deptid,pstatus,start_time,end_time,dept_name,adm_userid,adm_username,assistant_userid,assistant_username,biz_proc_inst_id,biz_flow_state,is_tpl,baseline_id,base_time,code,pbudget_workload,pbudget_amount,pmenu_budget_workload,pmenu_budget_amount;<br>
* 当前主键(包括多主键):<br> * 当前主键(包括多主键):<br>
* id;<br> * id;<br>
*/ */
@ -46,7 +47,7 @@ public class XmProduct implements java.io.Serializable {
@ApiModelProperty(notes="归属部门",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="归属部门",allowEmptyValue=true,example="",allowableValues="")
String deptid; String deptid;
@ApiModelProperty(notes="产品计划:0未开始,1研发中,2已完成",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="产品阶段:0未开始,1研发中,2已完成,3已关闭",allowEmptyValue=true,example="",allowableValues="")
String pstatus; String pstatus;
@ApiModelProperty(notes="开始日期",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="开始日期",allowEmptyValue=true,example="",allowableValues="")
@ -87,6 +88,18 @@ public class XmProduct implements java.io.Serializable {
@ApiModelProperty(notes="产品编码",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="产品编码",allowEmptyValue=true,example="",allowableValues="")
String code; String code;
@ApiModelProperty(notes="产品预计总工作量,应该大于一级需求总预算工作量",allowEmptyValue=true,example="",allowableValues="")
BigDecimal pbudgetWorkload;
@ApiModelProperty(notes="产品预计总金额,应该大于一级需求总预算金额",allowEmptyValue=true,example="",allowableValues="")
BigDecimal pbudgetAmount;
@ApiModelProperty(notes="从需求汇总来的总预算工作量",allowEmptyValue=true,example="",allowableValues="")
BigDecimal pmenuBudgetWorkload;
@ApiModelProperty(notes="从需求汇总的总预算金额",allowEmptyValue=true,example="",allowableValues="")
BigDecimal pmenuBudgetAmount;
/**产品编号**/ /**产品编号**/
public XmProduct(String id) { public XmProduct(String id) {
@ -152,7 +165,7 @@ public class XmProduct implements java.io.Serializable {
this.deptid = deptid; this.deptid = deptid;
} }
/** /**
* 产品计划:0未开始,1研发中,2已完成
* 产品阶段:0未开始,1研发中,2已完成,3已关闭
**/ **/
public void setPstatus(String pstatus) { public void setPstatus(String pstatus) {
this.pstatus = pstatus; this.pstatus = pstatus;
@ -235,6 +248,30 @@ public class XmProduct implements java.io.Serializable {
public void setCode(String code) { public void setCode(String code) {
this.code = code; this.code = code;
} }
/**
* 产品预计总工作量应该大于一级需求总预算工作量
**/
public void setPbudgetWorkload(BigDecimal pbudgetWorkload) {
this.pbudgetWorkload = pbudgetWorkload;
}
/**
* 产品预计总金额应该大于一级需求总预算金额
**/
public void setPbudgetAmount(BigDecimal pbudgetAmount) {
this.pbudgetAmount = pbudgetAmount;
}
/**
* 从需求汇总来的总预算工作量
**/
public void setPmenuBudgetWorkload(BigDecimal pmenuBudgetWorkload) {
this.pmenuBudgetWorkload = pmenuBudgetWorkload;
}
/**
* 从需求汇总的总预算金额
**/
public void setPmenuBudgetAmount(BigDecimal pmenuBudgetAmount) {
this.pmenuBudgetAmount = pmenuBudgetAmount;
}
/** /**
* 产品编号 * 产品编号
@ -291,7 +328,7 @@ public class XmProduct implements java.io.Serializable {
return this.deptid; return this.deptid;
} }
/** /**
* 产品计划:0未开始,1研发中,2已完成
* 产品阶段:0未开始,1研发中,2已完成,3已关闭
**/ **/
public String getPstatus() { public String getPstatus() {
return this.pstatus; return this.pstatus;
@ -374,5 +411,29 @@ public class XmProduct implements java.io.Serializable {
public String getCode() { public String getCode() {
return this.code; return this.code;
} }
/**
* 产品预计总工作量应该大于一级需求总预算工作量
**/
public BigDecimal getPbudgetWorkload() {
return this.pbudgetWorkload;
}
/**
* 产品预计总金额应该大于一级需求总预算金额
**/
public BigDecimal getPbudgetAmount() {
return this.pbudgetAmount;
}
/**
* 从需求汇总来的总预算工作量
**/
public BigDecimal getPmenuBudgetWorkload() {
return this.pmenuBudgetWorkload;
}
/**
* 从需求汇总的总预算金额
**/
public BigDecimal getPmenuBudgetAmount() {
return this.pmenuBudgetAmount;
}
} }

122
xm-core/src/main/java/com/xm/core/entity/XmProjectGroup.java

@ -1,14 +1,15 @@
package com.xm.core.entity;
package com.xm.core.entity;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
/** /**
* 组织 com.qqkj 顶级模块 oa 大模块 xm 小模块 <br>
* 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmProjectGroup所有属性名: <br> * 实体 XmProjectGroup所有属性名: <br>
* id,groupName,projectId,pgTypeId,pgTypeName;<br>
* XM.xm_project_group xm_project_group的所有字段名: <br>
* id,group_name,project_id,pg_type_id,pg_type_name;<br>
* id,groupName,projectId,pgTypeId,pgTypeName,leaderUserid,leaderUsername,ctime,ltime,productId,branchId,pgClass;<br>
* xm_project_group xm_project_group的所有字段名: <br>
* id,group_name,project_id,pg_type_id,pg_type_name,leader_userid,leader_username,ctime,ltime,product_id,branch_id,pg_class;<br>
* 当前主键(包括多主键):<br> * 当前主键(包括多主键):<br>
* id;<br> * id;<br>
*/ */
@ -24,7 +25,7 @@ public class XmProjectGroup implements java.io.Serializable {
@ApiModelProperty(notes="团队名称",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="团队名称",allowEmptyValue=true,example="",allowableValues="")
String groupName; String groupName;
@ApiModelProperty(notes="项目编号",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="项目编号-属于产品线则可为空",allowEmptyValue=true,example="",allowableValues="")
String projectId; String projectId;
@ApiModelProperty(notes="项目团队类型编号",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="项目团队类型编号",allowEmptyValue=true,example="",allowableValues="")
@ -32,6 +33,27 @@ public class XmProjectGroup implements java.io.Serializable {
@ApiModelProperty(notes="团队类型名称",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="团队类型名称",allowEmptyValue=true,example="",allowableValues="")
String pgTypeName; String pgTypeName;
@ApiModelProperty(notes="团队负责人",allowEmptyValue=true,example="",allowableValues="")
String leaderUserid;
@ApiModelProperty(notes="负责人姓名",allowEmptyValue=true,example="",allowableValues="")
String leaderUsername;
@ApiModelProperty(notes="创建时间",allowEmptyValue=true,example="",allowableValues="")
Date ctime;
@ApiModelProperty(notes="更新时间",allowEmptyValue=true,example="",allowableValues="")
Date ltime;
@ApiModelProperty(notes="产品编号,属于项目组的团队则可为空",allowEmptyValue=true,example="",allowableValues="")
String productId;
@ApiModelProperty(notes="机构编号",allowEmptyValue=true,example="",allowableValues="")
String branchId;
@ApiModelProperty(notes="团队类别0项目1产品",allowEmptyValue=true,example="",allowableValues="")
String pgClass;
/**主键**/ /**主键**/
public XmProjectGroup(String id) { public XmProjectGroup(String id) {
@ -55,7 +77,7 @@ public class XmProjectGroup implements java.io.Serializable {
this.groupName = groupName; this.groupName = groupName;
} }
/** /**
* 项目编号
* 项目编号-属于产品线则可为空
**/ **/
public void setProjectId(String projectId) { public void setProjectId(String projectId) {
this.projectId = projectId; this.projectId = projectId;
@ -72,6 +94,48 @@ public class XmProjectGroup implements java.io.Serializable {
public void setPgTypeName(String pgTypeName) { public void setPgTypeName(String pgTypeName) {
this.pgTypeName = pgTypeName; this.pgTypeName = pgTypeName;
} }
/**
* 团队负责人
**/
public void setLeaderUserid(String leaderUserid) {
this.leaderUserid = leaderUserid;
}
/**
* 负责人姓名
**/
public void setLeaderUsername(String leaderUsername) {
this.leaderUsername = leaderUsername;
}
/**
* 创建时间
**/
public void setCtime(Date ctime) {
this.ctime = ctime;
}
/**
* 更新时间
**/
public void setLtime(Date ltime) {
this.ltime = ltime;
}
/**
* 产品编号属于项目组的团队则可为空
**/
public void setProductId(String productId) {
this.productId = productId;
}
/**
* 机构编号
**/
public void setBranchId(String branchId) {
this.branchId = branchId;
}
/**
* 团队类别0项目1产品
**/
public void setPgClass(String pgClass) {
this.pgClass = pgClass;
}
/** /**
* 主键 * 主键
@ -86,7 +150,7 @@ public class XmProjectGroup implements java.io.Serializable {
return this.groupName; return this.groupName;
} }
/** /**
* 项目编号
* 项目编号-属于产品线则可为空
**/ **/
public String getProjectId() { public String getProjectId() {
return this.projectId; return this.projectId;
@ -103,5 +167,47 @@ public class XmProjectGroup implements java.io.Serializable {
public String getPgTypeName() { public String getPgTypeName() {
return this.pgTypeName; return this.pgTypeName;
} }
/**
* 团队负责人
**/
public String getLeaderUserid() {
return this.leaderUserid;
}
/**
* 负责人姓名
**/
public String getLeaderUsername() {
return this.leaderUsername;
}
/**
* 创建时间
**/
public Date getCtime() {
return this.ctime;
}
/**
* 更新时间
**/
public Date getLtime() {
return this.ltime;
}
/**
* 产品编号属于项目组的团队则可为空
**/
public String getProductId() {
return this.productId;
}
/**
* 机构编号
**/
public String getBranchId() {
return this.branchId;
}
/**
* 团队类别0项目1产品
**/
public String getPgClass() {
return this.pgClass;
}
} }

7
xm-core/src/main/java/com/xm/core/entity/XmProjectGroupUser.java

@ -1,15 +1,14 @@
package com.xm.core.entity;
package com.xm.core.entity;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.util.Date; import java.util.Date;
/** /**
* 组织 com.qqkj 顶级模块 xm 大模块 core 小模块 <br>
* 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmProjectGroupUser所有属性名: <br> * 实体 XmProjectGroupUser所有属性名: <br>
* joinTime,id,groupId,userid,username,isHead,outTime,status,bizProcInstId,bizFlowState,projectId;<br> * joinTime,id,groupId,userid,username,isHead,outTime,status,bizProcInstId,bizFlowState,projectId;<br>
* XM.xm_project_group_user xm_project_group_user的所有字段名: <br>
* xm_project_group_user xm_project_group_user的所有字段名: <br>
* join_time,id,group_id,userid,username,is_head,out_time,status,biz_proc_inst_id,biz_flow_state,project_id;<br> * join_time,id,group_id,userid,username,is_head,out_time,status,biz_proc_inst_id,biz_flow_state,project_id;<br>
* 当前主键(包括多主键):<br> * 当前主键(包括多主键):<br>
* id;<br> * id;<br>

120
xm-core/src/main/java/com/xm/core/entity/XmProjectPhase.java

@ -8,34 +8,34 @@ import java.math.BigDecimal;
/** /**
* 组织 com 顶级模块 xm 大模块 core 小模块 <br> * 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmProjectPhase所有属性名: <br> * 实体 XmProjectPhase所有属性名: <br>
* id,phaseName,remark,parentPhaseId,branchId,projectId,beginDate,endDate,phaseBudgetHours,phaseBudgetStaffNu,ctime,phaseBudgetNouserAt,phaseBudgetInnerUserAt,phaseBudgetOutUserAt,projectBaselineId,bizProcInstId,bizFlowState,phaseBudgetWorkload,phaseActWorkload,phaseActInnerUserWorkload,phaseActOutUserWorkload,taskType,planType,seqNo,phaseBudgetInnerUserWorkload,phaseBudgetOutUserWorkload,actNouserAt,actInnerUserAt,phaseBudgetInnerUserPrice,phaseBudgetOutUserPrice,phaseBudgetOutUserCnt,phaseBudgetInnerUserCnt,actRate,phaseStatus,actOutUserAt,taskCnt,finishTaskCnt,iterationCnt,calcTime,taskBudgetWorkload,taskBudgetAt,mngUserid,mngUsername,milestone,pleaf,tagIds,tagNames,ntype,childrenCnt,ltime,isKeyPath,pidPaths,lvl,isTpl;<br>
* xm_project_phase 项目计划模板的所有字段名: <br>
* id,phase_name,remark,parent_phase_id,branch_id,project_id,begin_date,end_date,phase_budget_hours,phase_budget_staff_nu,ctime,phase_budget_nouser_at,phase_budget_inner_user_at,phase_budget_out_user_at,project_baseline_id,biz_proc_inst_id,biz_flow_state,phase_budget_workload,phase_act_workload,phase_act_inner_user_workload,phase_act_out_user_workload,task_type,plan_type,seq_no,phase_budget_inner_user_workload,phase_budget_out_user_workload,act_nouser_at,act_inner_user_at,phase_budget_inner_user_price,phase_budget_out_user_price,phase_budget_out_user_cnt,phase_budget_inner_user_cnt,act_rate,phase_status,act_out_user_at,task_cnt,finish_task_cnt,iteration_cnt,calc_time,task_budget_workload,task_budget_at,mng_userid,mng_username,milestone,pleaf,tag_ids,tag_names,ntype,children_cnt,ltime,is_key_path,pid_paths,lvl,is_tpl;<br>
* id,phaseName,remark,parentPhaseId,branchId,projectId,beginDate,endDate,phaseBudgetHours,phaseBudgetStaffNu,ctime,phaseBudgetNouserAt,phaseBudgetInnerUserAt,phaseBudgetOutUserAt,projectBaselineId,bizProcInstId,bizFlowState,phaseBudgetWorkload,phaseActWorkload,phaseActInnerUserWorkload,phaseActOutUserWorkload,taskType,planType,seqNo,phaseBudgetInnerUserWorkload,phaseBudgetOutUserWorkload,actNouserAt,actInnerUserAt,phaseBudgetInnerUserPrice,phaseBudgetOutUserPrice,phaseBudgetOutUserCnt,phaseBudgetInnerUserCnt,actRate,phaseStatus,actOutUserAt,taskCnt,finishTaskCnt,iterationCnt,calcTime,taskBudgetWorkload,taskBudgetAt,mngUserid,mngUsername,milestone,pleaf,tagIds,tagNames,ntype,childrenCnt,ltime,isKeyPath,pidPaths,lvl,isTpl,phaseClass,productId;<br>
* xm_project_phase 项目阶段模板的所有字段名: <br>
* id,phase_name,remark,parent_phase_id,branch_id,project_id,begin_date,end_date,phase_budget_hours,phase_budget_staff_nu,ctime,phase_budget_nouser_at,phase_budget_inner_user_at,phase_budget_out_user_at,project_baseline_id,biz_proc_inst_id,biz_flow_state,phase_budget_workload,phase_act_workload,phase_act_inner_user_workload,phase_act_out_user_workload,task_type,plan_type,seq_no,phase_budget_inner_user_workload,phase_budget_out_user_workload,act_nouser_at,act_inner_user_at,phase_budget_inner_user_price,phase_budget_out_user_price,phase_budget_out_user_cnt,phase_budget_inner_user_cnt,act_rate,phase_status,act_out_user_at,task_cnt,finish_task_cnt,iteration_cnt,calc_time,task_budget_workload,task_budget_at,mng_userid,mng_username,milestone,pleaf,tag_ids,tag_names,ntype,children_cnt,ltime,is_key_path,pid_paths,lvl,is_tpl,phase_class,product_id;<br>
* 当前主键(包括多主键):<br> * 当前主键(包括多主键):<br>
* id;<br> * id;<br>
*/ */
@ApiModel(description="项目计划模板")
@ApiModel(description="项目阶段模板")
public class XmProjectPhase implements java.io.Serializable { public class XmProjectPhase implements java.io.Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ApiModelProperty(notes="计划主键,主键",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="阶段主键,主键",allowEmptyValue=true,example="",allowableValues="")
String id; String id;
@ApiModelProperty(notes="计划名称",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="阶段名称",allowEmptyValue=true,example="",allowableValues="")
String phaseName; String phaseName;
@ApiModelProperty(notes="备注",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="备注",allowEmptyValue=true,example="",allowableValues="")
String remark; String remark;
@ApiModelProperty(notes="上级计划编号",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="上级阶段编号",allowEmptyValue=true,example="",allowableValues="")
String parentPhaseId; String parentPhaseId;
@ApiModelProperty(notes="机构编号",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="机构编号",allowEmptyValue=true,example="",allowableValues="")
String branchId; String branchId;
@ApiModelProperty(notes="当前项目编号",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="当前项目编号,如果是项目计划,必填项目",allowEmptyValue=true,example="",allowableValues="")
String projectId; String projectId;
@ApiModelProperty(notes="开始时间",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="开始时间",allowEmptyValue=true,example="",allowableValues="")
@ -44,22 +44,22 @@ public class XmProjectPhase implements java.io.Serializable {
@ApiModelProperty(notes="结束时间",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="结束时间",allowEmptyValue=true,example="",allowableValues="")
Date endDate; Date endDate;
@ApiModelProperty(notes="工时(不包括下一级)-应该大于或等于task中总工时",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="工时(上到下控制大于儿子总数)-应该大于或等于task中总工时",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetHours; BigDecimal phaseBudgetHours;
@ApiModelProperty(notes="投入人员数(不包括下一级)-应该大于或等于task中总人数",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="投入人员数(上到下控制大于儿子总数)-应该大于或等于task中总人数",allowEmptyValue=true,example="",allowableValues="")
Integer phaseBudgetStaffNu; Integer phaseBudgetStaffNu;
@ApiModelProperty(notes="创建时间",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="创建时间",allowEmptyValue=true,example="",allowableValues="")
Date ctime; Date ctime;
@ApiModelProperty(notes="非人力成本总预算(不包括下一级)-应该大于或等于task中非人力总成本",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="非人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中非人力总成本",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetNouserAt; BigDecimal phaseBudgetNouserAt;
@ApiModelProperty(notes="内部人力成本总预算(不包括下一级)-应该大于或等于task中内部人力总成本",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="内部人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetInnerUserAt; BigDecimal phaseBudgetInnerUserAt;
@ApiModelProperty(notes="外购人力成本总预算(不包括下一级)-应该大于或等于task中外购总成本",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="外购人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetOutUserAt; BigDecimal phaseBudgetOutUserAt;
@ApiModelProperty(notes="项目级基线",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="项目级基线",allowEmptyValue=true,example="",allowableValues="")
@ -71,7 +71,7 @@ public class XmProjectPhase implements java.io.Serializable {
@ApiModelProperty(notes="当前流程状态0初始1审批中2审批通过3审批不通过4流程取消或者删除",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="当前流程状态0初始1审批中2审批通过3审批不通过4流程取消或者删除",allowEmptyValue=true,example="",allowableValues="")
String bizFlowState; String bizFlowState;
@ApiModelProperty(notes="总工作量单位人时-应该大于或者等于task中的预算总工作量",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="总工作量单位人时上到下控制大于儿子总数-应该大于或者等于task中的预算总工作量",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetWorkload; BigDecimal phaseBudgetWorkload;
@ApiModelProperty(notes="已完成工作量单位人时-从task中的实际工作量算出",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="已完成工作量单位人时-从task中的实际工作量算出",allowEmptyValue=true,example="",allowableValues="")
@ -92,10 +92,10 @@ public class XmProjectPhase implements java.io.Serializable {
@ApiModelProperty(notes="顺序号",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="顺序号",allowEmptyValue=true,example="",allowableValues="")
String seqNo; String seqNo;
@ApiModelProperty(notes="内部人力工作量总预算(不包括下一级)-应该大于或等于task中内部人力总成本",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="内部人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetInnerUserWorkload; BigDecimal phaseBudgetInnerUserWorkload;
@ApiModelProperty(notes="外购人力工作量总预算(不包括下一级)-应该大于或等于task中外购总成本",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="外购人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本",allowEmptyValue=true,example="",allowableValues="")
BigDecimal phaseBudgetOutUserWorkload; BigDecimal phaseBudgetOutUserWorkload;
@ApiModelProperty(notes="实际非人力成本-来自任务表合计",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="实际非人力成本-来自任务表合计",allowEmptyValue=true,example="",allowableValues="")
@ -119,7 +119,7 @@ public class XmProjectPhase implements java.io.Serializable {
@ApiModelProperty(notes="实际进度0-100",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="实际进度0-100",allowEmptyValue=true,example="",allowableValues="")
BigDecimal actRate; BigDecimal actRate;
@ApiModelProperty(notes="计划状态0初始1执行中2完工3关闭4删除中5已删除6暂停",allowEmptyValue=true,example="",allowableValues="")
@ApiModelProperty(notes="阶段状态0初始1执行中2完工3关闭4删除中5已删除6暂停",allowEmptyValue=true,example="",allowableValues="")
String phaseStatus; String phaseStatus;
@ApiModelProperty(notes="实际外部人力成本",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="实际外部人力成本",allowEmptyValue=true,example="",allowableValues="")
@ -181,24 +181,30 @@ public class XmProjectPhase implements java.io.Serializable {
@ApiModelProperty(notes="是否为模板",allowEmptyValue=true,example="",allowableValues="") @ApiModelProperty(notes="是否为模板",allowEmptyValue=true,example="",allowableValues="")
String isTpl; String isTpl;
@ApiModelProperty(notes="计划分类0项目1产品",allowEmptyValue=true,example="",allowableValues="")
String phaseClass;
@ApiModelProperty(notes="如果是产品计划,必填产品编号,其它的可不填",allowEmptyValue=true,example="",allowableValues="")
String productId;
/**计划主键**/
/**阶段主键**/
public XmProjectPhase(String id) { public XmProjectPhase(String id) {
this.id = id; this.id = id;
} }
/**项目计划模板**/
/**项目阶段模板**/
public XmProjectPhase() { public XmProjectPhase() {
} }
/** /**
* 计划主键
* 阶段主键
**/ **/
public void setId(String id) { public void setId(String id) {
this.id = id; this.id = id;
} }
/** /**
* 计划名称
* 阶段名称
**/ **/
public void setPhaseName(String phaseName) { public void setPhaseName(String phaseName) {
this.phaseName = phaseName; this.phaseName = phaseName;
@ -210,7 +216,7 @@ public class XmProjectPhase implements java.io.Serializable {
this.remark = remark; this.remark = remark;
} }
/** /**
* 上级计划编号
* 上级阶段编号
**/ **/
public void setParentPhaseId(String parentPhaseId) { public void setParentPhaseId(String parentPhaseId) {
this.parentPhaseId = parentPhaseId; this.parentPhaseId = parentPhaseId;
@ -222,7 +228,7 @@ public class XmProjectPhase implements java.io.Serializable {
this.branchId = branchId; this.branchId = branchId;
} }
/** /**
* 当前项目编号
* 当前项目编号如果是项目计划必填项目
**/ **/
public void setProjectId(String projectId) { public void setProjectId(String projectId) {
this.projectId = projectId; this.projectId = projectId;
@ -240,13 +246,13 @@ public class XmProjectPhase implements java.io.Serializable {
this.endDate = endDate; this.endDate = endDate;
} }
/** /**
* 工时(不包括下一级)-应该大于或等于task中总工时
* 工时(上到下控制大于儿子总数)-应该大于或等于task中总工时
**/ **/
public void setPhaseBudgetHours(BigDecimal phaseBudgetHours) { public void setPhaseBudgetHours(BigDecimal phaseBudgetHours) {
this.phaseBudgetHours = phaseBudgetHours; this.phaseBudgetHours = phaseBudgetHours;
} }
/** /**
* 投入人员数(不包括下一级)-应该大于或等于task中总人数
* 投入人员数(上到下控制大于儿子总数)-应该大于或等于task中总人数
**/ **/
public void setPhaseBudgetStaffNu(Integer phaseBudgetStaffNu) { public void setPhaseBudgetStaffNu(Integer phaseBudgetStaffNu) {
this.phaseBudgetStaffNu = phaseBudgetStaffNu; this.phaseBudgetStaffNu = phaseBudgetStaffNu;
@ -258,19 +264,19 @@ public class XmProjectPhase implements java.io.Serializable {
this.ctime = ctime; this.ctime = ctime;
} }
/** /**
* 非人力成本总预算(不包括下一级)-应该大于或等于task中非人力总成本
* 非人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中非人力总成本
**/ **/
public void setPhaseBudgetNouserAt(BigDecimal phaseBudgetNouserAt) { public void setPhaseBudgetNouserAt(BigDecimal phaseBudgetNouserAt) {
this.phaseBudgetNouserAt = phaseBudgetNouserAt; this.phaseBudgetNouserAt = phaseBudgetNouserAt;
} }
/** /**
* 内部人力成本总预算(不包括下一级)-应该大于或等于task中内部人力总成本
* 内部人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本
**/ **/
public void setPhaseBudgetInnerUserAt(BigDecimal phaseBudgetInnerUserAt) { public void setPhaseBudgetInnerUserAt(BigDecimal phaseBudgetInnerUserAt) {
this.phaseBudgetInnerUserAt = phaseBudgetInnerUserAt; this.phaseBudgetInnerUserAt = phaseBudgetInnerUserAt;
} }
/** /**
* 外购人力成本总预算(不包括下一级)-应该大于或等于task中外购总成本
* 外购人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本
**/ **/
public void setPhaseBudgetOutUserAt(BigDecimal phaseBudgetOutUserAt) { public void setPhaseBudgetOutUserAt(BigDecimal phaseBudgetOutUserAt) {
this.phaseBudgetOutUserAt = phaseBudgetOutUserAt; this.phaseBudgetOutUserAt = phaseBudgetOutUserAt;
@ -294,7 +300,7 @@ public class XmProjectPhase implements java.io.Serializable {
this.bizFlowState = bizFlowState; this.bizFlowState = bizFlowState;
} }
/** /**
* 总工作量单位人时-应该大于或者等于task中的预算总工作量
* 总工作量单位人时上到下控制大于儿子总数-应该大于或者等于task中的预算总工作量
**/ **/
public void setPhaseBudgetWorkload(BigDecimal phaseBudgetWorkload) { public void setPhaseBudgetWorkload(BigDecimal phaseBudgetWorkload) {
this.phaseBudgetWorkload = phaseBudgetWorkload; this.phaseBudgetWorkload = phaseBudgetWorkload;
@ -336,13 +342,13 @@ public class XmProjectPhase implements java.io.Serializable {
this.seqNo = seqNo; this.seqNo = seqNo;
} }
/** /**
* 内部人力工作量总预算(不包括下一级)-应该大于或等于task中内部人力总成本
* 内部人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本
**/ **/
public void setPhaseBudgetInnerUserWorkload(BigDecimal phaseBudgetInnerUserWorkload) { public void setPhaseBudgetInnerUserWorkload(BigDecimal phaseBudgetInnerUserWorkload) {
this.phaseBudgetInnerUserWorkload = phaseBudgetInnerUserWorkload; this.phaseBudgetInnerUserWorkload = phaseBudgetInnerUserWorkload;
} }
/** /**
* 外购人力工作量总预算(不包括下一级)-应该大于或等于task中外购总成本
* 外购人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本
**/ **/
public void setPhaseBudgetOutUserWorkload(BigDecimal phaseBudgetOutUserWorkload) { public void setPhaseBudgetOutUserWorkload(BigDecimal phaseBudgetOutUserWorkload) {
this.phaseBudgetOutUserWorkload = phaseBudgetOutUserWorkload; this.phaseBudgetOutUserWorkload = phaseBudgetOutUserWorkload;
@ -390,7 +396,7 @@ public class XmProjectPhase implements java.io.Serializable {
this.actRate = actRate; this.actRate = actRate;
} }
/** /**
* 计划状态0初始1执行中2完工3关闭4删除中5已删除6暂停
* 阶段状态0初始1执行中2完工3关闭4删除中5已删除6暂停
**/ **/
public void setPhaseStatus(String phaseStatus) { public void setPhaseStatus(String phaseStatus) {
this.phaseStatus = phaseStatus; this.phaseStatus = phaseStatus;
@ -515,15 +521,27 @@ public class XmProjectPhase implements java.io.Serializable {
public void setIsTpl(String isTpl) { public void setIsTpl(String isTpl) {
this.isTpl = isTpl; this.isTpl = isTpl;
} }
/**
* 计划分类0项目1产品
**/
public void setPhaseClass(String phaseClass) {
this.phaseClass = phaseClass;
}
/**
* 如果是产品计划必填产品编号其它的可不填
**/
public void setProductId(String productId) {
this.productId = productId;
}
/** /**
* 计划主键
* 阶段主键
**/ **/
public String getId() { public String getId() {
return this.id; return this.id;
} }
/** /**
* 计划名称
* 阶段名称
**/ **/
public String getPhaseName() { public String getPhaseName() {
return this.phaseName; return this.phaseName;
@ -535,7 +553,7 @@ public class XmProjectPhase implements java.io.Serializable {
return this.remark; return this.remark;
} }
/** /**
* 上级计划编号
* 上级阶段编号
**/ **/
public String getParentPhaseId() { public String getParentPhaseId() {
return this.parentPhaseId; return this.parentPhaseId;
@ -547,7 +565,7 @@ public class XmProjectPhase implements java.io.Serializable {
return this.branchId; return this.branchId;
} }
/** /**
* 当前项目编号
* 当前项目编号如果是项目计划必填项目
**/ **/
public String getProjectId() { public String getProjectId() {
return this.projectId; return this.projectId;
@ -565,13 +583,13 @@ public class XmProjectPhase implements java.io.Serializable {
return this.endDate; return this.endDate;
} }
/** /**
* 工时(不包括下一级)-应该大于或等于task中总工时
* 工时(上到下控制大于儿子总数)-应该大于或等于task中总工时
**/ **/
public BigDecimal getPhaseBudgetHours() { public BigDecimal getPhaseBudgetHours() {
return this.phaseBudgetHours; return this.phaseBudgetHours;
} }
/** /**
* 投入人员数(不包括下一级)-应该大于或等于task中总人数
* 投入人员数(上到下控制大于儿子总数)-应该大于或等于task中总人数
**/ **/
public Integer getPhaseBudgetStaffNu() { public Integer getPhaseBudgetStaffNu() {
return this.phaseBudgetStaffNu; return this.phaseBudgetStaffNu;
@ -583,19 +601,19 @@ public class XmProjectPhase implements java.io.Serializable {
return this.ctime; return this.ctime;
} }
/** /**
* 非人力成本总预算(不包括下一级)-应该大于或等于task中非人力总成本
* 非人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中非人力总成本
**/ **/
public BigDecimal getPhaseBudgetNouserAt() { public BigDecimal getPhaseBudgetNouserAt() {
return this.phaseBudgetNouserAt; return this.phaseBudgetNouserAt;
} }
/** /**
* 内部人力成本总预算(不包括下一级)-应该大于或等于task中内部人力总成本
* 内部人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本
**/ **/
public BigDecimal getPhaseBudgetInnerUserAt() { public BigDecimal getPhaseBudgetInnerUserAt() {
return this.phaseBudgetInnerUserAt; return this.phaseBudgetInnerUserAt;
} }
/** /**
* 外购人力成本总预算(不包括下一级)-应该大于或等于task中外购总成本
* 外购人力成本总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本
**/ **/
public BigDecimal getPhaseBudgetOutUserAt() { public BigDecimal getPhaseBudgetOutUserAt() {
return this.phaseBudgetOutUserAt; return this.phaseBudgetOutUserAt;
@ -619,7 +637,7 @@ public class XmProjectPhase implements java.io.Serializable {
return this.bizFlowState; return this.bizFlowState;
} }
/** /**
* 总工作量单位人时-应该大于或者等于task中的预算总工作量
* 总工作量单位人时上到下控制大于儿子总数-应该大于或者等于task中的预算总工作量
**/ **/
public BigDecimal getPhaseBudgetWorkload() { public BigDecimal getPhaseBudgetWorkload() {
return this.phaseBudgetWorkload; return this.phaseBudgetWorkload;
@ -661,13 +679,13 @@ public class XmProjectPhase implements java.io.Serializable {
return this.seqNo; return this.seqNo;
} }
/** /**
* 内部人力工作量总预算(不包括下一级)-应该大于或等于task中内部人力总成本
* 内部人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中内部人力总成本
**/ **/
public BigDecimal getPhaseBudgetInnerUserWorkload() { public BigDecimal getPhaseBudgetInnerUserWorkload() {
return this.phaseBudgetInnerUserWorkload; return this.phaseBudgetInnerUserWorkload;
} }
/** /**
* 外购人力工作量总预算(不包括下一级)-应该大于或等于task中外购总成本
* 外购人力工作量总预算(上到下控制大于儿子总数)-应该大于或等于task中外购总成本
**/ **/
public BigDecimal getPhaseBudgetOutUserWorkload() { public BigDecimal getPhaseBudgetOutUserWorkload() {
return this.phaseBudgetOutUserWorkload; return this.phaseBudgetOutUserWorkload;
@ -715,7 +733,7 @@ public class XmProjectPhase implements java.io.Serializable {
return this.actRate; return this.actRate;
} }
/** /**
* 计划状态0初始1执行中2完工3关闭4删除中5已删除6暂停
* 阶段状态0初始1执行中2完工3关闭4删除中5已删除6暂停
**/ **/
public String getPhaseStatus() { public String getPhaseStatus() {
return this.phaseStatus; return this.phaseStatus;
@ -840,5 +858,17 @@ public class XmProjectPhase implements java.io.Serializable {
public String getIsTpl() { public String getIsTpl() {
return this.isTpl; return this.isTpl;
} }
/**
* 计划分类0项目1产品
**/
public String getPhaseClass() {
return this.phaseClass;
}
/**
* 如果是产品计划必填产品编号其它的可不填
**/
public String getProductId() {
return this.productId;
}
} }

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

@ -146,7 +146,7 @@
insert into xm_menu( insert into xm_menu(
<include refid="columns"/> <include refid="columns"/>
) values ( ) values (
#{menuId},#{menuName},#{pmenuId},#{productId},#{remark},#{status},#{online},#{demandUrl},#{codeUrl},#{designUrl},#{docUrl},#{helpUrl},#{operDocUrl},#{seqNo},#{mmUserid},#{mmUsername},#{ctime},#{ntype},#{sinceVersion},#{childrenCnt},#{ltime},#{tagIds},#{tagNames},#{pidPaths},#{lvl},#{isTpl}
#{menuId},#{menuName},#{pmenuId},#{productId},#{remark},#{status},#{online},#{demandUrl},#{codeUrl},#{designUrl},#{docUrl},#{helpUrl},#{operDocUrl},#{seqNo},#{mmUserid},#{mmUsername},#{ctime},#{ntype},#{sinceVersion},#{childrenCnt},#{ltime},#{tagIds},#{tagNames},#{pidPaths},#{lvl},#{isTpl},#{budgetHours},#{budgetStaffNu},#{budgetWorkload},#{budgetAmount},#{phaseId}
) )
</insert> </insert>
@ -209,7 +209,7 @@
<!--sql片段 列--> <!--sql片段 列-->
<sql id="columns"> <sql id="columns">
menu_id,menu_name,pmenu_id,product_id,remark,status,online,demand_url,code_url,design_url,doc_url,help_url,oper_doc_url,seq_no,mm_userid,mm_username,ctime,ntype,since_version,children_cnt,ltime,tag_ids,tag_names,pid_paths,lvl,is_tpl
menu_id,menu_name,pmenu_id,product_id,remark,status,online,demand_url,code_url,design_url,doc_url,help_url,oper_doc_url,seq_no,mm_userid,mm_username,ctime,ntype,since_version,children_cnt,ltime,tag_ids,tag_names,pid_paths,lvl,is_tpl,budget_hours,budget_staff_nu,budget_workload,budget_amount,phase_id
</sql> </sql>
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> <!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS-->
@ -240,6 +240,11 @@
<if test="pidPaths != null and pidPaths != ''"> and res.pid_paths = #{pidPaths} </if> <if test="pidPaths != null and pidPaths != ''"> and res.pid_paths = #{pidPaths} </if>
<if test="lvl != null and lvl != ''"> and res.lvl = #{lvl} </if> <if test="lvl != null and lvl != ''"> and res.lvl = #{lvl} </if>
<if test="isTpl != null and isTpl != ''"> and res.is_tpl = #{isTpl} </if> <if test="isTpl != null and isTpl != ''"> and res.is_tpl = #{isTpl} </if>
<if test="budgetHours != null and budgetHours != ''"> and res.budget_hours = #{budgetHours} </if>
<if test="budgetStaffNu != null and budgetStaffNu != ''"> and res.budget_staff_nu = #{budgetStaffNu} </if>
<if test="budgetWorkload != null and budgetWorkload != ''"> and res.budget_workload = #{budgetWorkload} </if>
<if test="budgetAmount != null and budgetAmount != ''"> and res.budget_amount = #{budgetAmount} </if>
<if test="phaseId != null and phaseId != ''"> and res.phase_id = #{phaseId} </if>
</sql> </sql>
<!--sql片段 更新字段 --> <!--sql片段 更新字段 -->
<sql id="set"> <sql id="set">
@ -267,7 +272,12 @@
tag_names = #{tagNames}, tag_names = #{tagNames},
pid_paths = #{pidPaths}, pid_paths = #{pidPaths},
lvl = #{lvl}, lvl = #{lvl},
is_tpl = #{isTpl}
is_tpl = #{isTpl},
budget_hours = #{budgetHours},
budget_staff_nu = #{budgetStaffNu},
budget_workload = #{budgetWorkload},
budget_amount = #{budgetAmount},
phase_id = #{phaseId}
</sql> </sql>
<sql id="someFieldSet"> <sql id="someFieldSet">
<if test="menuName != null and menuName != ''"> menu_name = #{menuName}, </if> <if test="menuName != null and menuName != ''"> menu_name = #{menuName}, </if>
@ -295,6 +305,11 @@
<if test="pidPaths != null and pidPaths != ''"> pid_paths = #{pidPaths}, </if> <if test="pidPaths != null and pidPaths != ''"> pid_paths = #{pidPaths}, </if>
<if test="lvl != null and lvl != ''"> lvl = #{lvl}, </if> <if test="lvl != null and lvl != ''"> lvl = #{lvl}, </if>
<if test="isTpl != null and isTpl != ''"> is_tpl = #{isTpl}, </if> <if test="isTpl != null and isTpl != ''"> is_tpl = #{isTpl}, </if>
<if test="budgetHours != null and budgetHours != ''"> budget_hours = #{budgetHours}, </if>
<if test="budgetStaffNu != null and budgetStaffNu != ''"> budget_staff_nu = #{budgetStaffNu}, </if>
<if test="budgetWorkload != null and budgetWorkload != ''"> budget_workload = #{budgetWorkload}, </if>
<if test="budgetAmount != null and budgetAmount != ''"> budget_amount = #{budgetAmount}, </if>
<if test="phaseId != null and phaseId != ''"> phase_id = #{phaseId}, </if>
</sql> </sql>
<!--sql片段 批量更新 --> <!--sql片段 批量更新 -->
<sql id="batchSet"> <sql id="batchSet">
@ -322,6 +337,11 @@
tag_names = #{item.tagNames}, tag_names = #{item.tagNames},
pid_paths = #{item.pidPaths}, pid_paths = #{item.pidPaths},
lvl = #{item.lvl}, lvl = #{item.lvl},
is_tpl = #{item.isTpl}
is_tpl = #{item.isTpl},
budget_hours = #{item.budgetHours},
budget_staff_nu = #{item.budgetStaffNu},
budget_workload = #{item.budgetWorkload},
budget_amount = #{item.budgetAmount},
phase_id = #{item.phaseId}
</sql> </sql>
</mapper> </mapper>

78
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProductMapper.xml

@ -6,25 +6,46 @@
<!--开始 自定sql函数区域 --> <!--开始 自定sql函数区域 -->
<!--请在此区域添加自定义函数--> <!--请在此区域添加自定义函数-->
<sql id="whereForMap">
<if test=" ids != null"> and (res.id) in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
( #{item})
</foreach>
</if>
<if test="key != null and key !='' "> and res.product_name like #{key} </if>
<if test=" projectId !=null and projectId!=''">
and exists( select 1 from xm_product_project_link ppl
where ppl.project_id=#{projectId} and ppl.product_id=res.id
)
</if>
<if test="compete !=null and compete!=''">
and ( exists ( select 1 from xm_project_group_user gu inner join xm_task t on gu.project_id=t.project_id and t.product_id=res.id where gu.userid=#{compete} and t.product_id=res.id )
or res.pm_userid=#{compete}
or exists ( select 1 from xm_menu m where m.mm_userid=#{compete} and m.product_id=res.id)
)
</if>
<if test="ctimeStart!=null and ctimeEnd!=null ">and ctime between #{ctimeStart} and #{ctimeEnd}</if>
</sql>
<select id="selectListMapByWhereWithState" parameterType="HashMap" resultType="HashMap"> <select id="selectListMapByWhereWithState" parameterType="HashMap" resultType="HashMap">
select res.*,s.* from xm_product res left join xm_product_state s on res.id=s.product_id select res.*,s.* from xm_product res left join xm_product_state s on res.id=s.product_id
<where> <where>
<if test="ids != null"> and <if test="ids != null"> and
id in id in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
<include refid="where"/> <include refid="where"/>
<if test=" projectId !=null and projectId!=''"> <if test=" projectId !=null and projectId!=''">
and exists( select 1 from xm_product_project_link ppl and exists( select 1 from xm_product_project_link ppl
where ppl.project_id=#{projectId} and ppl.product_id=res.id
where ppl.project_id=#{projectId} and ppl.product_id=res.id
) )
</if> </if>
<if test="iterationId!=null and iterationId!=''"> <if test="iterationId!=null and iterationId!=''">
and exists( select 1 from xm_iteration_product_link ipl where ipl.product_id =res.id and ipl.iteration_id=#{iterationId} ) and exists( select 1 from xm_iteration_product_link ipl where ipl.product_id =res.id and ipl.iteration_id=#{iterationId} )
</if> </if>
<if test="compete !=null and compete!=''">
<if test="compete !=null and compete!=''">
and ( exists ( select 1 from xm_project_group_user gu inner join xm_task t on gu.project_id=t.project_id and t.product_id=res.id where gu.userid=#{compete} and t.product_id=res.id ) and ( exists ( select 1 from xm_project_group_user gu inner join xm_task t on gu.project_id=t.project_id and t.product_id=res.id where gu.userid=#{compete} and t.product_id=res.id )
or res.pm_userid=#{compete} or res.pm_userid=#{compete}
or exists ( select 1 from xm_menu m where m.mm_userid=#{compete} and m.product_id=res.id) or exists ( select 1 from xm_menu m where m.mm_userid=#{compete} and m.product_id=res.id)
@ -39,6 +60,7 @@
</where> </where>
</select> </select>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->
@ -47,26 +69,8 @@
<select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap"> <select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap">
select * from xm_product res select * from xm_product res
<where> <where>
<if test="ids != null"> and
id in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
<include refid="whereForMap"/>
<include refid="where"/> <include refid="where"/>
<if test="key != null and key !='' "> and res.product_name like #{key} </if>
<if test=" projectId !=null and projectId!=''">
and exists( select 1 from xm_product_project_link ppl
where ppl.project_id=#{projectId} and ppl.product_id=res.id
)
</if>
<if test="compete !=null and compete!=''">
and ( exists ( select 1 from xm_project_group_user gu inner join xm_task t on gu.project_id=t.project_id and t.product_id=res.id where gu.userid=#{compete} and t.product_id=res.id )
or res.pm_userid=#{compete}
or exists ( select 1 from xm_menu m where m.mm_userid=#{compete} and m.product_id=res.id)
)
</if>
<if test="ctimeStart!=null and ctimeEnd!=null ">and ctime between #{ctimeStart} and #{ctimeEnd}</if>
</where> </where>
</select> </select>
@ -103,7 +107,7 @@
insert into xm_product( insert into xm_product(
<include refid="columns"/> <include refid="columns"/>
) values ( ) values (
#{id},#{productName},#{branchId},#{remark},#{version},#{pmUserid},#{pmUsername},#{ctime},#{deptid},#{pstatus},#{startTime},#{endTime},#{deptName},#{admUserid},#{admUsername},#{assistantUserid},#{assistantUsername},#{bizProcInstId},#{bizFlowState},#{isTpl},#{baselineId},#{baseTime},#{code}
#{id},#{productName},#{branchId},#{remark},#{version},#{pmUserid},#{pmUsername},#{ctime},#{deptid},#{pstatus},#{startTime},#{endTime},#{deptName},#{admUserid},#{admUsername},#{assistantUserid},#{assistantUsername},#{bizProcInstId},#{bizFlowState},#{isTpl},#{baselineId},#{baseTime},#{code},#{pbudgetWorkload},#{pbudgetAmount},#{pmenuBudgetWorkload},#{pmenuBudgetAmount}
) )
</insert> </insert>
@ -166,7 +170,7 @@
<!--sql片段 列--> <!--sql片段 列-->
<sql id="columns"> <sql id="columns">
id,product_name,branch_id,remark,version,pm_userid,pm_username,ctime,deptid,pstatus,start_time,end_time,dept_name,adm_userid,adm_username,assistant_userid,assistant_username,biz_proc_inst_id,biz_flow_state,is_tpl,baseline_id,base_time,code
id,product_name,branch_id,remark,version,pm_userid,pm_username,ctime,deptid,pstatus,start_time,end_time,dept_name,adm_userid,adm_username,assistant_userid,assistant_username,biz_proc_inst_id,biz_flow_state,is_tpl,baseline_id,base_time,code,pbudget_workload,pbudget_amount,pmenu_budget_workload,pmenu_budget_amount
</sql> </sql>
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> <!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS-->
@ -194,6 +198,10 @@
<if test="baselineId != null and baselineId != ''"> and res.baseline_id = #{baselineId} </if> <if test="baselineId != null and baselineId != ''"> and res.baseline_id = #{baselineId} </if>
<if test="baseTime != null"> and date_format(res.base_time,'%Y-%m-%d') = date_format(#{baseTime},'%Y-%m-%d') </if> <if test="baseTime != null"> and date_format(res.base_time,'%Y-%m-%d') = date_format(#{baseTime},'%Y-%m-%d') </if>
<if test="code != null and code != ''"> and res.code = #{code} </if> <if test="code != null and code != ''"> and res.code = #{code} </if>
<if test="pbudgetWorkload != null and pbudgetWorkload != ''"> and res.pbudget_workload = #{pbudgetWorkload} </if>
<if test="pbudgetAmount != null and pbudgetAmount != ''"> and res.pbudget_amount = #{pbudgetAmount} </if>
<if test="pmenuBudgetWorkload != null and pmenuBudgetWorkload != ''"> and res.pmenu_budget_workload = #{pmenuBudgetWorkload} </if>
<if test="pmenuBudgetAmount != null and pmenuBudgetAmount != ''"> and res.pmenu_budget_amount = #{pmenuBudgetAmount} </if>
</sql> </sql>
<!--sql片段 更新字段 --> <!--sql片段 更新字段 -->
<sql id="set"> <sql id="set">
@ -218,7 +226,11 @@
is_tpl = #{isTpl}, is_tpl = #{isTpl},
baseline_id = #{baselineId}, baseline_id = #{baselineId},
base_time = #{baseTime}, base_time = #{baseTime},
code = #{code}
code = #{code},
pbudget_workload = #{pbudgetWorkload},
pbudget_amount = #{pbudgetAmount},
pmenu_budget_workload = #{pmenuBudgetWorkload},
pmenu_budget_amount = #{pmenuBudgetAmount}
</sql> </sql>
<sql id="someFieldSet"> <sql id="someFieldSet">
<if test="productName != null and productName != ''"> product_name = #{productName}, </if> <if test="productName != null and productName != ''"> product_name = #{productName}, </if>
@ -243,6 +255,10 @@
<if test="baselineId != null and baselineId != ''"> baseline_id = #{baselineId}, </if> <if test="baselineId != null and baselineId != ''"> baseline_id = #{baselineId}, </if>
<if test="baseTime != null"> base_time = #{baseTime}, </if> <if test="baseTime != null"> base_time = #{baseTime}, </if>
<if test="code != null and code != ''"> code = #{code}, </if> <if test="code != null and code != ''"> code = #{code}, </if>
<if test="pbudgetWorkload != null and pbudgetWorkload != ''"> pbudget_workload = #{pbudgetWorkload}, </if>
<if test="pbudgetAmount != null and pbudgetAmount != ''"> pbudget_amount = #{pbudgetAmount}, </if>
<if test="pmenuBudgetWorkload != null and pmenuBudgetWorkload != ''"> pmenu_budget_workload = #{pmenuBudgetWorkload}, </if>
<if test="pmenuBudgetAmount != null and pmenuBudgetAmount != ''"> pmenu_budget_amount = #{pmenuBudgetAmount}, </if>
</sql> </sql>
<!--sql片段 批量更新 --> <!--sql片段 批量更新 -->
<sql id="batchSet"> <sql id="batchSet">
@ -267,6 +283,10 @@
is_tpl = #{item.isTpl}, is_tpl = #{item.isTpl},
baseline_id = #{item.baselineId}, baseline_id = #{item.baselineId},
base_time = #{item.baseTime}, base_time = #{item.baseTime},
code = #{item.code}
code = #{item.code},
pbudget_workload = #{item.pbudgetWorkload},
pbudget_amount = #{item.pbudgetAmount},
pmenu_budget_workload = #{item.pmenuBudgetWorkload},
pmenu_budget_amount = #{item.pmenuBudgetAmount}
</sql> </sql>
</mapper> </mapper>

86
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProjectGroupMapper.xml

@ -3,14 +3,21 @@
<mapper namespace="com.xm.core.entity.XmProjectGroup"> <mapper namespace="com.xm.core.entity.XmProjectGroup">
<!--开始 自定sql函数区域 -->
<!--请在此区域添加自定义函数-->
<!--开始 自定sql函数区域 请在此区域添加自定义函数,其它区域尽量不要动,因为代码随时重新生成 -->
<sql id="whereForMap">
<if test=" ids != null"> and (res.id) in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
( #{item})
</foreach>
</if>
<if test="key != null and key !='' "> </if>
</sql>
<delete id="deleteByProjectId" parameterType="com.xm.core.entity.XmProjectGroup"> <delete id="deleteByProjectId" parameterType="com.xm.core.entity.XmProjectGroup">
delete from xm_project_group where project_id = #{projectId} delete from xm_project_group where project_id = #{projectId}
</delete> </delete>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->
@ -18,15 +25,9 @@
<!-- 通过条件查询获取数据列表 返回list<map> --> <!-- 通过条件查询获取数据列表 返回list<map> -->
<select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap"> <select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap">
select * from xm_project_group res select * from xm_project_group res
<where>
<if test="ids != null"> and
id in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
<where>
<include refid="whereForMap"/>
<include refid="where"/> <include refid="where"/>
<if test="key != null and key !='' "> </if>
</where> </where>
</select> </select>
@ -59,11 +60,11 @@
</where> </where>
</select> </select>
<!-- 新增一条记录 主键id,--> <!-- 新增一条记录 主键id,-->
<insert id="insert" parameterType="com.xm.core.entity.XmProjectGroup" useGeneratedKeys="false" keyProperty="id">
<insert id="insert" parameterType="com.xm.core.entity.XmProjectGroup" useGeneratedKeys="false" keyProperty="id">
insert into xm_project_group( insert into xm_project_group(
<include refid="columns"/> <include refid="columns"/>
) values ( ) values (
#{id},#{groupName},#{projectId},#{pgTypeId},#{pgTypeName}
#{id},#{groupName},#{projectId},#{pgTypeId},#{pgTypeName},#{leaderUserid},#{leaderUsername},#{ctime},#{ltime},#{productId},#{branchId},#{pgClass}
) )
</insert> </insert>
@ -77,13 +78,13 @@
<!-- 按主键删除一条记录--> <!-- 按主键删除一条记录-->
<delete id="deleteByPk" parameterType="com.xm.core.entity.XmProjectGroup"> <delete id="deleteByPk" parameterType="com.xm.core.entity.XmProjectGroup">
delete from xm_project_group
delete from xm_project_group
where id = #{id} where id = #{id}
</delete> </delete>
<!-- 根据条件修改若干条记录 --> <!-- 根据条件修改若干条记录 -->
<update id="updateSomeFieldByPk" parameterType="com.xm.core.entity.XmProjectGroup"> <update id="updateSomeFieldByPk" parameterType="com.xm.core.entity.XmProjectGroup">
update xm_project_group
update xm_project_group
<set> <set>
<include refid="someFieldSet"/> <include refid="someFieldSet"/>
</set> </set>
@ -92,7 +93,7 @@
<!-- 根据主键修改一条记录 --> <!-- 根据主键修改一条记录 -->
<update id="updateByPk" parameterType="com.xm.core.entity.XmProjectGroup"> <update id="updateByPk" parameterType="com.xm.core.entity.XmProjectGroup">
update xm_project_group
update xm_project_group
<set> <set>
<include refid="set"/> <include refid="set"/>
</set> </set>
@ -107,7 +108,7 @@
<!-- 批量更新 --> <!-- 批量更新 -->
<update id="batchUpdate" parameterType="List"> <update id="batchUpdate" parameterType="List">
<foreach collection="list" item="item" index="index" separator=";" > <foreach collection="list" item="item" index="index" separator=";" >
update xm_project_group
update xm_project_group
set set
<include refid="batchSet"/> <include refid="batchSet"/>
where id = #{item.id} where id = #{item.id}
@ -115,19 +116,20 @@
</update> </update>
<!-- 批量删除 --> <!-- 批量删除 -->
<delete id="batchDelete" parameterType="List"> <delete id="batchDelete" parameterType="List">
delete from xm_project_group
where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
#{item.id }
</foreach>
delete from xm_project_group
where
(id) in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
( #{item.id} )
</foreach>
</delete> </delete>
<!--sql片段 列--> <!--sql片段 列-->
<sql id="columns"> <sql id="columns">
id,group_name,project_id,pg_type_id,pg_type_name
id,group_name,project_id,pg_type_id,pg_type_name,leader_userid,leader_username,ctime,ltime,product_id,branch_id,pg_class
</sql> </sql>
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> <!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS-->
<sql id="where"> <sql id="where">
<if test="id != null and id != ''"> and res.id = #{id} </if> <if test="id != null and id != ''"> and res.id = #{id} </if>
@ -135,25 +137,53 @@
<if test="projectId != null and projectId != ''"> and res.project_id = #{projectId} </if> <if test="projectId != null and projectId != ''"> and res.project_id = #{projectId} </if>
<if test="pgTypeId != null and pgTypeId != ''"> and res.pg_type_id = #{pgTypeId} </if> <if test="pgTypeId != null and pgTypeId != ''"> and res.pg_type_id = #{pgTypeId} </if>
<if test="pgTypeName != null and pgTypeName != ''"> and res.pg_type_name = #{pgTypeName} </if> <if test="pgTypeName != null and pgTypeName != ''"> and res.pg_type_name = #{pgTypeName} </if>
<if test="leaderUserid != null and leaderUserid != ''"> and res.leader_userid = #{leaderUserid} </if>
<if test="leaderUsername != null and leaderUsername != ''"> and res.leader_username = #{leaderUsername} </if>
<if test="ctime != null"> and date_format(res.ctime,'%Y-%m-%d') = date_format(#{ctime},'%Y-%m-%d') </if>
<if test="ltime != null"> and date_format(res.ltime,'%Y-%m-%d') = date_format(#{ltime},'%Y-%m-%d') </if>
<if test="productId != null and productId != ''"> and res.product_id = #{productId} </if>
<if test="branchId != null and branchId != ''"> and res.branch_id = #{branchId} </if>
<if test="pgClass != null and pgClass != ''"> and res.pg_class = #{pgClass} </if>
</sql> </sql>
<!--sql片段 更新字段 --> <!--sql片段 更新字段 -->
<sql id="set"> <sql id="set">
group_name = #{groupName}, group_name = #{groupName},
project_id = #{projectId}, project_id = #{projectId},
pg_type_id = #{pgTypeId}, pg_type_id = #{pgTypeId},
pg_type_name = #{pgTypeName}
pg_type_name = #{pgTypeName},
leader_userid = #{leaderUserid},
leader_username = #{leaderUsername},
ctime = #{ctime},
ltime = #{ltime},
product_id = #{productId},
branch_id = #{branchId},
pg_class = #{pgClass}
</sql> </sql>
<sql id="someFieldSet"> <sql id="someFieldSet">
<if test="groupName != null and groupName != ''"> group_name = #{groupName}, </if> <if test="groupName != null and groupName != ''"> group_name = #{groupName}, </if>
<if test="projectId != null and projectId != ''"> project_id = #{projectId}, </if> <if test="projectId != null and projectId != ''"> project_id = #{projectId}, </if>
<if test="pgTypeId != null and pgTypeId != ''"> pg_type_id = #{pgTypeId}, </if> <if test="pgTypeId != null and pgTypeId != ''"> pg_type_id = #{pgTypeId}, </if>
<if test="pgTypeName != null and pgTypeName != ''"> pg_type_name = #{pgTypeName}, </if> <if test="pgTypeName != null and pgTypeName != ''"> pg_type_name = #{pgTypeName}, </if>
<if test="leaderUserid != null and leaderUserid != ''"> leader_userid = #{leaderUserid}, </if>
<if test="leaderUsername != null and leaderUsername != ''"> leader_username = #{leaderUsername}, </if>
<if test="ctime != null"> ctime = #{ctime}, </if>
<if test="ltime != null"> ltime = #{ltime}, </if>
<if test="productId != null and productId != ''"> product_id = #{productId}, </if>
<if test="branchId != null and branchId != ''"> branch_id = #{branchId}, </if>
<if test="pgClass != null and pgClass != ''"> pg_class = #{pgClass}, </if>
</sql> </sql>
<!--sql片段 批量更新 --> <!--sql片段 批量更新 -->
<sql id="batchSet"> <sql id="batchSet">
group_name = #{item.groupName}, group_name = #{item.groupName},
project_id = #{item.projectId}, project_id = #{item.projectId},
pg_type_id = #{item.pgTypeId}, pg_type_id = #{item.pgTypeId},
pg_type_name = #{item.pgTypeName}
pg_type_name = #{item.pgTypeName},
leader_userid = #{item.leaderUserid},
leader_username = #{item.leaderUsername},
ctime = #{item.ctime},
ltime = #{item.ltime},
product_id = #{item.productId},
branch_id = #{item.branchId},
pg_class = #{item.pgClass}
</sql> </sql>
</mapper> </mapper>

60
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmProjectGroupUserMapper.xml

@ -3,8 +3,16 @@
<mapper namespace="com.xm.core.entity.XmProjectGroupUser"> <mapper namespace="com.xm.core.entity.XmProjectGroupUser">
<!--开始 自定sql函数区域 -->
<!--请在此区域添加自定义函数-->
<!--开始 自定sql函数区域 请在此区域添加自定义函数,其它区域尽量不要动,因为代码随时重新生成 -->
<sql id="whereForMap">
<if test=" ids != null"> and (res.id) in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
( #{item})
</foreach>
</if>
<if test="key != null and key !='' "> </if>
</sql>
<delete id="deleteByGroupId" parameterType="com.xm.core.entity.XmProjectGroupUser"> <delete id="deleteByGroupId" parameterType="com.xm.core.entity.XmProjectGroupUser">
delete from xm_project_group_user where group_id = #{groupId} delete from xm_project_group_user where group_id = #{groupId}
</delete> </delete>
@ -16,15 +24,16 @@
</where> </where>
order by is_head desc order by is_head desc
</select> </select>
<!-- 通过条件查询获取数据列表 不分页 返回 list<Object> -->
<!-- 通过条件查询获取数据列表 不分页 返回 list<Object> -->
<select id="selectGroupUserListByProjectId" parameterType="String" resultType="com.xm.core.entity.XmProjectGroupUser"> <select id="selectGroupUserListByProjectId" parameterType="String" resultType="com.xm.core.entity.XmProjectGroupUser">
select * from xm_project_group_user res select * from xm_project_group_user res
<where> <where>
exists( select 1 from xm_project_group g where g.id=res.group_id and res.project_id=#{projectId})
exists( select 1 from xm_project_group g where g.id=res.group_id and res.project_id=#{projectId})
</where> </where>
</select>
</select>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->
@ -32,15 +41,9 @@
<!-- 通过条件查询获取数据列表 返回list<map> --> <!-- 通过条件查询获取数据列表 返回list<map> -->
<select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap"> <select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap">
select * from xm_project_group_user res select * from xm_project_group_user res
<where>
<if test="ids != null"> and
id in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</if>
<where>
<include refid="whereForMap"/>
<include refid="where"/> <include refid="where"/>
<if test="key != null and key !='' "> </if>
</where> </where>
</select> </select>
@ -73,7 +76,7 @@
</where> </where>
</select> </select>
<!-- 新增一条记录 主键id,--> <!-- 新增一条记录 主键id,-->
<insert id="insert" parameterType="com.xm.core.entity.XmProjectGroupUser" useGeneratedKeys="false" keyProperty="id">
<insert id="insert" parameterType="com.xm.core.entity.XmProjectGroupUser" useGeneratedKeys="false" keyProperty="id">
insert into xm_project_group_user( insert into xm_project_group_user(
<include refid="columns"/> <include refid="columns"/>
) values ( ) values (
@ -91,13 +94,13 @@
<!-- 按主键删除一条记录--> <!-- 按主键删除一条记录-->
<delete id="deleteByPk" parameterType="com.xm.core.entity.XmProjectGroupUser"> <delete id="deleteByPk" parameterType="com.xm.core.entity.XmProjectGroupUser">
delete from xm_project_group_user
delete from xm_project_group_user
where id = #{id} where id = #{id}
</delete> </delete>
<!-- 根据条件修改若干条记录 --> <!-- 根据条件修改若干条记录 -->
<update id="updateSomeFieldByPk" parameterType="com.xm.core.entity.XmProjectGroupUser"> <update id="updateSomeFieldByPk" parameterType="com.xm.core.entity.XmProjectGroupUser">
update xm_project_group_user
update xm_project_group_user
<set> <set>
<include refid="someFieldSet"/> <include refid="someFieldSet"/>
</set> </set>
@ -106,7 +109,7 @@
<!-- 根据主键修改一条记录 --> <!-- 根据主键修改一条记录 -->
<update id="updateByPk" parameterType="com.xm.core.entity.XmProjectGroupUser"> <update id="updateByPk" parameterType="com.xm.core.entity.XmProjectGroupUser">
update xm_project_group_user
update xm_project_group_user
<set> <set>
<include refid="set"/> <include refid="set"/>
</set> </set>
@ -121,7 +124,7 @@
<!-- 批量更新 --> <!-- 批量更新 -->
<update id="batchUpdate" parameterType="List"> <update id="batchUpdate" parameterType="List">
<foreach collection="list" item="item" index="index" separator=";" > <foreach collection="list" item="item" index="index" separator=";" >
update xm_project_group_user
update xm_project_group_user
set set
<include refid="batchSet"/> <include refid="batchSet"/>
where id = #{item.id} where id = #{item.id}
@ -129,11 +132,12 @@
</update> </update>
<!-- 批量删除 --> <!-- 批量删除 -->
<delete id="batchDelete" parameterType="List"> <delete id="batchDelete" parameterType="List">
delete from xm_project_group_user
where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
#{item.id }
</foreach>
delete from xm_project_group_user
where
(id) in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
( #{item.id} )
</foreach>
</delete> </delete>
@ -141,16 +145,16 @@
<sql id="columns"> <sql id="columns">
join_time,id,group_id,userid,username,is_head,out_time,status,biz_proc_inst_id,biz_flow_state,project_id join_time,id,group_id,userid,username,is_head,out_time,status,biz_proc_inst_id,biz_flow_state,project_id
</sql> </sql>
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> <!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS-->
<sql id="where"> <sql id="where">
<if test="joinTime != null"> and TO_CHAR(res.join_time,'YYYY-MM-DD') = TO_CHAR(#{joinTime},'YYYY-MM-DD') </if>
<if test="joinTime != null"> and date_format(res.join_time,'%Y-%m-%d') = date_format(#{joinTime},'%Y-%m-%d') </if>
<if test="id != null and id != ''"> and res.id = #{id} </if> <if test="id != null and id != ''"> and res.id = #{id} </if>
<if test="groupId != null and groupId != ''"> and res.group_id = #{groupId} </if> <if test="groupId != null and groupId != ''"> and res.group_id = #{groupId} </if>
<if test="userid != null and userid != ''"> and res.userid = #{userid} </if> <if test="userid != null and userid != ''"> and res.userid = #{userid} </if>
<if test="username != null and username != ''"> and res.username = #{username} </if> <if test="username != null and username != ''"> and res.username = #{username} </if>
<if test="isHead != null and isHead != ''"> and res.is_head = #{isHead} </if> <if test="isHead != null and isHead != ''"> and res.is_head = #{isHead} </if>
<if test="outTime != null"> and TO_CHAR(res.out_time,'YYYY-MM-DD') = TO_CHAR(#{outTime},'YYYY-MM-DD') </if>
<if test="outTime != null"> and date_format(res.out_time,'%Y-%m-%d') = date_format(#{outTime},'%Y-%m-%d') </if>
<if test="status != null and status != ''"> and res.status = #{status} </if> <if test="status != null and status != ''"> and res.status = #{status} </if>
<if test="bizProcInstId != null and bizProcInstId != ''"> and res.biz_proc_inst_id = #{bizProcInstId} </if> <if test="bizProcInstId != null and bizProcInstId != ''"> and res.biz_proc_inst_id = #{bizProcInstId} </if>
<if test="bizFlowState != null and bizFlowState != ''"> and res.biz_flow_state = #{bizFlowState} </if> <if test="bizFlowState != null and bizFlowState != ''"> and res.biz_flow_state = #{bizFlowState} </if>

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

@ -223,7 +223,7 @@
insert into xm_project_phase( insert into xm_project_phase(
<include refid="columns"/> <include refid="columns"/>
) values ( ) values (
#{id},#{phaseName},#{remark},#{parentPhaseId},#{branchId},#{projectId},#{beginDate},#{endDate},#{phaseBudgetHours},#{phaseBudgetStaffNu},#{ctime},#{phaseBudgetNouserAt},#{phaseBudgetInnerUserAt},#{phaseBudgetOutUserAt},#{projectBaselineId},#{bizProcInstId},#{bizFlowState},#{phaseBudgetWorkload},#{phaseActWorkload},#{phaseActInnerUserWorkload},#{phaseActOutUserWorkload},#{taskType},#{planType},#{seqNo},#{phaseBudgetInnerUserWorkload},#{phaseBudgetOutUserWorkload},#{actNouserAt},#{actInnerUserAt},#{phaseBudgetInnerUserPrice},#{phaseBudgetOutUserPrice},#{phaseBudgetOutUserCnt},#{phaseBudgetInnerUserCnt},#{actRate},#{phaseStatus},#{actOutUserAt},#{taskCnt},#{finishTaskCnt},#{iterationCnt},#{calcTime},#{taskBudgetWorkload},#{taskBudgetAt},#{mngUserid},#{mngUsername},#{milestone},#{pleaf},#{tagIds},#{tagNames},#{ntype},#{childrenCnt},#{ltime},#{isKeyPath},#{pidPaths},#{lvl},#{isTpl}
#{id},#{phaseName},#{remark},#{parentPhaseId},#{branchId},#{projectId},#{beginDate},#{endDate},#{phaseBudgetHours},#{phaseBudgetStaffNu},#{ctime},#{phaseBudgetNouserAt},#{phaseBudgetInnerUserAt},#{phaseBudgetOutUserAt},#{projectBaselineId},#{bizProcInstId},#{bizFlowState},#{phaseBudgetWorkload},#{phaseActWorkload},#{phaseActInnerUserWorkload},#{phaseActOutUserWorkload},#{taskType},#{planType},#{seqNo},#{phaseBudgetInnerUserWorkload},#{phaseBudgetOutUserWorkload},#{actNouserAt},#{actInnerUserAt},#{phaseBudgetInnerUserPrice},#{phaseBudgetOutUserPrice},#{phaseBudgetOutUserCnt},#{phaseBudgetInnerUserCnt},#{actRate},#{phaseStatus},#{actOutUserAt},#{taskCnt},#{finishTaskCnt},#{iterationCnt},#{calcTime},#{taskBudgetWorkload},#{taskBudgetAt},#{mngUserid},#{mngUsername},#{milestone},#{pleaf},#{tagIds},#{tagNames},#{ntype},#{childrenCnt},#{ltime},#{isKeyPath},#{pidPaths},#{lvl},#{isTpl},#{phaseClass},#{productId}
) )
</insert> </insert>
@ -286,7 +286,7 @@
<!--sql片段 列--> <!--sql片段 列-->
<sql id="columns"> <sql id="columns">
id,phase_name,remark,parent_phase_id,branch_id,project_id,begin_date,end_date,phase_budget_hours,phase_budget_staff_nu,ctime,phase_budget_nouser_at,phase_budget_inner_user_at,phase_budget_out_user_at,project_baseline_id,biz_proc_inst_id,biz_flow_state,phase_budget_workload,phase_act_workload,phase_act_inner_user_workload,phase_act_out_user_workload,task_type,plan_type,seq_no,phase_budget_inner_user_workload,phase_budget_out_user_workload,act_nouser_at,act_inner_user_at,phase_budget_inner_user_price,phase_budget_out_user_price,phase_budget_out_user_cnt,phase_budget_inner_user_cnt,act_rate,phase_status,act_out_user_at,task_cnt,finish_task_cnt,iteration_cnt,calc_time,task_budget_workload,task_budget_at,mng_userid,mng_username,milestone,pleaf,tag_ids,tag_names,ntype,children_cnt,ltime,is_key_path,pid_paths,lvl,is_tpl
id,phase_name,remark,parent_phase_id,branch_id,project_id,begin_date,end_date,phase_budget_hours,phase_budget_staff_nu,ctime,phase_budget_nouser_at,phase_budget_inner_user_at,phase_budget_out_user_at,project_baseline_id,biz_proc_inst_id,biz_flow_state,phase_budget_workload,phase_act_workload,phase_act_inner_user_workload,phase_act_out_user_workload,task_type,plan_type,seq_no,phase_budget_inner_user_workload,phase_budget_out_user_workload,act_nouser_at,act_inner_user_at,phase_budget_inner_user_price,phase_budget_out_user_price,phase_budget_out_user_cnt,phase_budget_inner_user_cnt,act_rate,phase_status,act_out_user_at,task_cnt,finish_task_cnt,iteration_cnt,calc_time,task_budget_workload,task_budget_at,mng_userid,mng_username,milestone,pleaf,tag_ids,tag_names,ntype,children_cnt,ltime,is_key_path,pid_paths,lvl,is_tpl,phase_class,product_id
</sql> </sql>
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> <!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS-->
@ -345,6 +345,8 @@
<if test="pidPaths != null and pidPaths != ''"> and res.pid_paths = #{pidPaths} </if> <if test="pidPaths != null and pidPaths != ''"> and res.pid_paths = #{pidPaths} </if>
<if test="lvl != null and lvl != ''"> and res.lvl = #{lvl} </if> <if test="lvl != null and lvl != ''"> and res.lvl = #{lvl} </if>
<if test="isTpl != null and isTpl != ''"> and res.is_tpl = #{isTpl} </if> <if test="isTpl != null and isTpl != ''"> and res.is_tpl = #{isTpl} </if>
<if test="phaseClass != null and phaseClass != ''"> and res.phase_class = #{phaseClass} </if>
<if test="productId != null and productId != ''"> and res.product_id = #{productId} </if>
</sql> </sql>
<!--sql片段 更新字段 --> <!--sql片段 更新字段 -->
<sql id="set"> <sql id="set">
@ -400,7 +402,9 @@
is_key_path = #{isKeyPath}, is_key_path = #{isKeyPath},
pid_paths = #{pidPaths}, pid_paths = #{pidPaths},
lvl = #{lvl}, lvl = #{lvl},
is_tpl = #{isTpl}
is_tpl = #{isTpl},
phase_class = #{phaseClass},
product_id = #{productId}
</sql> </sql>
<sql id="someFieldSet"> <sql id="someFieldSet">
<if test="phaseName != null and phaseName != ''"> phase_name = #{phaseName}, </if> <if test="phaseName != null and phaseName != ''"> phase_name = #{phaseName}, </if>
@ -456,6 +460,8 @@
<if test="pidPaths != null and pidPaths != ''"> pid_paths = #{pidPaths}, </if> <if test="pidPaths != null and pidPaths != ''"> pid_paths = #{pidPaths}, </if>
<if test="lvl != null and lvl != ''"> lvl = #{lvl}, </if> <if test="lvl != null and lvl != ''"> lvl = #{lvl}, </if>
<if test="isTpl != null and isTpl != ''"> is_tpl = #{isTpl}, </if> <if test="isTpl != null and isTpl != ''"> is_tpl = #{isTpl}, </if>
<if test="phaseClass != null and phaseClass != ''"> phase_class = #{phaseClass}, </if>
<if test="productId != null and productId != ''"> product_id = #{productId}, </if>
</sql> </sql>
<!--sql片段 批量更新 --> <!--sql片段 批量更新 -->
<sql id="batchSet"> <sql id="batchSet">
@ -511,6 +517,8 @@
is_key_path = #{item.isKeyPath}, is_key_path = #{item.isKeyPath},
pid_paths = #{item.pidPaths}, pid_paths = #{item.pidPaths},
lvl = #{item.lvl}, lvl = #{item.lvl},
is_tpl = #{item.isTpl}
is_tpl = #{item.isTpl},
phase_class = #{item.phaseClass},
product_id = #{item.productId}
</sql> </sql>
</mapper> </mapper>
Loading…
Cancel
Save