Ver Fonte

采购订单删除

zhangyao há 2 meses atrás
pai
commit
f57293f388

+ 33 - 0
com.awspaas.user.apps.donenow_ivt/src/com/awspaas/user/apps/donenow_ivt/controller/ivtOrderController.java

@@ -29,6 +29,7 @@ import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.util.HashMap;
 import java.util.Map;
+
 @Controller
 public class ivtOrderController {
     /**
@@ -871,4 +872,36 @@ public class ivtOrderController {
         return ResponseObject.newOkResponse();
     }
 
+
+    /**
+     * 删除采购订单
+     * @param uc
+     * @param bindId
+     * @return
+     */
+    @Mapping("com.awspaas.user.apps.donenow_ivt.deleteOrder")
+    public ResponseObject deleteOrder(UserContext uc, String bindId) {
+        BO order = SDK.getBOAPI().get("BO_EU_DNIVT_ORDER", bindId);
+        List<BO> orderProducts = SDK.getBOAPI().query("BO_EU_DNIVT_ORDER_PRODUCT").addQuery("BINDID =", bindId).list();
+
+        if (order.isEnd())
+            return ResponseObject.newErrResponse("采购订单已结束,不能删除");
+
+        if (order.getString("ISEND").equals("1"))
+            return ResponseObject.newErrResponse("采购订单已结束,不能删除");
+
+        SDK.getProcessAPI().deleteById(bindId, uc.getUID());
+
+        for (BO op : orderProducts) {
+            String costProductID = DBSql.getString("SELECT ID FROM BO_EU_DNCTT_CONTRACT_COST_PRODUCT WHERE ORDER_ID=? AND CONTRACT_COST_ID=?", new Object[]{op.getString("ORDER_ID"), op.getString("CONTRACT_COST_ID")});
+
+            if (StringUtils.isNotBlank(costProductID))
+                DBSql.update("delete from BO_EU_DNCTT_CONTRACT_COST_PRODUCT where ID=?", new Object[]{costProductID});
+        }
+
+        SDK.getBOAPI().removeByBindId("BO_EU_DNIVT_ORDER", bindId);
+        SDK.getBOAPI().removeByBindId("BO_EU_DNIVT_ORDER_PRODUCT", bindId);
+        return ResponseObject.newOkResponse();
+    }
+
 }