Browse Source

买家批量上传个人物料后台功能开发

hejq 7 years ago
parent
commit
69560d803c
77 changed files with 857 additions and 514 deletions
  1. 0 1
      src/main/java/com/uas/platform/b2c/common/lottery/controller/LotteryController.java
  2. 0 1
      src/main/java/com/uas/platform/b2c/common/lottery/service/WinningHistoryService.java
  3. 3 2
      src/main/java/com/uas/platform/b2c/common/lottery/service/impl/ActivityItemServiceImpl.java
  4. 3 3
      src/main/java/com/uas/platform/b2c/common/lottery/service/impl/LotteryServiceImpl.java
  5. 3 2
      src/main/java/com/uas/platform/b2c/common/lottery/service/impl/PrizeServiceImpl.java
  6. 3 2
      src/main/java/com/uas/platform/b2c/common/lottery/service/impl/UserInfoServiceImpl.java
  7. 3 3
      src/main/java/com/uas/platform/b2c/common/lottery/service/impl/WinningHistoryServiceImpl.java
  8. 0 3
      src/main/java/com/uas/platform/b2c/common/message/service/InternalMessageService.java
  9. 2 3
      src/main/java/com/uas/platform/b2c/common/search/controller/SearcherController.java
  10. 8 2
      src/main/java/com/uas/platform/b2c/core/utils/StringUtilB2C.java
  11. 6 2
      src/main/java/com/uas/platform/b2c/external/erp/order/api/OrderController.java
  12. 0 1
      src/main/java/com/uas/platform/b2c/external/erp/order/service/impl/InvoiceNotifyServiceImpl.java
  13. 8 3
      src/main/java/com/uas/platform/b2c/fa/payment/controller/BankInfoController.java
  14. 10 2
      src/main/java/com/uas/platform/b2c/fa/payment/service/impl/BankTransferServiceImpl.java
  15. 12 2
      src/main/java/com/uas/platform/b2c/fa/settlement/model/Refund.java
  16. 11 2
      src/main/java/com/uas/platform/b2c/fa/settlement/model/RefundDetail.java
  17. 5 1
      src/main/java/com/uas/platform/b2c/fa/settlement/service/impl/RefundServiceImpl.java
  18. 5 1
      src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceController.java
  19. 2 1
      src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceFOrderController.java
  20. 2 1
      src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceFPurchaseController.java
  21. 1 2
      src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceDao.java
  22. 0 1
      src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceDetailDao.java
  23. 0 2
      src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceFOrderDao.java
  24. 13 2
      src/main/java/com/uas/platform/b2c/logistics/model/Invoice.java
  25. 8 3
      src/main/java/com/uas/platform/b2c/logistics/model/InvoiceDetail.java
  26. 1 3
      src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFOrder.java
  27. 8 1
      src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFOrderDetail.java
  28. 1 1
      src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFPurchase.java
  29. 8 1
      src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFPurchaseDetail.java
  30. 10 2
      src/main/java/com/uas/platform/b2c/logistics/model/Receipt.java
  31. 8 1
      src/main/java/com/uas/platform/b2c/logistics/model/ReceiptDetail.java
  32. 0 2
      src/main/java/com/uas/platform/b2c/logistics/service/InvoiceFOrderDetailService.java
  33. 1 2
      src/main/java/com/uas/platform/b2c/logistics/service/impl/InvoiceFOrderDetailServiceImpl.java
  34. 13 2
      src/main/java/com/uas/platform/b2c/logistics/service/impl/InvoiceServiceImpl.java
  35. 10 2
      src/main/java/com/uas/platform/b2c/logistics/service/impl/ReceiptServiceImpl.java
  36. 6 1
      src/main/java/com/uas/platform/b2c/logistics/util/ModelConvertUtil.java
  37. 14 3
      src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java
  38. 7 4
      src/main/java/com/uas/platform/b2c/prod/commodity/controller/ReleaseProductByBatchController.java
  39. 2 0
      src/main/java/com/uas/platform/b2c/prod/commodity/dao/ReleaseProductByBatchDao.java
  40. 12 2
      src/main/java/com/uas/platform/b2c/prod/commodity/model/CommodityInOutbound.java
  41. 9 2
      src/main/java/com/uas/platform/b2c/prod/commodity/model/Goods.java
  42. 9 1
      src/main/java/com/uas/platform/b2c/prod/commodity/model/GoodsHistory.java
  43. 10 2
      src/main/java/com/uas/platform/b2c/prod/commodity/model/InOutboundDetail.java
  44. 5 1
      src/main/java/com/uas/platform/b2c/prod/commodity/model/ModifyInfo.java
  45. 10 1
      src/main/java/com/uas/platform/b2c/prod/commodity/model/Product.java
  46. 5 1
      src/main/java/com/uas/platform/b2c/prod/commodity/model/ProductPrivate.java
  47. 13 134
      src/main/java/com/uas/platform/b2c/prod/commodity/model/ReleaseProductByBatch.java
  48. 9 2
      src/main/java/com/uas/platform/b2c/prod/commodity/model/V_ProductPerson.java
  49. 9 2
      src/main/java/com/uas/platform/b2c/prod/commodity/model/V_ProductPrivate.java
  50. 0 1
      src/main/java/com/uas/platform/b2c/prod/commodity/service/CommodityInOutboundService.java
  51. 6 1
      src/main/java/com/uas/platform/b2c/prod/commodity/service/GoodsService.java
  52. 8 3
      src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java
  53. 14 6
      src/main/java/com/uas/platform/b2c/prod/commodity/service/ReleaseProductByBatchService.java
  54. 5 1
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/CommodityInOutboundServiceImpl.java
  55. 50 6
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/GoodsServiceImpl.java
  56. 7 2
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/InOutboundDetailServiceImpl.java
  57. 53 5
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java
  58. 94 168
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ReleaseProductByBatchServiceImpl.java
  59. 8 1
      src/main/java/com/uas/platform/b2c/prod/store/model/StoreApply.java
  60. 7 1
      src/main/java/com/uas/platform/b2c/prod/store/service/impl/StoreApplyServiceImpl.java
  61. 18 2
      src/main/java/com/uas/platform/b2c/prod/store/service/impl/StoreInServiceImpl.java
  62. 12 2
      src/main/java/com/uas/platform/b2c/trade/order/controller/OrderController.java
  63. 2 2
      src/main/java/com/uas/platform/b2c/trade/order/controller/PurchaseProductController.java
  64. 20 3
      src/main/java/com/uas/platform/b2c/trade/order/model/Order.java
  65. 1 1
      src/main/java/com/uas/platform/b2c/trade/order/model/OrderDetail.java
  66. 1 1
      src/main/java/com/uas/platform/b2c/trade/order/model/OrderIndex.java
  67. 1 1
      src/main/java/com/uas/platform/b2c/trade/order/model/OrderSimpleInfo.java
  68. 13 2
      src/main/java/com/uas/platform/b2c/trade/order/model/Purchase.java
  69. 0 2
      src/main/java/com/uas/platform/b2c/trade/order/service/OrderService.java
  70. 9 2
      src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderDetailServiceImpl.java
  71. 25 4
      src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderServiceImpl.java
  72. 141 60
      src/main/java/com/uas/platform/b2c/trade/order/service/impl/PurchaseProductServiceImpl.java
  73. 31 5
      src/main/java/com/uas/platform/b2c/trade/order/service/impl/PurchaseServiceImpl.java
  74. 13 1
      src/main/java/com/uas/platform/b2c/trade/presale/model/Cart.java
  75. 5 3
      src/main/java/com/uas/platform/b2c/trade/seek/controller/SeekPurchaseBomController.java
  76. 3 3
      src/main/java/com/uas/platform/b2c/trade/seek/service/SeekPurchaseBomService.java
  77. 22 4
      src/main/java/com/uas/platform/b2c/trade/seek/service/impl/SeekPurchaseBomServiceImpl.java

+ 0 - 1
src/main/java/com/uas/platform/b2c/common/lottery/controller/LotteryController.java

@@ -9,7 +9,6 @@ import com.uas.platform.b2c.common.lottery.service.WinningHistoryService;
 import com.uas.platform.b2c.common.search.util.PageParams;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;

+ 0 - 1
src/main/java/com/uas/platform/b2c/common/lottery/service/WinningHistoryService.java

@@ -3,7 +3,6 @@ package com.uas.platform.b2c.common.lottery.service;
 import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.common.search.util.PageParams;
 import com.uas.platform.b2c.trade.support.ResultMap;
-import org.springframework.data.domain.Page;
 
 /**
  * Created by wangyc on 2018/9/12.

+ 3 - 2
src/main/java/com/uas/platform/b2c/common/lottery/service/impl/ActivityItemServiceImpl.java

@@ -8,12 +8,13 @@ import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
-import java.util.HashMap;
-import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by wangyc on 2018/9/12.
  *

+ 3 - 3
src/main/java/com/uas/platform/b2c/common/lottery/service/impl/LotteryServiceImpl.java

@@ -1,7 +1,6 @@
 package com.uas.platform.b2c.common.lottery.service.impl;
 
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.common.lottery.service.LotteryService;
 import com.uas.platform.b2c.core.config.SysConf;
 import com.uas.platform.b2c.core.support.SystemSession;
@@ -9,12 +8,13 @@ import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
 import com.uas.ps.core.page.exception.IllegalOperatorException;
-import java.util.HashMap;
-import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by wangyc on 2018/9/13.
  *

+ 3 - 2
src/main/java/com/uas/platform/b2c/common/lottery/service/impl/PrizeServiceImpl.java

@@ -8,12 +8,13 @@ import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
-import java.util.HashMap;
-import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by wangyc on 2018/9/12.
  *

+ 3 - 2
src/main/java/com/uas/platform/b2c/common/lottery/service/impl/UserInfoServiceImpl.java

@@ -8,12 +8,13 @@ import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
-import java.util.HashMap;
-import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by wangyc on 2018/9/12.
  *

+ 3 - 3
src/main/java/com/uas/platform/b2c/common/lottery/service/impl/WinningHistoryServiceImpl.java

@@ -11,13 +11,13 @@ import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
 import com.uas.ps.core.page.exception.IllegalOperatorException;
-import java.util.HashMap;
-import java.util.Map;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Created by wangyc on 2018/9/12.
  *

+ 0 - 3
src/main/java/com/uas/platform/b2c/common/message/service/InternalMessageService.java

@@ -2,13 +2,10 @@ package com.uas.platform.b2c.common.message.service;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.uas.platform.b2c.common.message.model.MessageModel;
 import com.uas.platform.b2c.trade.deprecated.model.BasicMessage;
 import com.uas.platform.core.model.PageParams;
-import org.springframework.data.domain.Page;
 
 import java.util.Date;
-import java.util.List;
 
 /**
  * 站内信service

+ 2 - 3
src/main/java/com/uas/platform/b2c/common/search/controller/SearcherController.java

@@ -32,9 +32,8 @@ import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.net.URLDecoder;
-import java.net.URLEncoder;
+import java.io.*;
+import java.net.*;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;

+ 8 - 2
src/main/java/com/uas/platform/b2c/core/utils/StringUtilB2C.java

@@ -11,8 +11,14 @@ import com.uas.platform.core.model.Type;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.util.StringUtils;
 
-import java.io.UnsupportedEncodingException;
-import java.util.*;
+import java.io.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Random;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 

+ 6 - 2
src/main/java/com/uas/platform/b2c/external/erp/order/api/OrderController.java

@@ -5,10 +5,10 @@ import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.common.account.model.Enterprise;
 import com.uas.platform.b2c.common.account.model.User;
 import com.uas.platform.b2c.common.account.service.VendorService;
-import com.uas.platform.b2c.fa.payment.model.BankTransfer;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.core.utils.StringUtilB2C;
+import com.uas.platform.b2c.fa.payment.model.BankTransfer;
 import com.uas.platform.b2c.trade.order.model.Order;
 import com.uas.platform.b2c.trade.order.model.OrderDetail;
 import com.uas.platform.b2c.trade.order.model.OrderSimpleInfo;
@@ -22,7 +22,11 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.management.OperationsException;
 import java.util.ArrayList;

+ 0 - 1
src/main/java/com/uas/platform/b2c/external/erp/order/service/impl/InvoiceNotifyServiceImpl.java

@@ -5,7 +5,6 @@ import com.uas.api.b2c_erp.buyer.model.AcceptNotifyDetail;
 import com.uas.api.b2c_erp.buyer.service.InvoiceNotifyService;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.logistics.dao.InvoiceDao;
-import com.uas.platform.b2c.logistics.dao.InvoiceFOrderDao;
 import com.uas.platform.b2c.logistics.model.Invoice;
 import com.uas.platform.b2c.logistics.model.InvoiceDetail;
 import com.uas.platform.core.model.Status;

+ 8 - 3
src/main/java/com/uas/platform/b2c/fa/payment/controller/BankInfoController.java

@@ -6,10 +6,10 @@ import com.uas.platform.b2c.common.account.model.User;
 import com.uas.platform.b2c.common.base.model.FileUpload;
 import com.uas.platform.b2c.core.config.SysConf;
 import com.uas.platform.b2c.core.support.SystemSession;
-import com.uas.platform.b2c.fa.payment.model.BankInfo;
-import com.uas.platform.b2c.fa.payment.service.BankInfoService;
 import com.uas.platform.b2c.core.support.log.UsageBufferedLogger;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
+import com.uas.platform.b2c.fa.payment.model.BankInfo;
+import com.uas.platform.b2c.fa.payment.service.BankInfoService;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.PageParams;
@@ -19,7 +19,12 @@ import com.wordnik.swagger.annotations.ApiOperation;
 import com.wordnik.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
 import java.util.Set;

+ 10 - 2
src/main/java/com/uas/platform/b2c/fa/payment/service/impl/BankTransferServiceImpl.java

@@ -31,7 +31,11 @@ import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.b2c.trade.util.Preconditions;
 import com.uas.platform.core.exception.IllegalOperatorException;
-import com.uas.platform.core.model.*;
+import com.uas.platform.core.model.EncodingRulesConstant;
+import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.model.PageParams;
+import com.uas.platform.core.model.Status;
+import com.uas.platform.core.model.Type;
 import com.uas.platform.core.persistence.criteria.CriterionExpression;
 import com.uas.platform.core.persistence.criteria.LogicalExpression;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
@@ -50,7 +54,11 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * @author yujia

+ 12 - 2
src/main/java/com/uas/platform/b2c/fa/settlement/model/Refund.java

@@ -6,8 +6,18 @@ import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.trade.order.model.Order;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import java.io.*;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;

+ 11 - 2
src/main/java/com/uas/platform/b2c/fa/settlement/model/RefundDetail.java

@@ -5,8 +5,17 @@ import com.uas.platform.b2c.trade.order.model.Document;
 import com.uas.platform.b2c.trade.order.model.OrderDetail;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import java.io.*;
 
 
 /**

+ 5 - 1
src/main/java/com/uas/platform/b2c/fa/settlement/service/impl/RefundServiceImpl.java

@@ -32,7 +32,11 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import javax.servlet.http.HttpServletRequest;
-import java.util.*;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * The type Refund service.

+ 5 - 1
src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceController.java

@@ -19,7 +19,11 @@ import com.wordnik.swagger.annotations.ApiOperation;
 import com.wordnik.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.management.OperationsException;
 import java.util.List;

+ 2 - 1
src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceFOrderController.java

@@ -1,7 +1,8 @@
 package com.uas.platform.b2c.logistics.controller;
 
 
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 /**
  * The type InvoiceFOrder controller.
  */

+ 2 - 1
src/main/java/com/uas/platform/b2c/logistics/controller/InvoiceFPurchaseController.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2c.logistics.controller;
 
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 
 /**

+ 1 - 2
src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceDao.java

@@ -1,14 +1,13 @@
 package com.uas.platform.b2c.logistics.dao;
 
 
+import com.uas.platform.b2c.logistics.model.Invoice;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
-import com.uas.platform.b2c.logistics.model.Invoice;
-
 import java.util.List;
 
 /**

+ 0 - 1
src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceDetailDao.java

@@ -1,7 +1,6 @@
 package com.uas.platform.b2c.logistics.dao;
 
 import com.uas.platform.b2c.logistics.model.InvoiceDetail;
-import com.uas.platform.b2c.logistics.model.InvoiceFPurchaseDetail;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.stereotype.Repository;

+ 0 - 2
src/main/java/com/uas/platform/b2c/logistics/dao/InvoiceFOrderDao.java

@@ -3,8 +3,6 @@ package com.uas.platform.b2c.logistics.dao;
 import com.uas.platform.b2c.logistics.model.InvoiceFOrder;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-import org.springframework.data.jpa.repository.Query;
-import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;

+ 13 - 2
src/main/java/com/uas/platform/b2c/logistics/model/Invoice.java

@@ -9,8 +9,19 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.hibernate.annotations.CacheConcurrencyStrategy;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;

+ 8 - 3
src/main/java/com/uas/platform/b2c/logistics/model/InvoiceDetail.java

@@ -2,16 +2,21 @@ package com.uas.platform.b2c.logistics.model;
 
 import com.alibaba.fastjson.annotation.JSONField;
 import com.uas.platform.b2c.core.utils.NumberUtil;
-import com.uas.platform.b2c.prod.product.common.service.CreateNumberService;
 import com.uas.platform.b2c.trade.order.model.OrderDetail;
 import com.uas.platform.b2c.trade.order.model.PurchaseDetail;
 import com.uas.platform.core.exception.IllegalStatusException;
-import com.uas.platform.core.model.EncodingRulesConstant;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
 
 /**
  * 发货单(来源于订单的)明细

+ 1 - 3
src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFOrder.java

@@ -1,9 +1,7 @@
 package com.uas.platform.b2c.logistics.model;
 
-import com.uas.platform.b2c.core.utils.NumberUtil;
 import com.uas.platform.b2c.trade.order.model.Document;
 import com.uas.platform.b2c.trade.order.model.Order;
-import com.uas.platform.b2c.trade.order.model.OrderDetail;
 import com.uas.platform.core.exception.IllegalStatusException;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.StatusColumn;
@@ -22,7 +20,7 @@ import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
-import java.io.Serializable;
+import java.io.*;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;

+ 8 - 1
src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFOrderDetail.java

@@ -7,7 +7,14 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
 
 /**
  * 发货单(来源于订单的)明细

+ 1 - 1
src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFPurchase.java

@@ -20,7 +20,7 @@ import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
 import javax.persistence.Transient;
-import java.io.Serializable;
+import java.io.*;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;

+ 8 - 1
src/main/java/com/uas/platform/b2c/logistics/model/InvoiceFPurchaseDetail.java

@@ -7,7 +7,14 @@ import com.uas.platform.core.exception.IllegalStatusException;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
 
 /**
  * 发货单(来源于采购单的)明细

+ 10 - 2
src/main/java/com/uas/platform/b2c/logistics/model/Receipt.java

@@ -7,8 +7,16 @@ import com.uas.platform.core.persistence.StatusColumn;
 import org.hibernate.annotations.Cache;
 import org.hibernate.annotations.CacheConcurrencyStrategy;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import java.io.*;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;

+ 8 - 1
src/main/java/com/uas/platform/b2c/logistics/model/ReceiptDetail.java

@@ -4,7 +4,14 @@ import com.alibaba.fastjson.annotation.JSONField;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
 
 /**
  * 入库单明细

+ 0 - 2
src/main/java/com/uas/platform/b2c/logistics/service/InvoiceFOrderDetailService.java

@@ -1,7 +1,5 @@
 package com.uas.platform.b2c.logistics.service;
 
-import com.uas.platform.b2c.logistics.model.InvoiceFOrderDetail;
-
 /**
  * The interface InvoiceFOrderDetail service.
  */

+ 1 - 2
src/main/java/com/uas/platform/b2c/logistics/service/impl/InvoiceFOrderDetailServiceImpl.java

@@ -1,8 +1,7 @@
 package com.uas.platform.b2c.logistics.service.impl;
 
-import org.springframework.stereotype.Service;
-
 import com.uas.platform.b2c.logistics.service.InvoiceFOrderDetailService;
+import org.springframework.stereotype.Service;
 
 @Service
 public class InvoiceFOrderDetailServiceImpl implements InvoiceFOrderDetailService {

+ 13 - 2
src/main/java/com/uas/platform/b2c/logistics/service/impl/InvoiceServiceImpl.java

@@ -16,7 +16,11 @@ import com.uas.platform.b2c.core.utils.StringUtilB2C;
 import com.uas.platform.b2c.logistics.dao.InvoiceDao;
 import com.uas.platform.b2c.logistics.dao.InvoiceFOrderDao;
 import com.uas.platform.b2c.logistics.dao.InvoiceFPurchaseDao;
-import com.uas.platform.b2c.logistics.model.*;
+import com.uas.platform.b2c.logistics.model.Invoice;
+import com.uas.platform.b2c.logistics.model.InvoiceDetail;
+import com.uas.platform.b2c.logistics.model.InvoiceFOrder;
+import com.uas.platform.b2c.logistics.model.InvoiceFPurchase;
+import com.uas.platform.b2c.logistics.model.Logistics;
 import com.uas.platform.b2c.logistics.service.InvoiceService;
 import com.uas.platform.b2c.logistics.service.LogisticsOldService;
 import com.uas.platform.b2c.logistics.service.LogisticsPortService;
@@ -64,7 +68,14 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 @Service
 public class InvoiceServiceImpl implements InvoiceService {

+ 10 - 2
src/main/java/com/uas/platform/b2c/logistics/service/impl/ReceiptServiceImpl.java

@@ -8,7 +8,11 @@ import com.uas.platform.b2c.core.utils.NumberUtil;
 import com.uas.platform.b2c.core.utils.StringUtilB2C;
 import com.uas.platform.b2c.fa.settlement.util.SettlementUtil;
 import com.uas.platform.b2c.logistics.dao.ReceiptDao;
-import com.uas.platform.b2c.logistics.model.*;
+import com.uas.platform.b2c.logistics.model.Invoice;
+import com.uas.platform.b2c.logistics.model.InvoiceFPurchase;
+import com.uas.platform.b2c.logistics.model.InvoiceFPurchaseDetail;
+import com.uas.platform.b2c.logistics.model.Receipt;
+import com.uas.platform.b2c.logistics.model.ReceiptDetail;
 import com.uas.platform.b2c.logistics.service.ReceiptDetailService;
 import com.uas.platform.b2c.logistics.service.ReceiptService;
 import com.uas.platform.b2c.prod.product.common.service.CreateNumberService;
@@ -37,7 +41,11 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
 
 import static com.uas.platform.b2c.trade.util.Preconditions.checkArgument;
 import static com.uas.platform.b2c.trade.util.Preconditions.checkNotNull;

+ 6 - 1
src/main/java/com/uas/platform/b2c/logistics/util/ModelConvertUtil.java

@@ -1,6 +1,11 @@
 package com.uas.platform.b2c.logistics.util;
 
-import com.uas.platform.b2c.logistics.model.*;
+import com.uas.platform.b2c.logistics.model.Invoice;
+import com.uas.platform.b2c.logistics.model.InvoiceDetail;
+import com.uas.platform.b2c.logistics.model.InvoiceFOrder;
+import com.uas.platform.b2c.logistics.model.InvoiceFOrderDetail;
+import com.uas.platform.b2c.logistics.model.InvoiceFPurchase;
+import com.uas.platform.b2c.logistics.model.InvoiceFPurchaseDetail;
 
 import java.util.HashSet;
 import java.util.Set;

+ 14 - 3
src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java

@@ -6,7 +6,12 @@ import com.uas.platform.b2c.core.constant.SplitChar;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.support.view.JxlsExcelView;
 import com.uas.platform.b2c.prod.commodity.facade.ProductFacade;
-import com.uas.platform.b2c.prod.commodity.model.*;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.Product;
+import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
+import com.uas.platform.b2c.prod.commodity.model.ProductReplace;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPerson;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPrivate;
 import com.uas.platform.b2c.prod.commodity.service.GoodsService;
 import com.uas.platform.b2c.prod.commodity.service.ProductService;
 import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
@@ -19,13 +24,19 @@ import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+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.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
-import java.io.UnsupportedEncodingException;
+import java.io.*;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;

+ 7 - 4
src/main/java/com/uas/platform/b2c/prod/commodity/controller/ReleaseProductByBatchController.java

@@ -26,15 +26,18 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+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.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
+import java.io.*;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;

+ 2 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/dao/ReleaseProductByBatchDao.java

@@ -6,6 +6,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.jpa.repository.query.Procedure;
 import org.springframework.data.repository.query.Param;
+import org.springframework.stereotype.Repository;
 
 import java.util.List;
 
@@ -16,6 +17,7 @@ import java.util.List;
  * @time 创建时间 :2016年9月24日
  * @version 2017年8月3日13:47:42 yuj 增加注释
  */
+@Repository
 public interface ReleaseProductByBatchDao
 		extends JpaSpecificationExecutor<ReleaseProductByBatch>, JpaRepository<ReleaseProductByBatch, Long> {
 

+ 12 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/model/CommodityInOutbound.java

@@ -5,8 +5,18 @@ import com.uas.platform.b2c.logistics.model.Logistics;
 import com.uas.platform.b2c.prod.commodity.type.InOutBoundType;
 import org.apache.commons.lang.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.util.Date;
 import java.util.Set;
 

+ 9 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/model/Goods.java

@@ -20,8 +20,15 @@ import org.hibernate.annotations.CacheConcurrencyStrategy;
 import org.springframework.cache.annotation.Cacheable;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Index;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Date;

+ 9 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/model/GoodsHistory.java

@@ -3,7 +3,15 @@ package com.uas.platform.b2c.prod.commodity.model;
 import com.uas.platform.b2c.common.account.model.UserBaseInfo;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.Transient;
 import java.util.Date;
 import java.util.List;
 

+ 10 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/model/InOutboundDetail.java

@@ -5,8 +5,16 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.uas.platform.b2c.logistics.model.InvoiceDetail;
 import com.uas.platform.b2c.trade.order.model.PurchaseDetail;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+import java.io.*;
 
 @Entity
 @Table(name = "trade$in_out_bound_detail")

+ 5 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/model/ModifyInfo.java

@@ -1,6 +1,10 @@
 package com.uas.platform.b2c.prod.commodity.model;
 
-import javax.persistence.*;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
 
 /**
  * 商品修改明细类

+ 10 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/model/Product.java

@@ -6,7 +6,16 @@ import com.uas.platform.core.persistence.EnterpriseUU;
 import com.uas.platform.core.persistence.Logger;
 import com.uas.platform.core.persistence.UserUU;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Index;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Transient;
 import java.util.Date;
 import java.util.Set;
 

+ 5 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/model/ProductPrivate.java

@@ -2,7 +2,11 @@ package com.uas.platform.b2c.prod.commodity.model;
 
 import com.uas.platform.b2c.core.constant.IntegerConstant;
 
-import javax.persistence.*;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
 
 /**
  * 存贮商城私有物料字段

+ 13 - 134
src/main/java/com/uas/platform/b2c/prod/commodity/model/ReleaseProductByBatch.java

@@ -1,7 +1,6 @@
 package com.uas.platform.b2c.prod.commodity.model;
 
 import com.alibaba.fastjson.annotation.JSONField;
-import com.uas.platform.b2c.core.constant.Status;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.core.utils.NumberUtil;
 import com.uas.platform.b2c.core.utils.RegexConstant;
@@ -16,9 +15,13 @@ import org.apache.commons.collections.CollectionUtils;
 import org.codehaus.jackson.annotate.JsonIgnore;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
-import java.io.UnsupportedEncodingException;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -76,7 +79,9 @@ public class ReleaseProductByBatch implements Serializable {
 	@GeneratedValue
 	private Long id;
 
-	// 当前的申请的这一批的单号
+	/**
+	 * 当前的申请的这一批的单号
+	 */
 	@Column(name = "rel_batchid")
 	private String relbatchid = "";
 
@@ -323,42 +328,6 @@ public class ReleaseProductByBatch implements Serializable {
 	@Column(name = "rel_thick")
 	private String thick = "";
 
-//	/**
-//	 * 商城最长交期
-//	 */
-//	@Column(name = "go_b2cmaxdelivery")
-//	private Short b2cMaxDelivery;
-//
-//	/**
-//	 * 商城最短交期
-//	 */
-//	@Column(name = "go_b2cmindelivery")
-//	private Short b2cMinDelivery;
-//
-//	/**
-//	 * 用户填写的大陆最长交期
-//	 */
-//	@Column(name = "rel_maxdeliverydemtime")
-//	private Short deliveryDemMaxTime;
-//
-//	/**
-//	 * 用户填写的大陆最短交期
-//	 */
-//	@Column(name = "rel_mindeliverydemtime")
-//	private Short deliveryDemMinTime;
-//
-//	/**
-//	 * 用户填写的香港最短交期
-//	 */
-//	@Column(name = "rel_mindeliveryhktime")
-//	private Short deliveryHKMinTime;
-//
-//	/**
-//	 * 用户填写的香港最长交期
-//	 */
-//	@Column(name = "rel_maxdeliveryhktime")
-//	private Short deliveryHKMaxTime;
-
 	/**
 	 * 备注
 	 */
@@ -592,15 +561,9 @@ public class ReleaseProductByBatch implements Serializable {
 
 		ReleaseProductByBatch that = (ReleaseProductByBatch) o;
 
-		if (!brandNameEn.equals(that.brandNameEn)) return false;
-//		if (!code.equals(that.code)) return false;
-//		if (!minBuyQtyStr.equals(that.minBuyQtyStr)) return false;
-//		if (!productDate.equals(that.productDate)) return false;
-//		if (!minPackageStr.equals(that.minPackageStr)) return false;
-//		if (!packaging.equals(that.packaging)) return false;
-//		if (!selfMaxDeliveryStr.equals(that.selfMaxDeliveryStr)) return false;
-//		if (!selfMinDeliveryStr.equals(that.selfMinDeliveryStr)) return false;
-//		return GoodsUtil.compareWithQtyPrice(prices, that.getPrices(), that.getCurrency());
+		if (!brandNameEn.equals(that.brandNameEn)) {
+		    return false;
+        }
 		return code.equals(that.code);
 	}
 
@@ -608,22 +571,6 @@ public class ReleaseProductByBatch implements Serializable {
 		setBatchCode(StringUtilB2C.getStr(value).trim());
 	}
 
-	public void setStatusByExcel(Object value) {
-		if (StringUtils.isEmpty(value)) {
-			addErrmsg(ErrorInfoConstant.SALE_EMPTY.getInfo());
-		} else {
-			String statusStr = StringUtilB2C.getStr(value);
-			setStatusStr(statusStr);
-			if (!STATUS_LIST.contains(statusStr)) {
-				addErrmsg(ErrorInfoConstant.SALE_EMPTY.getInfo());
-			} else {
-				int status = "上架".equals(statusStr) ? Status.AVAILABLE.value() : Status.REMOVED.value();
-				setStatus(status);
-			}
-		}
-
-	}
-
 	public void setBrandEnByExcel(Object value) {
 		if (StringUtils.isEmpty(value)) {
 			addErrmsg(ErrorInfoConstant.BRAND_EMPTY_INFO.getInfo());
@@ -717,19 +664,6 @@ public class ReleaseProductByBatch implements Serializable {
 		}
 	}
 
-	public void setProductDateByExcel(Object value) {
-		if (StringUtils.isEmpty(value)) {
-			addErrmsg(ErrorInfoConstant.PRODUCE_DATE_INFO.getInfo());
-		}
-		String productData = StringUtilB2C.replaceLineBreak(StringUtilB2C.getStr(value));
-		try {
-			productData = com.uas.platform.b2c.fa.payment.utils.StringUtils.cutOutString(productData, 12);
-		} catch (UnsupportedEncodingException e) {
-			throw new RuntimeException(e + "指定字符集不支持");
-		}
-		setProductDate(productData);
-	}
-
 	public void setPackagingByExcel(Object value, boolean isAPerson) {
 		if (!StringUtils.isEmpty(value)) {
 			String packagingData = StringUtilB2C.replaceLineBreak(StringUtilB2C.getStr(value));
@@ -954,8 +888,6 @@ public class ReleaseProductByBatch implements Serializable {
 		this.brandId = brandId;
 	}
 
-
-
 	public String getCode() {
 		return code;
 	}
@@ -1163,22 +1095,6 @@ public class ReleaseProductByBatch implements Serializable {
 		this.publisherName = publisherName;
 	}
 
-//	public Short getB2cMaxDelivery() {
-//		return b2cMaxDelivery;
-//	}
-//
-//	public void setB2cMaxDelivery(Short b2cMaxDelivery) {
-//		this.b2cMaxDelivery = b2cMaxDelivery;
-//	}
-//
-//	public Short getB2cMinDelivery() {
-//		return b2cMinDelivery;
-//	}
-//
-//	public void setB2cMinDelivery(Short b2cMinDelivery) {
-//		this.b2cMinDelivery = b2cMinDelivery;
-//	}
-
 	public Long getPublisherUu() {
 		return publisherUu;
 	}
@@ -1577,43 +1493,6 @@ public class ReleaseProductByBatch implements Serializable {
 		return serialVersionUID;
 	}
 
-//	public Short getDeliveryDemMaxTime() {
-//		return deliveryDemMaxTime;
-//	}
-//
-//	public ReleaseProductByBatch setDeliveryDemMaxTime(Short deliveryDemMaxTime) {
-//		this.deliveryDemMaxTime = deliveryDemMaxTime;
-//		return this;
-//	}
-//
-//	public Short getDeliveryDemMinTime() {
-//		return deliveryDemMinTime;
-//	}
-//
-//	public ReleaseProductByBatch setDeliveryDemMinTime(Short deliveryDemMinTime) {
-//		this.deliveryDemMinTime = deliveryDemMinTime;
-//		return this;
-//	}
-//
-//	public Short getDeliveryHKMinTime() {
-//		return deliveryHKMinTime;
-//	}
-//
-//	public ReleaseProductByBatch setDeliveryHKMinTime(Short deliveryHKMinTime) {
-//		this.deliveryHKMinTime = deliveryHKMinTime;
-//		return this;
-//	}
-//
-//	public Short getDeliveryHKMaxTime() {
-//		return deliveryHKMaxTime;
-//	}
-//
-//	public ReleaseProductByBatch setDeliveryHKMaxTime(Short deliveryHKMaxTime) {
-//		this.deliveryHKMaxTime = deliveryHKMaxTime;
-//		return this;
-//	}
-
-
 	public Short getSelfMaxDelivery() {
 		return selfMaxDelivery;
 	}

+ 9 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/model/V_ProductPerson.java

@@ -4,8 +4,15 @@ package com.uas.platform.b2c.prod.commodity.model;
 import com.uas.platform.core.persistence.EnterpriseUU;
 import com.uas.platform.core.persistence.UserUU;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.util.Date;
 import java.util.List;
 import java.util.Set;

+ 9 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/model/V_ProductPrivate.java

@@ -3,8 +3,15 @@ package com.uas.platform.b2c.prod.commodity.model;
 import com.uas.platform.core.persistence.EnterpriseUU;
 import com.uas.platform.core.persistence.UserUU;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.util.Date;
 import java.util.Set;
 

+ 0 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/service/CommodityInOutboundService.java

@@ -1,7 +1,6 @@
 package com.uas.platform.b2c.prod.commodity.service;
 
 import com.uas.platform.b2c.logistics.model.Invoice;
-import com.uas.platform.b2c.logistics.model.InvoiceFPurchase;
 import com.uas.platform.b2c.prod.commodity.model.CommodityInOutbound;
 import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
 import com.uas.platform.b2c.trade.order.model.Order;

+ 6 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/service/GoodsService.java

@@ -2,7 +2,12 @@ package com.uas.platform.b2c.prod.commodity.service;
 
 import com.uas.api.b2c_erp.seller.model.GoodsFUas;
 import com.uas.api.b2c_erp.seller.model.GoodsSimpleUas;
-import com.uas.platform.b2c.prod.commodity.model.*;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.GoodsFilter;
+import com.uas.platform.b2c.prod.commodity.model.GoodsHistory;
+import com.uas.platform.b2c.prod.commodity.model.GoodsInfo;
+import com.uas.platform.b2c.prod.commodity.model.GoodsSimple;
+import com.uas.platform.b2c.prod.commodity.model.Product;
 import com.uas.platform.b2c.prod.product.component.modal.Component;
 import com.uas.platform.b2c.trade.order.model.Order;
 import com.uas.platform.b2c.trade.order.model.PurchaseDetail;

+ 8 - 3
src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java

@@ -1,14 +1,19 @@
 package com.uas.platform.b2c.prod.commodity.service;
 
 import com.alibaba.fastjson.JSONObject;
-import com.uas.platform.b2c.prod.commodity.model.*;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
+import com.uas.platform.b2c.prod.commodity.model.Product;
+import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
+import com.uas.platform.b2c.prod.commodity.model.ProductReplace;
+import com.uas.platform.b2c.prod.commodity.model.ReleaseProductByBatch;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPerson;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPrivate;
 import com.uas.platform.b2c.prod.product.component.modal.Component;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
 import org.springframework.data.domain.Page;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
 
 import java.util.List;
 import java.util.Map;

+ 14 - 6
src/main/java/com/uas/platform/b2c/prod/commodity/service/ReleaseProductByBatchService.java

@@ -156,12 +156,6 @@ public interface ReleaseProductByBatchService {
      */
     int convertValueToProduct(Row row, ReleaseProductByBatch aProduct, int rowNum, boolean isAPerson, boolean isPcb);
 
-    /**
-     *  1:比较品牌、型号、自定义标签是否重复,2:比较六要素是否重复
-     * @param releaseProductByBatchs 批量上传商品建立临时表存储相关信息
-     */
-    void checkReleaseProductByBatch(List<ReleaseProductByBatch> releaseProductByBatchs);
-
     /**
      * 统计批量上传数据相关
      *
@@ -170,4 +164,18 @@ public interface ReleaseProductByBatchService {
      * @param batch
      */
     void checkReleaseCount(ModelMap modelMap, String strCount, String batch);
+
+    /**
+     *  1:比较品牌、型号、自定义标签是否重复,2:比较六要素是否重复
+     * @param releaseProductByBatchArrayList 批量上传商品建立临时表存储相关信息
+     */
+    void judgeSameReleaseProductByBatch(List<ReleaseProductByBatch> releaseProductByBatchArrayList);
+
+    /**
+     * 调用存储过程
+     * @param enUU 企业的enUU
+     * @param batch 批次
+     * @return 验证结果
+     */
+    String productReleaseValid(Long enUU, String batch);
 }

+ 5 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/CommodityInOutboundServiceImpl.java

@@ -40,7 +40,11 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
 
 /**
  * description

+ 50 - 6
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/GoodsServiceImpl.java

@@ -18,16 +18,46 @@ import com.uas.platform.b2c.core.constant.ShortConstant;
 import com.uas.platform.b2c.core.constant.SplitChar;
 import com.uas.platform.b2c.core.constant.Status;
 import com.uas.platform.b2c.core.support.SystemSession;
-import com.uas.platform.b2c.core.utils.*;
+import com.uas.platform.b2c.core.utils.DoubleArith;
+import com.uas.platform.b2c.core.utils.FastjsonUtils;
+import com.uas.platform.b2c.core.utils.NumberUtil;
+import com.uas.platform.b2c.core.utils.RegexConstant;
+import com.uas.platform.b2c.core.utils.StringUtilB2C;
 import com.uas.platform.b2c.external.erp.commodity.util.ModelConverter;
 import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
 import com.uas.platform.b2c.prod.commodity.constant.IntegerConstant;
 import com.uas.platform.b2c.prod.commodity.constant.StringConstant;
 import com.uas.platform.b2c.prod.commodity.constant.UploadConstant;
-import com.uas.platform.b2c.prod.commodity.dao.*;
-import com.uas.platform.b2c.prod.commodity.model.*;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsHistoryDao;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsModifyInfoDao;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsSimpleDao;
+import com.uas.platform.b2c.prod.commodity.dao.PCBDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductDetailDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductPrivateDao;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.GoodsFilter;
+import com.uas.platform.b2c.prod.commodity.model.GoodsHistory;
 import com.uas.platform.b2c.prod.commodity.model.GoodsHistory.OperateType;
-import com.uas.platform.b2c.prod.commodity.service.*;
+import com.uas.platform.b2c.prod.commodity.model.GoodsInfo;
+import com.uas.platform.b2c.prod.commodity.model.GoodsModifyInfo;
+import com.uas.platform.b2c.prod.commodity.model.GoodsPriceInfo;
+import com.uas.platform.b2c.prod.commodity.model.GoodsQtyPrice;
+import com.uas.platform.b2c.prod.commodity.model.GoodsSimple;
+import com.uas.platform.b2c.prod.commodity.model.ModifyInfo;
+import com.uas.platform.b2c.prod.commodity.model.Product;
+import com.uas.platform.b2c.prod.commodity.model.ProductAttachSubmit;
+import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
+import com.uas.platform.b2c.prod.commodity.model.ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.service.GoodsHistoryService;
+import com.uas.platform.b2c.prod.commodity.service.GoodsPriceInfoService;
+import com.uas.platform.b2c.prod.commodity.service.GoodsService;
+import com.uas.platform.b2c.prod.commodity.service.ProductAttachService;
+import com.uas.platform.b2c.prod.commodity.service.ProductPrivateService;
+import com.uas.platform.b2c.prod.commodity.service.ProductService;
+import com.uas.platform.b2c.prod.commodity.service.V_ProductPrivateService;
 import com.uas.platform.b2c.prod.commodity.status.ModifyInfoStatus;
 import com.uas.platform.b2c.prod.commodity.type.ModifyConstant;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
@@ -66,7 +96,11 @@ import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.b2c.trade.util.BoundedExecutor;
 import com.uas.platform.core.exception.IllegalOperatorException;
-import com.uas.platform.core.model.*;
+import com.uas.platform.core.model.Constant;
+import com.uas.platform.core.model.EncodingRulesConstant;
+import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.model.PageParams;
+import com.uas.platform.core.model.Type;
 import com.uas.platform.core.persistence.criteria.CriterionExpression;
 import com.uas.platform.core.persistence.criteria.CriterionExpression.Operator;
 import com.uas.platform.core.persistence.criteria.LogicalExpression;
@@ -110,7 +144,17 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.Collections;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.regex.Matcher;

+ 7 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/InOutboundDetailServiceImpl.java

@@ -3,15 +3,20 @@ package com.uas.platform.b2c.prod.commodity.service.impl;
 import com.uas.platform.b2c.core.utils.NumberUtil;
 import com.uas.platform.b2c.logistics.model.InvoiceDetail;
 import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
-import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
 import com.uas.platform.b2c.prod.commodity.dao.InOutboundDetailDao;
+import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
 import com.uas.platform.b2c.prod.commodity.service.InOutboundDetailService;
 import com.uas.platform.b2c.prod.commodity.type.InOutBoundType;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * description

+ 53 - 5
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java

@@ -13,7 +13,11 @@ import com.uas.platform.b2c.common.base.dao.CommonDao;
 import com.uas.platform.b2c.common.search.rpc.service.SearchService;
 import com.uas.platform.b2c.common.search.util.SPage;
 import com.uas.platform.b2c.core.config.SysConf;
-import com.uas.platform.b2c.core.constant.*;
+import com.uas.platform.b2c.core.constant.IntegerConstant;
+import com.uas.platform.b2c.core.constant.ReleaseStatus;
+import com.uas.platform.b2c.core.constant.ShortConstant;
+import com.uas.platform.b2c.core.constant.SplitChar;
+import com.uas.platform.b2c.core.constant.Status;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.core.utils.NumberUtil;
@@ -21,9 +25,44 @@ import com.uas.platform.b2c.core.utils.StringUtilB2C;
 import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
 import com.uas.platform.b2c.prod.commodity.constant.PublicProductUrl;
 import com.uas.platform.b2c.prod.commodity.constant.StringConstant;
-import com.uas.platform.b2c.prod.commodity.dao.*;
-import com.uas.platform.b2c.prod.commodity.model.*;
-import com.uas.platform.b2c.prod.commodity.service.*;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsHistoryDao;
+import com.uas.platform.b2c.prod.commodity.dao.MatchModelDao;
+import com.uas.platform.b2c.prod.commodity.dao.PCBDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductDetailDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductMatchResultDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductModifyHistoryDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductPersonDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductPrivateDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductReplaceDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductStoreStatusDao;
+import com.uas.platform.b2c.prod.commodity.dao.V_ProductPersonDao;
+import com.uas.platform.b2c.prod.commodity.dao.V_ProductPrivateDao;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.GoodsHistory;
+import com.uas.platform.b2c.prod.commodity.model.GoodsQtyPrice;
+import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
+import com.uas.platform.b2c.prod.commodity.model.MatchModel;
+import com.uas.platform.b2c.prod.commodity.model.Product;
+import com.uas.platform.b2c.prod.commodity.model.ProductAttachSubmit;
+import com.uas.platform.b2c.prod.commodity.model.ProductDetail;
+import com.uas.platform.b2c.prod.commodity.model.ProductMatchResult;
+import com.uas.platform.b2c.prod.commodity.model.ProductPerson;
+import com.uas.platform.b2c.prod.commodity.model.ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.model.ProductReplace;
+import com.uas.platform.b2c.prod.commodity.model.ProductStoreStatus;
+import com.uas.platform.b2c.prod.commodity.model.ReleaseProductByBatch;
+import com.uas.platform.b2c.prod.commodity.model.UASBatchPutOnProperty;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPerson;
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.service.GoodsHistoryService;
+import com.uas.platform.b2c.prod.commodity.service.GoodsService;
+import com.uas.platform.b2c.prod.commodity.service.InOutboundDetailService;
+import com.uas.platform.b2c.prod.commodity.service.ProductAttachService;
+import com.uas.platform.b2c.prod.commodity.service.ProductPrivateService;
+import com.uas.platform.b2c.prod.commodity.service.ProductService;
+import com.uas.platform.b2c.prod.commodity.service.UASBatchPutOnPropertyService;
 import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
 import com.uas.platform.b2c.prod.product.brand.dao.BrandDao;
@@ -90,7 +129,16 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;

+ 94 - 168
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ReleaseProductByBatchServiceImpl.java

@@ -10,10 +10,36 @@ import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.NumberUtil;
 import com.uas.platform.b2c.core.utils.RegexConstant;
 import com.uas.platform.b2c.core.utils.StringUtilB2C;
-import com.uas.platform.b2c.prod.commodity.constant.*;
-import com.uas.platform.b2c.prod.commodity.dao.*;
-import com.uas.platform.b2c.prod.commodity.model.*;
-import com.uas.platform.b2c.prod.commodity.service.*;
+import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
+import com.uas.platform.b2c.prod.commodity.constant.ErrorInfoConstant;
+import com.uas.platform.b2c.prod.commodity.constant.ModifyConstant;
+import com.uas.platform.b2c.prod.commodity.constant.ShortConstant;
+import com.uas.platform.b2c.prod.commodity.constant.StringConstant;
+import com.uas.platform.b2c.prod.commodity.constant.UploadConstant;
+import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
+import com.uas.platform.b2c.prod.commodity.dao.PCBDao;
+import com.uas.platform.b2c.prod.commodity.dao.PcbPropertyvalueDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductDao;
+import com.uas.platform.b2c.prod.commodity.dao.ProductPersonDao;
+import com.uas.platform.b2c.prod.commodity.dao.ReleaseProductByBatchDao;
+import com.uas.platform.b2c.prod.commodity.model.CommodityInOutbound;
+import com.uas.platform.b2c.prod.commodity.model.Goods;
+import com.uas.platform.b2c.prod.commodity.model.GoodsHistory;
+import com.uas.platform.b2c.prod.commodity.model.GoodsQtyPrice;
+import com.uas.platform.b2c.prod.commodity.model.InOutboundDetail;
+import com.uas.platform.b2c.prod.commodity.model.PCB;
+import com.uas.platform.b2c.prod.commodity.model.PCBPropertyValue;
+import com.uas.platform.b2c.prod.commodity.model.Product;
+import com.uas.platform.b2c.prod.commodity.model.ProductPerson;
+import com.uas.platform.b2c.prod.commodity.model.ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.model.ReleaseProductByBatch;
+import com.uas.platform.b2c.prod.commodity.service.CommodityInOutboundService;
+import com.uas.platform.b2c.prod.commodity.service.GoodsHistoryService;
+import com.uas.platform.b2c.prod.commodity.service.GoodsService;
+import com.uas.platform.b2c.prod.commodity.service.InOutboundDetailService;
+import com.uas.platform.b2c.prod.commodity.service.ProductPrivateService;
+import com.uas.platform.b2c.prod.commodity.service.ProductService;
+import com.uas.platform.b2c.prod.commodity.service.ReleaseProductByBatchService;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
 import com.uas.platform.b2c.prod.commodity.util.SheetUtil;
 import com.uas.platform.b2c.prod.product.brand.dao.BrandInfoDao;
@@ -38,10 +64,13 @@ import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.platform.core.persistence.criteria.SimpleExpression;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.collections.map.HashedMap;
-import org.apache.log4j.Logger;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFDateUtil;
-import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.DateUtil;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.dao.DataAccessException;
@@ -68,7 +97,16 @@ import java.sql.SQLException;
 import java.sql.Statement;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.regex.Matcher;
@@ -109,9 +147,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	@Autowired
 	private RestTemplate restTemplate;
 
-	@Autowired
-	private ProductPrivateDao productPrivateDao;
-
     @Autowired
     private ProductPersonDao productPersonDao;
 
@@ -127,9 +162,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	@Autowired
 	private PcbPropertyvalueDao pcbPropertyvalueDao;
 
-	@Autowired
-	private V_ProductPrivateDao v_productPrivateDao;
-
 	@Autowired
 	private  ProductService productService;
 
@@ -145,9 +177,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	@Autowired
 	private InOutboundDetailService inOutboundDetailService;
 
-
-	private final Logger logger = Logger.getLogger(getClass());
-
 	/**
 	 * 控制任务提交速度的线程池
 	 */
@@ -286,38 +315,52 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		} else {
 			strCount = productReleaseValid(enUU, batch);
 		}
-		Integer filter = 0, failure = 0, success = 0;
 		if (!StringUtilB2C.isEmpty(strCount)) {
-			String[] split = strCount.split(SplitChar.HYPHEN);
-            if (split.length == 3) {
-                filter = Integer.valueOf(split[0]);
-                failure = Integer.valueOf(split[1]);
-                success = Integer.valueOf(split[2]);
-            } else {
-                //上面的代码只能在正式上获取到返回值,为了在测试上执行,增加获取结果的代码
-                Long userUU = SystemSession.getUser().getUserUU();
-                filter = releaseProductByBatchDao.getCountOfImportFail(userUU, batch, failCode);
-                failure = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.failure.value());
-                success = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.success.value());
-            }
+			checkReleaseCount(modelMap, strCount, batch);
 		}
 		if (!isAPerson && !isPcb) {
 			String publish = publishByBatch(batch, isPcb, ignoreImport);
 			modelMap.put("publish", publish);
 		}
 		modelMap.put("total", total);
-		modelMap.put("success", success);
-		modelMap.put("failure", failure);
-		modelMap.put("filter", filter);
 		modelMap.put("batch", batch);
 		return modelMap;
 	}
 
+    /**
+     * 统计批量上传数据相关
+     *
+     * @param modelMap ModelMap
+     * @param strCount
+     * @param batch
+     */
+    @Override
+    public void checkReleaseCount(ModelMap modelMap, String strCount, String batch) {
+        Integer filter, failure, success;
+        String[] split = strCount.split(SplitChar.HYPHEN);
+        int splitIndex = 3;
+        if (split.length == splitIndex) {
+            filter = Integer.valueOf(split[0]);
+            failure = Integer.valueOf(split[1]);
+            success = Integer.valueOf(split[2]);
+        } else {
+            //上面的代码只能在正式上获取到返回值,为了在测试上执行,增加获取结果的代码
+            Long userUU = SystemSession.getUser().getUserUU();
+            filter = releaseProductByBatchDao.getCountOfImportFail(userUU, batch, failCode);
+            failure = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.failure.value());
+            success = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.success.value());
+        }
+        modelMap.put("success", success);
+        modelMap.put("failure", failure);
+        modelMap.put("filter", filter);
+    }
+
 	/**
 	 * 判断是存在相同的信息
 	 * @param releaseProductByBatchs
 	 */
-	private void judgeSameReleaseProductByBatch(List<ReleaseProductByBatch> releaseProductByBatchs) {
+	@Override
+	public void judgeSameReleaseProductByBatch(List<ReleaseProductByBatch> releaseProductByBatchs) {
 		if (CollectionUtils.isEmpty(releaseProductByBatchs)) {
 			return ;
 		}
@@ -339,7 +382,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		}
 	}
 
-
 	/**
 	 * 根据上传的信息,查看是否在个人物料库已存在。
 	 * @param releaseProductByBatchs
@@ -380,7 +422,8 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	 * @param batch 批次
 	 * @return 验证结果
 	 */
-	private String productReleaseValid(Long enUU, String batch) {
+	@Override
+	public String productReleaseValid(Long enUU, String batch) {
         if (enUU == null || StringUtilB2C.isEmpty(batch)) {
             return "0";
         }
@@ -857,21 +900,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		}
 	}
 
-	/**
-	 * 验证该产品自定义标签是否重复
-	 * @param aProduct 单个产品
-	 * @param productSet 产品列表
-	 */
-	private Boolean validateTagInfo(ReleaseProductByBatch aProduct, List<ReleaseProductByBatch> productSet) {
-		for (ReleaseProductByBatch each : productSet) {
-			if (aProduct.getBrandNameEn().equals(each.getBrandNameEn()) && aProduct.getCode().equals(each.getCode())
-					&& aProduct.getTag().equals(each.getTag())) {
-				return true;
-			}
-		}
-		return false;
-	}
-
 	/**
 	 *	验证该模板是否是商城模板
 	 * @param headerRow 首行
@@ -879,7 +907,8 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	 * @param currency	币别
 	 * @param isPcb 是否pcb模块
 	 */
-	private void validateTemplate(Row headerRow, int colNum, String currency, boolean isAPerson, boolean isPcb) {
+	@Override
+	public void validateTemplate(Row headerRow, int colNum, String currency, boolean isAPerson, boolean isPcb) {
 		if (isAPerson) {
 			if (colNum == UploadConstant.MAX_TOTAL_COLUMN_PERSON) {
 				Cell errorCell = headerRow.getCell(UploadConstant.MAX_TOTAL_COLUMN_PERSON - 1);
@@ -939,11 +968,17 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	 * @param rowNum 行号
 	 * @return
 	 */
-	private boolean validateExcelData(Row row, int rowNum) {
+	@Override
+	public boolean validateExcelData(Row row, int rowNum) {
 		Object codeValue = readWorkBookCell(row.getCell(UploadConstant.PRODUCT_CODE), Cell.CELL_TYPE_STRING,
 				rowNum, UploadConstant.PRODUCT_CODE);
-		if ("只能填数字、英文、英文特殊符号".equals(StringUtilB2C.getStr(codeValue)) || "SJ-S-112DMH(举例)".equals(StringUtilB2C.getStr(codeValue)))
-			return false;
+		// 内容格式提示
+		String formatTip = "只能填数字、英文、英文特殊符号";
+		// 举例提示
+		String exampleTip = "SJ-S-112DMH(举例)";
+		if (formatTip.equals(StringUtilB2C.getStr(codeValue)) || exampleTip.equals(StringUtilB2C.getStr(codeValue))) {
+            return false;
+        }
 		return true;
 	}
 
@@ -982,52 +1017,13 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		}
 	}
 
-	/**
-	 * 分析分段的价格
- 	 */
-	private List<GoodsQtyPrice> setPricesQty(List<GoodsQtyPrice> prices, ReleaseProductByBatch productByBatch) {
-		GoodsQtyPrice[] array = new GoodsQtyPrice[prices.size()];
-		prices.toArray(array);
-		Arrays.sort(array, new Comparator<GoodsQtyPrice>() {
-			@Override
-			public int compare(GoodsQtyPrice o1, GoodsQtyPrice o2) {
-				return NumberUtil.compare(o1.getEnd(), o2.getEnd());
-			}
-		});
-		List<GoodsQtyPrice> prices1 = Arrays.asList(array);
-		List<GoodsQtyPrice> prices2 = new ArrayList<>();
-		for (int j = 0; j < prices1.size(); j++) {
-			GoodsQtyPrice price = prices1.get(j);
-			if (j == 0) {
-				if(NumberUtil.compare(price.getEnd(), DoubleConstant.minReserve) > -1) {
-					price.setStart(DoubleConstant.minReserve);
-					prices2.add(price);
-				}
-			} else if (j < prices1.size() - 1) {
-				GoodsQtyPrice qtyPrice = prices1.get(j - 1);
-				if(NumberUtil.compare(qtyPrice.getEnd(), price.getEnd()) < 0 ) {
-					price.setStart(NumberUtil.add(qtyPrice.getEnd(), 1.0d));
-					prices2.add(price);
-				}
-			} else if (j == prices1.size() - 1) {
-				price.setEnd(DoubleConstant.maxMinPackageQty);
-				if (prices1.size() == 1) {
-					price.setStart(DoubleConstant.minReserve);
-				} else {
-					price.setStart(NumberUtil.add(prices1.get(j - 1).getEnd(), 1.0d));
-				}
-				prices2.add(price);
-			}
-		}
-		return prices2;
-	}
-
 	/**
 	 * 获取店铺的信息
 	 * @param selfSale
 	 * @return
 	 */
-	private StoreIn getStoreInfo(Boolean selfSale) {
+	@Override
+	public StoreIn getStoreInfo(Boolean selfSale) {
 		StoreIn storeIn = null;
 		if(selfSale) {
 			storeIn = storeInService.findByEnUU(SystemSession.getUser().getEnterprise().getUu());
@@ -1046,7 +1042,7 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	 * @return
 	 */
 	private StoreIn getStoreIn(Boolean selfSale) {
-		StoreIn storeIn = null;
+		StoreIn storeIn;
 		if (selfSale) {
 			storeIn = storeInService.findByEnUU(SystemSession.getUser().getEnterprise().getUu());
 			if((storeIn == null) || (storeIn.getStatus() != StoreStatus.OPENED)) {
@@ -1116,41 +1112,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		}
 	}
 
-	/**
-	 * 当分段价格为空时,设置默认分段价格
-	 * 其中分段1价格为必填项,这个是否还需要
-	 *
-	 * @param aProduct 单行数据
-	 * @param priceMaxMinPrice 最大和最小价格
-	 * @return
-	 */
-	private GoodsQtyPrice getDefaultQtyPrice(ReleaseProductByBatch aProduct, Double[] priceMaxMinPrice) {
-		GoodsQtyPrice qtyPrice = new GoodsQtyPrice();
-		qtyPrice.setStart(aProduct.getMinBuyQty());
-		if (Currency.USD.equals(aProduct.getCurrency())) {
-			Double usdMinPackPrice = aProduct.getUsdMinPackPrice();
-			if (usdMinPackPrice != null) {
-				qtyPrice.setUSDPrice(usdMinPackPrice);
-				qtyPrice.setUSDNTPrice(usdMinPackPrice);
-				priceMaxMinPrice[0] = usdMinPackPrice;
-				priceMaxMinPrice[1] = usdMinPackPrice;
-			}
-
-		} else {
-			Double rmbMinPackPrice = aProduct.getRmbMinPackPrice();
-			if (rmbMinPackPrice != null) {
-				qtyPrice.setRMBPrice(rmbMinPackPrice);
-				BigDecimal priceNum = new BigDecimal(rmbMinPackPrice);
-				BigDecimal taxNum = new BigDecimal(aProduct.getRmbTaxRate() + 1);
-				qtyPrice.setRMBNTPrice(priceNum.divide(taxNum, 6, BigDecimal.ROUND_HALF_UP).doubleValue());
-				priceMaxMinPrice[0] = rmbMinPackPrice;
-				priceMaxMinPrice[1] = rmbMinPackPrice;
-			}
-		}
-		qtyPrice.setEnd(DoubleConstant.maxMinPackageQty);
-		return qtyPrice;
-	}
-
 	/**
 	 * 初始化product信息,将excel内容转换为product字段值
 	 * @param row 行对象
@@ -1158,7 +1119,8 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 	 * @param rowNum 行数
 	 * @param isPcb 是否pcb模块
 	 */
-	private int convertValueToProduct(Row row, ReleaseProductByBatch aProduct, int rowNum, boolean isAPerson, boolean isPcb) {
+	@Override
+	public int convertValueToProduct(Row row, ReleaseProductByBatch aProduct, int rowNum, boolean isAPerson, boolean isPcb) {
 		// 统计为空的个数
 		int result = 0;
 		aProduct.setNum(rowNum - 2);
@@ -1266,10 +1228,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 			aProduct.setMinBuyQtyByExcel(buyQtyValue);
 
 			aProduct.setTagByExcel("");
-//			// 自定义标签不为null,则检查是否重复
-//			if (aProduct.getCode() != null && aProduct.getBrandNameEn() != null && aProduct.getTag() != null) {
-//				resetTag(aProduct);
-//			}
 
 			// 如果是pcb模块,解析尺寸、颜色、铜厚、厚度
 			if (isPcb) {
@@ -1298,38 +1256,6 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		return result;
 	}
 
-	/**
-	 * 重新设置tag标签
-	 * @param aProduct
-	 */
-	private void resetTag(ReleaseProductByBatch aProduct) {
-		Long enuu = SystemSession.getUser().getEnterprise().getUu();
-		int count = 0;
-		List<Product> productList = productDao.findMatchStandard(enuu, aProduct.getBrandNameEn(), aProduct.getCode(), IntegerConstant.YES_SHORT);
-		if (!CollectionUtils.isEmpty(productList)) {
-			if (aProduct.getBatchCode() != null) {
-				count = goodsDao.findCountByTagNotBatch(enuu, aProduct.getBatchCode(), productList.get(0).getPbranden(),
-						productList.get(0).getPcmpcode(), aProduct.getTag());
-			} else {
-				count = goodsDao.findCountByTagInGoods(enuu, productList.get(0).getPbranden(),
-						productList.get(0).getPcmpcode(), aProduct.getTag());
-			}
-
-		} else {
-			if (aProduct.getBatchCode() != null) {
-				count = goodsDao.findCountByTagNotBatch(enuu, aProduct.getBatchCode(), aProduct.getBrandNameEn(),
-						aProduct.getCode(), aProduct.getTag());
-			} else {
-				count = goodsDao.findCountByTagInGoods(enuu, aProduct.getBrandNameEn(),
-						aProduct.getCode(), aProduct.getTag());
-			}
-		}
-		// 如果在该型号品牌已有重复,则忽略该自定义标签
-		if (count != 0) {
-			aProduct.setTag(null);
-		}
-	}
-
 	/**
 	 * 初始化产品导入分段价格
 	 * @param row 行对象

+ 8 - 1
src/main/java/com/uas/platform/b2c/prod/store/model/StoreApply.java

@@ -6,7 +6,14 @@ import com.uas.platform.b2c.core.utils.JacksonUtils;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.persistence.Transient;
 import java.util.Collections;
 import java.util.Date;
 import java.util.List;

+ 7 - 1
src/main/java/com/uas/platform/b2c/prod/store/service/impl/StoreApplyServiceImpl.java

@@ -7,7 +7,13 @@ import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.UuidUtils;
 import com.uas.platform.b2c.prod.store.dao.StoreApplyDao;
 import com.uas.platform.b2c.prod.store.dao.StoreBrandInfoDao;
-import com.uas.platform.b2c.prod.store.model.*;
+import com.uas.platform.b2c.prod.store.model.EnterpriseSimple;
+import com.uas.platform.b2c.prod.store.model.Qualification;
+import com.uas.platform.b2c.prod.store.model.QualificationType;
+import com.uas.platform.b2c.prod.store.model.StoreApply;
+import com.uas.platform.b2c.prod.store.model.StoreBrandInfo;
+import com.uas.platform.b2c.prod.store.model.StoreIn;
+import com.uas.platform.b2c.prod.store.model.StoreType;
 import com.uas.platform.b2c.prod.store.service.StoreApplyService;
 import com.uas.platform.b2c.prod.store.service.StoreInService;
 import com.uas.platform.b2c.trade.support.CodeType;

+ 18 - 2
src/main/java/com/uas/platform/b2c/prod/store/service/impl/StoreInServiceImpl.java

@@ -26,7 +26,13 @@ import com.uas.platform.b2c.prod.store.dao.StoreApplyDao;
 import com.uas.platform.b2c.prod.store.dao.StoreBrandInfoDao;
 import com.uas.platform.b2c.prod.store.dao.StoreInDao;
 import com.uas.platform.b2c.prod.store.exception.EmptyParameterException;
-import com.uas.platform.b2c.prod.store.model.*;
+import com.uas.platform.b2c.prod.store.model.EnterpriseSimple;
+import com.uas.platform.b2c.prod.store.model.Qualification;
+import com.uas.platform.b2c.prod.store.model.StoreApply;
+import com.uas.platform.b2c.prod.store.model.StoreBrandInfo;
+import com.uas.platform.b2c.prod.store.model.StoreIn;
+import com.uas.platform.b2c.prod.store.model.StoreStatus;
+import com.uas.platform.b2c.prod.store.model.StoreType;
 import com.uas.platform.b2c.prod.store.service.StoreInService;
 import com.uas.platform.b2c.trade.order.dao.PurchaseDao;
 import com.uas.platform.b2c.trade.support.ResultMap;
@@ -58,7 +64,17 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import javax.servlet.http.HttpServletRequest;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
 
 /**
  * 店铺业务实现类

+ 12 - 2
src/main/java/com/uas/platform/b2c/trade/order/controller/OrderController.java

@@ -30,14 +30,24 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+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.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
 
 import javax.management.OperationsException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 import static com.uas.platform.b2c.core.utils.StringUtilB2C.decodeValue;
 

+ 2 - 2
src/main/java/com/uas/platform/b2c/trade/order/controller/PurchaseProductController.java

@@ -50,6 +50,7 @@ public class PurchaseProductController {
     @RequestMapping(value = "/personal/release/excel", method = RequestMethod.POST)
     public ResultMap releasePersonalProductByExcel(FileUpload uploadItem, @RequestParam("selfSale") Boolean selfSale, String currency, Integer ignoreImport) {
         String fileName = uploadItem.getFile().getOriginalFilename();
+        // 获取EXCEL后缀格式
         String suffix = fileName.substring(fileName.lastIndexOf(".") + 1);
         InputStream inputStream;
         Workbook workbook;
@@ -67,8 +68,7 @@ public class PurchaseProductController {
             LOGGER.log("买家物料", "通过Excel批量上传个人物料");
             return resultMap;
         } catch (IOException e) {
-            e.printStackTrace();
+            return ResultMap.error(e);
         }
-        return ResultMap.success();
     }
 }

+ 20 - 3
src/main/java/com/uas/platform/b2c/trade/order/model/Order.java

@@ -14,9 +14,26 @@ import com.uas.platform.core.model.EncodingRulesConstant;
 import com.uas.platform.core.persistence.StatusColumn;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
-import java.util.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
 
 /**
  * 订单

+ 1 - 1
src/main/java/com/uas/platform/b2c/trade/order/model/OrderDetail.java

@@ -24,7 +24,7 @@ import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
 import javax.persistence.Transient;
-import java.io.Serializable;
+import java.io.*;
 import java.util.Date;
 import java.util.List;
 import java.util.Objects;

+ 1 - 1
src/main/java/com/uas/platform/b2c/trade/order/model/OrderIndex.java

@@ -22,7 +22,7 @@ import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
 import javax.persistence.Transient;
-import java.io.Serializable;
+import java.io.*;
 import java.util.Date;
 import java.util.Set;
 

+ 1 - 1
src/main/java/com/uas/platform/b2c/trade/order/model/OrderSimpleInfo.java

@@ -1,6 +1,6 @@
 package com.uas.platform.b2c.trade.order.model;
 
-import java.io.Serializable;
+import java.io.*;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 

+ 13 - 2
src/main/java/com/uas/platform/b2c/trade/order/model/Purchase.java

@@ -10,8 +10,19 @@ import org.hibernate.annotations.Cache;
 import org.hibernate.annotations.CacheConcurrencyStrategy;
 import org.springframework.util.StringUtils;
 
-import javax.persistence.*;
-import java.io.Serializable;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+import javax.persistence.OrderBy;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.*;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.Set;

+ 0 - 2
src/main/java/com/uas/platform/b2c/trade/order/service/OrderService.java

@@ -17,8 +17,6 @@ import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
 
 import java.util.Date;
 import java.util.List;

+ 9 - 2
src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderDetailServiceImpl.java

@@ -18,7 +18,10 @@ import com.uas.platform.b2c.trade.order.StringConstant.Currency;
 import com.uas.platform.b2c.trade.order.dao.OrderDao;
 import com.uas.platform.b2c.trade.order.dao.OrderDetailDao;
 import com.uas.platform.b2c.trade.order.dao.PurchaseDetailDao;
-import com.uas.platform.b2c.trade.order.model.*;
+import com.uas.platform.b2c.trade.order.model.Order;
+import com.uas.platform.b2c.trade.order.model.OrderDetail;
+import com.uas.platform.b2c.trade.order.model.Purchase;
+import com.uas.platform.b2c.trade.order.model.PurchaseDetail;
 import com.uas.platform.b2c.trade.order.service.OrderDetailService;
 import com.uas.platform.b2c.trade.order.service.OrderService;
 import com.uas.platform.b2c.trade.order.type.ResultMapType;
@@ -40,7 +43,11 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
 
 /**
  * 订单明细业务实现类

+ 25 - 4
src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderServiceImpl.java

@@ -40,10 +40,12 @@ import com.uas.platform.b2c.fa.settlement.service.BillSubmitService;
 import com.uas.platform.b2c.fa.settlement.service.ExchangeRateService;
 import com.uas.platform.b2c.logistics.dao.AddressDao;
 import com.uas.platform.b2c.logistics.dao.PickUpAddressDao;
-import com.uas.platform.b2c.logistics.model.*;
+import com.uas.platform.b2c.logistics.model.Address;
+import com.uas.platform.b2c.logistics.model.Invoice;
+import com.uas.platform.b2c.logistics.model.PickUpAddress;
+import com.uas.platform.b2c.logistics.service.InvoiceService;
 import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
 import com.uas.platform.b2c.prod.commodity.constant.StringConstant;
-import com.uas.platform.b2c.logistics.service.InvoiceService;
 import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
 import com.uas.platform.b2c.prod.commodity.dao.GoodsHistoryDao;
 import com.uas.platform.b2c.prod.commodity.model.Goods;
@@ -67,7 +69,15 @@ import com.uas.platform.b2c.trade.order.dao.OrderDao;
 import com.uas.platform.b2c.trade.order.dao.OrderDetailDao;
 import com.uas.platform.b2c.trade.order.dao.OrderIndexDetailDao;
 import com.uas.platform.b2c.trade.order.dao.PurchaseDao;
-import com.uas.platform.b2c.trade.order.model.*;
+import com.uas.platform.b2c.trade.order.model.MessageNotifyPersonalManagement;
+import com.uas.platform.b2c.trade.order.model.Order;
+import com.uas.platform.b2c.trade.order.model.OrderDetail;
+import com.uas.platform.b2c.trade.order.model.OrderIndex;
+import com.uas.platform.b2c.trade.order.model.OrderIndexDetail;
+import com.uas.platform.b2c.trade.order.model.OrderSimpleInfo;
+import com.uas.platform.b2c.trade.order.model.Purchase;
+import com.uas.platform.b2c.trade.order.model.PurchaseDetail;
+import com.uas.platform.b2c.trade.order.model.TradeProofing;
 import com.uas.platform.b2c.trade.order.service.MessageNotifyPersonalManagementService;
 import com.uas.platform.b2c.trade.order.service.OrderDetailService;
 import com.uas.platform.b2c.trade.order.service.OrderService;
@@ -116,7 +126,18 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 

+ 141 - 60
src/main/java/com/uas/platform/b2c/trade/order/service/impl/PurchaseProductServiceImpl.java

@@ -1,7 +1,7 @@
 package com.uas.platform.b2c.trade.order.service.impl;
 
-import com.uas.platform.b2c.common.base.dao.CommonDao;
-import com.uas.platform.b2c.core.constant.ReleaseStatus;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.StringUtilB2C;
 import com.uas.platform.b2c.prod.commodity.constant.UploadConstant;
@@ -13,20 +13,21 @@ import com.uas.platform.b2c.prod.product.common.service.CreateNumberService;
 import com.uas.platform.b2c.trade.order.service.PurchaseProductService;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.exception.IllegalOperatorException;
+import com.uas.platform.core.util.HttpUtil;
+import com.uas.platform.core.util.serializer.FlexJsonUtils;
+import com.uas.ps.entity.Product;
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.dao.DataAccessException;
-import org.springframework.jdbc.core.StatementCallback;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.ui.ModelMap;
+import org.springframework.util.StringUtils;
 
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
 import java.util.ArrayList;
-import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -44,14 +45,29 @@ public class PurchaseProductServiceImpl implements PurchaseProductService {
     @Autowired
     private CreateNumberService createNumberService;
 
-    @Autowired
-    private CommonDao commonDao;
-
     @Autowired
     private ReleaseProductByBatchDao releaseProductByBatchDao;
 
-    private final static List<Integer> failCode = Arrays.asList(ReleaseStatus.lack_info.value(),
-            ReleaseStatus.had_exists.value());
+    /**
+     * 物料服务访问路径
+     */
+    @Value("#{sys.productServiceIp}")
+    private String productServiceIp;
+
+    /**
+     * HTTP请求成功标志
+     */
+    static final String TRUE_SIGN = "true";
+
+    /**
+     * HTTP请求成功返回值
+     */
+    static final String SUCCESS_CODE = "success";
+
+    /**
+     * 程序执行日志
+     */
+    private static final org.apache.log4j.Logger LOGGER = org.apache.log4j.Logger.getLogger(PurchaseProductServiceImpl.class);
 
     /**
      * 通过excel批量导入个人物料
@@ -71,31 +87,33 @@ public class PurchaseProductServiceImpl implements PurchaseProductService {
             return ResultMap.error(new IllegalOperatorException("表格模板不正确!请重新下载最新模板"));
         }
         int rowNum = SheetUtil.getSheetLastNum(sheet, UploadConstant.MAX_TOTAL_COLUMN);
+        // 表头占用行数
+        int minExcelNumber = 2;
+        if (rowNum < minExcelNumber) {
+            return ResultMap.error(new IllegalOperatorException("请填写上传信息"));
+        }
         // 除去表头格式,最多上传2000条数据
         int maxExcelNumber = 2002;
-        // 用户填写数据计数
-        int minExcelNumber = 2;
         // 先判断表格内容
         if (rowNum > maxExcelNumber) {
             return ResultMap.error(new IllegalOperatorException("您上传的信息超过2000条,请拆分成2000以下再上传"));
         }
-        if (rowNum < minExcelNumber) {
-            return ResultMap.error(new IllegalOperatorException("请填写上传信息"));
-        }
         List<ReleaseProductByBatch> releaseProductByBatchArrayList = new ArrayList<>(rowNum);
-        String batch = createNumberService.getTimeNumber("product$goods", 8, rowNum);
         Row headerRow = sheet.getRow(0);
-        int total = 0;
-        int colNum = sheet.getRow(0).getPhysicalNumberOfCells();
-        // 为空的个数
-        int blankNum;
-        // 非个人用户
-        boolean isAPerson = false;
-        // 非Pcb商品
-        boolean isPcb = false;
         if (null != headerRow) {
+            int colNum = sheet.getRow(0).getPhysicalNumberOfCells();
+            // 非个人用户
+            boolean isAPerson = false;
+            // 非Pcb商品
+            boolean isPcb = false;
             // 验证模板是否为商城模板
             releaseProductByBatchService.validateTemplate(headerRow, colNum, currency, isAPerson, isPcb);
+            // 去重后的数据
+            List<ReleaseProductByBatch> uniqueBatchList = new ArrayList<>();
+            // 为空的个数
+            int blankNum;
+            // 本次上传总数
+            int total = 0;
             for (int r = minExcelNumber; r <= rowNum; r++) {
                 Row row = sheet.getRow(r);
                 // 英文品牌名称
@@ -108,55 +126,118 @@ public class PurchaseProductServiceImpl implements PurchaseProductService {
                     // 将excel内容对应到ReleaseProductByBatch的字段当中
                     blankNum = releaseProductByBatchService.convertValueToProduct(row, releaseProductByBatch, r, isAPerson, isPcb);
                     if (blankNum != 4) {
+                        // 验证表格中数据是否重复,重复的取第一条数据
+                        ReleaseProductByBatch uniquerProduct = validateRepeatInExcel(releaseProductByBatchArrayList, releaseProductByBatch);
+                        if (null != uniquerProduct) {
+                            uniqueBatchList.add(uniquerProduct);
+                        }
                         total++;
                         releaseProductByBatchArrayList.add(releaseProductByBatch);
                     }
                 }
             }
+            //1:比较品牌、型号、自定义标签是否重复,2:比较六要素是否重复
+            releaseProductByBatchService.judgeSameReleaseProductByBatch(releaseProductByBatchArrayList);
+            // 保存临时表信息
+            releaseProductByBatchDao.save(releaseProductByBatchArrayList);
+            // 批号
+            String batch = createNumberService.getTimeNumber("product$goods", 8, rowNum);
+            Long enUU = SystemSession.getUser().getEnterprise().getUu();
+            // 验证数据信息是否重复
+            releaseProductByBatchDao.callReleaseExistValidProcedure(batch, enUU);
+            ModelMap modelMap = new ModelMap();
+            // 处理上传数据
+            assignmentProductInfo(enUU, modelMap, batch);
+            // 验证成功后进行绑定处理
+            Integer assignNumber = assignBatch(uniqueBatchList);
+            modelMap.put("assignNumber", assignNumber);
+            modelMap.put("failure", total - assignNumber);
+            modelMap.put("total", total);
+            modelMap.put("batch", batch);
+            return ResultMap.success(modelMap);
+        }
+        return ResultMap.success();
+    }
+
+    /**
+     * 将去重的数据批量绑定到个人物料库
+     *
+     * @param uniqueBatchList 去重后的物料信息
+     * @return 保存成功的数量
+     */
+    private Integer assignBatch(List<ReleaseProductByBatch> uniqueBatchList) {
+        List<Product> productList = covert(uniqueBatchList);
+        try {
+            String res = HttpUtil.doPost(productServiceIp + "/product/update/addToProductUser", FlexJsonUtils.toJsonDeep(productList));
+            JSONObject response = JSON.parseObject(res);
+            if (TRUE_SIGN.equals(response.get(SUCCESS_CODE))) {
+                return Integer.valueOf(response.get("result").toString());
+            }
+        } catch (Exception e) {
+            LOGGER.info("访问接口失败", e);
         }
-        Long enUU = SystemSession.getUser().getEnterprise().getUu();
-        //1:比较品牌、型号、自定义标签是否重复,2:比较六要素是否重复
-        releaseProductByBatchService.checkReleaseProductByBatch(releaseProductByBatchArrayList);
-        // 保存临时表信息
-        commonDao.save(releaseProductByBatchArrayList, ReleaseProductByBatch.class);
-        // 验证数据信息是否重复
-        releaseProductByBatchDao.callReleaseExistValidProcedure(batch, isAPerson, enUU);
-        final Object[] obj = new Object[]{enUU, batch};
-        String sql = "/*#mycat:db_type=master*/ set @enuu = %s; set @batch = '%s'; call PRODUCT_RELEASE_VALID_V5(@enuu, @batch, @out); select @out";
-        final String updateSql = String.format(sql, obj);
-        ModelMap modelMap = new ModelMap();
-        // 处理上传数据
-        assignmentProductInfo(updateSql, modelMap, batch);
-        modelMap.put("total", total);
-        modelMap.put("batch", batch);
-        return ResultMap.success(modelMap);
+        return 0;
     }
 
     /**
      * 处理验证后的数据
      *
-     * @param updateSql 产品发布验证匹配 调用存储过程 PRODUCT_RELEASE_VALID_V5
      * @param modelMap ModelMap
-     * @param batch
+     * @param enUU 当前企业UU
+     * @param batch 批号
      */
-    private void assignmentProductInfo(String updateSql, ModelMap modelMap, String batch) {
-        String finalStrCount = "0";
-        String strCount = commonDao.getJdbcTemplate().execute(new StatementCallback<String>() {
-
-            @Override
-            public String doInStatement(Statement stmt) throws SQLException, DataAccessException {
-                stmt.executeQuery(updateSql);
-                ResultSet rs = stmt.getResultSet();
-                if (null != rs) {
-                    rs.next();
-                    return rs.getString(1);
-                }
-                return finalStrCount;
-            }
-        });
+    private void assignmentProductInfo(Long enUU, ModelMap modelMap, String batch) {
+        String strCount = releaseProductByBatchService.productReleaseValid(enUU, batch);
         if (!StringUtilB2C.isEmpty(strCount)) {
             // 获取批量上传的相关数据统计
             releaseProductByBatchService.checkReleaseCount(modelMap, strCount, batch);
         }
     }
+
+    /**
+     * 验证Excel中数据是否重复
+     *
+     * @param 	batchList 批量上传的数据
+     * @param 	aBatch 单个数据
+     * @return 判断是否重复的数据
+     */
+    private ReleaseProductByBatch validateRepeatInExcel(List<ReleaseProductByBatch> batchList, ReleaseProductByBatch aBatch) {
+        if (CollectionUtils.isEmpty(batchList) || !StringUtils.isEmpty(aBatch.getErrmsg())) {
+            return null;
+        }
+        for (ReleaseProductByBatch each : batchList) {
+            // 返回符合标准的唯一的物料信息
+            if (StringUtils.isEmpty(each.getErrmsg()) && !each.equals(aBatch)) {
+                return aBatch;
+            }
+        }
+        return null;
+    }
+
+    /**
+     * 将去重的数据转换成Product数据并进行保存处理
+     *
+     * @param uniqueBatchList 上传后去重的数据
+     * @return List<Product>
+     */
+    private List<Product> covert(List<ReleaseProductByBatch> uniqueBatchList) {
+        List<Product> productList = new ArrayList<>();
+        uniqueBatchList.forEach(batch -> {
+            Product product = new Product();
+            product.setSpec(batch.getSpec());
+            product.setBrand(batch.getBrandNameEn() != null ? batch.getBrandNameEn() : batch.getBrandNameCn());
+            product.setUserUU(SystemSession.getUser().getUserUU());
+            product.setCode(batch.getCode());
+            // 交期默认赋值为0
+            Double leadTime = 0D;
+            product.setLeadTime(leadTime);
+            product.setCmpUuid(batch.getComponentUuId());
+            product.setCreateTime(new Date(System.currentTimeMillis()));
+            product.setEnUU(SystemSession.getUser().getEnterprise().getUu());
+            product.setKind(batch.getKindName());
+            product.setUnit(batch.getUnit());
+            productList.add(product);
+        });
+        return productList;
+    }
 }

+ 31 - 5
src/main/java/com/uas/platform/b2c/trade/order/service/impl/PurchaseServiceImpl.java

@@ -25,8 +25,17 @@ import com.uas.platform.b2c.fa.settlement.dao.BillInfoDao;
 import com.uas.platform.b2c.fa.settlement.model.Bill;
 import com.uas.platform.b2c.fa.settlement.model.BillInfo;
 import com.uas.platform.b2c.fa.settlement.service.BillSubmitService;
-import com.uas.platform.b2c.logistics.dao.*;
-import com.uas.platform.b2c.logistics.model.*;
+import com.uas.platform.b2c.logistics.dao.AddressDao;
+import com.uas.platform.b2c.logistics.dao.InvoiceDetailDao;
+import com.uas.platform.b2c.logistics.dao.LogisticsDao;
+import com.uas.platform.b2c.logistics.dao.ReceiptDao;
+import com.uas.platform.b2c.logistics.dao.ReceiptDetailDao;
+import com.uas.platform.b2c.logistics.model.Address;
+import com.uas.platform.b2c.logistics.model.Invoice;
+import com.uas.platform.b2c.logistics.model.InvoiceDetail;
+import com.uas.platform.b2c.logistics.model.Logistics;
+import com.uas.platform.b2c.logistics.model.Receipt;
+import com.uas.platform.b2c.logistics.model.ReceiptDetail;
 import com.uas.platform.b2c.logistics.service.InvoiceService;
 import com.uas.platform.b2c.logistics.service.ReceiptService;
 import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
@@ -39,8 +48,16 @@ import com.uas.platform.b2c.prod.store.dao.StoreApplyDao;
 import com.uas.platform.b2c.prod.store.dao.StoreInDao;
 import com.uas.platform.b2c.prod.store.model.StoreApply;
 import com.uas.platform.b2c.prod.store.model.StoreIn;
-import com.uas.platform.b2c.trade.order.dao.*;
-import com.uas.platform.b2c.trade.order.model.*;
+import com.uas.platform.b2c.trade.order.dao.OrderDao;
+import com.uas.platform.b2c.trade.order.dao.OrderDetailDao;
+import com.uas.platform.b2c.trade.order.dao.PurchaseDao;
+import com.uas.platform.b2c.trade.order.dao.PurchaseDetailDao;
+import com.uas.platform.b2c.trade.order.dao.PurchaseModifyingHistoryDao;
+import com.uas.platform.b2c.trade.order.model.Order;
+import com.uas.platform.b2c.trade.order.model.OrderDetail;
+import com.uas.platform.b2c.trade.order.model.Purchase;
+import com.uas.platform.b2c.trade.order.model.PurchaseDetail;
+import com.uas.platform.b2c.trade.order.model.PurchaseModifyingHistory;
 import com.uas.platform.b2c.trade.order.service.OrderService;
 import com.uas.platform.b2c.trade.order.service.PurchaseDetailService;
 import com.uas.platform.b2c.trade.order.service.PurchaseService;
@@ -73,7 +90,16 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
 
 import static com.uas.platform.b2c.trade.util.Preconditions.checkArgument;
 import static com.uas.platform.b2c.trade.util.Preconditions.checkNotNull;

+ 13 - 1
src/main/java/com/uas/platform/b2c/trade/presale/model/Cart.java

@@ -8,7 +8,19 @@ import com.uas.platform.b2c.prod.store.model.StoreType;
 import com.uas.platform.b2c.trade.presale.status.cartStatus;
 import com.uas.platform.core.model.Status;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Index;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.Transient;
 import java.util.Date;
 
 /**

+ 5 - 3
src/main/java/com/uas/platform/b2c/trade/seek/controller/SeekPurchaseBomController.java

@@ -24,11 +24,13 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
 import java.util.List;
 import java.util.Map;
 

+ 3 - 3
src/main/java/com/uas/platform/b2c/trade/seek/service/SeekPurchaseBomService.java

@@ -6,13 +6,13 @@ import com.uas.platform.b2c.trade.seek.model.SeekPurchaseBomList;
 import com.uas.platform.b2c.trade.seek.model.SeekPurchaseByBatch;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
-
-import java.util.List;
-import java.util.Map;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.data.domain.Page;
 import org.springframework.ui.ModelMap;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * @author liusw
  * @version 2018/1/19 14:54

+ 22 - 4
src/main/java/com/uas/platform/b2c/trade/seek/service/impl/SeekPurchaseBomServiceImpl.java

@@ -12,8 +12,17 @@ import com.uas.platform.b2c.prod.product.brand.dao.BrandDao;
 import com.uas.platform.b2c.prod.product.brand.modal.Brand;
 import com.uas.platform.b2c.prod.product.component.dao.ComponentDao;
 import com.uas.platform.b2c.prod.product.component.modal.Component;
-import com.uas.platform.b2c.trade.seek.dao.*;
-import com.uas.platform.b2c.trade.seek.model.*;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseBomDao;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseBomListDao;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseByBatchDao;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseDao;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseGoodsDao;
+import com.uas.platform.b2c.trade.seek.dao.SeekPurchaseOfferDao;
+import com.uas.platform.b2c.trade.seek.model.PurcInquiry;
+import com.uas.platform.b2c.trade.seek.model.PurcInquiryItem;
+import com.uas.platform.b2c.trade.seek.model.SeekPurchaseBom;
+import com.uas.platform.b2c.trade.seek.model.SeekPurchaseBomList;
+import com.uas.platform.b2c.trade.seek.model.SeekPurchaseByBatch;
 import com.uas.platform.b2c.trade.seek.service.SeekPurchaseBomService;
 import com.uas.platform.b2c.trade.support.CodeType;
 import com.uas.platform.b2c.trade.support.ResultMap;
@@ -47,11 +56,20 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import java.io.UnsupportedEncodingException;
+import java.io.*;
 import java.math.BigDecimal;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;