|
@@ -1,9 +1,5 @@
|
|
|
package com.uas.eis.service.Impl;
|
|
|
|
|
|
-import com.sf.csim.express.service.CallExpressServiceTools;
|
|
|
-import com.sf.csim.express.service.HttpClientUtil;
|
|
|
-import com.sf.csim.express.service.IServiceCodeStandard;
|
|
|
-import com.sf.csim.express.service.code.ExpressServiceCodeEnum;
|
|
|
import com.uas.eis.core.config.SpObserver;
|
|
|
import com.uas.eis.dao.*;
|
|
|
import com.uas.eis.entity.sf.*;
|
|
@@ -26,354 +22,5 @@ public class ERPServiceImpl implements ERPService {
|
|
|
private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
|
|
@Autowired
|
|
|
private BaseDao baseDao;
|
|
|
- @Override
|
|
|
- public Map<String, Object> creatSFOrder(String master, Integer id,String emCode) {
|
|
|
- Map<String,Object> retMap = new HashMap<>();
|
|
|
- retMap.put("success",true);
|
|
|
- logger.info("creatSFOrder-Begin:master {} id {}",master,id);
|
|
|
- SpObserver.putSp(master);
|
|
|
- SqlRowList outMsg = baseDao.queryForRowSet(" select pi_inoutno,pi_dockingstatus,pi_title,pi_address,pi_purposename,pi_expresscode,pi_dockingcode " +
|
|
|
- " from prodinout where pi_id = ? ",id);
|
|
|
- if(outMsg.next()){
|
|
|
- if(outMsg.getGeneralString("pi_dockingstatus").equals("已创建")){
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","出货单已创建顺发订单.");
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- Object[] obs = baseDao.getFieldsDataByCondition("JYX_ZS.DOCK_SF_CONFIG A "
|
|
|
- , new String[]{"CALL_URL","CLIENT_CODE","CHECK_WORD","ENABLE_"}, "username='"+master+"' and A.ENABLE_ = 1");
|
|
|
- if(!StringUtil.hasText(obs[0])){
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","请联系管理员配置创建URL.");
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- if(!StringUtil.hasText(obs[1])){
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","请联系管理员配置丰桥平台顾客编码.");
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- if(!StringUtil.hasText(obs[2])){
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","请联系管理员配置丰桥平台校验码.");
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- boolean prodFlag = (Integer.valueOf(obs[3].toString())!=0);
|
|
|
- Object emName = baseDao.getFieldDataByCondition("employee" , "em_name", "em_code='"+emCode+"'");
|
|
|
- if(emName == null){
|
|
|
- emName = "管理员("+emCode+")";
|
|
|
- }
|
|
|
- String inoutNo = outMsg.getGeneralString("pi_inoutno");
|
|
|
- String orderCode = outMsg.getGeneralString("pi_dockingcode");
|
|
|
- if(orderCode.length()>0){
|
|
|
- orderCode=inoutNo+"-"+(Integer.valueOf(orderCode.split("-")[1])+1);
|
|
|
- }else {
|
|
|
- orderCode=inoutNo+"-1";
|
|
|
- }
|
|
|
- String CLIENT_CODE = obs[1].toString(); //此处替换为您在丰桥平台获取的顾客编码
|
|
|
- //沙箱环境的地址 -PRO https://sfapi-sbox.sf-express.com/std/service
|
|
|
- //生产环境的地址 -PRO https://sfapi.sf-express.com/std/service
|
|
|
- String CALL_URL = obs[0].toString();
|
|
|
- //此处替换为您在丰桥平台获取的校验码 生产环境 "GgO0UoyQ5FssNLItii3olo63bQ80ErAE" 沙箱环境 "rMBhSYRa9OtUPkfX5mow01NlxDWtI411"
|
|
|
- String CHECK_WORD = obs[2].toString();
|
|
|
- String monthlyCard = "7551234567";
|
|
|
- if(prodFlag){
|
|
|
- monthlyCard = baseDao.getDBSetting("ProdInOut!Sale","monthlyCard");
|
|
|
- }
|
|
|
- //寄件人
|
|
|
- Object[] en = baseDao.getFieldsDataByCondition("enterprise" , new String[]{"EN_NAME","EN_DELIVERADDR"}, "1=1");
|
|
|
- String sendCop = en[0].toString().trim();
|
|
|
- String sendAddr = en[1].toString();
|
|
|
- String sendMan = baseDao.getDBSetting("ProdInOut!Sale","sendMan");
|
|
|
- String sendMobile = baseDao.getDBSetting("ProdInOut!Sale","sendMobile");
|
|
|
|
|
|
- IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CREATE_ORDER; //下订单
|
|
|
- CallExpressServiceTools tools=CallExpressServiceTools.getInstance();
|
|
|
- Map<String, String> params = new HashMap<String, String>();
|
|
|
- String timeStamp = String.valueOf(System.currentTimeMillis());
|
|
|
- String msgData = "";
|
|
|
- SFCreatOrderReq sfOrder = new SFCreatOrderReq();
|
|
|
- sfOrder.setOrderId(orderCode);
|
|
|
- sfOrder.setMonthlyCard(monthlyCard);
|
|
|
- sfOrder.setIsSignBack(1);
|
|
|
- //寄件方信息
|
|
|
- List<SFContactInfo> contactInfoList = new ArrayList<>();
|
|
|
- SFContactInfo sendInfo = new SFContactInfo();
|
|
|
- sendInfo.setContactType(1);
|
|
|
- sendInfo.setCompany(sendCop);
|
|
|
- sendInfo.setContact(sendMan);
|
|
|
- sendInfo.setMobile(sendMobile);
|
|
|
- sendInfo.setAddress(sendAddr);
|
|
|
- contactInfoList.add(sendInfo);
|
|
|
- //到件方信息
|
|
|
- SFContactInfo receiveInfo = new SFContactInfo();
|
|
|
- receiveInfo.setContactType(2);
|
|
|
- receiveInfo.setCompany(outMsg.getGeneralString("pi_title"));
|
|
|
- receiveInfo.setContact(outMsg.getGeneralString("pi_purposename"));
|
|
|
- receiveInfo.setMobile(outMsg.getGeneralString("pi_expresscode"));
|
|
|
- receiveInfo.setAddress(outMsg.getGeneralString("pi_address"));
|
|
|
- contactInfoList.add(receiveInfo);
|
|
|
- sfOrder.setContactInfoList(contactInfoList);
|
|
|
- List<SFCargoDetail> cargoDetails = new ArrayList<>();
|
|
|
- /*SqlRowList outList = baseDao.queryForRowSet(" select pr_detail,pr_unit,sum(pd_outqty) outqty from prodiodetail left join product on pr_code = pd_prodcode where pd_piid = ? and pr_detail is not null group by pr_detail,pr_unit",id);
|
|
|
- while (outList.next()){
|
|
|
- SFCargoDetail cargoDetail = new SFCargoDetail();
|
|
|
- cargoDetail.setName(outList.getGeneralString("pr_detail"));
|
|
|
- cargoDetail.setUnit(outList.getGeneralString("pr_unit"));
|
|
|
- cargoDetail.setCount(outList.getGeneralDouble("outqty"));
|
|
|
- cargoDetails.add(cargoDetail);
|
|
|
- }*/
|
|
|
- sfOrder.setCargoDetails(cargoDetails);
|
|
|
- msgData = FlexJsonUtil.toJsonDeep(sfOrder);
|
|
|
-// System.out.println("====请求msgData:" + msgData);
|
|
|
- try {
|
|
|
- params.put("partnerID", CLIENT_CODE); // 顾客编码 ,对应丰桥上获取的clientCode
|
|
|
- params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
|
|
|
- params.put("serviceCode",standardService.getCode());// 接口服务码
|
|
|
- params.put("timestamp", timeStamp);
|
|
|
- params.put("msgData", msgData);
|
|
|
- params.put("msgDigest", tools.getMsgDigest(msgData,timeStamp,CHECK_WORD));
|
|
|
- long startTime = System.currentTimeMillis();
|
|
|
-// System.out.println("====调用实际请求:" + params);
|
|
|
- String result = HttpClientUtil.post(CALL_URL, params);
|
|
|
-// System.out.println("====调用丰桥的接口服务代码:" + String.valueOf(standardService.getCode()) + " 接口耗时:"+ String.valueOf(System.currentTimeMillis()-startTime)+"====");
|
|
|
-// System.out.println("===调用地址 ==="+CALL_URL);
|
|
|
-// System.out.println("===顾客编码 ==="+CLIENT_CODE);
|
|
|
-// System.out.println("===返回结果:" +result);
|
|
|
- SFApiResp sfApiResp = FlexJsonUtil.fromJson(result, SFApiResp.class);
|
|
|
- if(sfApiResp!=null){
|
|
|
- if("A1000".equals(sfApiResp.getApiResultCode())){
|
|
|
- String apiResultData = sfApiResp.getApiResultData();
|
|
|
- SFCreatOrderResp sfApiRespData = FlexJsonUtil.fromJson(apiResultData, SFCreatOrderResp.class);
|
|
|
- if(sfApiRespData.isSuccess()){
|
|
|
- SFCreateOrder sfOrderResp = sfApiRespData.getMsgData();
|
|
|
- StringBuffer waybillNoList = new StringBuffer();
|
|
|
- StringBuffer waybillNoP = new StringBuffer();
|
|
|
- StringBuffer waybillSon = new StringBuffer();
|
|
|
- StringBuffer waybillBack = new StringBuffer();
|
|
|
- if(!CollectionUtil.isEmpty(sfOrderResp.getWaybillNoInfoList())){
|
|
|
- for (SFWaybillNoInfo sfWaybillNoInfoResp:sfOrderResp.getWaybillNoInfoList()){
|
|
|
-// System.out.println("顺丰物流单号: ====="+sfWaybillNoInfoResp.getWaybillNo());
|
|
|
- String waybillNo = sfWaybillNoInfoResp.getWaybillNo();
|
|
|
- if(sfWaybillNoInfoResp.getWaybillType() == 1||sfWaybillNoInfoResp.getWaybillType() == 2){//运单号类型1:母单 2 :子单 3 : 签回单
|
|
|
- if(waybillNoList.length()>0){
|
|
|
- waybillNoList.append(",");
|
|
|
- }
|
|
|
- waybillNoList.append(waybillNo);
|
|
|
- if(sfWaybillNoInfoResp.getWaybillType() == 1) {
|
|
|
- if (waybillNoP.length() > 0) {
|
|
|
- waybillNoP.append(",");
|
|
|
- }
|
|
|
- waybillNoP.append(waybillNo);
|
|
|
- }else{
|
|
|
- if (waybillSon.length() > 0) {
|
|
|
- waybillSon.append(",");
|
|
|
- }
|
|
|
- waybillSon.append(waybillNo);
|
|
|
- }
|
|
|
- }else {
|
|
|
- if(waybillBack.length()>0){
|
|
|
- waybillBack.append(",");
|
|
|
- }
|
|
|
- waybillBack.append(waybillNo);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- if(waybillNoList.length()>0){
|
|
|
- baseDao.execute("update prodinout set pi_dockingcode=?,pi_logisticscode = ?,pi_dockingstatus='已创建'" +
|
|
|
- ",pi_sfParentCode=?,pi_sfSonCode=?,pi_sfBackCode=?" +
|
|
|
- ",pi_sf_filterresult=?,pi_sf_remark=? where pi_id = ?"
|
|
|
- ,orderCode,waybillNoList.toString(),waybillNoP.toString(),waybillSon.toString(),waybillBack.toString()
|
|
|
- ,sfOrderResp.getFilterResult(),sfOrderResp.getRemark()
|
|
|
- ,id);
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单'" +
|
|
|
- ",'创建成功,顺发单号:"+orderCode+",物流单号:"+waybillNoList.toString()+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- } else {
|
|
|
- retMap.put("message","创建失败:["+sfApiRespData.getErrorCode()+"]"+sfApiRespData.getErrorMsg());
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
- retMap.put("message","创建失败:["+sfApiRespData.getErrorCode()+"]"+sfApiRespData.getErrorMsg());
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
-// System.out.println("code:"+sfApiResp.getApiResultCode()+"===apiResponseID:"+sfApiResp.getApiResponseID()+"===apiErrorMsg:"+sfApiResp.getApiErrorMsg());
|
|
|
- retMap.put("message","创建失败:["+sfApiResp.getApiResultCode()+"]"+sfApiResp.getApiErrorMsg());
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }
|
|
|
- }catch (Exception e){
|
|
|
- e.printStackTrace();
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单','创建失败:"+(StringUtil.nvl(e.getMessage(),""))+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","创建失败"+(StringUtil.nvl(e.getMessage(),"")));
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","没有需要创建的出货单.");
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- logger.info("creatSFOrder-End:master {} id {}",master,id);
|
|
|
- retMap.put("message","创建成功。");
|
|
|
- return retMap;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public Map<String, Object> cancelSFOrder(String master, Integer id, String emCode) {
|
|
|
- Map<String,Object> retMap = new HashMap<>();
|
|
|
- retMap.put("success",true);
|
|
|
- logger.info("cancelSFOrder-Begin:master {} id {}",master,id);
|
|
|
- SpObserver.putSp(master);
|
|
|
- SqlRowList outMsg = baseDao.queryForRowSet(" select pi_inoutno,pi_dockingstatus,pi_dockingcode from prodinout where pi_id = ? ",id);
|
|
|
- if(outMsg.next()) {
|
|
|
- if (!outMsg.getGeneralString("pi_dockingstatus").equals("已创建")) {
|
|
|
- retMap.put("success", false);
|
|
|
- retMap.put("message", "出货单尚未创建顺发订单.");
|
|
|
- logger.info("cancelSFOrder-F:master {} id {} err {}", master, id, retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- Object[] obs = baseDao.getFieldsDataByCondition("JYX_ZS.DOCK_SF_CONFIG A "
|
|
|
- , new String[]{"CALL_URL", "CLIENT_CODE", "CHECK_WORD", "ENABLE_"}, "username='" + master + "' and A.ENABLE_ = 1");
|
|
|
- if (!StringUtil.hasText(obs[0])) {
|
|
|
- retMap.put("success", false);
|
|
|
- retMap.put("message", "请联系管理员配置创建URL.");
|
|
|
- logger.info("cancelSFOrder-F:master {} id {} err {}", master, id, retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- if (!StringUtil.hasText(obs[1])) {
|
|
|
- retMap.put("success", false);
|
|
|
- retMap.put("message", "请联系管理员配置丰桥平台顾客编码.");
|
|
|
- logger.info("cancelSFOrder-F:master {} id {} err {}", master, id, retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- if (!StringUtil.hasText(obs[2])) {
|
|
|
- retMap.put("success", false);
|
|
|
- retMap.put("message", "请联系管理员配置丰桥平台校验码.");
|
|
|
- logger.info("cancelSFOrder-F:master {} id {} err {}", master, id, retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- Object emName = baseDao.getFieldDataByCondition("employee" , "em_name", "em_code='"+emCode+"'");
|
|
|
- if(emName == null){
|
|
|
- emName = "管理员("+emCode+")";
|
|
|
- }
|
|
|
- String inoutNo = outMsg.getGeneralString("pi_inoutno");
|
|
|
- String orderCode = outMsg.getGeneralString("pi_dockingcode");
|
|
|
- String CLIENT_CODE = obs[1].toString(); //丰桥平台获取的顾客编码
|
|
|
- String CALL_URL = obs[0].toString(); //沙箱环境的地址 -PRO https://sfapi-sbox.sf-express.com/std/service 生产环境的地址 -PRO https://sfapi.sf-express.com/std/service
|
|
|
- String CHECK_WORD = obs[2].toString(); //丰桥平台获取的校验码 生产环境 "GgO0UoyQ5FssNLItii3olo63bQ80ErAE" 沙箱环境 "rMBhSYRa9OtUPkfX5mow01NlxDWtI411"
|
|
|
-
|
|
|
- IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_UPDATE_ORDER;//订单取消
|
|
|
- CallExpressServiceTools tools=CallExpressServiceTools.getInstance();
|
|
|
- Map<String, String> params = new HashMap<String, String>();
|
|
|
- String timeStamp = String.valueOf(System.currentTimeMillis());
|
|
|
- String msgData = "";
|
|
|
- Map<String,Object> msgDataMap = new HashMap<>();
|
|
|
- msgDataMap.put("orderId",orderCode);
|
|
|
- msgDataMap.put("dealType",2);
|
|
|
- msgData = FlexJsonUtil.toJsonDeep(msgDataMap);
|
|
|
- try {
|
|
|
- params.put("partnerID", CLIENT_CODE); // 顾客编码 ,对应丰桥上获取的clientCode
|
|
|
- params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
|
|
|
- params.put("serviceCode",standardService.getCode());// 接口服务码
|
|
|
- params.put("timestamp", timeStamp);
|
|
|
- params.put("msgData", msgData);
|
|
|
- params.put("msgDigest", tools.getMsgDigest(msgData,timeStamp,CHECK_WORD));
|
|
|
- long startTime = System.currentTimeMillis();
|
|
|
-// System.out.println("====调用请求:" + params.get("msgData"));
|
|
|
-// System.out.println("====调用实际请求:" + params);
|
|
|
- String result = HttpClientUtil.post(CALL_URL, params);
|
|
|
-// System.out.println("====调用丰桥的接口服务代码:" + String.valueOf(standardService.getCode()) + " 接口耗时:"+ String.valueOf(System.currentTimeMillis()-startTime)+"====");
|
|
|
-// System.out.println("===调用地址 ==="+CALL_URL);
|
|
|
-// System.out.println("===顾客编码 ==="+CLIENT_CODE);
|
|
|
-// System.out.println("===返回结果:" +result);
|
|
|
-// Map<String,Object> resData = JacksonUtil.fromJson(result);
|
|
|
- SFApiResp sfApiResp = FlexJsonUtil.fromJson(result, SFApiResp.class);
|
|
|
- if(sfApiResp!=null){
|
|
|
- if("A1000".equals(sfApiResp.getApiResultCode())){
|
|
|
- String apiResultData = sfApiResp.getApiResultData();
|
|
|
- SFCancelOrderResp sfApiRespData = FlexJsonUtil.fromJson(apiResultData, SFCancelOrderResp.class);
|
|
|
- if(sfApiRespData.isSuccess()){
|
|
|
- SFCancelOrder sfOrderResp = sfApiRespData.getMsgData();
|
|
|
- StringBuffer waybillNo = new StringBuffer();
|
|
|
- if(!CollectionUtil.isEmpty(sfOrderResp.getWaybillNoInfoList())){
|
|
|
- for (SFWaybillNoInfo sfWaybillNoInfoResp:sfOrderResp.getWaybillNoInfoList()){
|
|
|
-// System.out.println("顺丰物流单号: ====="+sfWaybillNoInfoResp.getWaybillNo());
|
|
|
- if(waybillNo.length()>0){
|
|
|
- waybillNo.append(",");
|
|
|
- }
|
|
|
- waybillNo.append(sfWaybillNoInfoResp.getWaybillNo());
|
|
|
- }
|
|
|
- }
|
|
|
- if(sfOrderResp.getResStatus()==2){
|
|
|
- baseDao.execute("update prodinout set pi_logisticscode = null,pi_dockingstatus=null,pi_sfParentCode=null,pi_sfSonCode=null,pi_sfBackCode=null,pi_sf_filterresult=null,pi_sf_remark=null where pi_id = ?",id);
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','取消顺发订单','取消成功"+(waybillNo.length()>0?",物流单号: "+waybillNo.toString():"")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- }else {
|
|
|
- if(sfOrderResp.getResStatus()==1){
|
|
|
- retMap.put("message","取消失败:客户订单号与顺丰运单不匹配");
|
|
|
- }else {
|
|
|
- retMap.put("message","取消失败:["+sfOrderResp.getResStatus()+"]");
|
|
|
- }
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','取消顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','取消顺发订单','取消失败:["+sfApiRespData.getErrorCode()+"]"+sfApiRespData.getErrorMsg()+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","取消失败:["+sfApiRespData.getErrorCode()+"]"+sfApiRespData.getErrorMsg());
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
- retMap.put("message","创建失败:["+sfApiResp.getApiResultCode()+"]"+sfApiResp.getApiErrorMsg());
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','创建顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }
|
|
|
- }catch (Exception e){
|
|
|
- e.printStackTrace();
|
|
|
- retMap.put("message","取消失败"+(StringUtil.nvl(e.getMessage(),"")));
|
|
|
- baseDao.execute("INSERT INTO MESSAGELOG(ML_ID, ML_DATE, ML_MAN, ML_CONTENT, ML_RESULT, ML_SEARCH, CODE) " +
|
|
|
- "values( MESSAGELOG_SEQ.nextval,SYSDATE,'"+emName+"','取消顺发订单','"+retMap.get("message")+"','ProdInOut!Sale|pi_id="+id+"','"+inoutNo+"')");
|
|
|
- retMap.put("success",false);
|
|
|
- logger.info("creatSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- }else {
|
|
|
- retMap.put("success",false);
|
|
|
- retMap.put("message","没有需要操作的出货单.");
|
|
|
- logger.info("cancelSFOrder-F:master {} id {} err {}",master,id,retMap.get("message"));
|
|
|
- return retMap;
|
|
|
- }
|
|
|
- logger.info("cancelSFOrder-End:master {} id {}",master,id);
|
|
|
- retMap.put("message","取消成功。");
|
|
|
- return retMap;
|
|
|
- }
|
|
|
}
|