From 515423a91ba848113e12215777190777b5701d9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Sat, 9 Jul 2022 15:52:41 +0800 Subject: [PATCH] bug --- .../xm/core/ctrl/XmTaskOrderController.java | 2 +- .../core/service/XmTaskExecuserService.java | 19 ++++++++++++++++--- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java index 5e25f407..e621a006 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java @@ -134,7 +134,7 @@ public class XmTaskOrderController { if(!"4".equals(xmTaskDb.getBidStep())){ return ResponseHelper.failed("bidStep-not-4","当前任务未到缴纳保证金步骤"); } - if(!"1".equals(xmTaskDb.getEstate())){ + if(!"1".equals(xmTaskDb.getEstate()) && !"0".equals(xmTaskDb.getEstate()) && !StringUtils.hasText(xmTaskDb.getEstate())){ return ResponseHelper.failed("estate-not-1","当前任务不是待缴纳保证金状态"); } if(xmTaskDb.getQuoteFinalAt()==null || xmTaskDb.getQuoteFinalAt().compareTo(BigDecimal.ZERO)<=0){ diff --git a/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java b/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java index 8db5877d..7337bee3 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java @@ -6,6 +6,7 @@ import com.mdp.core.service.BaseService; import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.safe.client.entity.User; import com.mdp.safe.client.utils.LoginUtils; +import com.xm.core.entity.XmTask; import com.xm.core.entity.XmTaskExecuser; import com.xm.core.service.client.CashOperateServie; import com.xm.core.service.push.XmPushMsgService; @@ -133,9 +134,10 @@ public class XmTaskExecuserService extends BaseService { /** * 一个任务只能有一个执行人,如果要把候选人变成执行人,必须把其它执行人变更为候选人 * 本人或者组长可以变更 + * @param xmTaskDb * @param xmTaskExecuser */ - public void becomeExecute(XmTaskExecuser xmTaskExecuser){ + public void becomeExecute(XmTask xmTaskDb,XmTaskExecuser xmTaskExecuser){ String projectId=xmTaskExecuser.getProjectId(); String taskId=xmTaskExecuser.getTaskId(); List pgroups=groupService.getProjectGroupVoList(projectId); @@ -144,6 +146,7 @@ public class XmTaskExecuserService extends BaseService { List userGroups=groupService.getUserGroups(pgroups, xmTaskExecuser.getUserid()); XmTaskExecuser query=new XmTaskExecuser(); query.setTaskId(taskId); + XmTaskExecuser xmTaskExecuserDb=null; List xmTaskExecusersDb=this.selectListByWhere(query); if(xmTaskExecusersDb !=null && xmTaskExecusersDb.size()>0) { for (XmTaskExecuser exe : xmTaskExecusersDb) { @@ -154,11 +157,21 @@ public class XmTaskExecuserService extends BaseService { }else { if(!"0".equals(exe.getStatus())) { throw new BizException(exe.getUsername()+"不是候选人,不允许变更为执行人"); - } + } + xmTaskExecuserDb=exe; } } } - XmTaskExecuser xmTaskExecuser2=new XmTaskExecuser(); + + if(xmTaskExecuserDb==null){ + throw new BizException(xmTaskExecuser.getUsername()+"不是候选人,不允许变更为执行人"); + } + if( "1".equals(xmTaskDb.getCrowd()) && "1".equals(xmTaskDb.getTaskOut()) ){ + if(xmTaskExecuserDb.getQuoteAmount()==null){ + throw new BizException(xmTaskExecuserDb.getUsername()+"没有填写报价金额,不允许变更为执行人。"); + } + } + XmTaskExecuser xmTaskExecuser2=new XmTaskExecuser(); xmTaskExecuser2.setTaskId(xmTaskExecuser.getTaskId()); xmTaskExecuser2.setUserid(xmTaskExecuser.getUserid()); xmTaskExecuser2.setStatus("1");