| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670 |
- package com.uas.eis.serviceImpl;
- import com.uas.eis.core.config.SpObserver;
- import com.uas.eis.dao.BaseDao;
- import com.uas.eis.dto.DataCenter;
- import com.uas.eis.entity.ErrorMessage;
- import com.uas.eis.exception.ApiSystemException;
- import com.uas.eis.sdk.entity.ApiResult;
- import com.uas.eis.sdk.resp.ApiResponse;
- import com.uas.eis.service.MESDataService;
- import com.uas.eis.utils.*;
- import org.apache.commons.lang.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Service;
- import java.sql.Timestamp;
- import java.util.*;
- import java.util.logging.Logger;
- @Service
- public class MESDataServiceImpl implements MESDataService {
- @Autowired
- private BaseDao baseDao;
- @Value("${spring.datasource.username}")
- private String username;
- @Override
- public List<Map<Object,Object>> snStepPass(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_STEPPASSED where sp_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("SP_ID"));
- remap.put("id",map.get("SP_ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_STEPPASSED"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- //baseDao.execute(SqlUtil.getInsertSqlbyGridStore(maps, "TEMP_STEPPASSED"));
- //baseDao.execute("update temp_steppassed set t_status='D',T_REMAKR='重复' where t_id in (select t_id from (select temp_steppassed.*,row_number()over(partition by sp_id order by t_id desc) cn from temp_steppassed where nvl(t_status,'W')='W' ) where cn>1)");
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object,Object>> snInfo(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_SNINFO where SI_ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("SI_ID"));
- remap.put("id",map.get("SI_ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_SNINFO"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object,Object>> makeSnRelation(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_MAKESNRELATION where ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("ID"));
- remap.put("id",map.get("ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKESNRELATION"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object,Object>> MAKEBAD(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_MAKEBAD where MB_CODE=? and nvl(t_status,'W')='W' ",Integer.class,map.get("MB_CODE"));
- remap.put("id",map.get("MB_CODE"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKEBAD"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object,Object>> makeBadReason(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_MAKEBADREASON where MBR_ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("MBR_ID"));
- remap.put("id",map.get("MBR_ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKEBADREASON"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object,Object>> packageDetail(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_PACKAGEDETAIL where PD_ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("MBR_ID"));
- remap.put("id",map.get("PD_ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_PACKAGEDETAIL"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> craftmaterial(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_CRAFTMATERIAL where cm_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("cm_id"));
- remap.put("id",map.get("cm_id"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_CRAFTMATERIAL"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> oqcbatch(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_OQCBATCHDETAIL where obd_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("obd_id"));
- remap.put("id",map.get("obd_id"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_OQCBATCHDETAIL"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> inspectdata(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from temp_inspectdata where id_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("id_id"));
- remap.put("id",map.get("id_id"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"temp_inspectdata"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> prodiomac(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from temp_prodiomac where pim_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("pim_id"));
- remap.put("id",map.get("pim_id"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"temp_prodiomac"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> oqcitemsamples(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from temp_oqcitemsamples where OIS_ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("OIS_ID"));
- remap.put("id",map.get("OIS_ID"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_OQCITEMSAMPLES"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public List<Map<Object, Object>> makeserial(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
- SpObserver.putSp(AE_MASTER);
- List<Map<Object, Object>> relist = new ArrayList<>();
- for (Map<Object, Object> map : maps) {
- Map<Object, Object> remap = new HashMap<>();
- String remark = "";
- int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from temp_makeserial where ms_id=? and nvl(t_status,'W')='W' ",Integer.class,map.get("ms_id"));
- remap.put("id",map.get("ms_id"));
- if(cn>0){
- map.put("T_STATUS","D");
- map.put("T_REMAKR","重复");
- remark = "重复";
- }else{
- map.put("T_STATUS","W");
- }
- map.put("T_KEY",accessKey);
- map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
- try {
- baseDao.execute(SqlUtil.getInsertSqlByMap(map,"temp_makeserial"));
- remap.put("result","OK");
- remap.put("remark",remark);
- }catch (Exception e){
- remap.put("result","NG");
- remap.put("remark",e.getMessage());
- e.printStackTrace();
- }
- relist.add(remap);
- }
- SpObserver.putSp(username);
- return relist;
- }
- @Override
- public ApiResult<Map<Object,Object>> barcode(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- SpObserver.putSp(AE_MASTER);
- Map<Object, Object> map = FlexJsonUtil.fromJson(data);
- try {
- if(!StringUtil.hasText(map.get("outno"))){
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(),requestId,"传参异常,出库单号不能为空!");
- }
- if("ADD".equals(map.get("action"))){
- if(!StringUtil.hasText(map.get("barlist"))){
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(),requestId,"传参操作类型:"+map.get("type")+"是写入,barlist 不允许为空");
- }
- List<Map<Object,Object>> barlist = (ArrayList)map.get("barlist");
- List<Map<Object,Object>> datab = new ArrayList<>();
- for(Map<Object,Object> mp : barlist){
- Map<Object,Object> mapb = new HashMap<>();
- mapb.put("ACTION","W");
- mapb.put("ERPID",mp.get("bar_id"));
- mapb.put("BAR_CODE",mp.get("bar_code"));
- mapb.put("BAR_PRODCODE",mp.get("bar_prodcode"));
- mapb.put("BAR_QTY",mp.get("bar_qty"));
- mapb.put("BAR_LOTNO",mp.get("bar_lotno"));
- mapb.put("BAR_DC",mp.get("bar_dc"));
- mapb.put("BAR_OUTNO",mp.get("bar_outno"));
- mapb.put("BAR_MACODE",mp.get("bar_macode"));
- mapb.put("BAR_BATCHQTY",mp.get("bar_batchqty"));
- datab.add(mapb);
- }
- baseDao.execute(SqlUtil.getInsertSqlbyGridStore(datab,"TEMP_BARCODE"));
- }else if("DEL".equals(map.get("action"))){
- Map<Object,Object> mapb = new HashMap<>();
- mapb.put("ACTION","D");
- mapb.put("ERPID",0);
- mapb.put("BAR_OUTNO",map.get("outno"));
- baseDao.execute(SqlUtil.getInsertSqlByMap(mapb,"TEMP_BARCODE"));
- }else{
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(),requestId,"传参操作类型:"+map.get("action")+"错误,只能是ADD或者DEL");
- }
- }catch (Exception e){
- e.printStackTrace();
- if(e.getMessage().length() > 500) {
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage().substring(0, 500));
- }else{
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage());
- }
- }
- return ApiResponse.successRsp("0",requestId,"操作成功");
- }
- /**
- * 栈板新增,先进行原栈板的解除绑定,解除绑定
- * @param requestId
- * @param data
- * {
- * "weight": 2455, //总重量
- * "kbcode": "T355", //卡板编号
- * "type": "彩盒" //类型是彩盒或者外箱
- * "detail": [{
- * "bcode": "53635453354" //如果类型是彩盒则传的值是ms_grossw,如果类型是外箱则 取package pa_weight
- * }
- * ]
- * }
- * @return
- */
- @Override
- public ApiResult<String> newPallet(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- SpObserver.putSp(AE_MASTER);
- Map<Object, Object> map = FlexJsonUtil.fromJson(data);
- try {
- String err = checkAddParam(map);
- if(null != err) {
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, err);
- }
- List<Map<Object,Object>> barlist;
- if (map.get("detail") instanceof ArrayList) {
- barlist = (ArrayList)map.get("detail");
- }else{
- barlist = BaseUtil.parseGridStoreToMaps(map.get("detail").toString());
- }
- //将数据存入一个表里面去操作
- int id_ = baseDao.getSeqId("TEMP_PALLETS");
- List<String> sqls = new ArrayList<>();
- sqls.add("insert into temp_pallets(id_,type_,weight_,palletno_) values("+id_+",'"+map.get("type")+"',"+map.get("weight")+",'"+map.get("kbcode")+"')");
- for(Map<Object,Object> bar : barlist) {
- sqls.add("insert into temp_Loadingpallets(id_,code_) values("+id_+",'"+bar.get("bcode")+"')");
- }
- baseDao.execute(sqls);
- List<String> result = baseDao.callProcedureWithOut("SP_NEWPALLET", new Object[] {id_},new Integer[] {1}, new Integer[] {2,3});
- if (result.size() != 0 && result.get(1) != null) {
- return ApiResponse.successRsp("0",requestId,"新增栈板成功",result.get(1));
- }else{
- return ApiResponse.successRsp("0",requestId,"新增失败"+result.get(2));
- }
- }catch (Exception e){
- e.printStackTrace();
- if(e.getMessage().length() > 500) {
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage().substring(0, 500));
- }else{
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage());
- }
- }
- }
- /**
- * 校验传参
- * @param map
- * @return
- */
- private String checkAddParam(Map<Object, Object> map){
- if(!StringUtil.hasText(map.get("weight")) ){
- return "传参异常,总重量【weight】不能为空!";
- }
- if(!StringUtils.isNumeric(map.get("weight").toString())){
- return "传参异常,总重量:"+map.get("weight")+",必须是数值类型!";
- }
- if(!StringUtil.hasText(map.get("kbcode"))){
- return "传参异常,卡板编号【kbcode】不能为空!";
- }
- if(!StringUtil.hasText(map.get("type"))){
- return "传参异常,类型【type】不能为空!";
- }
- if(!"彩盒".equals(map.get("type").toString()) && !"外箱".equals(map.get("type").toString()) ){
- return "传参异常,类型:"+map.get("type")+",只能是彩盒或者外箱!";
- }
- if(!StringUtil.hasText(map.get("detail"))){
- return "传参异常,需装栈板明细【detail】不能为空!";
- }
- return null;
- }
- /**
- * 栈板取消绑定,增加日志记录表
- * @param accessKey
- * @param requestId
- * @param data
- * {
- * "type": "彩盒", //值可以是彩盒或外箱或栈板
- * "detail":[{
- * "bcode": "53635453354"
- * }
- * ]
- * }
- * @return
- */
- @Override
- public ApiResult<String> unbindPallet(String accessKey, String requestId, String data) {
- // 取消绑定,栈板未在线才可以取消,获取栈板号
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- SpObserver.putSp(AE_MASTER);
- Map<Object, Object> map = FlexJsonUtil.fromJson(data);
- try {
- String err = checkUnBindParam(map);
- if(null != err) {
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, err);
- }
- List<Map<Object,Object>> barlist;
- if (map.get("detail") instanceof ArrayList) {
- barlist = (ArrayList)map.get("detail");
- }else{
- barlist = BaseUtil.parseGridStoreToMaps(map.get("detail").toString());
- }
- //将数据存入一个表里面去操作
- int id_ = baseDao.getSeqId("TEMP_PALLETS");
- List<String> sqls = new ArrayList<>();
- sqls.add("insert into temp_pallets(id_,type_) values("+id_+",'"+map.get("type")+"')");
- for(Map<Object,Object> bar : barlist) {
- sqls.add("insert into temp_Loadingpallets(id_,code_) values("+id_+",'"+bar.get("bcode")+"')");
- }
- baseDao.execute(sqls);
- List<String> result = baseDao.callProcedureWithOut("SP_UNBINDPALLET", new Object[] {id_},new Integer[] {1}, new Integer[] {2,3});
- if (result.size() != 0 && result.get(1) != null) {
- return ApiResponse.successRsp("0",requestId,"解绑栈板成功",result.get(1));
- }else{
- return ApiResponse.successRsp("0",requestId,"解绑失败"+result.get(2));
- }
- }catch (Exception e){
- e.printStackTrace();
- if(e.getMessage().length() > 500) {
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage().substring(0, 500));
- }else{
- return ApiResponse.failRsp(ErrorMessage.BUSINESS_ILLEGAL.getCode(), requestId, "异常错误," + e.getMessage());
- }
- }
- }
- private String checkUnBindParam(Map<Object, Object> map){
- if(!StringUtil.hasText(map.get("type"))){
- return "传参异常,类型【type】不能为空!";
- }
- if(!"彩盒".equals(map.get("type").toString()) && !"外箱".equals(map.get("type").toString()) && !"栈板".equals(map.get("type").toString())){
- return "传参异常,类型:"+map.get("type")+",只能是彩盒或者外箱或者栈板!";
- }
- if(!StringUtil.hasText(map.get("detail"))){
- return "传参异常,需装栈板明细【detail】不能为空!";
- }
- return null;
- }
- private String checkAccessKey(String accessKey,String requestId){
- Object accessSecret_O = baseDao.getFieldDataByCondition("APIEMPLOYEE", "AE_SECRET", "AE_KEY='"+accessKey+"'");
- Object AE_MASTER = baseDao.getFieldDataByCondition("APIEMPLOYEE", "AE_MASTER", "AE_KEY='"+accessKey+"'");
- String accessSecret = accessSecret_O == null ? "" : accessSecret_O.toString();
- // 检查KEY是否合理
- if (StringUtils.isEmpty(accessKey) || StringUtils.isEmpty(accessSecret) || AE_MASTER== null || "".equals(AE_MASTER.toString())) {
- ApiResult apiResult = new ApiResult();
- apiResult.setCode(ErrorMessage.ACCESSKEY_ILLEGAL.getCode());
- apiResult.setMessage(ErrorMessage.ACCESSKEY_ILLEGAL.getMessage());
- apiResult.setRequestId(requestId);
- throw new ApiSystemException(apiResult);
- }
- return AE_MASTER.toString();
- }
- }
|