| 
														
															@@ -7,12 +7,11 @@ import com.gree.mall.manager.bean.listvo.material.WebsitStockAccPVO; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockAccVO; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockAccVO; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockPVO; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockPVO; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockVO; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.bean.listvo.material.WebsitStockVO; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.gree.mall.manager.bean.material.base.MaterialCategoryVO; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.gree.mall.manager.bean.material.base.WebsitGoodsMVO; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import com.gree.mall.manager.constant.Constant; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.enums.material.WebsitGoodsTypeEnum; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.enums.material.WebsitGoodsTypeEnum; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import com.gree.mall.manager.exception.RemoteServiceException; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.helper.ResponseHelper; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.helper.ResponseHelper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.logic.material.stock.WebsitStockLogic; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.logic.material.stock.WebsitStockLogic; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.gree.mall.manager.plus.entity.WebsitStockAcc; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.utils.excel.ExcelUtils; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.utils.excel.ExcelUtils; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.zfire.bean.ZfireParamBean; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.zfire.bean.ZfireParamBean; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.gree.mall.manager.zfire.util.FieldUtils; 
														 | 
														
														 | 
														
															 import com.gree.mall.manager.zfire.util.FieldUtils; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -20,6 +19,7 @@ import io.swagger.annotations.Api; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import io.swagger.annotations.ApiOperation; 
														 | 
														
														 | 
														
															 import io.swagger.annotations.ApiOperation; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import lombok.extern.slf4j.Slf4j; 
														 | 
														
														 | 
														
															 import lombok.extern.slf4j.Slf4j; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.beans.factory.annotation.Autowired; 
														 | 
														
														 | 
														
															 import org.springframework.beans.factory.annotation.Autowired; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import org.springframework.integration.redis.util.RedisLockRegistry; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.validation.annotation.Validated; 
														 | 
														
														 | 
														
															 import org.springframework.validation.annotation.Validated; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.web.bind.annotation.PostMapping; 
														 | 
														
														 | 
														
															 import org.springframework.web.bind.annotation.PostMapping; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.web.bind.annotation.RequestBody; 
														 | 
														
														 | 
														
															 import org.springframework.web.bind.annotation.RequestBody; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -27,10 +27,13 @@ import org.springframework.web.bind.annotation.RequestMapping; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.web.bind.annotation.RestController; 
														 | 
														
														 | 
														
															 import org.springframework.web.bind.annotation.RestController; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.web.multipart.MultipartFile; 
														 | 
														
														 | 
														
															 import org.springframework.web.multipart.MultipartFile; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import javax.annotation.Resource; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import javax.servlet.http.HttpServletRequest; 
														 | 
														
														 | 
														
															 import javax.servlet.http.HttpServletRequest; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import javax.servlet.http.HttpServletResponse; 
														 | 
														
														 | 
														
															 import javax.servlet.http.HttpServletResponse; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.io.IOException; 
														 | 
														
														 | 
														
															 import java.io.IOException; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.util.List; 
														 | 
														
														 | 
														
															 import java.util.List; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import java.util.concurrent.TimeUnit; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import java.util.concurrent.locks.Lock; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 @Slf4j 
														 | 
														
														 | 
														
															 @Slf4j 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 @RestController 
														 | 
														
														 | 
														
															 @RestController 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -41,6 +44,8 @@ public class WebsitStockController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     @Autowired 
														 | 
														
														 | 
														
															     @Autowired 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     WebsitStockLogic websitStockLogic; 
														 | 
														
														 | 
														
															     WebsitStockLogic websitStockLogic; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    @Resource 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    RedisLockRegistry redisLockRegistry; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     @ZfireList 
														 | 
														
														 | 
														
															     @ZfireList 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     @PostMapping("list") 
														 | 
														
														 | 
														
															     @PostMapping("list") 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -93,10 +98,22 @@ public class WebsitStockController { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     @PostMapping("importM") 
														 | 
														
														 | 
														
															     @PostMapping("importM") 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     @ApiOperation("辅材网点库存-导入(模板名称:辅材网点库存.xlsx)") 
														 | 
														
														 | 
														
															     @ApiOperation("辅材网点库存-导入(模板名称:辅材网点库存.xlsx)") 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    public ResponseHelper importData(MultipartFile file) throws IOException { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        List<Object> objects = ExcelUtils.importExcel(file); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        websitStockLogic.importData(objects, WebsitGoodsTypeEnum.M); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        return ResponseHelper.success(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    public ResponseHelper importData(MultipartFile file) throws Exception { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        Lock obtain = redisLockRegistry.obtain(Constant.RedisPrefix.LOCK_ORDER + 1); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if (!obtain.tryLock(10, TimeUnit.SECONDS)) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            throw new RemoteServiceException("导入冻结中"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        try { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            List<Object> objects = ExcelUtils.importExcel(file); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            websitStockLogic.importData(objects, WebsitGoodsTypeEnum.M); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            return ResponseHelper.success(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } catch (Exception e) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            log.error("【导入处理】失败", e); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            throw e; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } finally { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            obtain.unlock(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 |