From 207ae7df18d601d839d945d32c5519f95b959a92 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 28 十二月 2019 11:28:49 +0800
Subject: [PATCH] 文章
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java | 124 ++++++++++++++++++++++++++++++++++++++---
1 files changed, 115 insertions(+), 9 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java
index cf84f9d..0f257a2 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ShareStorageControllerV2.java
@@ -1,7 +1,6 @@
package com.yeshi.fanli.controller.client.v2;
import java.io.PrintWriter;
-import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
@@ -17,17 +16,21 @@
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
+import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserGoodsStorage;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.fanli.exception.share.UserShareGoodsRecordException;
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.user.UserGoodsStorageException;
import com.yeshi.fanli.service.inter.config.ConfigService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
+import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.user.UserGoodsStorageService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
@@ -55,11 +58,56 @@
private UserGoodsStorageService userGoodsStorageService;
/**
+ * 鍗曚釜鍟嗗搧鍔犲叆閫夊搧搴�
+ *
+ * @param callback
+ * @param storageIds
+ * id鏁扮粍
+ * @param out
+ */
+ @RequestMapping(value = "accordtorage", method = RequestMethod.POST)
+ public void accordtorage(AcceptData acceptData, Long uid, long id, Integer goodsType, PrintWriter out) {
+
+ if (uid == null) {
+ out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
+ return;
+ }
+
+ if (goodsType == null) {
+ goodsType = Constant.SOURCE_TYPE_TAOBAO;
+ }
+
+ try {
+ UserGoodsStorage userGoodsStorage = userGoodsStorageService.getByUidAndAuctionId(uid, id, goodsType);
+ boolean storageState = false;
+ if (userGoodsStorage != null) {
+ // 鍙栨秷鍔犲叆閫夊搧搴�
+ userGoodsStorageService.deleteByPrimaryKey(userGoodsStorage.getId());
+ } else {
+ // 鍔犲叆閫夊搧搴�
+ Set<Long> set = new HashSet<Long>();
+ set.add(id);
+ userGoodsStorageService.save(uid, set, goodsType);
+ storageState = true;
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("storageState", storageState);
+ out.print(JsonUtil.loadTrueResult(data));
+ } catch (Exception e) {
+ out.print(JsonUtil.loadFalseResult("鎿嶄綔澶辫触"));
+ e.printStackTrace();
+ }
+ }
+
+ /**
* 鎵归噺娣诲姞閫夊搧搴�
*
* @param acceptData
- * @param uid 鐢ㄦ埛id
- * @param ids 绠�鐗堝晢鍝乮d
+ * @param uid
+ * 鐢ㄦ埛id
+ * @param ids
+ * 绠�鐗堝晢鍝乮d
* @param out
*/
@RequestMapping(value = "addStorage", method = RequestMethod.POST)
@@ -84,8 +132,10 @@
* 鏌ヨ鐢ㄦ埛閫夊搧搴撴暟鎹�
*
* @param acceptData
- * @param page 椤电爜 鍒濆鍊� 1
- * @param uid 鐢ㄦ埛id
+ * @param page
+ * 椤电爜 鍒濆鍊� 1
+ * @param uid
+ * 鐢ㄦ埛id
* @param out
*/
@RequestMapping(value = "getlist", method = RequestMethod.POST)
@@ -154,8 +204,8 @@
Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
- BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
- BigDecimal shareRate = hongBaoManageService.getShareRate();
+ ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate(acceptData.getPlatform(),
+ acceptData.getVersion());
for (UserGoodsStorage userGoodsStorage : listStorage) {
CommonGoods commonGoods = userGoodsStorage.getCommonGoods();
@@ -188,7 +238,7 @@
}
}
- GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, null, fanLiRate, shareRate);
+ GoodsDetailVO detailVO = GoodsDetailVOFactory.convertCommonGoods(commonGoods, paramsDTO);
detailVO.setId(commonGoods.getId());
JSONObject dataObject = new JSONObject();
@@ -203,4 +253,60 @@
out.print(JsonUtil.loadTrueResult(data));
}
+ /**
+ * 鍒嗕韩鍟嗗搧杩斿洖浜岀淮鐮佸浘鐗�
+ *
+ * @param callback
+ * @param storageIds
+ * id鏁扮粍
+ * @param out
+ */
+ @RequestMapping(value = "createShare", method = RequestMethod.POST)
+ public void createShare(AcceptData acceptData, Long uid, String storageIds, PrintWriter out) {
+
+ if (StringUtil.isNullOrEmpty(storageIds)) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩鍟嗗搧涓嶈兘涓虹┖"));
+ return;
+ }
+
+ if (uid == null) {
+ out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
+ return;
+ }
+
+ try {
+ Gson gson = new Gson();
+ List<Long> listStorageID = gson.fromJson(storageIds, new TypeToken<ArrayList<Long>>() {
+ }.getType());
+
+ if (!VersionUtil.greaterThan_2_0_5(acceptData.getPlatform(), acceptData.getVersion())) {
+
+ if (listStorageID == null || listStorageID.size() < 9) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩鍟嗗搧鏁伴噺涓嶈冻"));
+ return;
+ }
+
+ if (listStorageID.size() != 9) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩鍟嗗搧鏁伴噺鍙兘鏄�9涓�"));
+ return;
+ }
+
+ JSONObject data = userGoodsStorageService.createShareV2(uid, listStorageID, true);
+ out.print(JsonUtil.loadTrueResult(data));
+ } else {
+ JSONObject data = userGoodsStorageService.createShareV2(uid, listStorageID, false);
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
+ } catch (UserGoodsStorageException e) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩澶辫触"));
+ e.printStackTrace();
+ } catch (UserShareGoodsRecordException e) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩澶辫触"));
+ e.printStackTrace();
+ } catch (Exception e) {
+ out.print(JsonUtil.loadFalseResult("鍒嗕韩澶辫触"));
+ e.printStackTrace();
+ }
+ }
}
--
Gitblit v1.8.0