Browse Source

完成暂停或者重启时,修改成对所有项目做判断

anderx 3 years ago
parent
commit
db13de63ef

+ 2 - 0
src/main/java/com/goafanti/common/dao/TOrderMidMapper.java

@@ -51,4 +51,6 @@ public interface TOrderMidMapper {
 
 
     List<TOrderMid> selectAll();
+
+    void updateStopProjectByOrderNo(String orderNo);
 }

+ 8 - 0
src/main/java/com/goafanti/common/mapper/TOrderMidMapper.xml

@@ -742,6 +742,7 @@
     where a.order_no =b.order_no and a.order_no =c.order_no and a.order_receivables !=b.money;
   </update>
 
+
   <select id="judgeProjectType" resultType="java.lang.Integer">
     select count(*) from t_order_new a left join t_order_task b on a.order_no =b.order_no
                                        left join business_project c on b.commodity_id =c.id left join business_category d on c.cid =d.id
@@ -753,4 +754,11 @@
     from t_order_mid
   </select>
 
+  <update id="updateStopProjectByOrderNo">
+    update t_order_mid a,(select x.order_no,max(ps)ps from (select a.order_no ,if(a.project_status=29,1,0)ps
+        from t_order_task  a where a.order_no = #{orderNo} )x group by order_no) b
+    set a.stop_project =b.ps
+    where a.order_no =b.order_no
+    </update>
+
 </mapper>

+ 1 - 7
src/main/java/com/goafanti/order/service/impl/OrderProjectServiceImpl.java

@@ -1566,16 +1566,13 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 			t.setStatus(1);
 			StringBuffer str =new StringBuffer();
 			str.append("项目状态修改为:");
-			Integer stopProject=0;
 			if (use.getType()==0){
 				task.setProjectStatus(NewProjectStatus.ZT.getCode());
 				str=str.append("已暂停");
-				stopProject=1;
 			}else {
 				task.setProjectStatus(NewProjectStatus.JXZ.getCode());
 				str=str.append("进行中");
 			}
-
 			TaskLog taskLog = new TaskLog();
 			taskLog.setStopId(in.getTaskStopId());
 			taskLog.setTaskId(use.getTid());
@@ -1586,10 +1583,7 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 			task2.setId(task.getId());
 			task2.setProjectStatus(task.getProjectStatus());
 			tOrderTaskMapper.updateByPrimaryKeySelective(task2);
-			TOrderMid tOrderMid = new TOrderMid();
-			tOrderMid.setOrderNo(task.getOrderNo());
-			tOrderMid.setStopProject(stopProject);
-			tOrderMidMapper.updateByOrderNo(tOrderMid);
+			tOrderMidMapper.updateStopProjectByOrderNo(task.getOrderNo());
 			if (task.getSplitStatus()==1){
 				TOrderTask tot=new TOrderTask();
 				tot.setSplitSuper(task.getId());