|
@@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
|
|
|
@@ -92,23 +93,97 @@ public class ERPServiceImpl implements ERPService {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private ApiResult<String> syncMES(String params,String url){
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public Map<String, Object> syncDeleteMake(String data) {
|
|
|
|
|
+ Map<Object, Object> store = BaseUtil.parseFormStoreToMap(data);
|
|
|
|
|
+ Object maId = store.get("ma_id");
|
|
|
|
|
+ int flag = Integer.parseInt(StringUtil.nvl(store.get("flag"), "-1"));
|
|
|
|
|
+ Map<String, Object> hashMap = new HashMap<>();
|
|
|
|
|
+ hashMap.put("code", 0);
|
|
|
|
|
+ int count = baseDao.getCount("select count(1) from mes_make where erpid="+maId);
|
|
|
|
|
+ if (count>0) {
|
|
|
|
|
+ Make make = baseDao.getJdbcTemplate().queryForObject("select ma_code,ma_prodcode,ma_qty,nvl(cu_mescode,'BYT') ma_custcode,pr_unit,pr_detail,replace(PR_SPEC,'''','''''') pr_spec,nvl(ma_zgrwl,ma_salecode) ma_salecode,to_char(ma_planbegindate,'yyyy-MM-dd') ma_planbegindate,to_char(ma_planenddate,'yyyy-MM-dd') ma_planenddate,nvl(ma_cop,'BYT') ma_cop,'C' status,to_char(ma_date,'yyyy-MM-dd HH24:mi:ss') ma_date,ma_recorder,nvl(ma_version,0) ma_version,erpid,wc_id,nvl(mk_id,0) ma_kind,to_char(ma_modifydate,'yyyy-MM-dd HH24:mi:ss') ma_modifydate,ma_modifier," + flag + " flag from mes_make left join MakeKind on ma_kind=mk_name left join product on ma_prodcode=pr_code left join workcenter on ma_wccode=wc_code left join customer on pr_kh_user=cu_shortname where erpid=?", new BeanPropertyRowMapper<Make>(Make.class), maId);
|
|
|
|
|
+ make.setMesPwd(MD5Util.encodeByMD5(tokenConfig.get("mesPwd")));
|
|
|
|
|
+ make.setMesUser(tokenConfig.get("mesUser"));
|
|
|
|
|
+ Map<String, Object> map = syncMESDeleteMake(JSON.toJSONString(make, SerializerFeature.WriteMapNullValue).replace("null", "\"\""), tokenConfig.get("syncMakeBase"));
|
|
|
|
|
+ hashMap.put("code", -1);
|
|
|
|
|
+ hashMap.put("msg", "删除工单异常,请联系MES处理!");
|
|
|
|
|
+ if (map != null) {
|
|
|
|
|
+ int code = Integer.parseInt(StringUtil.nvl(map.get("code"), "-1"));
|
|
|
|
|
+ if (code == 0) {
|
|
|
|
|
+ MakeMaterial makeMaterial = baseDao.getJdbcTemplate().queryForObject("select mm_code,erpid,mm_prodcode,pr_detail,replace(PR_SPEC,'''','''''') pr_spec,pr_unit,mm_oneuseqty qty,mm_qty,mm_oneuseqty,'main' type,bo_recorder,to_char(bo_date,'yyyy-MM-dd HH24:mi:ss') bo_date,nvl(bo_version,0) bo_version,nvl(bo_cop,'BYT') bo_cop,mm_prodcode mm_repprodcode,mm_balance,(select nvl(cu_mescode,'BYT') from Product left join customer on pr_kh_user=cu_shortname where pr_code=ma_prodcode) ma_custcode,to_char(mc_indate,'yyyy-MM-dd HH24:mi:ss') mc_indate,mc_recorder," + flag + " flag,0 rpid from mes_makematerial left join make on ma_id=mm_maid left join Product on mm_prodcode=pr_code left join bom on bo_id=mm_bomid left join (select max(mc_indate) mc_indate,max(mc_recorder) mc_recorder,max(md_mmdetno) md_mmdetno,max(md_makecode) md_makecode from MakeMaterialChangeDet left join MakeMaterialChange on mc_id=md_mcid) on md_makecode=ma_code and md_mmdetno=mm_detno where mm_maid=? order by mm_detno", new BeanPropertyRowMapper<MakeMaterial>(MakeMaterial.class), maId);
|
|
|
|
|
+ makeMaterial.setMesUser(tokenConfig.get("mesUser"));
|
|
|
|
|
+ makeMaterial.setMesPwd(MD5Util.encodeByMD5(tokenConfig.get("mesPwd")));
|
|
|
|
|
+ Map<String, Object> map1 = syncMESDeleteMake(JSON.toJSONString(makeMaterial, SerializerFeature.WriteMapNullValue).replace("null", "\"\""), tokenConfig.get("syncMakeBaseDetail"));
|
|
|
|
|
+ hashMap.put("msg", "删除BOM异常,请联系MES处理!");
|
|
|
|
|
+ if (map1 != null) {
|
|
|
|
|
+ int code1 = Integer.parseInt(StringUtil.nvl(map1.get("code"), "-1"));
|
|
|
|
|
+ if (code1 == 0) {
|
|
|
|
|
+ MakeMaterial makeMaterial2 = baseDao.getJdbcTemplate().queryForObject("select mm.mm_code,mm.erpid,mr.mp_prodcode mm_prodcode,pr_detail,replace(PR_SPEC,'''','''''') pr_spec,pr_unit,mm.mm_oneuseqty qty,mr.mp_canuseqty mm_qty,mm.mm_oneuseqty,'alternative' type,bo_recorder,to_char(bo_date,'yyyy-MM-dd HH24:mi:ss') bo_date,nvl(bo_version,0) bo_version,nvl(bo_cop,'BYT') bo_cop,mm.mm_prodcode mm_repprodcode,mm.mm_balance,(select nvl(cu_mescode,'BYT') from Product left join customer on pr_kh_user=cu_shortname where pr_code=ma_prodcode) ma_custcode,to_char(mc_indate,'yyyy-MM-dd HH24:mi:ss') mc_indate,mc_recorder," + flag + " flag,mr.erpid rpid from mes_makematerialreplace mr left join mes_makematerial mm on mr.mp_mmid=mm.erpid left join make on mm.mm_maid=ma_id left join Product on mr.mp_prodcode=pr_code left join bom on bo_id=mm.mm_bomid left join (select max(mc_indate) mc_indate,max(mc_recorder) mc_recorder,max(md_mmdetno) md_mmdetno,max(md_makecode) md_makecode from MakeMaterialChangeDet left join MakeMaterialChange on mc_id=md_mcid) on md_makecode=ma_code and md_mmdetno=mm.mm_detno where mr.mp_maid=?", new BeanPropertyRowMapper<MakeMaterial>(MakeMaterial.class), maId);
|
|
|
|
|
+ makeMaterial2.setMesUser(tokenConfig.get("mesUser"));
|
|
|
|
|
+ makeMaterial2.setMesPwd(MD5Util.encodeByMD5(tokenConfig.get("mesPwd")));
|
|
|
|
|
+ Map<String, Object> map2 = syncMESDeleteMake(JSON.toJSONString(makeMaterial2, SerializerFeature.WriteMapNullValue).replace("null", "\"\""), tokenConfig.get("syncMakeBaseDetail"));
|
|
|
|
|
+ hashMap.put("msg", "删除替代料异常,请联系MES处理!");
|
|
|
|
|
+ if (map2 != null) {
|
|
|
|
|
+ int code2 = Integer.parseInt(StringUtil.nvl(map2.get("code"), "-1"));
|
|
|
|
|
+ hashMap.put("code", code2);
|
|
|
|
|
+ hashMap.put("msg", map2.get("msg"));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ hashMap.put("code", code1);
|
|
|
|
|
+ hashMap.put("msg", map1.get("msg"));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ hashMap.put("code", code);
|
|
|
|
|
+ hashMap.put("msg", map.get("msg"));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return hashMap;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private ApiResult<String> syncMES(String params,String url) {
|
|
|
|
|
+ try {
|
|
|
|
|
+ logger.info("params:" + params);
|
|
|
|
|
+ String post = PSHttpUtils.sendPost(tokenConfig.get("mesHttp") + url, params);
|
|
|
|
|
+ logger.info("post:" + post);
|
|
|
|
|
+ JSONObject jsonObject = JSON.parseObject(post);
|
|
|
|
|
+ int code = jsonObject.getIntValue("result");
|
|
|
|
|
+ if (code == 0) {
|
|
|
|
|
+ return ApiResponse.successRsp("0", "同步MES成功");
|
|
|
|
|
+ } else if (code == 1) {
|
|
|
|
|
+ return ApiResponse.failRsp("101", jsonObject.getString("message"));
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return ApiResponse.failRsp("102", "接口调用异常,请联系MES处理!");
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ logger.info("异常信息:" + e.getMessage());
|
|
|
|
|
+ return ApiResponse.failRsp("103", "接口调用异常,请联系MES处理!");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private Map<String, Object> syncMESDeleteMake(String params,String url){
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
|
+ map.put("code",-1);
|
|
|
|
|
+ logger.info("params:"+params);
|
|
|
try {
|
|
try {
|
|
|
- logger.info("params:"+params);
|
|
|
|
|
String post = PSHttpUtils.sendPost(tokenConfig.get("mesHttp") + url, params);
|
|
String post = PSHttpUtils.sendPost(tokenConfig.get("mesHttp") + url, params);
|
|
|
logger.info("post:"+post);
|
|
logger.info("post:"+post);
|
|
|
JSONObject jsonObject = JSON.parseObject(post);
|
|
JSONObject jsonObject = JSON.parseObject(post);
|
|
|
int code = jsonObject.getIntValue("result");
|
|
int code = jsonObject.getIntValue("result");
|
|
|
if (code==0){
|
|
if (code==0){
|
|
|
- return ApiResponse.successRsp("0","同步MES成功");
|
|
|
|
|
|
|
+ map.put("code",code);
|
|
|
|
|
+ map.put("msg","同步MES成功");
|
|
|
}else if(code==1){
|
|
}else if(code==1){
|
|
|
- return ApiResponse.failRsp("101",jsonObject.getString("message"));
|
|
|
|
|
|
|
+ map.put("code",code);
|
|
|
|
|
+ map.put("msg",jsonObject.getString("message"));
|
|
|
}else {
|
|
}else {
|
|
|
- return ApiResponse.failRsp("102","接口调用异常,请联系MES处理!");
|
|
|
|
|
|
|
+ map.put("msg","接口调用异常,错误代码:"+code+",请联系MES处理!");
|
|
|
}
|
|
}
|
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
|
|
|
+ map.put("msg","接口调用异常,异常信息:"+e.getMessage()+",请联系MES处理!");
|
|
|
logger.info("异常信息:"+e.getMessage());
|
|
logger.info("异常信息:"+e.getMessage());
|
|
|
- return ApiResponse.failRsp("103","接口调用异常,请联系MES处理!");
|
|
|
|
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
}
|
|
|
|
|
+ return map;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|