From cead749faac938320f9424c60760f2ccfb5a13d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Tue, 20 Dec 2022 22:40:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E6=9B=B4=E4=B8=BA=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E4=BA=BA=E5=85=B3=E4=BA=8E=E6=89=98=E7=A6=8F=E8=B5=8F=E9=87=91?= =?UTF-8?q?=E7=9A=84=E5=88=A4=E6=96=AD,=E6=94=AF=E6=8C=81=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0=E8=B5=8F=E9=87=91=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/ctrl/XmTaskExecuserController.java | 77 ++++++++++++++++++- .../com/xm/core/vo/XmTaskAcceptanceVo.java | 13 ++++ 2 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 xm-core/src/main/java/com/xm/core/vo/XmTaskAcceptanceVo.java diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java index 58a01c8a..e8f90aa3 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java @@ -10,11 +10,15 @@ import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.mybatis.PageUtils; import com.mdp.safe.client.entity.User; import com.mdp.safe.client.utils.LoginUtils; -import com.xm.core.entity.*; +import com.xm.core.entity.XmGroupUser; +import com.xm.core.entity.XmProject; +import com.xm.core.entity.XmTask; +import com.xm.core.entity.XmTaskExecuser; import com.xm.core.service.*; import com.xm.core.service.client.MkClient; import com.xm.core.service.client.SysClient; import com.xm.core.vo.XmGroupVo; +import com.xm.core.vo.XmTaskAcceptanceVo; import io.swagger.annotations.*; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -375,7 +379,9 @@ public class XmTaskExecuserController { } m.put("tips", tips); return m; - } + } + + @ApiOperation( value = "候选人变更为执行人",notes="editXmTaskExecuser") @ApiResponses({ @ApiResponse(code = 200,response=XmTaskExecuser.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") @@ -476,6 +482,73 @@ public class XmTaskExecuserController { return m; } + @ApiOperation( value = "验收付款",notes="acceptance") + @ApiResponses({ + @ApiResponse(code = 200,response=XmTaskExecuser.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") + }) + //@HasQx(value = "xm_core_xmTaskExecuser_execute",name = "修改任务执行人基础信息",moduleId = "xm-project",moduleName = "管理端-项目管理系统") + @RequestMapping(value="/acceptance",method=RequestMethod.POST) + public Map acceptance(@RequestBody XmTaskAcceptanceVo xmTaskAcceptanceVo) { + Map m = new HashMap<>(); + Tips tips=new Tips("成功更新一条数据"); + try{ + String taskId=xmTaskAcceptanceVo.getTaskId(); + if(!StringUtils.hasText(taskId)){ + tips.setFailureMsg("taskId-0"); + return ResponseHelper.failed("taskId-0","任务编号不能为空"); + } + XmTask xmTask= xmTaskService.selectOneObject(new XmTask(taskId)); + if(xmTask==null ){ + tips.setFailureMsg("任务已不存在"); + return ResponseHelper.failed(tips); + } + if("3".equals(xmTask.getTaskState()) ||"4".equals(xmTask.getTaskState()) || "9".equals(xmTask.getTaskState())){ + tips.setFailureMsg("该任务已验收,不能重复验收"); + return ResponseHelper.failed(tips); + } + + + User user=LoginUtils.getCurrentUserInfo(); + + String projectId=xmTask.getProjectId(); + boolean isTaskCreater=user.getUserid().equals(xmTask.getCreateUserid()); + boolean isPm=groupService.checkUserIsProjectAdm(projectId,user.getUserid()); + if( !isTaskCreater && !isPm ) { + tips.setFailureMsg("您无权验收该任务!"); + return ResponseHelper.failed(tips); + } + + boolean needPay=false; + if("1".equals(xmTask.getCrowd())){ + if("2".equals(xmTask.getEstate()) && xmTask.getEfunds()!=null && xmTask.getEfunds().compareTo(BigDecimal.ZERO)>0){ + needPay=true; + } + } + XmTask xmTaskUpdate=new XmTask(); + xmTaskUpdate.setId(xmTask.getId()); + xmTaskUpdate.setTaskState("4"); + if(needPay){ + //调用ac系统付款给服务商 + xmTaskUpdate.setEtoDevTime(new Date()); + xmTaskUpdate.setBidStep("7"); + xmTaskUpdate.setEstate("3"); + } + + xmTaskService.updateSomeFieldByPk(xmTaskUpdate); + + + }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 = "候选人报价",notes="quotePrice") @ApiResponses({ @ApiResponse(code = 200,response=XmTaskExecuser.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") diff --git a/xm-core/src/main/java/com/xm/core/vo/XmTaskAcceptanceVo.java b/xm-core/src/main/java/com/xm/core/vo/XmTaskAcceptanceVo.java new file mode 100644 index 00000000..574d61f4 --- /dev/null +++ b/xm-core/src/main/java/com/xm/core/vo/XmTaskAcceptanceVo.java @@ -0,0 +1,13 @@ +package com.xm.core.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(description="验收接口参数") +public class XmTaskAcceptanceVo { + + @ApiModelProperty(notes="任务编号",allowEmptyValue=true,example="",allowableValues="") + String taskId; +} \ No newline at end of file