package com.cim.idm.controller; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.cim.idm.exception.GlobalException; import com.cim.idm.framework.IDMFrameServiceProxy; import com.cim.idm.framework.data.EventInfo; import com.cim.idm.model.*; import com.cim.idm.mwmsextend.materialpacking.service.MaterialPackingServiceImpl; import com.cim.idm.response.BaseResponse; import com.cim.idm.response.RespGenerator; import com.cim.idm.service.LabelService; import com.cim.idm.utils.AjaxResult; import com.cim.idm.utils.EventInfoUtil; import com.cim.idm.utils.JsonResponse; import com.cim.idm.wmsextend.generic.errorHandler.CustomException; import com.cim.idm.wmspackage.material.management.info.SetSpecEventInfo; import com.cim.idm.wmspackage.materialpacking.MaterialPackingServiceProxy; import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPacking; import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPackingKey; import com.cim.idm.wmspackage.materialpacking.management.info.SetEventInfo; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.web.client.RestTemplateBuilder; import org.springframework.web.bind.annotation.*; import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; /** * @author 10486880 * @version 1.0 * @description LabelController * @date 2023/11/15 9:54 */ @RestController @RequestMapping("/api/label") @EnableAutoConfiguration public class LabelController { @Resource private LabelService labelService; // @Resource // private LabelPrintInfoService labelPrintInfoService; private static final RestTemplate restTemplate = new RestTemplateBuilder().build(); @PostMapping("labelAction") //@Operation(summary = "labelAction, 创建,修改,删除 标签, actionType 提交 Create | Modify | Delete ") public JsonResponse labelAction(@RequestBody LabelDto data) { labelService.labelAction(data); return JsonResponse.success(); } @PostMapping("labelAssignFGCodeAction") //@Operation(summary = "标签绑定 产品型号, actionType 提交 Create | Delete ") public JsonResponse labelAssignFGCodeAction(@RequestBody LabelAssignFGCodeDto data) { labelService.labelAssignFGCodeAction(data); return JsonResponse.success(); } @PostMapping("labelAssignParameterAction") //@Operation(summary = "标签绑定 标签参数") public JsonResponse labelAssignParameterAction(@RequestBody LabelAssignParameterDto data) { labelService.labelAssignParameterAction(data); return JsonResponse.success(); } @RequestMapping(value = "/storagePrint", method = RequestMethod.POST) public AjaxResult storagePrint(@RequestBody JSONObject in) throws CustomException { // 获取信息 String printName = in.get("PRINTNAME").toString(); // 数据 List> dataList = (List) in.get("LIST"); // 打印 List resList = new ArrayList<>(); for (Map data : dataList) { StoragePrintDto storagePrintDto = new StoragePrintDto(); storagePrintDto.setPrinterName(printName); storagePrintDto.setSiteName(data.get("SITENAME").toString()); storagePrintDto.setStorageName(data.get("STORAGENAME").toString()); String urlInfo = labelService.storagePrint(storagePrintDto); resList.add(urlInfo); } return AjaxResult.me().setResultObj(resList); } @RequestMapping(value = "/labelPrintTest", method = RequestMethod.POST) //@Operation(summary = "标签打印测试, 测试只能打印 标签模板没有参数的标签. ") public AjaxResult labelPrintTest(@RequestBody JSONObject in) throws CustomException { String user = in.get("USER").toString(); String PRINTNAME = in.get("PRINTNAME").toString(); List> js = (List) in.get("LIST"); List urlList = new ArrayList<>(); for (int i = 0; i < js.size(); i++) { Map jb = js.get(i); LabelPrintDto labelPrintDto = new LabelPrintDto(); labelPrintDto.setLotName(jb.get("MATERIALPACKINGNAME").toString()); labelPrintDto.setOpreater(user); labelPrintDto.setPrinterName(PRINTNAME); String urlInfo = labelService.labelPrintTest(labelPrintDto); urlList.add(urlInfo); } return AjaxResult.me().setResultObj(urlList); } @RequestMapping(value = "/labelPrintTest1", method = RequestMethod.POST) //@Operation(summary = "标签打印测试, 测试只能打印 标签模板没有参数的标签. ") public JsonResponse labelPrintTest1(@RequestBody JSONObject in) throws CustomException { String user = in.get("USER").toString(); String PRINTNAME = in.get("PRINTNAME").toString(); List> js = (List) in.get("LIST"); for (int i = 0; i < js.size(); i++) { Map jb = js.get(i); LabelPrintDto1 labelPrintDto = new LabelPrintDto1(); labelPrintDto.setLotName(jb.get("MATERIALPACKINGNAME").toString()); // labelPrintDto.setDESC_CN(jb.get("DESC_CN").toString()); labelPrintDto.setOpreater(user); labelPrintDto.setPrinterName(PRINTNAME); labelService.labelPrintTest1(labelPrintDto); } return JsonResponse.success(); } // 太仓成品打印 @RequestMapping(value = "/labelPrintTest2", method = RequestMethod.POST) //@Operation(summary = "标签打印测试, 测试只能打印 标签模板没有参数的标签. ") public JsonResponse labelPrintTest2(@RequestBody JSONObject in) throws CustomException { String user = in.get("USER").toString(); String PRINTNAME = in.get("PRINTNAME").toString(); String qty = in.get("QTY").toString(); List> js = (List) in.get("LIST"); for (int i = 0; i < js.size(); i++) { Map jb = js.get(i); LabelPrintDto2 labelPrintDto = new LabelPrintDto2(); labelPrintDto.setLotName(jb.get("LOTNAME").toString()); labelPrintDto.setOpreater(user); labelPrintDto.setPrinterName(PRINTNAME); labelPrintDto.setQty(qty); labelService.labelPrintTest2(labelPrintDto); } return JsonResponse.success(); } /* * 现存量标签打印 * Existing Stock Label */ @RequestMapping(value = "/existingStockLabel", method = RequestMethod.POST) //@Operation(summary = "标签打印测试, 测试只能打印 标签模板没有参数的标签. ") public AjaxResult existingStockLabel(@RequestBody JSONObject in) throws CustomException { String user = in.get("USER").toString(); String PRINTNAME = in.get("PRINTNAME").toString(); String LABELCODE = in.get("LABELCODE").toString(); List> js = (List) in.get("LIST"); List urlList = new ArrayList<>(); for (int i = 0; i < js.size(); i++) { Map jb = js.get(i); LabelPrintDto1 labelPrintDto = new LabelPrintDto1(); labelPrintDto.setLotName(jb.get("MATERIALPACKINGNAME").toString()); labelPrintDto.setDESC_CN(jb.get("DESC_CN").toString()); labelPrintDto.setOpreater(user); labelPrintDto.setPrinterName(PRINTNAME); labelPrintDto.setLabelType(LABELCODE); String urlInfo = labelService.labelPrintTest3(labelPrintDto); urlList.add(urlInfo); } return AjaxResult.me().setResultObj(urlList); } @PostMapping("labelPrint") //@Operation(summary = "标签打印.") public JsonResponse labelPrint(@RequestBody LabelPrintDto data) { labelService.labelPrint(data); return JsonResponse.success(); } @PostMapping("batchLabelPrint") //@Operation(summary = "批量标签打印.") public JsonResponse batchLabelPrint(@RequestBody LabelPrintBatchDto data) { labelService.batchLabelPrint(data); return JsonResponse.success(); } @PostMapping("getPrinters") //@Operation(summary = "打印机列表.") public JsonResponse> getPrinters(@RequestBody LabelPrintDto dto) { // Object permList = restTemplate.getForObject( // "http://192.168.200.237/Bartender/api/v1/printers",Object.class); String url = dto.getLabelId(); Object permList = restTemplate.getForObject( url,Object.class); return new JsonResponse(permList); } @PostMapping("labeParameterAction") //@Operation(summary = "标签参数创建,删除") public JsonResponse labelParameterAction(@RequestBody LabelParameterDto data) { labelService.labelParameterAction(data); return JsonResponse.success(); } @PostMapping("saveLabelPrintInfo") //@Operation(summary = "标签信息保存") public JsonResponse saveLabelPrintInfo(@RequestBody LabelPrintInfoDto data) { labelService.saveLabelPrintInfo(data); return JsonResponse.success(); } @PostMapping("updateLabelPrintInfo") //@Operation(summary = "标签信息修改") public JsonResponse updateLabelPrintInfo(@RequestBody LabelPrintInfoDto data) { //labelService.updateLabelPrintInfo(data); return JsonResponse.success(); } /** * 单位打印 * lz */ @RequestMapping(value = "/getUnitData" , method = RequestMethod.POST) public AjaxResult getUnitData() { String sqlString = "SELECT FNUMBER,fname FROM MATERIALUNIT"; Map bindMap = new HashMap(); List> list = IDMFrameServiceProxy.getSqlTemplate().queryForList(sqlString, bindMap); if(Objects.isNull(list) || list.isEmpty()) { throw new GlobalException("未找到对应的单位!"); } return AjaxResult.me().setResultObj(list); } /** * 生成销售备货单号 * @param in * @return */ @RequestMapping(value = "/getSDKSPEC", method = RequestMethod.POST) public AjaxResult getSDKSPEC(@RequestBody JSONObject in ){ MaterialshipRequest materialShipRequest = JSON.toJavaObject(in, MaterialshipRequest.class); String materialSpecName = materialShipRequest.getMaterialSpecName();//料号 //根据料号获取sdk规格信息 if (materialSpecName == null || "".equals(materialSpecName)) { return AjaxResult.me().setSuccess(false).setMessage("料号获取sdk规格信息不能为空"); } if (materialSpecName.startsWith("4")) { materialSpecName = "4"; } String sql = " SELECT SDK_ID as \"value\" ,SPECNAME as \"text\" FROM SDK_SPEC ss WHERE ss.PARTNUMBER = :PARTNUMBER"; Map hashMap = new HashMap (); hashMap.put("PARTNUMBER", materialSpecName); List> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql, hashMap); return AjaxResult.me().setResultObj(queryForList); } /** * 创建Box * @param in * @return * @throws CustomException * @throws Exception */ @RequestMapping(value = "/TrackOutBox", method = RequestMethod.POST) public AjaxResult TrackOutBox(@RequestBody JSONObject in ) { TrackOutBoDto boxs = JSON.toJavaObject(in, TrackOutBoDto.class); MaterialreceiveActDto box = boxs.getMaterialreceiveAct(); String user = boxs.getUser(); String sdkid = box.getSdkid(); String phase = box.getPhase(); String makeDate = box.getMakeDate(); String materialquantity = box.getMATERIALQUANTITY(); String erpFactory = box.getErpFactory(); String materialcreatequantity = box.getMATERIALCREATEQUANTITY(); String unit = box.getUnit(); String materialSpecName = box.getMaterialSpecName(); String truegg = box.getTruegg(); String remark = box.getRemark(); String siteName = "SDK"; EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("TrackOutBox", user, "TrackOutBox"); //判断数量卡控是否正确 BigDecimal fboxQuantity = new BigDecimal(materialquantity);//标签数量 BigDecimal feveryBoxQuantity = new BigDecimal(materialcreatequantity);//标签个数 if ((fboxQuantity.divide(feveryBoxQuantity)) .compareTo(BigDecimal.ZERO) == -1) { return AjaxResult.me().setSuccess(false).setMessage("标签个数不能小于0"); } if (feveryBoxQuantity .compareTo(BigDecimal.ZERO) == -1) { return AjaxResult.me().setSuccess(false).setMessage("标签数量不能小于0"); } String timeKey = null; // String.valueOf((int)Math.floor(fboxQuantity/feveryBoxQuantity) try { timeKey = MaterialPackingServiceImpl.PackingLoael(makeEventInfo, siteName,String.valueOf(fboxQuantity.divide(feveryBoxQuantity)) , materialcreatequantity, makeDate, erpFactory, materialSpecName, sdkid, phase, unit, String.valueOf((fboxQuantity.remainder(feveryBoxQuantity))),truegg,remark); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return AjaxResult.me().setSuccess(false).setMessage(e.toString()); } System.out.println(timeKey); // String sqlString = "SELECT LASTEVENTTIMEKEY, MATERIALSPECNAME, SPECNAME, PHASE, MATERIALQUANTITY, UNIT, CHARGE, MATERIALPACKINGNAME FROM MATERIALPACKING m LEFT JOIN SDK_SPEC ss ON m.SDK_ID = ss.SDK_ID WHERE m.LASTEVENTTIMEKEY = :LASTEVENTTIMEKEY"; // String sqlString = " SELECT m.LASTEVENTTIMEKEY, m.MATERIALSPECNAME, ss.SPECNAME, m.PHASE, m.MATERIALQUANTITY, m2.FNAME AS UNIT, m.CHARGE, m.MATERIALPACKINGNAME FROM MATERIALPACKING m LEFT JOIN SDK_SPEC ss ON m.SDK_ID = ss.SDK_ID LEFT JOIN MATERIALUNIT m2 ON m.UNIT = m2.FNUMBER WHERE m.LASTEVENTTIMEKEY = :LASTEVENTTIMEKEY"; String sqlString = "SELECT m.LASTEVENTTIMEKEY, m.MATERIALSPECNAME, ss.SPECNAME, m.PHASE, m.MATERIALQUANTITY, m2.FNAME AS UNIT, m.CHARGE, m.MATERIALPACKINGNAME,m.TRUEGG,m.REMARK\r\n" + "FROM MATERIALPACKING m \r\n" + "LEFT JOIN SDK_SPEC ss ON m.SDK_ID = ss.SDK_ID \r\n" + "LEFT JOIN MATERIALUNIT m2 ON m.UNIT = m2.FNUMBER \r\n" + "WHERE 1=1\r\n" + " AND m.LASTEVENTTIMEKEY = :LASTEVENTTIMEKEY"; Map bindMap = new HashMap(); bindMap.put("LASTEVENTTIMEKEY", timeKey); List> list = IDMFrameServiceProxy.getSqlTemplate().queryForList(sqlString, bindMap); if(Objects.isNull(list) || list.isEmpty()) { // throw new GlobalException("未找到对应的单位!"); return AjaxResult.me().setSuccess(false).setMessage("未找到对应的数据!"); } return AjaxResult.me().setResultObj(list); } //@PostMapping("generateLabelId") //@Operation(summary = "生成打印批号") // public JsonResponse> generateLabelId(@RequestBody NameRuleDto data) { // String labelId = labelService.generateLabelId(data); // return new JsonResponse(labelId); // } // @PostMapping("saveNcData") // //@Operation(summary = "保存NC数据") // public JsonResponse saveNcData(@RequestBody List data) { // labelService.saveNcData(data); // return JsonResponse.success(); // } private float BigDecimal(String materialquantity) { // TODO Auto-generated method stub return 0; } /** * 修改标签备注 * @param in * @return */ @RequestMapping(value = "/updateRemark", method = RequestMethod.POST) public AjaxResult updateRemark(@RequestBody JSONObject in) { MaterialReceiveRequest sl = JSON.toJavaObject(in, MaterialReceiveRequest.class); String remark = sl.getRemark(); String user = sl.getUser(); List boxList = sl.getBoxList(); List listKey = new ArrayList (); for (MaterialPacking materialPacking : boxList) { MaterialPackingKey key = materialPacking.getKey(); listKey.add(key); } EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("ModifiedPackingRemark", user, "ModifiedPackingRemark"); SetEventInfo setEventInfo = new SetEventInfo(); Map hashMap = new HashMap (); hashMap.put("remark", remark); setEventInfo.setUserColumns(hashMap); MaterialPackingServiceProxy.getMaterialPackingService().setEvent(listKey, makeEventInfo, setEventInfo); return AjaxResult.me().setSuccess(true).setMessage("标签更新成功"); } /** * 修改实际规格 * @param in * @return */ @RequestMapping(value = "/updateTruegg", method = RequestMethod.POST) public AjaxResult updateTruegg(@RequestBody JSONObject in) { MaterialReceiveRequest sl = JSON.toJavaObject(in, MaterialReceiveRequest.class); String truegg = sl.getTruegg(); String user = sl.getUser(); List boxList = sl.getBoxList(); List listKey = new ArrayList (); for (MaterialPacking materialPacking : boxList) { MaterialPackingKey key = materialPacking.getKey(); listKey.add(key); } EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("ModifiedPackingTruegg", user, "ModifiedPackingTruegg"); SetEventInfo setEventInfo = new SetEventInfo(); Map hashMap = new HashMap (); hashMap.put("truegg", truegg); setEventInfo.setUserColumns(hashMap); MaterialPackingServiceProxy.getMaterialPackingService().setEvent(listKey, makeEventInfo, setEventInfo); return AjaxResult.me().setSuccess(true).setMessage("实际规格更新成功"); } //更新业助 @RequestMapping(value = "/updateCareerAssistance", method = RequestMethod.POST) public AjaxResult updateCareerAssistance(@RequestBody JSONObject in) { MaterialReceiveRequest sl = JSON.toJavaObject(in, MaterialReceiveRequest.class); List boxList = sl.getBoxList();//CAREER_ASSISTANCE String user = sl.getUser(); String siteName = sl.getSiteName(); String career_ASSISTANCE = sl.getRemark(); String CUSTOMNO = sl.getCUSTOMNO(); String pc = "("; for (MaterialPacking materialPacking : boxList) { String career_ASSISTANCE2 = materialPacking.getCAREER_ASSISTANCE(); String CUSTOMNO2 = materialPacking.getCUSTOMNO(); String materialPackingName = materialPacking.getMaterialPackingName(); pc += "'" + materialPackingName + "',"; String materialspecname = materialPacking.getMaterialSpecName(); String charge = materialPacking.getCharge(); String phase = materialPacking.getPHASE(); // SetEventInfo setEventInfo = new SetEventInfo(); Map hashMap = new HashMap (); // hashMap.put("CAREER_ASSISTANCE", career_ASSISTANCE); if (career_ASSISTANCE2 != null && !"".equals(career_ASSISTANCE2)) { hashMap.put("CAREER_ASSISTANCE2", career_ASSISTANCE2); } if (CUSTOMNO2 != null && !"".equals(CUSTOMNO2)) { hashMap.put("CUSTOMNO2", CUSTOMNO2); } hashMap.put("SITENAME", siteName); hashMap.put("MATERIALPACKINGNAME", materialPackingName); hashMap.put("MATERIALSPECNAME", materialspecname); hashMap.put("CHARGE", charge); hashMap.put("PHASE", phase); hashMap.put("IS_CHECK", "N"); hashMap.put("USERID", user); hashMap.put("CAREER_ASSISTANCE", career_ASSISTANCE); hashMap.put("CUSTOMNO", CUSTOMNO); // setEventInfo.setUserColumns(hashMap); // MaterialPackingKey mk = new MaterialPackingKey(siteName,materialPackingName); // EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("UpdateCareerAssistance", user, "UpdateCareerAssistance"); // MaterialPackingServiceProxy.getMaterialPackingService().setEvent(mk, makeEventInfo, setEventInfo); // String yzSql = "SELECT * FROM USERINFO WHERE U.USERNAME = A.CAREER_ASSISTANCE"; String yzSql = "SELECT U.USERNAME FROM USERINFO U WHERE U.USERID = :USERID "; List> userQueryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(yzSql, hashMap); if(Objects.isNull(userQueryForList) || userQueryForList.isEmpty() || userQueryForList.size() < 1) { // throw new RuntimeException("业助名称不正确或未注册"); return AjaxResult.me().setSuccess(false).setMessage("业助名称不正确或未注册"); }else { String userName = userQueryForList.get(0).get("USERNAME") == null ? "" : userQueryForList.get(0).get("USERNAME").toString(); if ((career_ASSISTANCE2 != null || !"".equals(career_ASSISTANCE2)) && !userName.equals(career_ASSISTANCE2)) { return AjaxResult.me().setSuccess(false).setMessage("业助" + career_ASSISTANCE2 + "不能被修改"); } if ((career_ASSISTANCE != null || !"".equals(career_ASSISTANCE)) && !userName.equals(career_ASSISTANCE)) { return AjaxResult.me().setSuccess(false).setMessage("业助" + career_ASSISTANCE + "不能被修改"); } } } pc += "'')"; String updateSql = "MERGE\r\n" + "INTO\r\n" + " MATERIALPACKINGCHECK T\r\n" + " USING (\r\n" + " SELECT\r\n" + " *\r\n" + " FROM\r\n" + " MATERIALPACKING\r\n" + " WHERE\r\n" + " MATERIALPACKINGNAME IN " + pc + " ) M " + "ON\r\n" + " (T.MATERIALPACKINGNAME = M.MATERIALPACKINGNAME)\r\n" + " WHEN MATCHED THEN\r\n" + "UPDATE\r\n" + "SET\r\n" + " T.CAREER_ASSISTANCE = :CAREER_ASSISTANCE,\r\n" + " T.CUSTOMNO = :CUSTOMNO, T.IS_CHECK = 'N' \r\n" + " WHEN NOT MATCHED THEN\r\n" + "INSERT\r\n" + " (SITENAME,\r\n" + " MATERIALPACKINGNAME,\r\n" + " MATERIALSPECNAME,\r\n" + " CHARGE,\r\n" + " PHASE,\r\n" + " IS_CHECK,\r\n" + " CAREER_ASSISTANCE,\r\n" + " CUSTOMNO)\r\n" + "VALUES (M.SITENAME,\r\n" + "M.MATERIALPACKINGNAME,\r\n" + "M.MATERIALSPECNAME,\r\n" + "M.CHARGE,\r\n" + "M.PHASE,\r\n" + "'N',\r\n" + ":CAREER_ASSISTANCE,\r\n" + ":CUSTOMNO)" ; Map map = new HashMap (); map.put("CAREER_ASSISTANCE", career_ASSISTANCE); map.put("CUSTOMNO", CUSTOMNO); IDMFrameServiceProxy.getSqlTemplate().update(updateSql, map); return AjaxResult.me().setSuccess(true).setMessage("业助更新成功"); } @RequestMapping(value = "/checkMaterialPack", method = RequestMethod.POST) public BaseResponse> checkMaterial(@RequestBody Map param){ String siteName = (String)param.get("SITENAME"); String materialpackingname = (String)param.get("MATERIALPACKINGNAME"); String materialspecname = (String)param.get("MATERIALSPECNAME"); String charge = (String)param.get("CHARGE"); String career_assistance = (String)param.get("CAREER_ASSISTANCE"); String customno = (String)param.get("CUSTOMNO"); String user = (String)param.get("user"); String is_check = (String)param.get("IS_CHECK"); SetSpecEventInfo info = new SetSpecEventInfo(); Map bindMap = new HashMap(); bindMap.put("MATERIALPACKINGNAME", materialpackingname); bindMap.put("MATERIALSPECNAME", materialspecname); bindMap.put("CHARGE", charge); bindMap.put("IS_CHECK", is_check); String uptSql = "UPDATE\r\n" + " MATERIALPACKINGCHECK mk\r\n" + "SET\r\n" + " mk.IS_CHECK = :IS_CHECK \r\n" + "WHERE \r\n" + " mk.MATERIALPACKINGNAME = :MATERIALPACKINGNAME\r\n" + " AND mk.MATERIALSPECNAME = :MATERIALSPECNAME\r\n" + " AND mk.CHARGE = :CHARGE"; IDMFrameServiceProxy.getSqlTemplate().update(uptSql, bindMap); Map bindMap2 = new HashMap(); bindMap2.put("MATERIALPACKINGNAME", materialpackingname); // bindMap2.put("CHARGE", charge); bindMap2.put("CAREER_ASSISTANCE", career_assistance); bindMap2.put("CUSTOMNO", customno); SetEventInfo setEventInfo = new SetEventInfo(); setEventInfo.setUserColumns(bindMap2); MaterialPackingKey mk = new MaterialPackingKey(siteName,materialpackingname); EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("UpdateCareerAssistance", user, "UpdateCareerAssistance"); MaterialPackingServiceProxy.getMaterialPackingService().setEvent(mk, makeEventInfo, setEventInfo); BaseResponse returnOK = RespGenerator.returnOK(param); return returnOK; } /** * 查询规格 * @param in * @return */ @RequestMapping(value = "/getSpecList", method = RequestMethod.POST) public AjaxResult getSpecList(@RequestBody JSONObject in ){ SpecPartnumber spec = JSON.toJavaObject(in, SpecPartnumber.class); String materialSpecName = spec.getPRODUCTSPECNAME(); //根据料号获取sdk规格信息 if (materialSpecName == null || "".equals(materialSpecName)) { return AjaxResult.me().setSuccess(false).setMessage("料号获取sdk规格信息不能为空"); } if (materialSpecName.startsWith("4")) { materialSpecName = "4"; } String sql = " SELECT SDK_ID as \"value\" ,SPECNAME as \"text\" FROM SDK_SPEC ss WHERE ss.PARTNUMBER = :PARTNUMBER"; Map hashMap = new HashMap (); hashMap.put("PARTNUMBER", materialSpecName); List> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql, hashMap); return AjaxResult.me().setResultObj(queryForList); } /** * 查询规格 * @param in * @return */ @RequestMapping(value = "/labelMaterial", method = RequestMethod.POST) public AjaxResult labelMaterial(@RequestBody JSONObject in ){ GetLabelMaterial labelMaterial = JSON.toJavaObject(in, GetLabelMaterial.class); String materialpackingname = labelMaterial.getMATERIALPACKINGNAME(); String materialspecname = labelMaterial.getMATERIALSPECNAME(); String sqlString = "SELECT m.MATERIALPACKINGNAME,m2.DESC_CN,m.TRUEGG,m.MATERIALQUANTITY " + "FROM MATERIALPACKING m " + "LEFT JOIN MATERIALSPEC m2 ON m.MATERIALSPECNAME = m2.MATERIALSPECNAME " + "WHERE 1=1 " + "AND m.MATERIALPACKINGNAME = :MATERIALPACKINGNAME " + "AND m.MATERIALSPECNAME = :MATERIALSPECNAME"; HashMap hashMap = new HashMap(); hashMap.put("MATERIALPACKINGNAME", materialpackingname); hashMap.put("MATERIALSPECNAME", materialspecname); List> list = IDMFrameServiceProxy.getSqlTemplate().queryForList(sqlString, hashMap); return AjaxResult.me().setResultObj(list); } }