|  |  |  | @ -0,0 +1,290 @@ | 
			
		
	
		
			
				
					|  |  |  |  | package com.glxp.api.service.inout; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | import cn.hutool.core.util.IdUtil; | 
			
		
	
		
			
				
					|  |  |  |  | import com.alibaba.fastjson.JSON; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.common.res.BaseResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.common.util.ResultVOUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.constant.Constant; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.auth.AuthAdminDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.basic.UdiRlSupDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.inout.*; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.auth.AuthAdmin; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.basic.UdiRlSupEntity; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.inout.*; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.idc.utils.IDCUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.inout.PlatformLinkResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.inout.ioUploadOrderResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.BeanCopyUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.FileUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.GennerOrderUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.OrderNoTypeBean; | 
			
		
	
		
			
				
					|  |  |  |  | import org.apache.catalina.User; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.beans.factory.annotation.Value; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.stereotype.Service; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.web.bind.annotation.RequestMapping; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.web.bind.annotation.RequestParam; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.web.multipart.MultipartFile; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | import javax.annotation.Resource; | 
			
		
	
		
			
				
					|  |  |  |  | import javax.servlet.http.HttpServletRequest; | 
			
		
	
		
			
				
					|  |  |  |  | import java.io.IOException; | 
			
		
	
		
			
				
					|  |  |  |  | import java.util.*; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | @Service | 
			
		
	
		
			
				
					|  |  |  |  | public class IoOrderUtilsService { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     AuthAdminDao authAdminDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private GennerOrderUtils gennerOrderUtils; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private UdiRlSupDao udiRlSupDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoOrderService ioOrderService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoOrderDetailCodeDao ioOrderDetailCodeDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoOrderDetailBizDao ioOrderDetailBizDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoCodeTempDao ioCodeTempDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoOrderDetailResultDao ioOrderDetailResultDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private IoOrderInvoiceMapper ioOrderInvoiceMapper; | 
			
		
	
		
			
				
					|  |  |  |  |     @Value("${file_path}") | 
			
		
	
		
			
				
					|  |  |  |  |     private String filePath; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     public boolean getIoder(ioUploadOrderResponse ioUploadOrderRespons) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailCodeEntity> ioOrderDetailCodeEntityList = ioUploadOrderRespons.getIoOrderDetailCodeEntityList(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoCodeTempEntity> ioCodeTempEntityList = ioUploadOrderRespons.getIoCodeTempEntityList(); | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderEntity ioOrderEntity = ioUploadOrderRespons.getIoOrderEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         PlatformLinkResponse platformLinkRespons = ioUploadOrderRespons.getPlatformLinkRespons(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailBizEntity> ioOrderDetailBizEntityList = ioUploadOrderRespons.getIoOrderDetailBizEntityList(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailResultEntity> ioOrderDetailResultEntityList = ioUploadOrderRespons.getIoOrderDetailResultEntityList(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderInvoiceEntity> ioOrderInvoiceEntityList = ioUploadOrderRespons.getIoOrderInvoiceEntityList(); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //用来存储耗材字典结果集避免重复查询数据库
 | 
			
		
	
		
			
				
					|  |  |  |  |         Map<String, UdiRlSupEntity> map = new HashMap<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         Boolean checkUdi = false; //判断是不是有错误
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //根据供应商id查询用户id
 | 
			
		
	
		
			
				
					|  |  |  |  |         AuthAdmin authAdmins = authAdminDao.findByCustomerld(platformLinkRespons.getUnitId()).get(0); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //单据表生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         String billNO = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER, "yyyyMMdd")); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //扫码明细表生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         FilterCompanyProductRelevanceRequest filterCompanyProductRelevanceRequest = new FilterCompanyProductRelevanceRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |         IoCodeTempEntity ioCodeTempEntity1 = new IoCodeTempEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoCodeTempEntity> ioCodeTempEntities = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         for (IoCodeTempEntity ioCodeTempEntity : ioCodeTempEntityList) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             //查询物资信息
 | 
			
		
	
		
			
				
					|  |  |  |  |             filterCompanyProductRelevanceRequest.setCustomerId(Long.valueOf(platformLinkRespons.getUnitId())); | 
			
		
	
		
			
				
					|  |  |  |  |             filterCompanyProductRelevanceRequest.setNameCode(ioCodeTempEntity.getNameCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             List<UdiRlSupEntity> udiRlSupEntityList = udiRlSupDao.filterCompanyProduct(filterCompanyProductRelevanceRequest); | 
			
		
	
		
			
				
					|  |  |  |  |             if (udiRlSupEntityList != null && udiRlSupEntityList.size() == 0 || udiRlSupEntityList.size() > 1) { | 
			
		
	
		
			
				
					|  |  |  |  |                 ioCodeTempEntity1.setRelId(null); | 
			
		
	
		
			
				
					|  |  |  |  |                 checkUdi = true; | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 ioCodeTempEntity1.setRelId(udiRlSupEntityList.get(0).getId()); | 
			
		
	
		
			
				
					|  |  |  |  |                 map.put(ioCodeTempEntity.getRelId() + "", udiRlSupEntityList.get(0)); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setOrderId(billNO); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setCode(ioCodeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setMainAction(ioCodeTempEntity.getMainAction()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setAction(platformLinkRespons.getTargetAction()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setNameCode(ioCodeTempEntity.getNameCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setBatchNo(ioCodeTempEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setProduceDate(ioCodeTempEntity.getProduceDate()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setExpireDate(ioCodeTempEntity.getExpireDate()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setSerialNo(ioCodeTempEntity.getSerialNo()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setPackageLevel(ioCodeTempEntity.getPackageLevel()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setSupId(ioCodeTempEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setCount(ioCodeTempEntity.getCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setReCount(ioCodeTempEntity.getReCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setDeptCode(platformLinkRespons.getInvCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setInvCode(platformLinkRespons.getInvSubCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setUpdateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntity1.setCreateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioCodeTempEntities.add(ioCodeTempEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //扫码单据生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderDetailCodeEntity ioOrderDetailCodeEntity1 = new IoOrderDetailCodeEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailCodeEntity> ioOrderDetailCodeEntities = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         for (IoOrderDetailCodeEntity ioOrderDetailCodeEntity : ioOrderDetailCodeEntityList) { | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setOrderIdFk(billNO); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             UdiRlSupEntity udiRlSupEntity = map.get(ioOrderDetailCodeEntity.getBindRlFk()); | 
			
		
	
		
			
				
					|  |  |  |  |             if (udiRlSupEntity != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailCodeEntity1.setBindRlFk(udiRlSupEntity.getId()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailCodeEntity1.setUuidFk(udiRlSupEntity.getUdiRlIdFk() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailCodeEntity1.setBindRlFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailCodeEntity1.setUuidFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setNameCode(ioOrderDetailCodeEntity.getNameCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setBatchNo(ioOrderDetailCodeEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setProductDate(ioOrderDetailCodeEntity.getProductDate()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setExpireDate(ioOrderDetailCodeEntity.getExpireDate()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setCoName(ioOrderDetailCodeEntity.getCoName()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setCertCode(ioOrderDetailCodeEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setYlqxzcrbarmc(ioOrderDetailCodeEntity.getYlqxzcrbarmc()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setManufacturer(ioOrderDetailCodeEntity.getManufacturer()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setMeasname(ioOrderDetailCodeEntity.getMeasname()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setPrice(ioOrderDetailCodeEntity.getPrice()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setSpec(ioOrderDetailCodeEntity.getSpec()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setCertCode(ioOrderDetailCodeEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setSupId(ioOrderDetailCodeEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setBindSupStatus(ioOrderDetailCodeEntity.getBindSupStatus()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setCount(ioOrderDetailCodeEntity.getCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setReCount(ioOrderDetailCodeEntity.getReCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntity1.setUpdateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderDetailCodeEntities.add(ioOrderDetailCodeEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //业务单生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderDetailBizEntity ioOrderDetailBizEntity1 = new IoOrderDetailBizEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailBizEntity> ioOrderDetailBizEntities = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         if (ioOrderDetailBizEntityList != null && ioOrderDetailBizEntityList.size() > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |             for (IoOrderDetailBizEntity ioOrderDetailBizEntity : ioOrderDetailBizEntityList) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setOrderIdFk(billNO); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 UdiRlSupEntity udiRlSupEntity = map.get(ioOrderDetailBizEntity.getBindRlFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                 if (udiRlSupEntity != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailBizEntity1.setBindRlFk(udiRlSupEntity.getId()); | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailBizEntity1.setUuidFk(udiRlSupEntity.getUdiRlIdFk() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailBizEntity1.setBindRlFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailBizEntity1.setUuidFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setNameCode(ioOrderDetailBizEntity.getNameCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setBatchNo(ioOrderDetailBizEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setProductDate(ioOrderDetailBizEntity.getProductDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setExpireDate(ioOrderDetailBizEntity.getExpireDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setCoName(ioOrderDetailBizEntity.getCoName()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setCertCode(ioOrderDetailBizEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setYlqxzcrbarmc(ioOrderDetailBizEntity.getYlqxzcrbarmc()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setManufacturer(ioOrderDetailBizEntity.getManufacturer()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setMeasname(ioOrderDetailBizEntity.getMeasname()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setPrice(ioOrderDetailBizEntity.getPrice()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setSpec(ioOrderDetailBizEntity.getSpec()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setCertCode(ioOrderDetailBizEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setSupId(ioOrderDetailBizEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setBindSupStatus(ioOrderDetailBizEntity.getBindSupStatus()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntity1.setCount(ioOrderDetailBizEntity.getCount()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailBizEntities.add(ioOrderDetailBizEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //实际单据生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderDetailResultEntity ioOrderDetailResultEntity1 = new IoOrderDetailResultEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderDetailResultEntity> ioOrderDetailResultEntities = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         if (ioOrderDetailResultEntityList != null && ioOrderDetailResultEntityList.size() > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |             for (IoOrderDetailResultEntity ioOrderDetailResultEntity : ioOrderDetailResultEntityList) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setOrderIdFk(billNO); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 UdiRlSupEntity udiRlSupEntity = map.get(ioOrderDetailResultEntity.getBindRlFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                 if (udiRlSupEntity != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailResultEntity1.setBindRlFk(udiRlSupEntity.getId()); | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailResultEntity1.setUuidFk(udiRlSupEntity.getUdiRlIdFk() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailResultEntity1.setBindRlFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderDetailResultEntity1.setUuidFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setNameCode(ioOrderDetailResultEntity.getNameCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setBatchNo(ioOrderDetailResultEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setProductDate(ioOrderDetailResultEntity.getProductDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setExpireDate(ioOrderDetailResultEntity.getExpireDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setCoName(ioOrderDetailResultEntity.getCoName()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setCertCode(ioOrderDetailResultEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setYlqxzcrbarmc(ioOrderDetailResultEntity.getYlqxzcrbarmc()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setManufacturer(ioOrderDetailResultEntity.getManufacturer()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setMeasname(ioOrderDetailResultEntity.getMeasname()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setPrice(ioOrderDetailResultEntity.getPrice()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setSpec(ioOrderDetailResultEntity.getSpec()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setCertCode(ioOrderDetailResultEntity.getCertCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setSupId(ioOrderDetailResultEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setBindSupStatus(ioOrderDetailResultEntity.getBindSupStatus()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntity1.setCount(ioOrderDetailResultEntity.getCount()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderDetailResultEntities.add(ioOrderDetailResultEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //发票生成
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderInvoiceEntity ioOrderInvoiceEntity1 = new IoOrderInvoiceEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoOrderInvoiceEntity> ioOrderInvoiceEntities = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |         if (ioOrderInvoiceEntityList != null && ioOrderInvoiceEntityList.size() > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |             for (IoOrderInvoiceEntity ioOrderInvoiceEntity : ioOrderInvoiceEntityList) { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setOrderIdFk(billNO); | 
			
		
	
		
			
				
					|  |  |  |  |                 UdiRlSupEntity udiRlSupEntity = map.get(ioOrderInvoiceEntity.getBindRlFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                 if (udiRlSupEntity != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderInvoiceEntity1.setBindRlFk(udiRlSupEntity.getId() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     ioOrderInvoiceEntity1.setBindRlFk(null); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setBatchNo(ioOrderInvoiceEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setProductDate(ioOrderInvoiceEntity.getProductDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setExpireDate(ioOrderInvoiceEntity.getExpireDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setMachineNo(ioOrderInvoiceEntity.getMachineNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setInvoiceCode(ioOrderInvoiceEntity.getInvoiceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setInvoiceEncode(ioOrderInvoiceEntity.getInvoiceEncode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setInvoiceDate(ioOrderInvoiceEntity.getInvoiceDate()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setPrice(ioOrderInvoiceEntity.getPrice()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setUpdateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setCreateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setUpdateUser(authAdmins.getId() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setCreateUser(authAdmins.getId() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntity1.setLicenseUrl(ioOrderInvoiceEntity.getLicenseUrl()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioOrderInvoiceEntities.add(ioOrderInvoiceEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //生成单据
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoOrderEntity ioOrderEntity1 = new IoOrderEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setBillNo(billNO); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setMainAction(ioOrderEntity.getMainAction()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setAction(platformLinkRespons.getTargetAction()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setFromCorp(ioOrderEntity.getFromCorp()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setFromCorp(ioOrderEntity.getFromCorp()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setFromDeptCode(ioOrderEntity.getFromDeptCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setFromInvCode(ioOrderEntity.getFromInvCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setFromType(1); | 
			
		
	
		
			
				
					|  |  |  |  |         if (!checkUdi) { | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderEntity1.setStatus(1); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderEntity1.setDealStatus(1); | 
			
		
	
		
			
				
					|  |  |  |  |         } else { | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderEntity1.setStatus(3); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderEntity1.setDealStatus(1); | 
			
		
	
		
			
				
					|  |  |  |  |             ioOrderEntity1.setRemark("产品错误!"); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setCreateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setCreateUser(authAdmins.getId() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setUpdateUser(authAdmins.getId() + ""); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setUpdateTime(new Date()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setCustomerId(platformLinkRespons.getUnitId()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setDeptCode(platformLinkRespons.getInvCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderEntity1.setInvCode(platformLinkRespons.getInvSubCode()); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //结果插入
 | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderService.insertOrder(ioOrderEntity1); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderDetailBizDao.insertIgnoreBatchs(ioOrderDetailBizEntities); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderDetailCodeDao.insertIgnoreBatchs(ioOrderDetailCodeEntities); | 
			
		
	
		
			
				
					|  |  |  |  |         ioCodeTempDao.insertIgnoreBatchs(ioCodeTempEntities); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderDetailResultDao.insertIgnoreBatchs(ioOrderDetailResultEntities); | 
			
		
	
		
			
				
					|  |  |  |  |         ioOrderInvoiceMapper.insertIgnoreBatchs(ioOrderInvoiceEntities); | 
			
		
	
		
			
				
					|  |  |  |  |         return true; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | } |