销售订单同步关闭
This commit is contained in:
parent
13d8c2b50a
commit
dc8a09b92e
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding='gb2312'?>
|
||||||
|
<module>
|
||||||
|
<rest>
|
||||||
|
<resource classname="nccloud.api.so.so.UpCloses.CloseSoResource" exinfo="关闭订单"/>
|
||||||
|
</rest>
|
||||||
|
</module>
|
|
@ -0,0 +1,105 @@
|
||||||
|
package nccloud.api.so.so.UpCloses;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import nc.bs.framework.common.NCLocator;
|
||||||
|
import nc.itf.so.m30.closemanage.ISaleOrderCloseManageMaintain;
|
||||||
|
import nc.pubitf.so.m30.api.ISaleOrderQueryAPI;
|
||||||
|
import nc.pubitf.uapbd.IRateTypePubService;
|
||||||
|
import nc.vo.so.m30.entity.SaleOrderBVO;
|
||||||
|
import nc.vo.so.m30.entity.SaleOrderVO;
|
||||||
|
import nccloud.api.rest.utils.ResultMessageUtil;
|
||||||
|
import nccloud.framework.service.ServiceLocator;
|
||||||
|
import nccloud.pubitf.scmpub.pub.batchopr.dto.ISCMBatchOprContext;
|
||||||
|
import nccloud.pubitf.scmpub.pub.batchopr.dto.SCMBatchOprContext;
|
||||||
|
import nccloud.pubitf.scmpub.pub.batchopr.dto.SCMBatchResultDTO;
|
||||||
|
import nccloud.web.scmpub.pub.utils.batchopr.SCMBatchOperator;
|
||||||
|
import nccloud.ws.rest.resource.AbstractNCCRestResource;
|
||||||
|
import org.json.JSONString;
|
||||||
|
|
||||||
|
import javax.ws.rs.Consumes;
|
||||||
|
import javax.ws.rs.POST;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
import javax.ws.rs.Produces;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Path("so/so/Close")
|
||||||
|
public class CloseSoResource extends AbstractNCCRestResource {
|
||||||
|
@Override
|
||||||
|
public String getModule() {
|
||||||
|
return "so";
|
||||||
|
}
|
||||||
|
@POST
|
||||||
|
@Path("/ClosesoWith")
|
||||||
|
@Consumes({"application/json"})
|
||||||
|
@Produces({"application/json"})
|
||||||
|
public JSONString CloseSoResource(JSONString json) {
|
||||||
|
JSONObject errojson = new JSONObject();
|
||||||
|
try {
|
||||||
|
JSONObject jObject = JSON.parseObject(json.toJSONString());
|
||||||
|
if (jObject == null) {
|
||||||
|
return ResultMessageUtil.exceptionToJSON(new NullPointerException("JSONString:null"));
|
||||||
|
}
|
||||||
|
JSONArray array = jObject.getJSONArray("bills");
|
||||||
|
if (array.isEmpty()) {
|
||||||
|
return ResultMessageUtil.exceptionToJSON(new NullPointerException("请选择销售订单"));
|
||||||
|
}
|
||||||
|
String[] ids = new String[array.size()];
|
||||||
|
for (int i = 0; i < array.size(); i++) {
|
||||||
|
SaleOrderVO saleOrderVO = new SaleOrderVO();
|
||||||
|
String pk = (String) array.getJSONObject(i).getOrDefault("pk", "");
|
||||||
|
ids[i] = pk;
|
||||||
|
|
||||||
|
}
|
||||||
|
ISaleOrderQueryAPI iSaleOrderQueryAPI= NCLocator.getInstance()
|
||||||
|
.lookup(ISaleOrderQueryAPI.class);
|
||||||
|
SaleOrderVO[] billvos = iSaleOrderQueryAPI.queryVOByIDs(ids);
|
||||||
|
// ISCMBatchOprContext context = new SCMBatchOprContext();
|
||||||
|
// context.setInterfaceName("nc.itf.so.m30.closemanage.ISaleOrderCloseManageMaintain");
|
||||||
|
// context.setMethodName("closeSaleOrder");
|
||||||
|
// context.setParamTypes(new Class[]{SaleOrderVO[].class});
|
||||||
|
// context.setParams(new Object[]{billvos});
|
||||||
|
// context.setBillPos(0);
|
||||||
|
|
||||||
|
// SCMBatchResultDTO resulet = SCMBatchOperator.doRemoteCall(context);
|
||||||
|
ISaleOrderCloseManageMaintain iSaleOrderCloseManageMaintain = NCLocator.getInstance()
|
||||||
|
.lookup(ISaleOrderCloseManageMaintain.class);
|
||||||
|
SaleOrderVO[] saleOrderVOS= iSaleOrderCloseManageMaintain.closeSaleOrder(billvos);
|
||||||
|
if(saleOrderVOS.length == 0){
|
||||||
|
errojson.put("status", "0");
|
||||||
|
errojson.put("message", "关闭失败");
|
||||||
|
errojson.put("codeList", "");
|
||||||
|
return ResultMessageUtil.toJSON(errojson);
|
||||||
|
|
||||||
|
}
|
||||||
|
errojson.put("status", "1");
|
||||||
|
errojson.put("message", "成功关闭");
|
||||||
|
errojson.put("codeList", "");
|
||||||
|
// 返回表示操作成功的JSON字符串
|
||||||
|
return ResultMessageUtil.toJSON(errojson);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
errojson.put("status", "0");
|
||||||
|
errojson.put("message", e.getMessage());
|
||||||
|
errojson.put("codeList", "");
|
||||||
|
// 返回表示操作失败的JSON字符串
|
||||||
|
return ResultMessageUtil.toJSON(errojson);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private void setCloseOpenReason(SaleOrderVO[] bills,String reason) {
|
||||||
|
for(SaleOrderVO bill : bills) {
|
||||||
|
SaleOrderBVO[] bodys = bill.getChildrenVO();
|
||||||
|
|
||||||
|
for(SaleOrderBVO body : bodys) {
|
||||||
|
body.setVclosereason(reason);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue