Browse Source

修改金额统计

anderx 4 years ago
parent
commit
9c66f081fc

+ 1 - 1
src/main/java/com/goafanti/common/mapper/TOrderPaymentMapper.xml

@@ -399,7 +399,7 @@ select a.id,a.tid,a.node_id nodeId,a.payment_type paymentType,a.company_name com
 	  a.payment_status paymentStatus, a.status,a.payment_amount paymentAmount,a.remarks ,tpc.company_name tpcName,d.finance_name financeName ,
 	  c.order_no orderNo,date_format(a.create_time,'%Y-%m-%d %H:%i:%s')createTimes,a.application_amount applicationAmount 
 	 from t_order_payment a	 left join t_order_task c on a.tid=c.id left join t_order_mid d on c.order_no=d.order_no 
-	 left join third_party_company tpc on tpc.id=a.tpc_id where  a.tid= #{tid}
+	 left join third_party_company tpc on tpc.id=a.tpc_id where  a.tid= #{tid} and a.status in(0,1,2,3)
 	 <if test="chooseType != null">
 	 and a.choose_type = #{chooseType}
 	 </if>

+ 2 - 0
src/main/java/com/goafanti/order/service/OrderNewService.java

@@ -16,6 +16,7 @@ import com.goafanti.common.model.TOrderTask;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.order.bo.InputArrearsDunListBo;
 import com.goafanti.order.bo.OrderDunTaskBo;
+import com.goafanti.order.bo.OrderOutsourceDtails;
 import com.goafanti.order.bo.OrderRefundDetailBo;
 import com.goafanti.order.bo.OutArrearsDunListBo;
 import com.goafanti.order.bo.OutNewOrderDunBo;
@@ -204,5 +205,6 @@ public interface OrderNewService {
 	 */
 	void pushOrderDun(String orderNo);
 	boolean checkOfficialType(TOrderOutsource o);
+	void updateOrderCostAmount(Integer tid,Integer type);
 	
 }

+ 16 - 9
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -102,6 +102,7 @@ import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.customer.bo.LockingReleaseBo;
 import com.goafanti.order.bo.InputArrearsDunListBo;
 import com.goafanti.order.bo.OrderDunTaskBo;
+import com.goafanti.order.bo.OrderOutsourceDtails;
 import com.goafanti.order.bo.OrderRefundDetailBo;
 import com.goafanti.order.bo.OutArrearsDunListBo;
 import com.goafanti.order.bo.OutNewOrderDunBo;
@@ -1317,31 +1318,34 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			//旧项目变更,如果驳回修改成新的项目变更
 			if(o.getUnitNumber()!=null)tOrderOutsourceMapper.updateByidNull(o.getId());
 		}
-		updateOrderCostAmount(o);
+		updateOrderCostAmount(o.getTid(),o.getStartType());
 		return 1;
 	}
 
 	/**
 	 * 发起外包时,通过计算获取项目的成本,订单的成本
-	 * @param tid
+	 * 
+	 * @param tid 项目编号
+	 * @param type 0外包 1供应商
 	 */
-	private void updateOrderCostAmount(TOrderOutsource o) {
+	@Override
+	public void updateOrderCostAmount(Integer tid,Integer type) {
 		//计算项目成本
-		List<OutThirdPartyCompany>list=thirdPartyCompanyMapper.selectByTid(o.getTid());
+		List<OutThirdPartyCompany>list=thirdPartyCompanyMapper.selectByTid(tid);
 		BigDecimal tCount=new BigDecimal(0);
 		for (OutThirdPartyCompany op : list) {
 			tCount=tCount.add(new BigDecimal(op.getTotalAmount()));
 		}
-		tTaskMidMapper.updateCostAmount(o.getTid(),tCount);
+		tTaskMidMapper.updateCostAmount(tid,tCount);
 		//计算订单成本
 		BigDecimal oCount=new BigDecimal(0);
-		List <TTaskMid> tlist=tTaskMidMapper.selectListByTid(o.getTid());
+		List <TTaskMid> tlist=tTaskMidMapper.selectListByTid(tid);
 		for (TTaskMid tm : tlist) {
 			if (tm!=null&&tm.getCostAmount()!=null)oCount=oCount.add(tm.getCostAmount()==null?new BigDecimal(0):tm.getCostAmount());
 		}
 		//订单成本计算
-		if (o.getStartType()==1) {
-			ProjectTypePuls op= thirdPartyCompanyMapper.selectByTidGetDtails( o.getTid());
+		if (type==1) {
+			ProjectTypePuls op= thirdPartyCompanyMapper.selectByTidGetDtails(tid);
 			if (op.getOfficialCost()==1) {
 				BigDecimal mCount=op.getOfficialAmount().multiply(new BigDecimal(op.getQuantity()));
 				if (op.getCostReduction()==1) {
@@ -1349,8 +1353,8 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 				}
 				oCount=oCount.add(mCount);
 			}
-			tOrderMidMapper.updateCostAmount(o.getTid(),oCount,null);
 		}
+		tOrderMidMapper.updateCostAmount(tid,oCount,null);
 	}
 
 	@SuppressWarnings("unchecked")
@@ -1404,5 +1408,8 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 
 
 
+
+
+
 	
 }

+ 3 - 0
src/main/java/com/goafanti/order/service/impl/OutsourceOrgServiceImpl.java

@@ -61,6 +61,8 @@ public class OutsourceOrgServiceImpl  extends BaseMybatisDao<TOrderOutsourceMapp
 	private AdminMapper	adminMapper;
 	@Autowired
 	private OutsourceLogMapper	outsourceLogMapper;
+	@Autowired
+	private OrderNewService	OrderNewService;
 	@Override
 	public int addOutsourceOrg(OutsourceOrganization o) {
 		return outsourceOrganizationMapper.insertSelective(o);
@@ -154,6 +156,7 @@ public class OutsourceOrgServiceImpl  extends BaseMybatisDao<TOrderOutsourceMapp
 				type=NoticeStatus.PROJECT_OUTSOURCE_YES.getCode();
 				ol.setStatus(1);
 				addOrderLog(o.getOrderNo(),OrderLogProcess.XMWBTG.getCode(),o.getRemarks());
+				OrderNewService.updateOrderCostAmount(o.getTid(),0);
 			}else {
 				type=NoticeStatus.PROJECT_OUTSOURCE_NO.getCode();
 				ol.setStatus(2);