From 58eacecb952e08aa9443e71e00bd16c0b4983e67 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 15 十一月 2023 17:05:20 +0800
Subject: [PATCH] Changes13

---
 mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java |   53 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 39 insertions(+), 14 deletions(-)

diff --git a/mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java b/mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java
index fd63ef6..9f6bd8f 100644
--- a/mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java
+++ b/mes-plan/src/main/java/com/chinaztt/mes/plan/service/impl/CustomerOrderServiceImpl.java
@@ -5,7 +5,6 @@
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.util.BooleanUtil;
-import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.HttpRequest;
 import com.alibaba.excel.EasyExcel;
@@ -51,6 +50,7 @@
 import com.chinaztt.mes.plan.util.CustomerOrderClientConfigure;
 import com.chinaztt.mes.plan.util.CustomerOrderUnitWhiteListConfig;
 import com.chinaztt.mes.plan.util.CustomerOrderUtil;
+import com.chinaztt.mes.plan.util.FileSaveUtil;
 import com.chinaztt.mes.plan.vo.CustomerOrderVO1;
 import com.chinaztt.mes.quality.dto.CustomOrderSyncDTO;
 import com.chinaztt.mes.technology.entity.*;
@@ -97,6 +97,7 @@
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
+import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.math.BigDecimal;
@@ -186,6 +187,14 @@
 	private final static String MO_RETURN_STAFF = "MO_RETURN_STAFF";
 
 	private Environment environment;
+
+	private final static String OTC_MAIN_STATUS_CANCEL = "宸插彇娑�";
+
+	private final static String OTC_MAIN_STATUS_TRANSMIT = "宸蹭笅杈�";
+
+	private final static String AFFILIATED_CONTRACT = "涓ぉ娉ㄥ鍘�";
+
+
 
 	@Override
 	public void otcDownload(Long id, HttpServletResponse response) {
@@ -387,18 +396,28 @@
 			// }
 			//淇濆瓨涓荤敓浜ц鍒�
 			MasterProductionSchedule masterProductionSchedule = new MasterProductionSchedule();
+			//涓荤敓浜ц鍒掑彿
 			masterProductionSchedule.setMpsNo(scheduleNumberGenerator.generateNumberWithPrefix(MasterProductionSchedule.DIGIT, MasterProductionSchedule.PREFIX, MasterProductionSchedule::getMpsNo));
-			masterProductionSchedule.setPartId(customerOrderDTO.getPartId());
+			Part part = partMapper.selectOne(Wrappers.<Part>lambdaQuery().eq(Part::getPartNo, customerOrderDTO.getPartNo()));
+			//闆朵欢id
+			masterProductionSchedule.setPartId(part.getId());
 			//灏嗗鏍哥姸鎬佸拰宸ヨ壓鏂囦欢鐨刬d鍚屾缁欑敓浜ц鍒�
 			masterProductionSchedule.setIsAudit(customerOrderDTO.getIsAudit());
 			masterProductionSchedule.setTechnologyDocumentId(customerOrderDTO.getTechnologyDocumentId());
 			masterProductionSchedule.setManufactureAttr(customerOrderDTO.getManufactureAttr());
 			masterProductionSchedule.setDocNumber(customerOrderDTO.getDocNumber());
+			//闇�姹傛暟閲�
+			masterProductionSchedule.setQtyRequired(qta);
+			//闇�姹傛棩鏈�
+			masterProductionSchedule.setRequiredDate(customerOrderDTO.getDeliveryDate());
+			//澶囨敞
+			masterProductionSchedule.setRemark(customerOrderDTO.getRemark());
 			masterProductionSchedule.setQtyRequired(qta);
 			masterProductionSchedule.setRequiredDate(customerOrderDTO.getWantedDeliveryDate());
 			masterProductionSchedule.setRemark(customerOrderDTO.getRemark());
 			masterProductionSchedule.setSource("閿�鍞鍗�");
 			masterProductionScheduleMapper.insert(masterProductionSchedule);
+			customerOrderDTO.setRequireNumber(customerOrderDTO.getQtyPlaned());
 
 			// if (CollectionUtil.isNotEmpty(operationTaskProduceList)) {
 			// 	for (OperationTaskProduce operationTaskProduce : operationTaskProduceList) {
@@ -425,6 +444,7 @@
 		return true;
 	}
 
+	//澶氫釜閿�鍞鍗曞垱寤轰竴涓富鐢熶骇璁″垝
 	@Override
 	public MasterProductionSchedule createOneMasterProductionScheduleByCustomerOrders(List<CustomerOrderDTO> customerOrders) {
 		List<Long> ids = customerOrders.stream().map(CustomerOrderDTO::getId).collect(Collectors.toList());
@@ -586,17 +606,20 @@
 			return R.failed("宸ヨ壓鏂囦欢缂哄け");
 		}
 		List<CustomerOrder> customerOrderList = baseMapper.selectBatchIds(ids);
+		customerOrderList.forEach(l->{
+			log.info("鍏宠仈鏁版嵁==============================>"+l);
+		});
 		String msg = "";
 		for (CustomerOrder customerOrder : customerOrderList) {
 			if (BooleanUtil.isTrue(customerOrder.getIsDocument())) {
 				msg += customerOrder.getCustomerOrderNo() + "宸插叧鑱斿伐鑹烘枃浠讹紒";
 			}
-			if (StringUtils.isBlank(customerOrder.getSalesPartNo())) {
+			if (StringUtils.isBlank(customerOrder.getPartNo())) {
 				msg += customerOrder.getCustomerOrderNo() + "鏈�夋嫨閿�鍞欢锛�";
 			}
-			if (StringUtils.isBlank(customerOrder.getPartNo())) {
-				customerOrder.setPartNo(document.getPartNo());
-			}
+			//if (StringUtils.isBlank(customerOrder.getPartNo())) {
+			//	customerOrder.setPartNo(document.getPartNo());
+			//}
 			customerOrder.setIsDocument(true);
 			customerOrder.setCoState(CustomerOrderStateStringValues.PLAN);
 			customerOrder.setTechnologyDocumentId(docId);
@@ -655,6 +678,7 @@
 	 * @return
 	 */
 	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public R otcCustomerOrderSync(String selectTime, String pathCode) {
 		try {
 			if (StringUtils.isBlank(selectTime)) {
@@ -685,7 +709,7 @@
 					.contentType("application/json")
 					.header("Authorization", "Bearer " + token).form(map).execute().body();
 			JSONObject result = JSONObject.parseObject(str);
-			//JSONArray jsonArray = result.getJSONArray("data");
+			log.info("涓昏〃闀垮害============================================>"+result.getJSONArray("data").size());
 			//jsonArray.forEach();
 			//return null;
 			//涓昏〃鍙傛暟琛�
@@ -705,7 +729,7 @@
 					//鎵�灞炲伐鍘�
 					String affiliatedContract=customerJSONObject.getString("affiliatedContract");
 					//鍙媺鍙栨墍灞炲叕鍙镐负涓ぉ娴锋磱绯荤粺鏈夐檺鍏徃鐨勬暟鎹�
-					if (!"涓ぉ鏉愭枡鍘�".equals(affiliatedContract)){
+					if (!AFFILIATED_CONTRACT.equals(affiliatedContract)){
 						continue;
 					}
 					// 涓嶅湪杩欏嚑涓姸鎬佷腑鐨勬暟鎹氨璺宠繃
@@ -717,14 +741,14 @@
 						customer = new Customer();
 					}
 					//濡傛灉OTC涓富琛ㄧ姸鎬佹槸鍙栨秷閭e氨璺宠繃鎴栬�呭垹闄ゅ凡缁忓悓姝ョ殑鏁版嵁
-					if ("宸插彇娑�".equals(otcMainStatus)) {
+					if (OTC_MAIN_STATUS_CANCEL.equals(otcMainStatus)) {
 						if (customer.getId() != null) {
 							customerMapper.deleteById(customer.getId());
 							baseMapper.delete(Wrappers.<CustomerOrder>lambdaQuery().eq(CustomerOrder::getCustomerId, customer.getId()));
 						}
 						continue;
 					}
-					if (!"宸蹭笅杈�".equals(otcMainStatus)) {//null == affiliatedCompany || !Arrays.asList("宸蹭笅杈�").contains(otcMainStatus) /*|| affiliatedCompany.equals("姹熻嫃涓ぉ绉戞妧鑲′唤鏈夐檺鍏徃")*/) {
+					if (!OTC_MAIN_STATUS_TRANSMIT.equals(otcMainStatus)) {//null == affiliatedCompany || !Arrays.asList("宸蹭笅杈�").contains(otcMainStatus) /*|| affiliatedCompany.equals("姹熻嫃涓ぉ绉戞妧鑲′唤鏈夐檺鍏徃")*/) {
 						continue;//鍙幏鍙朞TC涓凡瀹℃牳鍙婂凡涓嬭揪鐨勮鍗曪紝
 					}
 					//瀹㈡埛缂栧彿
@@ -1864,15 +1888,14 @@
 
 	@Override
 	public R uploadProcessConfigFile(MultipartFile file, String orderNumber, String lineNumber) {
-		String fileName = IdUtil.simpleUUID() + StrUtil.DOT + FileUtil.extName(file.getOriginalFilename());
+		String fileName = FileUtil.extName(file.getOriginalFilename());
 		try {
-			minioTemplate.putObject(ossProperties.getBucketName(), fileName, file.getInputStream());
 			OrderProcessConfigFile configFile = new OrderProcessConfigFile();
 			configFile.setFileName(fileName);
 			configFile.setOriginalFileName(file.getOriginalFilename());
 			configFile.setOrderNumber(orderNumber);
 			configFile.setLineNumber(lineNumber);
-			configFile.setBucketName(ossProperties.getBucketName());
+			configFile.setBucketName(FileSaveUtil.StoreFile(file));
 			orderProcessConfigFileMapper.insert(configFile);
 			ProcessConfigFileOrderMapping mapping = ProcessConfigFileOrderMapping.builder().configFileId(configFile.getId())
 					.orderNumber(orderNumber).lineNumber(lineNumber).build();
@@ -1899,7 +1922,9 @@
 
 	@Override
 	public void getFile(String bucket, String fileName, HttpServletResponse response) {
-		try (InputStream inputStream = minioTemplate.getObject(bucket, fileName)) {
+		try {
+			String path = FileSaveUtil.FILE_PATH + bucket;
+			InputStream inputStream = new FileInputStream(path);
 			response.setContentType("application/octet-stream; charset=UTF-8");
 			IoUtil.copy(inputStream, response.getOutputStream());
 		} catch (Exception e) {

--
Gitblit v1.9.3