MESDataServiceImpl.java 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. package com.uas.eis.serviceImpl;
  2. import com.uas.eis.core.config.SpObserver;
  3. import com.uas.eis.dao.BaseDao;
  4. import com.uas.eis.dto.DataCenter;
  5. import com.uas.eis.entity.ErrorMessage;
  6. import com.uas.eis.exception.ApiSystemException;
  7. import com.uas.eis.sdk.entity.ApiResult;
  8. import com.uas.eis.service.MESDataService;
  9. import com.uas.eis.utils.BaseUtil;
  10. import com.uas.eis.utils.Constant;
  11. import com.uas.eis.utils.DateUtil;
  12. import com.uas.eis.utils.SqlUtil;
  13. import org.apache.commons.lang.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.beans.factory.annotation.Value;
  16. import org.springframework.stereotype.Service;
  17. import java.sql.Timestamp;
  18. import java.util.ArrayList;
  19. import java.util.HashMap;
  20. import java.util.List;
  21. import java.util.Map;
  22. @Service
  23. public class MESDataServiceImpl implements MESDataService {
  24. @Autowired
  25. private BaseDao baseDao;
  26. @Value("${spring.datasource.username}")
  27. private String username;
  28. @Override
  29. public List<Map<Object,Object>> snStepPass(String accessKey, String requestId, String data) {
  30. String AE_MASTER = checkAccessKey(accessKey, requestId);
  31. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  32. SpObserver.putSp(AE_MASTER);
  33. List<Map<Object, Object>> relist = new ArrayList<>();
  34. for (Map<Object, Object> map : maps) {
  35. Map<Object, Object> remap = new HashMap<>();
  36. String remark = "";
  37. 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"));
  38. remap.put("id",map.get("SP_ID"));
  39. if(cn>0){
  40. map.put("T_STATUS","D");
  41. map.put("T_REMAKR","重复");
  42. remark = "重复";
  43. }else{
  44. map.put("T_STATUS","W");
  45. }
  46. map.put("T_KEY",accessKey);
  47. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  48. try {
  49. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_STEPPASSED"));
  50. remap.put("result","OK");
  51. remap.put("remark",remark);
  52. }catch (Exception e){
  53. remap.put("result","NG");
  54. remap.put("remark",e.getMessage());
  55. e.printStackTrace();
  56. }
  57. relist.add(remap);
  58. }
  59. //baseDao.execute(SqlUtil.getInsertSqlbyGridStore(maps, "TEMP_STEPPASSED"));
  60. //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)");
  61. SpObserver.putSp(username);
  62. return relist;
  63. }
  64. @Override
  65. public List<Map<Object,Object>> snInfo(String accessKey, String requestId, String data) {
  66. String AE_MASTER = checkAccessKey(accessKey, requestId);
  67. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  68. SpObserver.putSp(AE_MASTER);
  69. List<Map<Object, Object>> relist = new ArrayList<>();
  70. for (Map<Object, Object> map : maps) {
  71. Map<Object, Object> remap = new HashMap<>();
  72. String remark = "";
  73. 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"));
  74. remap.put("id",map.get("SI_ID"));
  75. if(cn>0){
  76. map.put("T_STATUS","D");
  77. map.put("T_REMAKR","重复");
  78. remark = "重复";
  79. }else{
  80. map.put("T_STATUS","W");
  81. }
  82. map.put("T_KEY",accessKey);
  83. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  84. try {
  85. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_SNINFO"));
  86. remap.put("result","OK");
  87. remap.put("remark",remark);
  88. }catch (Exception e){
  89. remap.put("result","NG");
  90. remap.put("remark",e.getMessage());
  91. e.printStackTrace();
  92. }
  93. relist.add(remap);
  94. }
  95. SpObserver.putSp(username);
  96. return relist;
  97. }
  98. @Override
  99. public List<Map<Object,Object>> makeSnRelation(String accessKey, String requestId, String data) {
  100. String AE_MASTER = checkAccessKey(accessKey, requestId);
  101. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  102. SpObserver.putSp(AE_MASTER);
  103. List<Map<Object, Object>> relist = new ArrayList<>();
  104. for (Map<Object, Object> map : maps) {
  105. Map<Object, Object> remap = new HashMap<>();
  106. String remark = "";
  107. int cn = baseDao.getJdbcTemplate().queryForObject("select count(1) from TEMP_MAKESNRELATION where ID=? and nvl(t_status,'W')='W' ",Integer.class,map.get("ID"));
  108. remap.put("id",map.get("ID"));
  109. if(cn>0){
  110. map.put("T_STATUS","D");
  111. map.put("T_REMAKR","重复");
  112. remark = "重复";
  113. }else{
  114. map.put("T_STATUS","W");
  115. }
  116. map.put("T_KEY",accessKey);
  117. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  118. try {
  119. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKESNRELATION"));
  120. remap.put("result","OK");
  121. remap.put("remark",remark);
  122. }catch (Exception e){
  123. remap.put("result","NG");
  124. remap.put("remark",e.getMessage());
  125. e.printStackTrace();
  126. }
  127. relist.add(remap);
  128. }
  129. SpObserver.putSp(username);
  130. return relist;
  131. }
  132. @Override
  133. public List<Map<Object,Object>> MAKEBAD(String accessKey, String requestId, String data) {
  134. String AE_MASTER = checkAccessKey(accessKey, requestId);
  135. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  136. SpObserver.putSp(AE_MASTER);
  137. List<Map<Object, Object>> relist = new ArrayList<>();
  138. for (Map<Object, Object> map : maps) {
  139. Map<Object, Object> remap = new HashMap<>();
  140. String remark = "";
  141. 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"));
  142. remap.put("id",map.get("MB_CODE"));
  143. if(cn>0){
  144. map.put("T_STATUS","D");
  145. map.put("T_REMAKR","重复");
  146. remark = "重复";
  147. }else{
  148. map.put("T_STATUS","W");
  149. }
  150. map.put("T_KEY",accessKey);
  151. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  152. try {
  153. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKEBAD"));
  154. remap.put("result","OK");
  155. remap.put("remark",remark);
  156. }catch (Exception e){
  157. remap.put("result","NG");
  158. remap.put("remark",e.getMessage());
  159. e.printStackTrace();
  160. }
  161. relist.add(remap);
  162. }
  163. SpObserver.putSp(username);
  164. return relist;
  165. }
  166. @Override
  167. public List<Map<Object,Object>> makeBadReason(String accessKey, String requestId, String data) {
  168. String AE_MASTER = checkAccessKey(accessKey, requestId);
  169. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  170. SpObserver.putSp(AE_MASTER);
  171. List<Map<Object, Object>> relist = new ArrayList<>();
  172. for (Map<Object, Object> map : maps) {
  173. Map<Object, Object> remap = new HashMap<>();
  174. String remark = "";
  175. 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"));
  176. remap.put("id",map.get("MBR_ID"));
  177. if(cn>0){
  178. map.put("T_STATUS","D");
  179. map.put("T_REMAKR","重复");
  180. remark = "重复";
  181. }else{
  182. map.put("T_STATUS","W");
  183. }
  184. map.put("T_KEY",accessKey);
  185. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  186. try {
  187. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_MAKEBADREASON"));
  188. remap.put("result","OK");
  189. remap.put("remark",remark);
  190. }catch (Exception e){
  191. remap.put("result","NG");
  192. remap.put("remark",e.getMessage());
  193. e.printStackTrace();
  194. }
  195. relist.add(remap);
  196. }
  197. SpObserver.putSp(username);
  198. return relist;
  199. }
  200. @Override
  201. public List<Map<Object,Object>> packageDetail(String accessKey, String requestId, String data) {
  202. String AE_MASTER = checkAccessKey(accessKey, requestId);
  203. List<Map<Object, Object>> maps = BaseUtil.parseGridStoreToMaps(data);
  204. SpObserver.putSp(AE_MASTER);
  205. List<Map<Object, Object>> relist = new ArrayList<>();
  206. for (Map<Object, Object> map : maps) {
  207. Map<Object, Object> remap = new HashMap<>();
  208. String remark = "";
  209. 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"));
  210. remap.put("id",map.get("PD_ID"));
  211. if(cn>0){
  212. map.put("T_STATUS","D");
  213. map.put("T_REMAKR","重复");
  214. remark = "重复";
  215. }else{
  216. map.put("T_STATUS","W");
  217. }
  218. map.put("T_KEY",accessKey);
  219. map.put("T_INDATE", Timestamp.valueOf(DateUtil.currentDateString(Constant.YMD_HMS)));
  220. try {
  221. baseDao.execute(SqlUtil.getInsertSqlByMap(map,"TEMP_PACKAGEDETAIL"));
  222. remap.put("result","OK");
  223. remap.put("remark",remark);
  224. }catch (Exception e){
  225. remap.put("result","NG");
  226. remap.put("remark",e.getMessage());
  227. e.printStackTrace();
  228. }
  229. relist.add(remap);
  230. }
  231. SpObserver.putSp(username);
  232. return relist;
  233. }
  234. private String checkAccessKey(String accessKey,String requestId){
  235. Object accessSecret_O = baseDao.getFieldDataByCondition("APIEMPLOYEE", "AE_SECRET", "AE_KEY='" + accessKey + "'");
  236. Object AE_MASTER = baseDao.getFieldDataByCondition("APIEMPLOYEE", "AE_MASTER", "AE_KEY='" + accessKey + "'");
  237. String accessSecret = accessSecret_O == null ? "" : accessSecret_O.toString();
  238. // 检查KEY是否合理
  239. if (StringUtils.isEmpty(accessKey) || StringUtils.isEmpty(accessSecret) || AE_MASTER== null || "".equals(AE_MASTER.toString())) {
  240. ApiResult apiResult = new ApiResult();
  241. apiResult.setCode(ErrorMessage.ACCESSKEY_ILLEGAL.getCode());
  242. apiResult.setMessage(ErrorMessage.ACCESSKEY_ILLEGAL.getMessage());
  243. apiResult.setRequestId(requestId);
  244. throw new ApiSystemException(apiResult);
  245. }
  246. return AE_MASTER.toString();
  247. }
  248. }