From 573c491b4a1ba60e12a5678a01c1546c0077c1ee Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 30 七月 2019 09:07:42 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/UploadController.java |  236 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 219 insertions(+), 17 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/UploadController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/UploadController.java
index be0c54a..1ea3d17 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/UploadController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/UploadController.java
@@ -3,25 +3,34 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.PrintWriter;
+import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 import java.util.UUID;
 
 import javax.annotation.Resource;
 
+import org.springframework.core.task.TaskExecutor;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.multipart.commons.CommonsMultipartFile;
-
-import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
-import com.yeshi.fanli.service.inter.order.OrderProcessService;
-import com.yeshi.fanli.service.inter.order.OrderService;
-import com.yeshi.fanli.util.TimeUtil;
-import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
 import org.yeshi.utils.JsonUtil;
 import org.yeshi.utils.tencentcloud.COSManager;
+
+import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
+import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.AdminUserService;
+import com.yeshi.fanli.service.inter.order.OrderProcessService;
+import com.yeshi.fanli.service.inter.order.OrderService;
+import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
+import com.yeshi.fanli.util.CMQManager;
+import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisManager;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
 
 import net.sf.json.JSONObject;
 
@@ -29,14 +38,24 @@
 @RequestMapping("admin/new/api/v1/upload")
 public class UploadController {
 
-	@Resource
-	private HongBaoService hongBaoService;
 
 	@Resource
 	private OrderService orderService;
 
 	@Resource
 	private OrderProcessService orderProcessService;
+
+	@Resource
+	private AdminUserService adminUserService;
+
+	@Resource(name = "taskExecutor")
+	private TaskExecutor executor;
+
+	@Resource
+	private TaoBaoOrderService taoBaoOrderService;
+
+	@Resource
+	private RedisManager redisManager;
 
 	// private static final String PAYSUCCESS = "鏀粯鎴愬姛";
 	// private static final String ORDERCLOSE="璁㈠崟鍏抽棴";
@@ -53,8 +72,8 @@
 			InputStream inputStream = file.getInputStream();
 			String contentType = file.getContentType();
 			String type = contentType.substring(contentType.indexOf("/") + 1);
-			String uploadFilePath = COSManager.getInstance().uploadFile(inputStream,
-					UUID.randomUUID().toString().replace("-", "") + "." + type).getUrl();
+			String uploadFilePath = COSManager.getInstance()
+					.uploadFile(inputStream, UUID.randomUUID().toString().replace("-", "") + "." + type).getUrl();
 			out.print(JsonUtil.loadTrueResult(uploadFilePath));
 		} catch (IOException e) {
 			e.printStackTrace();
@@ -76,8 +95,9 @@
 			InputStream inputStream = file.getInputStream();
 			String contentType = file.getContentType();
 			String type = contentType.substring(contentType.indexOf("/") + 1);
-			String uploadFilePath = COSManager.getInstance().uploadFile(inputStream,
-					UUID.randomUUID().toString().replace("-", "") + "." + type + ".apk").getUrl();
+			String uploadFilePath = COSManager.getInstance()
+					.uploadFile(inputStream, UUID.randomUUID().toString().replace("-", "") + "." + type + ".apk")
+					.getUrl();
 			out.print(JsonUtil.loadTrueResult(uploadFilePath));
 		} catch (Exception e) {
 			e.printStackTrace();
@@ -93,8 +113,8 @@
 			String date = TimeUtil.getyyyyMMdd(timeMillis);
 			String contentType = file.getContentType();
 			String type = contentType.substring(contentType.indexOf("/") + 1);
-			String uploadFilePath = COSManager.getInstance().uploadFile(inputStream,
-					"section/" + date + "/" + timeMillis + "." + type).getUrl();
+			String uploadFilePath = COSManager.getInstance()
+					.uploadFile(inputStream, "section/" + date + "/" + timeMillis + "." + type).getUrl();
 			JSONObject data = new JSONObject();
 			data.put("original", file.getOriginalFilename());
 			data.put("name", file.getOriginalFilename());
@@ -110,13 +130,73 @@
 		}
 	}
 
+	private void addOrder(List<TaoBaoOrder> orderList) {
+		try {
+			taoBaoOrderService.addTaoBaoOrderList(orderList);
+		} catch (Exception e) {
+			try {
+				LogHelper.errorDetailInfo(e);
+			} catch (Exception e1) {
+				e1.printStackTrace();
+			}
+		}
+
+		try {
+			Map<String, List<TaoBaoOrder>> map = TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(orderList);
+			if (map != null) {
+				Iterator<String> its = map.keySet().iterator();
+				while (its.hasNext()) {
+					String key = its.next();
+					List<TaoBaoOrder> orders = map.get(key);
+					String redisKey = "addorderqueue-" + key;
+					// redis鍋氶鐜囬檺鍒�
+					if (Constant.IS_OUTNET) {
+						try {
+							if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(redisKey))) {
+								continue;
+							}
+
+						} catch (Exception e) {
+
+						}
+					}
+
+					CMQManager.getInstance().addTaoBaoOrderMsg(key);
+					try {
+						// 6灏忔椂鍐呬笉鍐嶅鐞�
+						if (Constant.IS_OUTNET) {
+							redisManager.cacheCommonString(redisKey, "1", 60 * 60 * 6);
+						}
+					} catch (Exception e) {
+
+					}
+				}
+			}
+		} catch (Exception e) {
+			try {
+				LogHelper.errorDetailInfo(e);
+			} catch (Exception e1) {
+				e1.printStackTrace();
+			}
+		}
+	}
+
 	@RequestMapping(value = "uploadOrder", method = RequestMethod.POST)
 	public void uploadOrder(@RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
-
 		if (file != null) {
 			try {
 				List<TaoBaoOrder> orderList = TaoBaoOrderUtil.parseOrder(file.getInputStream());
-				orderProcessService.processOrder(TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(orderList));
+				// for(int i=0;i<orderList.size();i++)
+				// {
+				// if(!orderList.get(i).getOrderId().equalsIgnoreCase("229978886132510070")&&!orderList.get(i).getOrderId().equalsIgnoreCase("246314979024510070"))
+				// {
+				// orderList.remove(i--);
+				// continue;
+				// }
+				//
+				// }
+				// orderProcessService.processOrder(TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(orderList));
+				addOrder(orderList);
 			} catch (IOException e) {
 				e.printStackTrace();
 				out.print(JsonUtil.loadFalseResult(e.getMessage()));
@@ -129,4 +209,126 @@
 
 	}
 
+	/**
+	 * 鏂板悗鍙扮 涓婁紶璁㈠崟鏂囦欢
+	 * 
+	 * @param file
+	 *            excel鏂囦欢
+	 * @param uid
+	 *            褰撳墠鐢ㄦ埛id
+	 * @param request
+	 * @param response
+	 * @param out
+	 */
+	@RequestMapping(value = "uploadOrderFile")
+	public void uploadOrderFile(@RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
+
+		if (file == null) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓嶈兘涓虹┖"));
+			return;
+		}
+
+		List<TaoBaoOrder> orderList = null;
+		try {
+			orderList = TaoBaoOrderUtil.parseOrder(file.getInputStream());
+			out.print(JsonUtil.loadTrueResult("涓婁紶鎴愬姛,绯荤粺姝e湪澶勭悊涓�..."));
+		} catch (IOException e) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢澶辫触"));
+			e.printStackTrace();
+		}
+
+		final List<TaoBaoOrder> list = orderList;
+
+		executor.execute(new Runnable() {
+			@Override
+			public void run() {
+				try {
+
+					orderProcessService.processOrder(TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(list));
+
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+
+			}
+		});
+
+	}
+
+	/**
+	 * 涓婁紶鍥剧墖jsonp
+	 * 
+	 * @param file
+	 * @param out
+	 */
+	@RequestMapping(value = "uploadPicture")
+	public void uploadPicture(@RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
+
+		if (file == null) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓虹┖"));
+			return;
+		}
+
+		try {
+			InputStream inputStream = file.getInputStream();
+			String contentType = file.getContentType();
+			String type = contentType.substring(contentType.indexOf("/") + 1);
+			// 涓婁紶鏂囦欢鐩稿浣嶇疆
+			String fileUrl="/img/admin/" + UUID.randomUUID().toString().replace("-", "") + "." + type;
+			
+			String uploadPath = COSManager.getInstance().uploadFile(inputStream, fileUrl).getUrl();
+			
+			JSONObject data = new JSONObject();
+			data.put("original", file.getOriginalFilename());
+			data.put("name", file.getOriginalFilename());
+			data.put("url", uploadPath);
+			data.put("size", file.getSize() + "");
+			data.put("type", "." + type);
+			data.put("state", "SUCCESS");
+			out.print(JsonUtil.loadTrueResult(data));
+		} catch (IOException e) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶鍥剧墖澶辫触"));
+			e.printStackTrace();
+		}
+	}
+	
+	/**
+	 * 
+	 * 鏂规硶璇存槑: 涓婁紶Apk瀹夎鍖�
+	 * 
+	 * @param file
+	 * @param out
+	 */
+	@RequestMapping(value = "installPackage")
+	public void installPackage(@RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
+		
+		if (file == null) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓虹┖"));
+			return;
+		}
+		
+		try {
+			InputStream inputStream = file.getInputStream();
+			String contentType = file.getContentType();
+			String type = contentType.substring(contentType.indexOf("/") + 1);
+			
+			// 涓婁紶鏂囦欢鐩稿浣嶇疆
+			String fileUrl="/apk/admin/" + UUID.randomUUID().toString().replace("-", "") + "." + type + ".apk";
+			
+			String uploadFilePath = COSManager.getInstance().uploadFile(inputStream, fileUrl).getUrl();
+			
+			JSONObject data = new JSONObject();
+			data.put("original", file.getOriginalFilename());
+			data.put("name", file.getOriginalFilename());
+			data.put("url", uploadFilePath);
+			data.put("size", file.getSize() + "");
+			data.put("type", "." + type);
+			data.put("state", "SUCCESS");
+			out.print(JsonUtil.loadTrueResult(data));
+			
+		} catch (Exception e) {
+			out.print(JsonUtil.loadFalseResult("涓婁紶澶辫触"));
+			e.printStackTrace();
+		}
+	}
 }

--
Gitblit v1.8.0