Browse Source

添加修改任务时间的单独接口

master
陈裕财 4 years ago
parent
commit
66229f6aa4
  1. 51
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java
  2. 19
      xm-core/src/main/java/com/xm/core/service/XmTaskService.java

51
xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java

@ -576,7 +576,56 @@ public class XmTaskController {
m.put("tips", tips); m.put("tips", tips);
return m; return m;
} }
@ApiOperation( value = "根据主键修改一条xm_task信息",notes="editXmTask")
@ApiResponses({
@ApiResponse(code = 200,response=XmTask.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}")
})
@HasQx(value = "xm_core_xmTask_editTime",name = "修改任务时间",categoryId = "admin-xm",categoryName = "管理端-项目管理系统")
@RequestMapping(value="/editTime",method=RequestMethod.POST)
public Map<String,Object> editTime(@RequestBody XmTask xmTask) {
Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功更新一条数据");
try{
User user=LoginUtils.getCurrentUserInfo();
if(!StringUtils.hasText(xmTask.getProjectId())){
tips.setFailureMsg("项目编号不能为空");
m.put("tips", tips);
return m;
}
if(!StringUtils.hasText(xmTask.getId())){
tips.setFailureMsg("任务编号不能为空");
m.put("tips", tips);
return m;
}
List<XmProjectGroupVo> pgroups=groupService.getProjectGroupVoList(xmTask.getProjectId());
if(pgroups==null || pgroups.size()==0){
tips.setFailureMsg("该项目还未建立项目团队,请先进行团队成员维护");
m.put("tips", tips);
return m;
}
XmTask xmTaskDb=xmTaskService.selectOneObject(xmTask);
boolean isHead=groupService.checkUserIsOtherUserTeamHead(pgroups,xmTaskDb.getCreateUserid(),user.getUserid());
if(!isHead){
boolean isCreateUser=user.getUserid().equals(xmTaskDb.getCreateUserid());
boolean isExecUser=user.getUserid().equals(xmTaskDb.getExecutorUserid());
if( !isCreateUser && !isExecUser ){
tips.setFailureMsg("您无权修改该任务的计划时间!只有任务执行人、任务负责人、组长、项目经理可以修改任务的进度。");
m.put("tips", tips);
return m;
}
}
xmTaskService.updateTime(xmTask);
m.put("data",xmTask);
}catch (BizException e) {
tips=e.getTips();
logger.error("",e);
}catch (Exception e) {
tips.setFailureMsg(e.getMessage());
logger.error("",e);
}
m.put("tips", tips);
return m;
}
@ApiOperation( value = "根据主键修改一条xm_task信息",notes="editXmTask") @ApiOperation( value = "根据主键修改一条xm_task信息",notes="editXmTask")
@ApiResponses({ @ApiResponses({
@ApiResponse(code = 200,response=XmTask.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") @ApiResponse(code = 200,response=XmTask.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}")

19
xm-core/src/main/java/com/xm/core/service/XmTaskService.java

@ -5,6 +5,7 @@ import com.mdp.core.entity.Tips;
import com.mdp.core.err.BizException; import com.mdp.core.err.BizException;
import com.mdp.core.service.BaseService; import com.mdp.core.service.BaseService;
import com.mdp.core.utils.BaseUtils; import com.mdp.core.utils.BaseUtils;
import com.mdp.core.utils.DateUtils;
import com.mdp.core.utils.NumberUtil; import com.mdp.core.utils.NumberUtil;
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;
@ -205,6 +206,24 @@ public class XmTaskService extends BaseService {
this.updateSomeFieldByPk(xmTask); this.updateSomeFieldByPk(xmTask);
xmRecordService.addXmTaskRecord(xmTask.getProjectId(), xmTask.getId(), "项目-任务-更新任务基础信息", "更新任务"+xmTask.getName(),JSONObject.toJSONString(xmTask),null); xmRecordService.addXmTaskRecord(xmTask.getProjectId(), xmTask.getId(), "项目-任务-更新任务基础信息", "更新任务"+xmTask.getName(),JSONObject.toJSONString(xmTask),null);
} }
@Transactional
public void updateTime(XmTask xmTask) {
//XmTask oldValue = this.selectOneObject(new XmTask(xmTask.getId()));
XmTask xmTask2=new XmTask();
xmTask2.setId(xmTask.getId());
xmTask2.setStartTime(xmTask.getStartTime());
xmTask2.setEndTime(xmTask.getEndTime());
xmTask2.setActStartTime(xmTask.getActStartTime());
xmTask2.setActEndTime(xmTask.getActEndTime());
this.updateSomeFieldByPk(xmTask);
//更新父任务的进度
//updateParentProgress(xmTask.getParentTaskid());
xmRecordService.addXmTaskRecord(xmTask.getProjectId(), xmTask.getId(), "项目-任务-计划", "更新任务计划开始时间为"+
DateUtils.format(xmTask.getStartTime(),"yyyy-MM-dd")+",计划结束时间为"+DateUtils.format(xmTask.getEndTime(),"yyyy-MM-dd")+
"实际开始时间:"+DateUtils.format(xmTask.getActStartTime(),"yyyy-MM-dd")+",实际结束时间为"+DateUtils.format(xmTask.getActEndTime(),"yyyy-MM-dd"));
}
@Transactional @Transactional
public void updateProgress(XmTask xmTask) { public void updateProgress(XmTask xmTask) {
//XmTask oldValue = this.selectOneObject(new XmTask(xmTask.getId())); //XmTask oldValue = this.selectOneObject(new XmTask(xmTask.getId()));

Loading…
Cancel
Save