内部码打印功能代码提交
							parent
							
								
									ee41bab71a
								
							
						
					
					
						commit
						37be575f8e
					
				| @ -0,0 +1,11 @@ | |||||||
|  | package com.glxp.api.req.inv; | ||||||
|  | 
 | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class DeleteStPrintTempRequest { | ||||||
|  |     private String printCodeIdFk; | ||||||
|  |     private String stockOrderFk; | ||||||
|  |     private Integer id; | ||||||
|  |     private String genKey; | ||||||
|  | } | ||||||
| @ -0,0 +1,26 @@ | |||||||
|  | package com.glxp.api.req.inv; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import com.glxp.api.util.page.ListPageRequest; | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class FilterinnerOrderprintRequest extends ListPageRequest { | ||||||
|  |     private String nameCode; | ||||||
|  |     private String printStatus; | ||||||
|  |     private String udiCode; | ||||||
|  |     private String cpmctymc; | ||||||
|  |     private String thirdName; | ||||||
|  |     private String thirdId; | ||||||
|  |     private String batchNo; | ||||||
|  |     private String udiRlIdFk; | ||||||
|  |     private String warehouseCode; | ||||||
|  |     private String spaceCode; | ||||||
|  |     private String thirdSysFk; | ||||||
|  |     private String genKeyFk; | ||||||
|  |     private String sOrderId; | ||||||
|  |     private String sDetailId; | ||||||
|  |     private String id; | ||||||
|  |     private String orderIdFk; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,27 @@ | |||||||
|  | package com.glxp.api.req.inv; | ||||||
|  | 
 | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | import java.util.List; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class InnerOrderQRCodeTextPDFTemplateRequest { | ||||||
|  | 
 | ||||||
|  |     private String id; | ||||||
|  |     private String queryId; | ||||||
|  |     private String orderId; | ||||||
|  |     private String billNo; | ||||||
|  |     private String detailId; | ||||||
|  | 
 | ||||||
|  |     private String actionName; | ||||||
|  |     private String text; | ||||||
|  | 
 | ||||||
|  |     private String path; | ||||||
|  |     private int rowCount; | ||||||
|  |     private int qrcodeCount; | ||||||
|  |     private List<PdfPrintCountEntity> countList; | ||||||
|  | 
 | ||||||
|  |     private String orderName; | ||||||
|  |     private Integer moduleId; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,10 @@ | |||||||
|  | package com.glxp.api.req.inv; | ||||||
|  | 
 | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class PdfPrintCountEntity { | ||||||
|  | 
 | ||||||
|  |     private String queryId; | ||||||
|  |     private Integer rowCount; | ||||||
|  | } | ||||||
| @ -0,0 +1,10 @@ | |||||||
|  | package com.glxp.api.req.inv; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import com.glxp.api.util.page.ListPageRequest; | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class invInnerOrderprintReques{ | ||||||
|  |     private String orderIdFk; | ||||||
|  | } | ||||||
| @ -0,0 +1,41 @@ | |||||||
|  | package com.glxp.api.res.inv; | ||||||
|  | 
 | ||||||
|  | import lombok.Data; | ||||||
|  | 
 | ||||||
|  | import java.util.Date; | ||||||
|  | 
 | ||||||
|  | @Data | ||||||
|  | public class innerOrderPrintRequest { | ||||||
|  |     private Integer id; | ||||||
|  |     private String udiRlIdFk; | ||||||
|  |     private String udiCode; | ||||||
|  |     private String nameCode; | ||||||
|  |     private String cpmctymc; | ||||||
|  |     private String batchNo; | ||||||
|  |     private String productDate; | ||||||
|  |     private String expireDate; | ||||||
|  |     private String serialNo; | ||||||
|  |     private String codeType; | ||||||
|  |     private String thirdId; | ||||||
|  |     private String thirdName; | ||||||
|  |     private String printStatus; | ||||||
|  |     private String ggxh; | ||||||
|  |     private String ylqxzcrbarmc; | ||||||
|  |     private String zczbhhzbapzbh; | ||||||
|  |     private String warehouseName; | ||||||
|  |     private String warehouseCode; | ||||||
|  |     private String spaceCode; | ||||||
|  |     private String spaceName; | ||||||
|  |     private String thirdSysFk; | ||||||
|  |     private String nnum; | ||||||
|  |     private String genKeyFk; | ||||||
|  | 
 | ||||||
|  |     private String sOrderId; | ||||||
|  |     private String sDetailId; | ||||||
|  |     private Date updateTime; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |     private Integer count; | ||||||
|  |     private String corpName; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,19 @@ | |||||||
|  | package com.glxp.api.service.inv; | ||||||
|  | 
 | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPdfTempEntity; | ||||||
|  | import com.glxp.api.req.inv.DeleteStPrintTempRequest; | ||||||
|  | 
 | ||||||
|  | import java.util.List; | ||||||
|  | 
 | ||||||
|  | public interface InvInnerOrderPdfTempService { | ||||||
|  | 
 | ||||||
|  |     List<InvInnerOrderPdfTempEntity> filterStockPrintTempEntity(DeleteStPrintTempRequest deleteStPrintTempRequest); | ||||||
|  | 
 | ||||||
|  |     boolean insertStockPrintTempEntity(InvInnerOrderPdfTempEntity invInnerOrderPdfTempEntity); | ||||||
|  | 
 | ||||||
|  |     boolean insertStockPrintTempList(List<InvInnerOrderPdfTempEntity> invInnerOrderPdfTempEntities); | ||||||
|  | 
 | ||||||
|  |     boolean delete(DeleteStPrintTempRequest deleteStPrintTempRequest); | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,31 @@ | |||||||
|  | package com.glxp.api.service.inv; | ||||||
|  | 
 | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPrintEntity; | ||||||
|  | import com.glxp.api.req.inv.DeleteStPrintTempRequest; | ||||||
|  | import com.glxp.api.req.inv.FilterinnerOrderprintRequest; | ||||||
|  | import com.glxp.api.req.inv.InnerOrderQRCodeTextPDFTemplateRequest; | ||||||
|  | import com.glxp.api.res.PageSimpleResponse; | ||||||
|  | import com.glxp.api.res.inv.innerOrderPrintRequest; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import java.util.List; | ||||||
|  | 
 | ||||||
|  | public interface InvInnerOrderPrintService { | ||||||
|  | 
 | ||||||
|  |     List<InvInnerOrderPrintEntity> filterOrderPrintList(FilterinnerOrderprintRequest filterinnerOrderprintRequest); | ||||||
|  | 
 | ||||||
|  |     Boolean addOrderList(String orderIdFk); | ||||||
|  | 
 | ||||||
|  |     InvInnerOrderPrintEntity selectById(String id); | ||||||
|  | 
 | ||||||
|  |     List<innerOrderPrintRequest> filterJoinInnerPrint(FilterinnerOrderprintRequest filterinnerOrderprintRequest); | ||||||
|  | 
 | ||||||
|  |     Boolean updateOrder(InvInnerOrderPrintEntity invInnerOrderPrintEntity); | ||||||
|  | 
 | ||||||
|  |     PageSimpleResponse print(InnerOrderQRCodeTextPDFTemplateRequest innerOrderQRCodeTextPDFTemplateRequest); | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,50 @@ | |||||||
|  | package com.glxp.api.service.inv; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import cn.hutool.core.thread.ThreadUtil; | ||||||
|  | import com.glxp.api.dao.inv.InvInnerOrderPdfTempDao; | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPdfTempEntity; | ||||||
|  | import com.glxp.api.res.inv.innerOrderPrintRequest; | ||||||
|  | import com.glxp.api.util.JasperUtils; | ||||||
|  | import net.sf.jasperreports.engine.JRException; | ||||||
|  | import org.springframework.beans.factory.annotation.Value; | ||||||
|  | import org.springframework.scheduling.annotation.Async; | ||||||
|  | import org.springframework.stereotype.Service; | ||||||
|  | 
 | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.util.HashMap; | ||||||
|  | import java.util.List; | ||||||
|  | import java.util.Map; | ||||||
|  | 
 | ||||||
|  | @Service | ||||||
|  | public class JaspaperService { | ||||||
|  |     @Value("${file_path}") | ||||||
|  |     private String dirPath; | ||||||
|  |     @Resource | ||||||
|  |     private InvInnerOrderPdfTempDao innerOrderPdfTempDao; | ||||||
|  | 
 | ||||||
|  |     @Async | ||||||
|  |     public void printPdfLocal(List<List<innerOrderPrintRequest>> splits, List<InvInnerOrderPdfTempEntity> stockPrintTempEntities, String resource) { | ||||||
|  | 
 | ||||||
|  |         ThreadUtil.execAsync(()  -> { | ||||||
|  |             for (int i = 0; i < stockPrintTempEntities.size(); i++) { | ||||||
|  |                 InvInnerOrderPdfTempEntity stockPrintTempEntity = stockPrintTempEntities.get(i); | ||||||
|  |                 Map<String, Object> data = new HashMap<String, Object>(); | ||||||
|  |                 data.put("data", splits.get(i)); | ||||||
|  |                 try { | ||||||
|  |                     JasperUtils.jasperReportToFile(stockPrintTempEntity.getFilePath(), data, resource); | ||||||
|  |                     stockPrintTempEntity.setStatus(1); | ||||||
|  |                 } catch (IOException e) { | ||||||
|  |                     stockPrintTempEntity.setStatus(2); | ||||||
|  |                     e.printStackTrace(); | ||||||
|  |                 } catch (JRException e) { | ||||||
|  |                     stockPrintTempEntity.setStatus(2); | ||||||
|  |                     e.printStackTrace(); | ||||||
|  |                 } | ||||||
|  |                 innerOrderPdfTempDao.updateById(stockPrintTempEntity); | ||||||
|  |             } | ||||||
|  |         }); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,71 @@ | |||||||
|  | package com.glxp.api.service.inv.impl; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import cn.hutool.core.thread.ThreadUtil; | ||||||
|  | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||||
|  | import com.glxp.api.dao.inv.InvInnerOrderPdfTempDao; | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPdfTempEntity; | ||||||
|  | import com.glxp.api.req.inv.DeleteStPrintTempRequest; | ||||||
|  | import com.glxp.api.res.PageSimpleResponse; | ||||||
|  | import com.glxp.api.service.inv.InvInnerOrderPdfTempService; | ||||||
|  | import org.springframework.stereotype.Service; | ||||||
|  | import org.springframework.transaction.annotation.Transactional; | ||||||
|  | 
 | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import java.util.List; | ||||||
|  | 
 | ||||||
|  | @Service | ||||||
|  | @Transactional(rollbackFor = Exception.class) | ||||||
|  | public class InvInnerOrderPdfTempServiceImpl implements InvInnerOrderPdfTempService { | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     InvInnerOrderPdfTempDao innerOrderPdfTempDao; | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public List<InvInnerOrderPdfTempEntity> filterStockPrintTempEntity(DeleteStPrintTempRequest deleteStPrintTempRequest) { | ||||||
|  | 
 | ||||||
|  |         QueryWrapper<InvInnerOrderPdfTempEntity> ew=new QueryWrapper<>(); | ||||||
|  |         if (deleteStPrintTempRequest.getStockOrderFk() != null) { | ||||||
|  |             ew.eq("stockOrderFk", deleteStPrintTempRequest.getStockOrderFk()); | ||||||
|  |         } | ||||||
|  |         if (deleteStPrintTempRequest.getPrintCodeIdFk() != null) { | ||||||
|  |             ew.eq("printCodeIdFk", deleteStPrintTempRequest.getPrintCodeIdFk()); | ||||||
|  |         } | ||||||
|  |         if (deleteStPrintTempRequest.getId() != null) { | ||||||
|  |             ew.eq("id", deleteStPrintTempRequest.getId()); | ||||||
|  |         } | ||||||
|  |         List<InvInnerOrderPdfTempEntity> invInnerOrderPdfTempEntityList=innerOrderPdfTempDao.selectList(ew); | ||||||
|  | 
 | ||||||
|  |         return invInnerOrderPdfTempEntityList; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean insertStockPrintTempEntity(InvInnerOrderPdfTempEntity invInnerOrderPdfTempEntity) { | ||||||
|  |         innerOrderPdfTempDao.insert(invInnerOrderPdfTempEntity); | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean insertStockPrintTempList(List<InvInnerOrderPdfTempEntity> invInnerOrderPdfTempEntities) { | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |         for (InvInnerOrderPdfTempEntity obj : invInnerOrderPdfTempEntities) { | ||||||
|  |             innerOrderPdfTempDao.insert(obj); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean delete(DeleteStPrintTempRequest deleteStPrintTempRequest) { | ||||||
|  |         QueryWrapper<InvInnerOrderPdfTempEntity> ew = new QueryWrapper<>(); | ||||||
|  |         if (deleteStPrintTempRequest.getStockOrderFk() != null) { | ||||||
|  |             ew.eq("stockOrderFk", deleteStPrintTempRequest.getStockOrderFk()); | ||||||
|  |         } | ||||||
|  |         if (deleteStPrintTempRequest.getPrintCodeIdFk() != null) { | ||||||
|  |             ew.eq("printCodeIdFk", deleteStPrintTempRequest.getPrintCodeIdFk()); | ||||||
|  |         } | ||||||
|  |         innerOrderPdfTempDao.delete(ew); | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  | } | ||||||
| @ -0,0 +1,239 @@ | |||||||
|  | package com.glxp.api.service.inv.impl; | ||||||
|  | 
 | ||||||
|  | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | ||||||
|  | import com.github.pagehelper.PageHelper; | ||||||
|  | import com.github.pagehelper.PageInfo; | ||||||
|  | import com.glxp.api.dao.basic.UdiRelevanceDao; | ||||||
|  | import com.glxp.api.dao.inv.InvInnerOrderPrintDao; | ||||||
|  | import com.glxp.api.entity.basic.UdiProductEntity; | ||||||
|  | import com.glxp.api.entity.inv.InnerOrderDetailEntity; | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPdfTempEntity; | ||||||
|  | import com.glxp.api.entity.inv.InvInnerOrderPrintEntity; | ||||||
|  | import com.glxp.api.entity.system.SystemPDFModuleEntity; | ||||||
|  | import com.glxp.api.entity.system.SystemPDFTemplateEntity; | ||||||
|  | import com.glxp.api.req.basic.FilterUdiRelRequest; | ||||||
|  | import com.glxp.api.req.inv.*; | ||||||
|  | import com.glxp.api.res.PageSimpleResponse; | ||||||
|  | import com.glxp.api.res.basic.UdiRelevanceResponse; | ||||||
|  | import com.glxp.api.res.inv.InvCountOrderDetailResponse; | ||||||
|  | import com.glxp.api.res.inv.innerOrderPrintRequest; | ||||||
|  | import com.glxp.api.service.auth.CustomerService; | ||||||
|  | import com.glxp.api.service.basic.UdiProductService; | ||||||
|  | import com.glxp.api.service.basic.UdiRelevanceService; | ||||||
|  | import com.glxp.api.service.inv.InnerOrderDetailService; | ||||||
|  | import com.glxp.api.service.inv.InvInnerOrderPdfTempService; | ||||||
|  | import com.glxp.api.service.inv.InvInnerOrderPrintService; | ||||||
|  | import com.glxp.api.service.inv.JaspaperService; | ||||||
|  | import com.glxp.api.service.system.SystemPDFModuleService; | ||||||
|  | import com.glxp.api.service.system.SystemPDFTemplateService; | ||||||
|  | import com.glxp.api.util.CustomUtil; | ||||||
|  | import com.glxp.api.util.FileUtils; | ||||||
|  | import org.springframework.beans.BeanUtils; | ||||||
|  | import org.springframework.beans.factory.annotation.Value; | ||||||
|  | import org.springframework.scheduling.annotation.Async; | ||||||
|  | import org.springframework.stereotype.Service; | ||||||
|  | import org.springframework.transaction.annotation.Transactional; | ||||||
|  | 
 | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import java.io.File; | ||||||
|  | import java.util.ArrayList; | ||||||
|  | import java.util.Collections; | ||||||
|  | import java.util.Date; | ||||||
|  | import java.util.List; | ||||||
|  | 
 | ||||||
|  | @Service | ||||||
|  | @Transactional(rollbackFor = Exception.class) | ||||||
|  | public class InvInnerOrderPrintServiceImpl implements InvInnerOrderPrintService { | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     InvInnerOrderPrintDao invInnerOrderPrintDao; | ||||||
|  |     @Resource | ||||||
|  |     private InnerOrderDetailService innerOrderDetailService; | ||||||
|  |     @Resource | ||||||
|  |     private CustomerService customerService; | ||||||
|  |     @Resource | ||||||
|  |     private UdiProductService udiProductService; | ||||||
|  |     @Resource | ||||||
|  |     private UdiRelevanceDao udiRelevanceDao; | ||||||
|  |     @Resource | ||||||
|  |     private InvInnerOrderPrintService invInnerOrderPrintService; | ||||||
|  | 
 | ||||||
|  |     @Value("${file_path}") | ||||||
|  |     private String dirPath; | ||||||
|  |     @Resource | ||||||
|  |     private JaspaperService jaspaperService; | ||||||
|  |     @Resource | ||||||
|  |     private InvInnerOrderPdfTempService innerOrderPdfTempService; | ||||||
|  |     @Resource | ||||||
|  |     SystemPDFModuleService  systemPDFModuleService; | ||||||
|  |     @Resource | ||||||
|  |     SystemPDFTemplateService systemPDFTemplateService; | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public List<InvInnerOrderPrintEntity> filterOrderPrintList(FilterinnerOrderprintRequest filterinnerOrderprintRequest) { | ||||||
|  |         if (filterinnerOrderprintRequest == null) { | ||||||
|  |             return Collections.emptyList(); | ||||||
|  |         } | ||||||
|  |         int offset = (filterinnerOrderprintRequest.getPage() - 1) * filterinnerOrderprintRequest.getLimit(); | ||||||
|  |         PageHelper.offsetPage(offset, filterinnerOrderprintRequest.getLimit()); | ||||||
|  |         List<InvInnerOrderPrintEntity> data = invInnerOrderPrintDao.filterOrderPrintList(filterinnerOrderprintRequest); | ||||||
|  |         return data; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public Boolean addOrderList(String orderIdFk) { | ||||||
|  |         //先删除数据
 | ||||||
|  |         QueryWrapper<InvInnerOrderPrintEntity> ew=new QueryWrapper<>(); | ||||||
|  |         ew.eq("orderIdFk",orderIdFk); | ||||||
|  |         invInnerOrderPrintDao.delete(ew); | ||||||
|  | 
 | ||||||
|  |         List<InnerOrderDetailEntity> innerOrderDetailEntityList=innerOrderDetailService.selectOrderList(orderIdFk); | ||||||
|  | 
 | ||||||
|  |         for(InnerOrderDetailEntity obj:innerOrderDetailEntityList){ | ||||||
|  |             InvInnerOrderPrintEntity innerOrderPrintEntity=new InvInnerOrderPrintEntity(); | ||||||
|  |             innerOrderPrintEntity.setOrderIdFk(obj.getOrderIdFk()); | ||||||
|  |             innerOrderPrintEntity.setProductId(obj.getProductId()); | ||||||
|  |             innerOrderPrintEntity.setExpireDate(obj.getExpireDate()); | ||||||
|  |             innerOrderPrintEntity.setProductDate(obj.getProductDate()); | ||||||
|  |             innerOrderPrintEntity.setProductName(obj.getProductName()); | ||||||
|  |             innerOrderPrintEntity.setCount(obj.getCount()); | ||||||
|  |             innerOrderPrintEntity.setBatchNo(obj.getBatchNo()); | ||||||
|  |             innerOrderPrintEntity.setCreateTime(new Date()); | ||||||
|  |             innerOrderPrintEntity.setUpdateTime(new Date()); | ||||||
|  |             innerOrderPrintEntity.setStatus(0); | ||||||
|  |             innerOrderPrintEntity.setCreateUser(customerService.getUserId()+""); | ||||||
|  |             innerOrderPrintEntity.setUpdateUser(customerService.getUserId()+""); | ||||||
|  |             FilterUdiRelRequest filterUdiRelRequest=new FilterUdiRelRequest(); | ||||||
|  |             filterUdiRelRequest.setId(Long.valueOf(obj.getProductId())); | ||||||
|  |             //查询耗材字典信息
 | ||||||
|  |             UdiRelevanceResponse filterUdiRelevance=udiRelevanceDao.filterUdiRelevance(filterUdiRelRequest).get(0); | ||||||
|  |             //查询产品信息
 | ||||||
|  |             UdiProductEntity udiProductEntity=udiProductService.findByNameCode(filterUdiRelevance.getNameCode()); | ||||||
|  | 
 | ||||||
|  |             String udiCode = "#" + udiProductEntity.getNameCode() + "#" + udiProductEntity.getProduceDate() + "#" + udiProductEntity.getExpireDate() + | ||||||
|  |                     "#" + udiProductEntity.getBatchNo() + "#" + udiProductEntity.getSerialNo() + "#" + udiProductEntity.getWarehouseCode() + "#" + udiProductEntity.getDeptCode(); | ||||||
|  |             innerOrderPrintEntity.setUdiCode(udiCode); | ||||||
|  |             invInnerOrderPrintDao.insert(innerOrderPrintEntity); | ||||||
|  |         } | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public InvInnerOrderPrintEntity selectById(String id) { | ||||||
|  |         return invInnerOrderPrintDao.selectById(id); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public List<innerOrderPrintRequest> filterJoinInnerPrint(FilterinnerOrderprintRequest filterinnerOrderprintRequest) { | ||||||
|  |         if (filterinnerOrderprintRequest == null) { | ||||||
|  |             return Collections.emptyList(); | ||||||
|  |         } | ||||||
|  |         if(filterinnerOrderprintRequest.getPage()!=null){ | ||||||
|  |             int offset = (filterinnerOrderprintRequest.getPage() - 1) * filterinnerOrderprintRequest.getLimit(); | ||||||
|  |             PageHelper.offsetPage(offset, filterinnerOrderprintRequest.getLimit()); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         List<innerOrderPrintRequest> data = invInnerOrderPrintDao.filterJoinInnerPrint(filterinnerOrderprintRequest); | ||||||
|  |         return data; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public Boolean updateOrder(InvInnerOrderPrintEntity invInnerOrderPrintEntity) { | ||||||
|  | 
 | ||||||
|  |         invInnerOrderPrintDao.updateById(invInnerOrderPrintEntity); | ||||||
|  |         return true; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public PageSimpleResponse print(InnerOrderQRCodeTextPDFTemplateRequest innerOrderQRCodeTextPDFTemplateRequest) { | ||||||
|  | 
 | ||||||
|  |         SystemPDFModuleEntity systemPDFModuleEntity = systemPDFModuleService.selectById(6 + ""); | ||||||
|  |         if (systemPDFModuleEntity == null) return null; | ||||||
|  |         SystemPDFTemplateEntity systemPDFTemplateEntity = | ||||||
|  |                 systemPDFTemplateService.selectById(String.valueOf(systemPDFModuleEntity.getTemplateId())); | ||||||
|  |         if (systemPDFTemplateEntity == null) return null; | ||||||
|  |         List<innerOrderPrintRequest> printEntities = new ArrayList<>(); | ||||||
|  |         List<innerOrderPrintRequest> mStockPrintEntities = new ArrayList<>(); | ||||||
|  |         FilterinnerOrderprintRequest filterStockprintRequest = new FilterinnerOrderprintRequest(); | ||||||
|  |         DeleteStPrintTempRequest deleteStPrintTempRequest = new DeleteStPrintTempRequest(); | ||||||
|  |         if (innerOrderQRCodeTextPDFTemplateRequest.getOrderId() != null) { | ||||||
|  |             filterStockprintRequest.setSOrderId(innerOrderQRCodeTextPDFTemplateRequest.getOrderId()); | ||||||
|  |             deleteStPrintTempRequest.setStockOrderFk(innerOrderQRCodeTextPDFTemplateRequest.getOrderId() + ""); | ||||||
|  | 
 | ||||||
|  |         } else { | ||||||
|  |             deleteStPrintTempRequest.setPrintCodeIdFk(innerOrderQRCodeTextPDFTemplateRequest.getQueryId()); | ||||||
|  |             filterStockprintRequest.setId(innerOrderQRCodeTextPDFTemplateRequest.getQueryId()); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         innerOrderPdfTempService.delete(deleteStPrintTempRequest); | ||||||
|  |         List<innerOrderPrintRequest> stockPrintEntities = invInnerOrderPrintService.filterJoinInnerPrint(filterStockprintRequest); | ||||||
|  |         if (stockPrintEntities != null && stockPrintEntities.size() > 0) { | ||||||
|  |             mStockPrintEntities.addAll(stockPrintEntities); | ||||||
|  |         } | ||||||
|  |         for (innerOrderPrintRequest innerOrderPrintRequest : mStockPrintEntities) { | ||||||
|  |             PdfPrintCountEntity pdfPrintCount = getCount(innerOrderQRCodeTextPDFTemplateRequest.getCountList(), innerOrderPrintRequest); | ||||||
|  |             if (pdfPrintCount != null && pdfPrintCount.getRowCount() > 0) { | ||||||
|  |                 for (int i = 0; i < pdfPrintCount.getRowCount(); i++) { | ||||||
|  |                     innerOrderPrintRequest clone = new innerOrderPrintRequest(); | ||||||
|  |                     BeanUtils.copyProperties(innerOrderPrintRequest, clone); | ||||||
|  |                     printEntities.add(clone); | ||||||
|  |                 } | ||||||
|  |             } else { | ||||||
|  |                 printEntities.add(innerOrderPrintRequest); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         if (!FileUtils.isFileExist(dirPath + "/pdfprint")) { | ||||||
|  |             new File(dirPath + "/pdfprint").mkdirs(); | ||||||
|  |         } | ||||||
|  |         List<List<innerOrderPrintRequest>> splits = CustomUtil.splitList(printEntities, 100); | ||||||
|  |         int index = 0; | ||||||
|  |         List<InvInnerOrderPdfTempEntity> stockPrintTempEntities = new ArrayList<>(); | ||||||
|  |         for (int i = 0; i < splits.size(); i++) { | ||||||
|  |             index++; | ||||||
|  |             InvInnerOrderPdfTempEntity stockPrintTempEntity = new InvInnerOrderPdfTempEntity(); | ||||||
|  |             if (innerOrderQRCodeTextPDFTemplateRequest.getOrderId() != null) { | ||||||
|  |                 String fileName = innerOrderQRCodeTextPDFTemplateRequest.getOrderId() + "__" + index + "__标签打印" + ".pdf"; | ||||||
|  |                 String filePath = dirPath + "\\pdfprint\\" + fileName; | ||||||
|  |                 stockPrintTempEntity.setFileName(fileName); | ||||||
|  |                 stockPrintTempEntity.setFilePath(filePath); | ||||||
|  |                 stockPrintTempEntity.setStockOrderFk(innerOrderQRCodeTextPDFTemplateRequest.getOrderId()); | ||||||
|  |             } else { | ||||||
|  |                 String fileName = innerOrderQRCodeTextPDFTemplateRequest.getQueryId() + "__" + index + "__标签打印" + ".pdf"; | ||||||
|  |                 String filePath = dirPath + "\\pdfprint\\" + fileName; | ||||||
|  |                 stockPrintTempEntity.setFileName(fileName); | ||||||
|  |                 stockPrintTempEntity.setFilePath(filePath); | ||||||
|  |                 stockPrintTempEntity.setPrintCodeIdFk(innerOrderQRCodeTextPDFTemplateRequest.getQueryId()); | ||||||
|  |             } | ||||||
|  |             stockPrintTempEntity.setStatus(0); | ||||||
|  |             stockPrintTempEntity.setGenkey(CustomUtil.getId()); | ||||||
|  |             stockPrintTempEntities.add(stockPrintTempEntity); | ||||||
|  |         } | ||||||
|  |         jaspaperService.printPdfLocal(splits, stockPrintTempEntities, systemPDFTemplateEntity.getPath()); | ||||||
|  | 
 | ||||||
|  |         innerOrderPdfTempService.insertStockPrintTempList(stockPrintTempEntities); | ||||||
|  | 
 | ||||||
|  |         for (innerOrderPrintRequest innerOrderPrintRequest : mStockPrintEntities) { | ||||||
|  |             InvInnerOrderPrintEntity innerOrderPrintEntity=new InvInnerOrderPrintEntity(); | ||||||
|  |             innerOrderPrintEntity.setStatus(1); | ||||||
|  |             innerOrderPrintEntity.setId(innerOrderPrintRequest.getId()); | ||||||
|  |             invInnerOrderPrintService.updateOrder(innerOrderPrintEntity); | ||||||
|  |         } | ||||||
|  |         PageInfo<InvInnerOrderPdfTempEntity> pageInfo; | ||||||
|  |         pageInfo = new PageInfo<>(stockPrintTempEntities); | ||||||
|  |         PageSimpleResponse<InvInnerOrderPdfTempEntity> pageSimpleResponse = new PageSimpleResponse<>(); | ||||||
|  |         pageSimpleResponse.setTotal(pageInfo.getTotal()); | ||||||
|  |         pageSimpleResponse.setList(stockPrintTempEntities); | ||||||
|  | 
 | ||||||
|  |        return pageSimpleResponse; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public PdfPrintCountEntity getCount(List<PdfPrintCountEntity> countList, innerOrderPrintRequest innerOrderPrintRequest) { | ||||||
|  |         for (PdfPrintCountEntity pdfPrintCount : countList) { | ||||||
|  |             if (pdfPrintCount.getQueryId().equals(innerOrderPrintRequest.getId() + "")) { | ||||||
|  |                 return pdfPrintCount; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         return null; | ||||||
|  |     } | ||||||
|  | } | ||||||
					Loading…
					
					
				
		Reference in New Issue