| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875 |
- package com.uas.eis.serviceImpl;
- import com.uas.eis.core.config.SpObserver;
- import com.uas.eis.dao.BaseDao;
- import com.uas.eis.dao.SqlRowList;
- import com.uas.eis.entity.ErrorMessage;
- import com.uas.eis.entity.HelperType;
- import com.uas.eis.exception.ApiSystemException;
- import com.uas.eis.sdk.entity.ApiResult;
- import com.uas.eis.service.MESDataService;
- import com.uas.eis.service.MESHelperService;
- import com.uas.eis.utils.*;
- import net.sf.json.JSONObject;
- import net.sf.json.JsonConfig;
- 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 sun.awt.TimedWindowEvent;
- import java.sql.Timestamp;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- @Service
- public class MESHelperServiceImpl implements MESHelperService {
- @Autowired
- private BaseDao baseDao;
- @Value("${spring.datasource.username}")
- private String username;
- @Override
- public Map<Object,Object> DLLMain(String accessKey, String requestId, String data) {
- String AE_MASTER = checkAccessKey(accessKey, requestId);
- SpObserver.putSp(AE_MASTER);
- Map<Object, Object> map = BaseUtil.parseFormStoreToMap(data);
- //解析map
- if(!StringUtil.hasText(map.get("type"))){
- throw new ApiSystemException(new ApiResult(ErrorMessage.BUSINESS_TYPENULL,requestId));
- }
- if(!StringUtil.hasText(map.get("detail"))){
- throw new ApiSystemException(new ApiResult(ErrorMessage.BUSINESS_DATAILLEGAL,requestId));
- }
- String type = map.get("type").toString();
- JSONObject json = JSONObject.fromObject(map.get("detail"));
- HelperType helperType = HelperType.getTypeByCode(type);
- if(null == helperType){
- throw new ApiSystemException(new ApiResult(ErrorMessage.BUSINESS_TYPEILLEGAL,requestId));
- }
- int err = 0;
- //返回值
- Map<Object, Object> remap = new HashMap<Object, Object>();
- switch(helperType){
- case CheckRoutePassed:
- remap = CheckRoutePassed(json);
- break;
- case CheckUserAndResourcePassed:
- remap = CheckUserAndResourcePassed(json);
- break;
- case GetAddressRangeByMO:
- remap = GetAddressRangeByMO(json);
- break;
- case GetMEIOrNetCodeRange:
- remap = GetMEIOrNetCodeRange(json);
- break;
- case GetRcardMOInfo:
- remap = GetRcardMOInfo(json);
- break;
- case GetMobileAllInfo:
- remap = GetMobileAllInfo(json);
- break;
- case SetAddressInfo:
- remap = SetAddressInfo(json);
- break;
- case GetMaster:
- remap = GetMaster(json);
- break;
- case SetMobileData:
- remap = SetMobileData(json);
- break;
- case SetIMEIInfo:
- remap = SetIMEIInfo(json);
- break;
- case SetTestDetail:
- remap = SetTestDetail(json);
- break;
- case SetPcbaData:
- remap = SetPcbaData(json);
- break;
- case GetInfoByMaterial:
- remap = GetInfoByMaterial(json);
- break;
- case GoMo:
- remap = GoMo(json);
- break;
- default:
- err = -1;
- break;
- }
- if(err == -1){
- throw new ApiSystemException(new ApiResult(ErrorMessage.BUSINESS_TYPEILLEGAL,requestId));
- }
- SpObserver.putSp(username);
- return remap;
- }
- private Map<Object,Object> GoMo(JSONObject map){
- Map<Object, Object> rmap = new HashMap<Object, Object>();
- String iSN=null;
- String iResCode=null;
- String iMo=null;
- String oErrMessage=null;
- if(map.get("iMo")==null){
- oErrMessage = "工单号不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- if(map.get("iResCode")==null){
- oErrMessage = "岗位资源不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- iSN=map.get("iSN").toString();
- iResCode=map.get("iResCode").toString();
- iMo=map.get("iMo").toString();
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_CHECKSTEPSNANDMACODE", new Object[]{
- String.valueOf(iMo),
- String.valueOf(iResCode),
- String.valueOf(iSN),
- String.valueOf("")
- }, new Integer[]{1, 2, 3, 4}, new Integer[]{5, 6, 7});
- oErrMessage=list.get(2);
- SqlRowList rs = baseDao.queryForRowSet("select ms_status,ms_stepcode,ms_nextstepcode from makeserial where ms_id=( select max(ms_id) from makeserial where ms_sncode in ( select '" + iSN + "' from dual union select sn from makesnrelation where beforesn='" + iSN + "' and sn<>' ' union select beforesn from makesnrelation where sn='" + iSN + "' and beforesn<>' '))");
- String ms_status = "";
- String ms_stepcode = "";
- String ms_nextstepcode = "";
- if(rs.next()){
- ms_status= rs.getString("ms_status");
- ms_stepcode=rs.getString("ms_stepcode");
- ms_nextstepcode=rs.getString("ms_nextstepcode");
- }
- String stepcode = GetStepCodeBySource(iResCode);
- if ( oErrMessage == null || (ms_status == "3" && ms_stepcode == stepcode))
- {
- if (ms_status == "3")
- {
- oErrMessage = null;
- }
- }
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetInfoByMaterial(JSONObject map){
- Map<Object, Object> rmap = new HashMap<Object, Object>();
- String iPCBA=null;
- String oErrMessage=null;
- if(map.get("iPCBA")==null){
- oErrMessage = "主板SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- iPCBA=map.get("iPCBA").toString();
- SqlRowList rs=baseDao.queryForRowSet("select ms_firstsn,ms_sncode,ma_bios,ma_ec,ma_hardware from CRAFTMATERIAL left join make on cm_makecode=ma_code " +
- "left join makeserial on ms_firstsn=cm_firstsn and cm_makecode=ms_makecode where cm_barcode='"+iPCBA+"'");
- if(rs.next()){
- rmap.put("oSN",rs.getString("ms_sncode"));
- rmap.put("oBIOS",rs.getString("ma_bios"));
- rmap.put("oEC",rs.getString("ma_ec"));
- rmap.put("oHardWare",rs.getString("ma_hardware"));
- }else{
- oErrMessage = "主板SN未查询到关联信息";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- return rmap;
- }
- private Map<Object,Object> CheckRoutePassed(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String iSN=map.get("iSN").toString();
- String iResCode=map.get("iResCode").toString();
- String oErrMessage="";
- if (iSN ==null)
- {
- oErrMessage = "SN不能为空";
- }
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_CHECKSTEPSNANDMACODE", new Object[]{
- String.valueOf(""),
- String.valueOf(iResCode),
- String.valueOf(iSN),
- String.valueOf("")
- }, new Integer[]{1, 2, 3, 4}, new Integer[]{5, 6, 7});
- oErrMessage=list.get(2);
- SqlRowList rs = baseDao.queryForRowSet("select ms_status,ms_stepcode,ms_nextstepcode from makeserial where ms_id=( select max(ms_id) from makeserial where ms_sncode in ( select '" + iSN + "' from dual union select sn from makesnrelation where beforesn='" + iSN + "' and sn<>' ' union select beforesn from makesnrelation where sn='" + iSN + "' and beforesn<>' '))");
- String ms_status = "";
- String ms_stepcode = "";
- String ms_nextstepcode = "";
- if(rs.next()){
- ms_status= rs.getString("ms_status");
- ms_stepcode=rs.getString("ms_stepcode");
- ms_nextstepcode=rs.getString("ms_nextstepcode");
- }
- String stepcode = GetStepCodeBySource(iResCode);
- if (ms_nextstepcode != "" && ms_nextstepcode != stepcode)
- {
- oErrMessage = "当前序列号下一工序" + ms_nextstepcode;
- }
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> CheckUserAndResourcePassed(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage = null;
- if (map.get("iUserCode") == null || map.get("iResCode") == null || map.get("iPassWord") == null)
- {
- oErrMessage = "用户名,密码,岗位资源必须填写";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iUserCode=map.get("iUserCode").toString();
- String iPassWord=map.get("iPassWord").toString();
- String iResCode=map.get("iResCode").toString();
- if (CheckUserLogin(iUserCode, iPassWord))
- {
- String SQL = "select em_code,em_type,em_name from employee where em_code=? ";
- SqlRowList rs = baseDao.queryForRowSet(SQL, iUserCode);
- if (rs.next())
- {
- String em_name = rs.getString("em_name");
- String em_type = rs.getString("em_type");
- if (iResCode ==null)
- {
- oErrMessage = "岗位资源不允许为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- if (em_type.equals("admin"))
- {
- if (!baseDao.checkIf("Source", "sc_code='" + iResCode + "' and sc_statuscode='AUDITED'"))
- {
- oErrMessage = "岗位资源编号错误或者未审核!";
- }
- }
- else
- {
- SqlRowList rs1=baseDao.queryForRowSet("select ur_resourcecode from cs$empgroup left join cs$userresource on ur_groupcode=eg_groupcode left join source on ur_resourcecode=sc_code where eg_emcode = '"+ iUserCode + "' and sc_statuscode='AUDITED'");
- //如果存在该编号
- if (rs1.next())
- {
- //判断如果多个岗位资源存在,用户输入的只要在其中就行
- while (rs.next())
- {
- if (!rs.getString("ur_resourcecode").equals("iResCode")){
- oErrMessage = "用户不处于当前资源所属分组!";
- }else
- {
- oErrMessage=null;
- continue;
- }
- }
- }
- else
- oErrMessage = "岗位资源编号错误或者未审核!";
- }
- }
- else
- oErrMessage = "用户不存在!";
- }else{
- oErrMessage = "用户名密码不正确!";
- }
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetAddressRangeByMO(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String iSN="";
- String oErrMessage = null;
- String oWIFI = "";
- String oBT = "";
- String oCode1 = "";
- String oCode2 = "";
- String oCode3 = "";
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- iSN=map.get("iSN").toString();
- //判断工单是否归属
- JSONObject map3=new JSONObject();
- map3.put("iSN",iSN);
- Map<Object, Object> map2=GetRcardMOInfo(map3);
- if(map2.get("oErrMessage")!=null){
- oErrMessage=map2.get("oErrMessage").toString();
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_GETADDRESSBYMAKECODE", new Object[]{
- String.valueOf(iSN),
- String.valueOf(map2.get("oMoCode").toString()),
- }, new Integer[]{1,2}, new Integer[]{3,4,5,6,7,8});
- oWIFI = list.get(0);
- oBT = list.get(1);
- oCode1 = list.get(2);
- oCode2 = list.get(3);
- oCode3 = list.get(4);
- oErrMessage= list.get(5);
- if (oErrMessage == "" || oErrMessage == null || oErrMessage == "null"){
- rmap.put("oWIFI",oWIFI);
- rmap.put("oBT",oBT);
- rmap.put("oCode1",oCode1);
- rmap.put("oCode2",oCode2);
- rmap.put("oCode3",oCode3);
- }
- else
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetMEIOrNetCodeRange(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String iSN="";
- String oErrMessage = null;
- String oIMEI1 = "";
- String oIMEI2 = "";
- String oMEID = "";
- String oNetCode = "";
- String oPSN = "";
- String oID1 = "";
- String oID2 = "";
- String oID3 = "";
- String oID4 = "";
- String oID5 = "";
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- if(map.get("iIMEI1")!=null){
- oIMEI1=map.get("iIMEI1").toString();
- }
- if(map.get("iNetCode")!=null){
- oNetCode=map.get("iNetCode").toString();
- }
- iSN=map.get("iSN").toString();
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_GETIMEIORNETCODERANGE", new Object[]{
- String.valueOf(iSN),
- String.valueOf(""),
- String.valueOf(oIMEI1),
- String.valueOf(oNetCode),
- }, new Integer[]{1,2,3,4}, new Integer[]{5,6,7,8,9,10,11,12,13,14});
- oIMEI1 = list.get(0);
- oIMEI2 = list.get(1);
- oMEID = list.get(2);
- oNetCode = list.get(3);
- oID1 = list.get(4);
- oID2 = list.get(5);
- oID3 = list.get(6);
- oID4 = list.get(7);
- oID5 = list.get(8);
- oErrMessage= list.get(9);
- if (oErrMessage == "" || oErrMessage == null || oErrMessage == "null"){
- rmap.put("oIMEI1",oIMEI1);
- rmap.put("oIMEI2",oIMEI2);
- rmap.put("oMEID",oMEID);
- rmap.put("oNetCode",oNetCode);
- rmap.put("oPSN",oPSN);
- rmap.put("oID1",oID1);
- rmap.put("oID2",oID2);
- rmap.put("oID3",oID3);
- rmap.put("oID4",oID4);
- rmap.put("oID5",oID5);
- }
- else
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetRcardMOInfo(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- //取MakeProcess表中的执行记录ID最大的一个工单的号码
- String oErrMessage = null;
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- StringBuffer sql=new StringBuffer();
- sql.append("select max(ms_id)ms_id from makeserial where ms_sncode in (select '" + iSN + "' from dual union select sn from ");
- sql.append("makesnrelation where beforesn='" + iSN + "' and sn<>' ' union select beforesn from makesnrelation where sn='" + iSN + "' and beforesn<>' ')");
- SqlRowList rs = baseDao.queryForRowSet(sql.toString());
- String ms_id="";
- if(rs.next()){
- if(rs.getString("ms_id")==null){
- oErrMessage = "序列号:" + iSN + " 未归属工单";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- else{
- ms_id= rs.getString("ms_id");
- }
- }
- Object oMoCode = baseDao.getFieldDataByCondition("MakeSerial", "ms_makecode", "ms_id='" + ms_id + "'");
- if (oMoCode != null){
- rmap.put("oMoCode",oMoCode);
- oErrMessage= null;
- }
- else
- {
- oErrMessage = "序列号:" + iSN + " 未归属工单";
- }
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetMobileAllInfo(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String iSN="";
- String oErrMessage = null;
- String oIMEI1 = "";
- String oIMEI2 = "";
- String oMEID = "";
- String oNetCode = "";
- String oPSN = "";
- String oID1 = "";
- String oID2 = "";
- String oID3 = "";
- String oID4 = "";
- String oID5 = "";
- String oWIFI = "";
- String oBT = "";
- String oCode1 = "";
- String oCode2 = "";
- String oCode3 = "";
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- iSN=map.get("iSN").toString();
- Object ms_id =baseDao.getFieldDataByCondition("makeserial", "max(ms_id)", "ms_sncode='" + iSN + "'");
- if(ms_id!=null)
- {
- SqlRowList rs=baseDao.queryForRowSet("select ms_id, ms_mac, ms_bt, ms_meid, ms_netcode, ms_psn, ms_imei1, ms_imei2, ms_imei3, ms_othcode1, ms_othcode2, ms_othcode3, ms_othid1, ms_othid2, ms_othid3 from MakeSerial where ms_id="+ms_id.toString());
- if(rs.next()){
- oWIFI = rs.getString("ms_mac");
- oBT = rs.getString("ms_bt");
- oPSN = rs.getString("ms_psn");
- oNetCode = rs.getString("ms_netcode");
- oMEID = rs.getString("ms_meid");
- oIMEI1 = rs.getString("ms_imei1");
- oIMEI2 = rs.getString("ms_imei2");
- oCode1 = rs.getString("ms_othcode1");
- oCode2 = rs.getString("ms_othcode2");
- oCode3 = rs.getString("ms_othcode3");
- oID1 = rs.getString("ms_othid3");
- oID2 = rs.getString("ms_othid3");
- oID3 = rs.getString("ms_othid3");
- }
- }else
- {
- oErrMessage = "序列号" + iSN + "不存在";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- if (oErrMessage == "" || oErrMessage == null || oErrMessage == "null"){
- rmap.put("oIMEI1",oIMEI1);
- rmap.put("oIMEI2",oIMEI2);
- rmap.put("oMEID",oMEID);
- rmap.put("oNetCode",oNetCode);
- rmap.put("oPSN",oPSN);
- rmap.put("oID1",oID1);
- rmap.put("oID2",oID2);
- rmap.put("oID3",oID3);
- rmap.put("oID4",oID4);
- rmap.put("oID5",oID5);
- rmap.put("oWIFI",oWIFI);
- rmap.put("oBT",oBT);
- rmap.put("oCode1",oCode1);
- rmap.put("oCode2",oCode2);
- rmap.put("oCode3",oCode3);
- }
- else
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> SetAddressInfo(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage = null;
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- String iWIFI = null;
- String iBT = null;
- String iCode1 = null;
- String iCode2 = null;
- String iCode3 = null;
- if(map.get("iWIFI")!=null){
- iWIFI=map.get("iWIFI").toString();
- }
- if(map.get("iBT")!=null){
- iBT=map.get("iBT").toString();
- }
- if(map.get("iCode1")!=null){
- iCode1=map.get("iCode1").toString();
- }
- if(map.get("iCode2")!=null){
- iCode2=map.get("iCode2").toString();
- }
- if(map.get("iCode3")!=null){
- iCode3=map.get("iCode3").toString();
- }
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_SETADDRESSINFO", new Object[]{
- String.valueOf(iSN),
- String.valueOf(iWIFI),
- String.valueOf(iBT),
- String.valueOf(iCode1),
- String.valueOf(iCode2),
- String.valueOf(iCode3)
- }, new Integer[]{1, 2, 3, 4, 5, 6}, new Integer[]{7});
- oErrMessage = list.get(0);
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> GetMaster(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- SqlRowList rs=baseDao.queryForRowSet("select ma_user from mes.master");
- while(rs.next())
- {
- rmap.put(rs.getString("ma_user"),rs.getString("ma_user"));
- }
- return rmap;
- }
- private Map<Object,Object> SetMobileData(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage = null;
- if(map.get("iSN")==null||map.get("iTSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- String iTSN=map.get("iTSN").toString();
- String iSourceCode = null;
- String iOperater = null;
- String iResult = null;
- String flag = null;
- String iErrCode = null;
- if(map.get("iSourceCode")!=null){
- iSourceCode=map.get("iSourceCode").toString();
- }
- if(map.get("iOperater")!=null){
- iOperater=map.get("iOperater").toString();
- }
- if(map.get("iResult")!=null){
- iResult=map.get("iResult").toString();
- }
- if(map.get("flag")!=null){
- flag=map.get("flag").toString();
- }
- if(map.get("iErrCode")!=null){
- iErrCode=map.get("iErrCode").toString();
- }
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_DLLSNCHANGE", new Object[]{
- String.valueOf(iTSN),
- String.valueOf(iSN),
- String.valueOf(iSourceCode),
- String.valueOf(iOperater),
- String.valueOf(iResult),
- String.valueOf(iErrCode),
- }, new Integer[]{1, 2, 3, 4, 5, 6}, new Integer[]{7});
- oErrMessage = list.get(0);
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> SetIMEIInfo(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage = null;
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- String iIMEI1=null;
- String iIMEI2 = null;
- String iIMEI3 = null;
- String iMEID = null;
- String iNET = null;
- String iID1 = null;
- String iID2 = null;
- String iID3 = null;
- if(map.get("iIMEI1")!=null){
- iIMEI1=map.get("iIMEI1").toString();
- }
- if(map.get("iIMEI2")!=null){
- iIMEI2=map.get("iIMEI2").toString();
- }
- if(map.get("iIMEI3")!=null){
- iIMEI3=map.get("iIMEI3").toString();
- }
- if(map.get("iMEID")!=null){
- iMEID=map.get("iMEID").toString();
- }
- if(map.get("iNET")!=null){
- iNET=map.get("iNET").toString();
- }
- if(map.get("iID1")!=null){
- iID1=map.get("iID1").toString();
- }
- if(map.get("iID2")!=null){
- iID2=map.get("iID2").toString();
- }
- if(map.get("iID3")!=null){
- iID3=map.get("iID3").toString();
- }
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_SETIMEIINFO", new Object[]{
- String.valueOf(iSN),
- String.valueOf(iIMEI1),
- String.valueOf(iIMEI2),
- String.valueOf(iIMEI3),
- String.valueOf(iMEID),
- String.valueOf(iNET),
- String.valueOf(""),
- String.valueOf(iID1),
- String.valueOf(iID2),
- String.valueOf(iID3),
- }, new Integer[]{1, 2, 3, 4, 5, 6,7,8,9,10}, new Integer[]{11});
- oErrMessage = list.get(0);
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- private Map<Object,Object> SetTestDetail(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage=null;
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- String iTestResult= "";
- String iResCode= "";
- String iClassName="";
- String iTestDetail= "";
- if(map.get("iTestResult")!=null){
- iTestResult=map.get("iTestResult").toString();
- }
- if(map.get("iClassName")!=null){
- iClassName=map.get("iClassName").toString();
- }
- if(map.get("iResCode")!=null){
- iResCode=map.get("iResCode").toString();
- }
- if(map.get("iTestDetail")!=null){
- iTestDetail=map.get("iTestDetail").toString();
- }
- JSONObject map3=new JSONObject();
- map3.put("iSN",iSN);
- Map<Object, Object> map2=GetRcardMOInfo(map3);
- String omakeCode = "";
- StringBuffer sql=new StringBuffer();
- String[] name=iClassName.split("\\|");
- String[] result=iTestResult.split("\\|");
- String[] value=iTestDetail.split("\\|");
- if(name.length!=value.length||name.length!=result.length){
- rmap.put("oErrMessage","测试项目名称和值的项次不一致");
- return rmap;
- }
- for (int i=0;i<name.length;i++){
- sql.setLength(0);
- sql.append("Insert into STEPTESTDETAIL (STD_ID,STD_CLASS,STD_SN,STD_MAKECODE,STD_ACTUALVALUE,STD_TESTRESULT,STD_INDATE,STD_RESCODE)");
- sql.append("values(STEPTESTDETAIL_SEQ.nextval,'"+name[i]+"','" + iSN + "','" + map2.get("oMoCode") + "','" + value[i] + "','" + result[i] + "',sysdate,'" + iResCode + "')");
- baseDao.execute(sql.toString());
- }
- return rmap;
- }
- private Map<Object,Object> SetPcbaData(JSONObject map){
- //实际业务数据
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage = null;
- if(map.get("iSN")==null){
- oErrMessage = "SN不能为空";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- String iSN=map.get("iSN").toString();
- String iResCode = null;
- String iOperator = null;
- String iResult = null;
- String iErrCode = null;
- if(map.get("iResCode")!=null){
- iResCode=map.get("iResCode").toString();
- }
- if(map.get("iOperator")!=null){
- iOperator=map.get("iOperator").toString();
- }
- if(map.get("iResult")!=null){
- iResult=map.get("iResult").toString();
- }
- if(map.get("iErrCode")!=null){
- iErrCode=map.get("iErrCode").toString();
- }
- JSONObject map3=new JSONObject();
- map3.put("iSN",iSN);
- Map<Object, Object> map2=GetRcardMOInfo(map3);
- String oMoCode=null;
- if(map2.get("oMoCode")!=null){
- oMoCode=map2.get("oMoCode").toString();
- }
- if (map2.get("oErrMessage")==null)
- return SetStepFinish(oMoCode, iResCode, iSN, "", iResult, iOperator, iErrCode);
- return rmap;
- }
- /// <summary>
- /// 获取步骤代码
- /// </summary>
- /// <param name="Source"></param>
- /// <returns></returns>
- private String GetStepCodeBySource(String Source)
- {
- Object o=baseDao.getFieldDataByCondition("source", "sc_stepcode", "sc_code='" + Source + "'");
- if(o!=null)
- return o.toString();
- else
- return "";
- }
- private Boolean CheckUserLogin(String iUserCode, String iPassWord)
- {
- SqlRowList rs =baseDao.queryForRowSet("select em_code from employee where em_code='"+iUserCode+"' and em_password =?",iPassWord);
- if (rs.next())
- return true;
- else
- {
- return false;
- }
- }
- public Map<Object,Object> SetStepFinish(String iMakeCode, String iSourceCode, String iSN, String iMPKind, String iResult, String iUserCode, String iErrCode)
- {
- String oErrMessage = null;
- String StepCode = baseDao.getFieldDataByCondition("Makeserial", "ms_stepcode", "ms_sncode='" + iSN + "' and ms_makecode='" + iMakeCode + "'").toString();
- String CurrentStep = GetStepCodeBySource(iSourceCode);
- Object BgCode = baseDao.getFieldDataByCondition("step", "st_badgroupcode", "st_code='" + CurrentStep + "'");
- Map<Object, Object> rmap = new HashMap<>();
- switch (iResult)
- {
- case "OK":
- break;
- case "NG":
- if (iErrCode == "")
- {
- oErrMessage = "测试结果为NG时必须传递不良代码";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- else
- {
- baseDao.updateByCondition("makebad", "mb_status=-1", "mb_sncode='" + iSN + "' and mb_makecode='" + iMakeCode + "' and mb_stepcode='" + CurrentStep + "' and mb_status=0");
- String[] BadCode = iErrCode.split("\\|");
- StringBuffer sql=new StringBuffer();
- for (int i = 0; i < BadCode.length; i++)
- {
- int mb_id = baseDao.getSeqId("makebad_seq");
- sql.setLength(0);
- sql.append("insert into makebad(mb_id,mb_makecode,mb_mscode,mb_sncode,mb_inman,mb_indate,mb_stepcode");
- sql.append(",mb_sourcecode,mb_badcode,mb_badtable,mb_bgcode,mb_soncode,mb_status) select '" + mb_id + "'");
- sql.append(",ma_code,ms_code,ms_sncode,'" + iUserCode + "',sysdate,'" + CurrentStep + "','" + iSourceCode + "',:bc_code,'',");
- sql.append("'" + BgCode!=null?BgCode:"" + "',sp_soncode,'0' from make left join makeSerial on ms_makecode=ma_code left join stepProduct on ");
- sql.append("sp_mothercode=ma_prodcode and sp_stepcode=ms_nextstepcode where ms_sncode='" + iSN + "' and ms_makecode='" + iMakeCode + "'");
- baseDao.execute(sql.toString().replace(":bc_code", "'" + BadCode[i] + "'"));
- }
- //将不良的序列号的状态码设为3
- baseDao.execute("update makeserial set ms_status='3' where ms_sncode='" + iSN + "' and ms_makecode='" + iMakeCode + "'");
- }
- break;
- default:
- oErrMessage = "测试结果必须为NG或者OK";
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- //不良采集为良品是更新
- if (StepCode == CurrentStep && iResult == "OK")
- {
- Object[] ob = baseDao.getFieldsDataByCondition("makeserial", "ms_status,ms_craftcode,ms_prodcode", "ms_sncode='" + iSN + "' and ms_makecode='" + iMakeCode + "'");
- if (ob!=null)
- {
- String ms_status =ob[0].toString();
- String ms_craftcode= ob[1].toString();
- String ms_prodcode = ob[2].toString();
- if (ms_status == "3")
- {
- String nextstepcode =baseDao.getFieldDataByCondition("craft left join craftdetail on cr_id=cd_crid ", "cd_nextstepcode", "cr_code='" + ms_craftcode + "' and cr_prodcode='" + ms_prodcode + "' and cd_stepcode='" + CurrentStep + "'").toString();
- baseDao.updateByCondition("makeserial", "ms_status=1,ms_nextstepcode='" + nextstepcode + "'", "ms_sncode='" + iSN + "' and ms_makecode='" + iMakeCode + "'");
- baseDao.updateByCondition("makebad", "mb_status=-1", "mb_sncode='" + iSN + "' and mb_makecode='" + iMakeCode + "'");
- }
- }
- }
- return CS_SetFinish(iMakeCode, iSourceCode, iSN, iUserCode, iResult);
- }
- private Map<Object,Object> CS_SetFinish(String iMakeCode, String iSourceCode, String iSN, String iUserCode, String iResult)
- {
- Map<Object, Object> rmap = new HashMap<>();
- String oErrMessage=null;
- List<String> list = new ArrayList<String>();
- list = baseDao.callProcedureWithOut("CS_SETSTEPRESULT", new Object[]{
- String.valueOf(iMakeCode),
- String.valueOf(iSourceCode),
- String.valueOf(iSN),
- String.valueOf(iUserCode),
- String.valueOf(iResult),
- }, new Integer[]{1, 2, 3, 4, 5}, new Integer[]{6});
- oErrMessage = list.get(0);
- rmap.put("oErrMessage",oErrMessage);
- return rmap;
- }
- 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(ErrorMessage.ACCESSKEY_ILLEGAL.getCode(),ErrorMessage.ACCESSKEY_ILLEGAL.getMessage(),requestId);
- throw new ApiSystemException(apiResult);
- }
- return AE_MASTER.toString();
- }
- }
|