| | |
| | | package com.zbooksoft.gdmis.controller; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.ruili.wcp.common.CustomConfigUtil; |
| | | import com.ruili.wcp.common.LogUtils; |
| | | import com.ruili.wcp.common.StringUtil; |
| | | import com.ruili.wcp.common.excel.PoiUtil; |
| | | import com.ruili.wcp.configsettting.SystemConfig; |
| | |
| | | import com.ruili.wcp.web.model.AjaxResponse; |
| | | import com.ruili.wcp.web.model.ErrorInfo; |
| | | import com.zbooksoft.gdmis.common.PdfUtil; |
| | | import com.zbooksoft.gdmis.common.UsbSyncExampleWindows; |
| | | import com.zbooksoft.gdmis.common.UsbSyncExampleWindowsItem; |
| | | import com.zbooksoft.gdmis.common.UsbSyncExampleWindowsItemCg; |
| | | import com.zbooksoft.gdmis.data.entity.CatYswjxx; |
| | | import com.zbooksoft.gdmis.data.entity.PackingManage; |
| | | import com.zbooksoft.gdmis.service.CatCheckService; |
| | |
| | | import java.io.File; |
| | | import java.io.FileInputStream; |
| | | import java.io.InputStream; |
| | | import java.text.DecimalFormat; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.ArrayList; |
| | |
| | | String cgSql = "select NVL(max(BGBH), 0) BGBH FROM CAT_ITEM_CGWJXX"; |
| | | Map<String, Object> stringMap = jdbcTemplate.queryForMap(cgSql); |
| | | int maxDH = Integer.parseInt(stringMap.get("BGBH").toString()); |
| | | int newDH = maxDH + 1; |
| | | for (int i = 0; i < ids.size(); i++) { |
| | | int newDH = maxDH + 1 + i; |
| | | String newDhString = String.format("%04d", newDH); |
| | | String sql = "select * from CAT_ITEM_YSWJXX where id = " + ids.get(i); |
| | | Map<String, Object> stringObjectMap = jdbcTemplate.queryForMap(sql); |
| | |
| | | String jnxh = stringObjectMap.get("JNXH") == null ? "" : stringObjectMap.get("JNXH").toString(); |
| | | String newDh = newDhString + "-" + jnxh; |
| | | stringObjectMap.put("DH", newDh); |
| | | stringObjectMap.put("WJLX", jsonData.get("wjlx")); |
| | | iform.insert(1823017354756390913L, stringObjectMap); |
| | | |
| | | String updateSql = "update CAT_ITEM_YSWJXX set SL = '" + slInt + "' where ID = " + ids.get(i); |
| | |
| | | String timestamp = Long.toString(System.currentTimeMillis()); |
| | | |
| | | try { |
| | | //1193266555786362880,1193266555916386304,1193266556004466688,1193266556105129984,1193266556193210368,1193266556277096448,1193266556377759744,1193266556474228736,1193266556545531904 变成list |
| | | String[] idList = ids.split(","); |
| | | |
| | | // 读取文件存放路径 |
| | | SystemConfig config = SystemConfig.getInstance(); |
| | | filePath = config.getAttachUploadPath() + "dataPack" + File.separator + userName + "_" + timestamp + File.separator; |
| | | // for (int i = 0; i < idList.length; i++) { |
| | | String wjljSql = "SELECT WJLJ FROM CAT_ITEM_YSWJXX WHERE ID = " + ids; |
| | | List<Map<String, Object>> wjljList = jdbcTemplate.queryForList(wjljSql); |
| | | if (wjljList.size() > 0) { |
| | | String newSavePath = filePath; |
| | | if (wjljList.get(0).get("WJLJ") != null) { |
| | | String cddzwjlj = wjljList.get(0).get("WJLJ").toString(); |
| | | File file = new File(cddzwjlj); |
| | | String name = file.getName(); |
| | | if (name.contains(".pdf") || name.contains(".PDF")) { |
| | | String parent = file.getParent(); |
| | | String newName = "tmp_" + name; |
| | | String newCddzwjlj = parent + File.separator + newName; |
| | | PdfUtil.addBlankPageAtBeginning(cddzwjlj, newCddzwjlj); |
| | | cddzwjlj = newCddzwjlj; |
| | | for (int i = 0; i < idList.length; i++) { |
| | | String wjljSql = "SELECT WJLJ,WJTM FROM CAT_ITEM_YSWJXX WHERE ID = " + idList[i]; |
| | | List<Map<String, Object>> wjljList = jdbcTemplate.queryForList(wjljSql); |
| | | if (wjljList.size() > 0) { |
| | | String newSavePath = filePath; |
| | | if (wjljList.get(0).get("WJLJ") != null) { |
| | | String cddzwjlj = wjljList.get(0).get("WJLJ").toString(); |
| | | String wjm = wjljList.get(0).get("WJTM").toString(); |
| | | File file = new File(cddzwjlj); |
| | | String name = file.getName(); |
| | | if (name.contains(".pdf") || name.contains(".PDF")) { |
| | | String parent = file.getParent(); |
| | | String newName = "tmp_" + name; |
| | | String newCddzwjlj = parent + File.separator + newName; |
| | | PdfUtil.addBlankPageAtBeginning(cddzwjlj, newCddzwjlj, wjm); |
| | | cddzwjlj = newCddzwjlj; |
| | | } |
| | | copyFile(cddzwjlj, newSavePath + File.separator + name); |
| | | //添加导出日志 |
| | | LogUtils.insertLog("合格资料", "导出", "导出合格资料", "导出资料名称:" + wjm, "", request); |
| | | } |
| | | copyFile(cddzwjlj, newSavePath + File.separator + name); |
| | | } |
| | | |
| | | } |
| | | // } |
| | | // 压缩文件 |
| | | generatePath = zipFile(new File(filePath), "rar"); |
| | | |
| | | } catch (Exception ex) { |
| | | logger.error(ex.getMessage(), ex); |
| | | } |
| | |
| | | // 循环取出流中的数据 |
| | | byte[] b = new byte[100]; |
| | | int len; |
| | | while ((len = inStream.read(b)) > 0) |
| | | response.getOutputStream().write(b, 0, len); |
| | | while ((len = inStream.read(b)) > 0) response.getOutputStream().write(b, 0, len); |
| | | inStream.close(); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | |
| | | * 导入页面 |
| | | * |
| | | * @param type 0:从转孔基本信息进入 1:从钻孔图幅进入 |
| | | * @return |
| | | */ |
| | | @RequestMapping({"/updateFileTypeIndex"}) |
| | | @RequiresUser |
| | | public ModelAndView importIndex(Integer type) { |
| | | public ModelAndView importIndex(Integer type, String moduleId) { |
| | | ModelAndView mv = new ModelAndView("gh/catAjjxx/updateFileTypeIndex"); |
| | | mv.addObject("type", type); |
| | | mv.addObject("moduleId", moduleId); |
| | | return mv; |
| | | } |
| | | |
| | | /** |
| | | * 装盒管理 |
| | | * |
| | | * @param type 0:从转孔基本信息进入 1:从钻孔图幅进入 |
| | | */ |
| | | @RequestMapping({"/boxIndex"}) |
| | | @RequiresUser |
| | | public ModelAndView boxIndex() { |
| | | String box = "0001"; |
| | | String maxBoxSql = "select max(box_number) from BUS_PACKING_MANAGE WHERE TYPE = 1"; |
| | | String boxNum = jdbcTemplate.queryForObject(maxBoxSql, String.class); |
| | | if (boxNum != null || "".equals(boxNum)) { |
| | | int num = Integer.parseInt(boxNum); |
| | | num += 1; |
| | | DecimalFormat df = new DecimalFormat("0000"); |
| | | box = df.format(num); |
| | | } |
| | | ModelAndView mv = new ModelAndView("gh/catAjjxx/boxIndex"); |
| | | mv.addObject("boxNum", box); |
| | | return mv; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取盒内文件数量 |
| | | * |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/getBoxPageNum") |
| | | @ResponseBody |
| | | @RequiresUser |
| | | public Object getBoxPageNum(String boxNum) { |
| | | try { |
| | | String pageNum = "0"; |
| | | String selectSql = "select max(PAGE_NMU) as nmu from BUS_PACKING_MANAGE WHERE box_number = '" + boxNum + "'"; |
| | | List<Map<String, Object>> mapList = jdbcTemplate.queryForList(selectSql); |
| | | if (mapList.size() > 0) { |
| | | pageNum = mapList.get(0).get("nmu") == null ? "0" : mapList.get(0).get("nmu").toString(); |
| | | } |
| | | return new AjaxResponse(pageNum); |
| | | } catch (Exception e) { |
| | | logger.error(e.getMessage(), e); |
| | | return new AjaxResponse(new ErrorInfo(e.getMessage()), false); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 原始文件装盒 |
| | | * |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/packagingBoxYs") |
| | | @ResponseBody |
| | | @RequiresUser |
| | | public Object packagingBoxYs(String boxNum, @RequestBody ArrayList<Long> idList) { |
| | | try { |
| | | String box = boxNum; |
| | | String pageNum = "0"; |
| | | String selectSqlPage = "select max(PAGE_NMU) as nmu from BUS_PACKING_MANAGE WHERE box_number = '" + boxNum + "'"; |
| | | List<Map<String, Object>> mapList = jdbcTemplate.queryForList(selectSqlPage); |
| | | if (mapList.size() > 0) { |
| | | pageNum = mapList.get(0).get("nmu") == null ? "0" : mapList.get(0).get("nmu").toString(); |
| | | } |
| | | int newPage = Integer.parseInt(pageNum); |
| | | for (int i = 0; i < idList.size(); i++) { |
| | | String selectSql = "select * from CAT_ITEM_YSWJXX where id = " + idList.get(i); |
| | | Map<String, Object> map = jdbcTemplate.queryForMap(selectSql); |
| | | String itemNum = StringUtil.nullToEmpty(map.get("DH")).trim(); |
| | | String id = StringUtil.nullToEmpty(map.get("ID")).trim(); |
| | | String ajId = StringUtil.nullToEmpty(map.get("AJ_ID")).trim(); |
| | | QueryWrapper<PackingManage> packingManageQueryWrapper = new QueryWrapper<>(); |
| | | packingManageQueryWrapper.eq("item_id", idList.get(i)); |
| | | PackingManage packingManage = new PackingManage(); |
| | | List<PackingManage> packingManageList = packingManageService.list(packingManageQueryWrapper); |
| | | if (packingManageList.size() > 0) { |
| | | packingManage = packingManageList.get(0); |
| | | } |
| | | packingManage.setItemId(id); |
| | | packingManage.setAjId(ajId); |
| | | packingManage.setCreateTime(new java.util.Date()); |
| | | packingManage.setType(1); |
| | | String zzys = map.get("ZZYS") == null ? "0" : map.get("ZZYS").toString(); |
| | | if (newPage + Integer.parseInt(zzys) > 500) { |
| | | int num = Integer.parseInt(box); |
| | | num += 1; |
| | | DecimalFormat df = new DecimalFormat("0000"); |
| | | String newBox = df.format(num); |
| | | box = newBox; |
| | | newPage = Integer.parseInt(zzys); |
| | | } else { |
| | | newPage = newPage + Integer.parseInt(zzys); |
| | | } |
| | | packingManage.setPageNmu(newPage); |
| | | packingManage.setItemNum(itemNum + "-" + box); |
| | | packingManage.setBoxNumber(box); |
| | | packingManageService.saveOrUpdate(packingManage); |
| | | String updateSql = "update CAT_ITEM_YSWJXX set HH = '" + box + "' where id = " + idList.get(i); |
| | | jdbcTemplate.update(updateSql); |
| | | } |
| | | return new AjaxResponse(true); |
| | | } catch (Exception e) { |
| | | logger.error(e.getMessage(), e); |
| | | return new AjaxResponse(new ErrorInfo(e.getMessage()), false); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * @param type 0 是成果 1 是原始 |
| | | * @return |
| | | */ |
| | | @RequestMapping({"/printLabelIndex"}) |
| | | @RequiresUser |
| | | public ModelAndView printLabelIndex(Integer type) { |
| | | ModelAndView mv = new ModelAndView("gh/catAjjxx/printLabelIndex"); |
| | | mv.addObject("type", type); |
| | | return mv; |
| | | } |
| | | |
| | | /** |
| | | * @param fileType 打印类型 0是盒子 1是文件 |
| | | * @param type 资料类型 0成果报告 1原始资料 |
| | | * @param idList |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/printLabel") |
| | | @ResponseBody |
| | | @RequiresUser |
| | | public Object printLabel(String fileType, Integer type, @RequestBody List<Long> idList) { |
| | | try { |
| | | //打印盒子 |
| | | if ("盒子".equals(fileType)) { |
| | | if (type == 0) { |
| | | |
| | | } |
| | | if (type == 1) { |
| | | |
| | | UsbSyncExampleWindows usbSyncExampleWindows = new UsbSyncExampleWindows(); |
| | | usbSyncExampleWindows.printFileLabel(idList); |
| | | // ZT411RFIDPrintService zt411RFIDPrintService = new ZT411RFIDPrintService(); |
| | | // zt411RFIDPrintService.printRFIDLabel(idList); |
| | | } |
| | | } |
| | | //打印文件 |
| | | if ("文件".equals(fileType)) { |
| | | if (type == 0) { |
| | | UsbSyncExampleWindowsItemCg usbSyncExampleWindowsItemCg = new UsbSyncExampleWindowsItemCg(); |
| | | usbSyncExampleWindowsItemCg.printItemLabelCg(idList); |
| | | } |
| | | if (type == 1) { |
| | | UsbSyncExampleWindowsItem usbSyncExampleWindowsItem = new UsbSyncExampleWindowsItem(); |
| | | usbSyncExampleWindowsItem.printItemLabel(idList); |
| | | } |
| | | } |
| | | return new AjaxResponse(true); |
| | | } catch (Exception e) { |
| | | logger.error(e.getMessage(), e); |
| | | return new AjaxResponse(new ErrorInfo(e.getMessage()), false); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取文件类型 |
| | |
| | | @RequestMapping(value = "/getFileType") |
| | | @ResponseBody |
| | | @RequiresUser |
| | | public List<Map<String, Object>> getFileType() { |
| | | public List<Map<String, Object>> getFileType(Integer type) { |
| | | String sql = "SELECT param_name , param_value FROM sys_keyword_param where keyword_id = 1830441538759495681"; |
| | | if (type == 1) { |
| | | sql = "SELECT param_name , param_value FROM sys_keyword_param where keyword_id = 1830439705299193857"; |
| | | } |
| | | List<Map<String, Object>> mapList = jdbcTemplate.queryForList(sql); |
| | | return mapList; |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | String fileType = "观/G"; |
| | | String substring = fileType.substring(fileType.indexOf("/") + 1); |
| | | System.out.println(substring); |
| | | } |
| | | |
| | | } |
| | | |