Просмотр исходного кода

Merge remote-tracking branch 'origin/dev-mysql' into dev-mysql

wangdy 8 лет назад
Родитель
Сommit
d43abf9bc0
37 измененных файлов с 440 добавлено и 141 удалено
  1. 1 23
      pom.xml
  2. 0 3
      src/main/java/com/uas/platform/b2c/advertise/news/service/impl/NewsServiceImpl.java
  3. 9 0
      src/main/java/com/uas/platform/b2c/common/account/service/EnterpriseService.java
  4. 11 0
      src/main/java/com/uas/platform/b2c/common/account/service/impl/EnterpriseServiceImpl.java
  5. 5 5
      src/main/java/com/uas/platform/b2c/common/base/constant/FileClientConstant.java
  6. 8 4
      src/main/java/com/uas/platform/b2c/common/base/service/impl/FileClientImpl.java
  7. 19 19
      src/main/java/com/uas/platform/b2c/common/search/constant/SearchUrl.java
  8. 23 19
      src/main/java/com/uas/platform/b2c/common/search/rpc/service/Impl/SearchServiceImpl.java
  9. 30 0
      src/main/java/com/uas/platform/b2c/core/config/SysConf.java
  10. 1 1
      src/main/java/com/uas/platform/b2c/external/erp/order/api/OrderController.java
  11. 1 1
      src/main/java/com/uas/platform/b2c/fa/settlement/service/impl/BillSubmitServiceImpl.java
  12. 1 1
      src/main/java/com/uas/platform/b2c/logistics/service/impl/LogisticsCompanyCodeServiceImpl.java
  13. 17 0
      src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java
  14. 10 0
      src/main/java/com/uas/platform/b2c/prod/commodity/dao/ProductDao.java
  15. 7 0
      src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java
  16. 45 0
      src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java
  17. 19 0
      src/main/java/com/uas/platform/b2c/prod/commodity/type/ProductConstant.java
  18. 18 6
      src/main/java/com/uas/platform/b2c/prod/store/controller/StoreInController.java
  19. 8 0
      src/main/java/com/uas/platform/b2c/prod/store/dao/StoreInDao.java
  20. 10 0
      src/main/java/com/uas/platform/b2c/prod/store/service/StoreInService.java
  21. 38 1
      src/main/java/com/uas/platform/b2c/prod/store/service/impl/StoreInServiceImpl.java
  22. 1 1
      src/main/java/com/uas/platform/b2c/trade/order/controller/OrderController.java
  23. 5 14
      src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderServiceImpl.java
  24. 1 1
      src/main/java/com/uas/platform/b2c/trade/presale/service/impl/CartServiceImpl.java
  25. 4 0
      src/main/resources/dev/sys.properties
  26. 1 1
      src/main/resources/log4j.properties
  27. 3 3
      src/main/resources/prod/jdbc.properties
  28. 4 1
      src/main/resources/prod/sys.properties
  29. 4 0
      src/main/resources/test/sys.properties
  30. 10 0
      src/main/webapp/resources/js/common/query/material.js
  31. 7 0
      src/main/webapp/resources/js/common/query/storeInfo.js
  32. 1 0
      src/main/webapp/resources/js/usercenter/controllers/forstore/buyer_cart_ctrl.js
  33. 49 7
      src/main/webapp/resources/js/usercenter/controllers/forstore/order_pay_ctrl.js
  34. 50 13
      src/main/webapp/resources/js/vendor/controllers/forstore/vendor_materialCtrl.js
  35. 17 14
      src/main/webapp/resources/view/usercenter/forstore/order_pay.html
  36. 2 2
      src/main/webapp/resources/view/vendor/forstore/vendor_upload.html
  37. 0 1
      src/test/java/com/uas/platform/b2c/RegistForMall.java

+ 1 - 23
pom.xml

@@ -354,29 +354,7 @@
 			 <artifactId>spring-kafka</artifactId>
 			<version>1.2.2.RELEASE</version>
 		 </dependency>
-		<!-- dubbo -->
-		<dependency>
-			<groupId>com.alibaba</groupId>
-			<artifactId>dubbo</artifactId>
-			<exclusions>
-				<exclusion>
-					<groupId>javax.servlet</groupId>
-					<artifactId>javax.servlet-api</artifactId>
-				</exclusion>
-				<exclusion>
-					<groupId>org.apache.httpcomponents</groupId>
-					<artifactId>httpcore</artifactId>
-				</exclusion>
-			</exclusions>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.zookeeper</groupId>
-			<artifactId>zookeeper</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>com.github.sgroschupf</groupId>
-			<artifactId>zkclient</artifactId>
-		</dependency>
+
 		<!-- service on dubbo -->
 		<dependency>
 			<groupId>com.uas.dfs</groupId>

+ 0 - 3
src/main/java/com/uas/platform/b2c/advertise/news/service/impl/NewsServiceImpl.java

@@ -3,16 +3,13 @@ package com.uas.platform.b2c.advertise.news.service.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.advertise.news.service.NewsService;
 import com.uas.platform.b2c.core.config.MicroServicesConf;
-import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.core.utils.JacksonUtils;
-import javafx.beans.binding.ObjectBinding;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.dao.DataAccessException;
 import org.springframework.data.redis.connection.RedisConnection;
 import org.springframework.data.redis.core.RedisCallback;
 import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.data.redis.core.ValueOperations;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 

+ 9 - 0
src/main/java/com/uas/platform/b2c/common/account/service/EnterpriseService.java

@@ -4,10 +4,19 @@ import com.uas.platform.b2c.common.account.model.Enterprise;
 import com.uas.platform.b2c.common.account.model.User;
 import com.uas.platform.b2c.trade.support.ResultMap;
 
+import java.util.List;
+
 public interface EnterpriseService {
 
 	// 根据企业uu获取企业信息
 	public Enterprise getEnterpriseInfo(Long uu);
+
+	/**
+	 * 批量获取企业的信息
+	 * @param enuus uu号
+	 * @return List<Enterprise>
+	 */
+	List<Enterprise> getEnterpriseInfos(List<Long> enuus);
 	
 	// 得到企业是否有需要结算单据状态
 	public Enterprise getReceiptStatus(Enterprise enter);

+ 11 - 0
src/main/java/com/uas/platform/b2c/common/account/service/impl/EnterpriseServiceImpl.java

@@ -42,6 +42,17 @@ public class EnterpriseServiceImpl implements EnterpriseService{
 		return enterpriseDao.findByUu(uu);
 	}
 
+	/**
+	 * 批量获取企业的信息
+	 *
+	 * @param enuus uu号
+	 * @return List<Enterprise>
+	 */
+	@Override
+	public List<Enterprise> getEnterpriseInfos(List<Long> enuus) {
+		return enterpriseDao.findByUus(enuus);
+	}
+
 	@Override
 	public Enterprise getReceiptStatus(Enterprise enter) {
 		List<Receipt> receipts = receiptDao.findBySellerenuu(enter.getUu());

+ 5 - 5
src/main/java/com/uas/platform/b2c/common/base/constant/FileClientConstant.java

@@ -5,26 +5,26 @@ public class FileClientConstant {
     /**
      * 文件上传
      */
-    public final static String FILE_UPLOAD = "http://10.10.100.200:9999/file/upload";
+    public final static String FILE_UPLOAD = "/file/upload";
 
 
     /**
      * 文件下载
      */
-    public final static String FILE_DOWNLOAD = "http://10.10.100.200:9999/file/download";
+    public final static String FILE_DOWNLOAD = "/file/download";
 
     /**
      * 文件删除
      */
-    public final static String FILE_DELETE = "http://10.10.100.200:9999/file/delete";
+    public final static String FILE_DELETE = "/file/delete";
 
     /**
      * 文件信息
      */
-    public final static String FILE_INFO = "http://10.10.100.200:9999/file/info";
+    public final static String FILE_INFO = "/file/info";
 
     /**
      * 文件额外属性
      */
-    public final static String FILE_METADATA = "http://10.10.100.200:9999/file/metadata";
+    public final static String FILE_METADATA = "/file/metadata";
 }

+ 8 - 4
src/main/java/com/uas/platform/b2c/common/base/service/impl/FileClientImpl.java

@@ -5,6 +5,7 @@ import com.uas.dfs.domain.FileInfo;
 import com.uas.dfs.domain.MetaData;
 import com.uas.dfs.service.FileClient;
 import com.uas.platform.b2c.common.base.constant.FileClientConstant;
+import com.uas.platform.b2c.core.config.SysConf;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.io.ByteArrayResource;
 import org.springframework.http.*;
@@ -23,9 +24,12 @@ public class FileClientImpl implements FileClient {
 
     private final RestTemplate restTemplate;
 
+    private final SysConf sysConf;
+
     @Autowired
-    public FileClientImpl(RestTemplate restTemplate) {
+    public FileClientImpl(RestTemplate restTemplate, SysConf sysConf) {
         this.restTemplate = restTemplate;
+        this.sysConf = sysConf;
     }
 
     @Override
@@ -54,7 +58,7 @@ public class FileClientImpl implements FileClient {
         form.add("file", arrayResource);
 
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<MultiValueMap<String, Object>>(form, headers);
-        ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(FileClientConstant.FILE_UPLOAD, requestEntity, JSONObject.class);
+        ResponseEntity<JSONObject> responseEntity = restTemplate.postForEntity(sysConf.getUploadFileUrl() + FileClientConstant.FILE_UPLOAD, requestEntity, JSONObject.class);
         return responseEntity.getBody().getString("path");
     }
 
@@ -63,7 +67,7 @@ public class FileClientImpl implements FileClient {
         Map<String, Object> params = new HashMap<String, Object>();
         params.put("path", s);
         HttpHeaders headers = new HttpHeaders();
-        ResponseEntity<byte[]> response = restTemplate.exchange(FileClientConstant.FILE_DOWNLOAD, HttpMethod.GET,
+        ResponseEntity<byte[]> response = restTemplate.exchange(sysConf.getUploadFileUrl() + FileClientConstant.FILE_DOWNLOAD, HttpMethod.GET,
                 new HttpEntity<byte[]>(headers), byte[].class, params);
         return response.getBody();
     }
@@ -72,7 +76,7 @@ public class FileClientImpl implements FileClient {
     public void delete(String s) {
         Map<String, Object> params = new HashMap<String, Object>();
         params.put("path", s);
-        restTemplate.delete(FileClientConstant.FILE_DELETE, params);
+        restTemplate.delete(sysConf.getUploadFileUrl() + FileClientConstant.FILE_DELETE, params);
     }
 
     @Override

+ 19 - 19
src/main/java/com/uas/platform/b2c/common/search/constant/SearchUrl.java

@@ -10,109 +10,109 @@ public class SearchUrl {
     /**
      * 获取类目id
      */
-    public static final String KIND_ID_URL = "http://10.10.100.191:8092/search/kindIds/{keyword}";
+    public static final String KIND_ID_URL = "/search/kindIds/{keyword}";
 
     /**
      * 获取类目的数据
      *
      */
-    public static final String KIND_INFO_URL = "http://10.10.100.191:8092/search/kinds/{keyword}?page={page}&size={size}";
+    public static final String KIND_INFO_URL = "/search/kinds/{keyword}?page={page}&size={size}";
 
     /**
      * 搜索品牌的id
      */
-    public static final String BRAND_ID_URL = "http://10.10.100.191:8092/search/brandIds/{keyword}?page={page}&size={size}";
+    public static final String BRAND_ID_URL = "/search/brandIds/{keyword}?page={page}&size={size}";
 
     /**
      * 搜索品牌的具体信息
      */
-    public static final String BRAND_INFO_URL = "http://10.10.100.191:8092/search/brands/{keyword}?page={page}&size={size}";
+    public static final String BRAND_INFO_URL = "/search/brands/{keyword}?page={page}&size={size}";
 
 
     /**
      * 搜索器件的id
      */
-    public static final String COMPONENT_ID_URL = "http://10.10.100.191:8092/search/componentIds?keyword={keyword}&params={params}";
+    public static final String COMPONENT_ID_URL = "/search/componentIds?keyword={keyword}&params={params}";
 
     /**
      * 根据品牌id后去类目的id
      */
-    public static final String KIND_ID_COMPONENT_URL = "http://10.10.100.191:8092/search/kindIdsByComponent?keyword={keyword}&brandId={brandId}";
+    public static final String KIND_ID_COMPONENT_URL = "/search/kindIdsByComponent?keyword={keyword}&brandId={brandId}";
 
     /**
      * 根据品牌id后去类目信息
      */
-    public static final String KIND_COMPONENT_URL = "http://10.10.100.191:8092/search/kindsByComponent?keyword={keyword}&brandId={brandId}";
+    public static final String KIND_COMPONENT_URL = "/search/kindsByComponent?keyword={keyword}&brandId={brandId}";
 
     /**
      * 根据类目的id,获取品牌id信息
      */
-    public static final String BREAND_ID_COMPONENT_URL = "http://10.10.100.191:8092/search/brandIdsByComponent?keyword={keyword}&kindId={kindId}";
+    public static final String BREAND_ID_COMPONENT_URL = "/search/brandIdsByComponent?keyword={keyword}&kindId={kindId}";
 
 
     /**
      * 根据类目的id,获取品牌信息
      */
-    public static final String BREAND_COMPONENT_URL = "http://10.10.100.191:8092/search/brandsByComponent?keyword={keyword}&kindId={kindId}";
+    public static final String BREAND_COMPONENT_URL = "/search/brandsByComponent?keyword={keyword}&kindId={kindId}";
 
 
     /**
      * 根据关键字联想
      */
-    public static final String SIMILAR_KEYWORD_URL = "http://10.10.100.191:8092/search/similarKeywords/{keyword}";
+    public static final String SIMILAR_KEYWORD_URL = "/search/similarKeywords/{keyword}";
 
 
     /**
      * 根据关键字联想器件
      */
-    public static final String SIMILAR_COMPONENT_URL = "http://10.10.100.191:8092/search/similarComponents/{keyword}";
+    public static final String SIMILAR_COMPONENT_URL = "/search/similarComponents/{keyword}";
 
 
     /**
      * 根据关键字联想品牌
      */
-    public static final String SIMILAR_BRAND_URL = "http://10.10.100.191:8092/search/similarBrands/{keyword}";
+    public static final String SIMILAR_BRAND_URL = "/search/similarBrands/{keyword}";
 
 
     /**
      * 根据关键字联想类目
      */
-    public static final String SIMILAR_KIND_URL = "http://10.10.100.191:8092/search/similarKinds/{keyword}";
+    public static final String SIMILAR_KIND_URL = "/search/similarKinds/{keyword}";
 
 
 
     /**
      * 获取某个信息的叶子节点
      */
-    public static final String SIMILAR_LEAF_KIND_URL = "http://10.10.100.191:8092/search/similarLeafKinds/{keyword}";
+    public static final String SIMILAR_LEAF_KIND_URL = "/search/similarLeafKinds/{keyword}";
 
 
     /**
      * 获取类目的层级
      */
-    public static final String SIMILAR__KIND_LEVEL_URL = "http://10.10.100.191:8092/search/similarKindsByLevel?kindName={kindName}&level={level}";
+    public static final String SIMILAR__KIND_LEVEL_URL = "/search/similarKindsByLevel?kindName={kindName}&level={level}";
 
 
     /**
      * 属性值搜索
      */
-    public static final String PROPERTYVALUES_URL = "http://10.10.100.191:8092/search/similarPropertyValues?kindId={kindId}&propertyId={propertyId}&keyword={keyword}&topNum={topNum}";
+    public static final String PROPERTYVALUES_URL = "/search/similarPropertyValues?kindId={kindId}&propertyId={propertyId}&keyword={keyword}&topNum={topNum}";
 
 
     /**
      * 搜索库存信息
      */
-    public static final String GOODIS_URL= "http://10.10.100.191:8092/search/goodsIds?keyword={keyword}&params={params}";
+    public static final String GOODIS_URL= "/search/goodsIds?keyword={keyword}&params={params}";
 
 
     /**
      * 搜索库存
      */
-    public static final String GOODS_COLLECT_URL= "http://10.10.100.191:8092/search/collectBySearchGoods?keyword={keyword}&collectedField={collectedField}&filters={filters}";
+    public static final String GOODS_COLLECT_URL= "/search/collectBySearchGoods?keyword={keyword}&collectedField={collectedField}&filters={filters}";
 
     /**
      * 搜索订单
      */
-    public static final String ORDER_SEARCH_URL = "http://10.10.100.191:8092/search/orderIds?tableName={tableName}&keyword={keyword}&page={page}&size={size}&status={status}&buyeruu={buyeruu}&buyerenuu={buyerenuu}&sellerenuu={sellerenuu}&mintime={mintime}&maxtime={maxtime}";
+    public static final String ORDER_SEARCH_URL = "/search/orderIds?tableName={tableName}&keyword={keyword}&page={page}&size={size}&status={status}&buyeruu={buyeruu}&buyerenuu={buyerenuu}&sellerenuu={sellerenuu}&mintime={mintime}&maxtime={maxtime}";
 
 }

+ 23 - 19
src/main/java/com/uas/platform/b2c/common/search/rpc/service/Impl/SearchServiceImpl.java

@@ -3,6 +3,7 @@ package com.uas.platform.b2c.common.search.rpc.service.Impl;
 
 import com.uas.platform.b2c.common.search.constant.SearchUrl;
 import com.uas.platform.b2c.common.search.rpc.service.SearchService;
+import com.uas.platform.b2c.core.config.SysConf;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.search.exception.SearchException;
@@ -29,15 +30,18 @@ public class SearchServiceImpl implements SearchService{
 
     private final RestTemplate restTemplate;
 
+    private final SysConf sysConf;
+
     @Autowired
-    public SearchServiceImpl(RestTemplate restTemplate) {
+    public SearchServiceImpl(RestTemplate restTemplate, SysConf sysConf) {
         this.restTemplate = restTemplate;
+        this.sysConf = sysConf;
     }
 
     @Override
     public SPage<Long> getKindIds(String keyword, Integer page, Integer size) throws SearchException {
         Map<String, Object> map = initSearchMap(keyword, page, size);
-        String str = restTemplate.getForObject(SearchUrl.KIND_ID_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.KIND_ID_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -54,7 +58,7 @@ public class SearchServiceImpl implements SearchService{
     @Override
     public SPage<Map<String, Object>> getKinds(String keyword, Integer page, Integer size) throws SearchException {
         Map<String, Object> map = initSearchMap(keyword, page, size);
-        String str = restTemplate.getForObject(SearchUrl.KIND_INFO_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.KIND_INFO_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -71,7 +75,7 @@ public class SearchServiceImpl implements SearchService{
     @Override
     public SPage<Long> getBrandIds(String keyword, Integer page, Integer size) throws SearchException {
         Map<String, Object> map = initSearchMap(keyword, page, size);
-        String str = restTemplate.getForObject(SearchUrl.BRAND_ID_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.BRAND_ID_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -89,7 +93,7 @@ public class SearchServiceImpl implements SearchService{
     @Override
     public SPage<Map<String, List<Integer>>> getBrands(String keyword, Integer page, Integer size) throws SearchException {
         Map<String, Object> map = initSearchMap(keyword, page, size);
-        String str = restTemplate.getForObject(SearchUrl.BRAND_INFO_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.BRAND_INFO_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -108,7 +112,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("params", FlexJsonUtils.toJsonDeep(var2));
-        String str = restTemplate.getForObject(SearchUrl.COMPONENT_ID_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.COMPONENT_ID_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -127,7 +131,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("brandId", brandId);
-        String str = restTemplate.getForObject(SearchUrl.KIND_ID_COMPONENT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.KIND_ID_COMPONENT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -146,7 +150,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("brandId", brandId);
-        String str = restTemplate.getForObject(SearchUrl.KIND_COMPONENT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.KIND_COMPONENT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -165,7 +169,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("kindId", kindId);
-        String str = restTemplate.getForObject(SearchUrl.BREAND_ID_COMPONENT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.BREAND_ID_COMPONENT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -184,7 +188,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("kindId", kindId);
-        String str = restTemplate.getForObject(SearchUrl.BREAND_COMPONENT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.BREAND_COMPONENT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -202,7 +206,7 @@ public class SearchServiceImpl implements SearchService{
     public List<String> getSimilarKeywords(String keyword) throws SearchException {
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR_KEYWORD_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR_KEYWORD_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -220,7 +224,7 @@ public class SearchServiceImpl implements SearchService{
     public List<Map<String, Object>> getSimilarComponents(String keyword) throws SearchException {
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR_COMPONENT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR_COMPONENT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -238,7 +242,7 @@ public class SearchServiceImpl implements SearchService{
     public List<Map<String, Object>> getSimilarBrands(String keyword) throws SearchException {
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR_BRAND_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR_BRAND_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -256,7 +260,7 @@ public class SearchServiceImpl implements SearchService{
     public List<Map<String, Object>> getSimilarKinds(String keyword) throws SearchException {
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR_KIND_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR_KIND_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -274,7 +278,7 @@ public class SearchServiceImpl implements SearchService{
     public List<Map<String, Object>> getSimilarLeafKinds(String keyword) throws SearchException {
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR_LEAF_KIND_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR_LEAF_KIND_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -293,7 +297,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("kindName", kindName);
         map.put("level", level);
-        String str = restTemplate.getForObject(SearchUrl.SIMILAR__KIND_LEVEL_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.SIMILAR__KIND_LEVEL_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -314,7 +318,7 @@ public class SearchServiceImpl implements SearchService{
         map.put("propertyId", propertyId);
         map.put("keyword", keyword);
         map.put("topNum", topNum);
-        String str = restTemplate.getForObject(SearchUrl.PROPERTYVALUES_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.PROPERTYVALUES_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -333,7 +337,7 @@ public class SearchServiceImpl implements SearchService{
         Map<String, Object> map = new HashedMap();
         map.put("keyword", keyword);
         map.put("params", FlexJsonUtils.toJsonDeep(var2));
-        String str = restTemplate.getForObject(SearchUrl.GOODIS_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.GOODIS_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {
@@ -353,7 +357,7 @@ public class SearchServiceImpl implements SearchService{
         map.put("keyword", keyword);
         map.put("collectedField", collectField);
         map.put("filters", FastjsonUtils.toJson(filters));
-        String str = restTemplate.getForObject(SearchUrl.GOODS_COLLECT_URL, String.class, map);
+        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.GOODS_COLLECT_URL, String.class, map);
         if(StringUtils.isEmpty(str)) {
             return null;
         }else {

+ 30 - 0
src/main/java/com/uas/platform/b2c/core/config/SysConf.java

@@ -130,6 +130,18 @@ public class SysConf {
 	@Value("#{sys.reportUploadUrl}")
 	private String reportUploadUrl;
 
+	/**
+	 * 文件上传的地址
+	 */
+	@Value("#{sys.uploadFileUrl}")
+	private String uploadFileUrl;
+
+	/**
+	 * 搜索的地址
+	 */
+	@Value("#{sys.searchUrl}")
+	private String searchUrl;
+
 	public Boolean getRebuildIndexesOnRefresh() {
 		return rebuildIndexesOnRefresh;
 	}
@@ -275,4 +287,22 @@ public class SysConf {
 		this.adminName = adminName;
 		return this;
 	}
+
+	public String getUploadFileUrl() {
+		return uploadFileUrl;
+	}
+
+	public SysConf setUploadFileUrl(String uploadFileUrl) {
+		this.uploadFileUrl = uploadFileUrl;
+		return this;
+	}
+
+	public String getSearchUrl() {
+		return searchUrl;
+	}
+
+	public SysConf setSearchUrl(String searchUrl) {
+		this.searchUrl = searchUrl;
+		return this;
+	}
 }

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

@@ -1,6 +1,5 @@
 package com.uas.platform.b2c.external.erp.order.api;
 
-import com.alibaba.dubbo.common.utils.StringUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.common.account.model.Enterprise;
@@ -22,6 +21,7 @@ import com.uas.platform.core.model.Status;
 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 javax.management.OperationsException;

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

@@ -81,7 +81,7 @@ public class BillSubmitServiceImpl implements BillSubmitService {
             }
             orderidList.removeAll(orderIds);
 
-            String errorIdStr = com.alibaba.dubbo.common.utils.StringUtils.join(orderids, SplitChar.COMMA);
+            String errorIdStr = org.apache.commons.lang3.StringUtils.join(orderids, SplitChar.COMMA);
             throw new IllegalOperatorException("订单号: " + errorIdStr + " 不存在,请重新确认订单信息");
         }
 

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

@@ -6,11 +6,11 @@ import java.util.List;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import com.alibaba.dubbo.common.utils.CollectionUtils;
 import com.uas.platform.b2c.logistics.dao.LogisticsCompanyCodeDao;
 import com.uas.platform.b2c.logistics.model.LogisticsCompanyCode;
 import com.uas.platform.b2c.logistics.service.LogisticsCompanyCodeService;
 import com.uas.platform.core.exception.IllegalOperatorException;
+import org.springframework.util.CollectionUtils;
 
 @Service
 public class LogisticsCompanyCodeServiceImpl implements LogisticsCompanyCodeService {

+ 17 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java

@@ -6,6 +6,7 @@ import com.uas.platform.b2c.prod.commodity.model.Product;
 import com.uas.platform.b2c.prod.commodity.service.ProductService;
 import com.uas.platform.b2c.core.constant.SplitChar;
 import com.uas.platform.b2c.core.support.view.JxlsExcelView;
+import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
@@ -195,4 +196,20 @@ public class ProductController {
 	private ResultMap updateMatch(@RequestBody String json) {
 		return productService.updateMatch(json);
 	}
+
+	/**
+	 * 批量删除所有的非标的产品
+	 */
+	@RequestMapping(value = "/unstandard", method = RequestMethod.DELETE)
+	private ResultMap deleteUnstandardByBatch() {
+		 return productService.deleteBatch(ProductConstant.NSTANDARD);
+	}
+
+	/**
+	 * 批量删除所有的标准的产品
+	 */
+	@RequestMapping(value = "/standard", method = RequestMethod.DELETE)
+	private ResultMap deleteStandardByBatch() {
+		return productService.deleteBatch(ProductConstant.STANDARD);
+	}
 }

+ 10 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/dao/ProductDao.java

@@ -70,4 +70,14 @@ public interface ProductDao extends JpaSpecificationExecutor<Product>, JpaReposi
      */
     @Query(value = "select p from Product p where p.pcmpcode=:pcmpcode and p.pbranden=:pbranden and p.enUU=:enUU and p.standard=:standard")
     List<Product> findProductByPcmpcodeAndPbrandenAndEnUUAndStandard(@Param("pcmpcode") String pcmpcode, @Param("pbranden") String pbranden, @Param("enUU") Long enUU, @Param("standard") Integer standard);
+
+    /**
+     * 获取该企业的产品信息
+     * @param enuu 企业的uu号
+     * @param standard 是否是标准的信息
+     * @return 返回所属该公司的产品信息
+     */
+    @Query(value = "select p from Product p where p.enUU = :enuu and p.standard = :standard")
+    List<Product> findProductByEnuuAndStandard(@Param("enuu") Long enuu, @Param("standard") Integer standard);
+
 }

+ 7 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java

@@ -41,6 +41,13 @@ public interface ProductService {
      */
     void deleteBatch(List<Long> ids);
 
+    /**
+     * 批量删除产品
+     *
+     * @param type 批量删除的类型
+     */
+    ResultMap deleteBatch(String type);
+
     /**
      * 单个匹配
      *

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

@@ -11,6 +11,7 @@ import com.uas.platform.b2c.prod.commodity.dao.*;
 import com.uas.platform.b2c.prod.commodity.model.*;
 import com.uas.platform.b2c.prod.commodity.service.GoodsHistoryService;
 import com.uas.platform.b2c.prod.commodity.service.ProductService;
+import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 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;
@@ -206,6 +207,50 @@ public class ProductServiceImpl implements ProductService {
         }
     }
 
+    /**
+     * 批量删除产品
+     *
+     * @param type 批量删除的类型
+     */
+    @Override
+    public ResultMap deleteBatch(String type) {
+        Integer standard = null;
+        Integer fail = 0;
+        Integer success = 0;
+        Long uu = SystemSession.getUser().getEnterprise().getUu();
+        if(ProductConstant.STANDARD.equals(type)) {
+            standard = IntegerConstant.YES_SHORT;
+        }else {
+            standard = IntegerConstant.NO_SHORT;
+        }
+        List<Product> products = productDao.findProductByEnuuAndStandard(uu, standard);
+        for (Product product : products) {
+            try {
+                productDao.delete(product);
+                success++;
+            } catch (Exception e) {
+                fail++;
+            }
+        }
+
+        Integer status = CodeType.OK.code();
+        String message = "";
+        if(success != 0) {
+            message += "成功删除" + success + "条";
+        }
+        if(fail != 0) {
+            if(success != 0) {
+                message += ",";
+            }
+            message += "删除失败" + fail + "条,原因:该产品可能已经被其他单据引用,无法删除";
+        }
+        //如果是全部都不能删除,才能设置失败的状态码
+        if((products.size() != 0) && (products.size() ==  fail.intValue())) {
+            status = CodeType.ERROR_STATE.code();
+        }
+        return new ResultMap(status, message);
+    }
+
     @Override
     public Product match(Long id) {
         Product product = productDao.findOne(id);

+ 19 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/type/ProductConstant.java

@@ -0,0 +1,19 @@
+package com.uas.platform.b2c.prod.commodity.type;
+
+/**
+ * 产品库的常量
+ *
+ * @author yuj 2017-10-27 19:22
+ */
+public class ProductConstant {
+
+    /**
+     * 标准的产品信息
+     */
+    public final static String STANDARD = "standard";
+
+    /**
+     * 非标的标志
+     */
+    public final static String NSTANDARD = "nStandard";
+}

+ 18 - 6
src/main/java/com/uas/platform/b2c/prod/store/controller/StoreInController.java

@@ -1,7 +1,9 @@
 package com.uas.platform.b2c.prod.store.controller;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.core.config.SysConf;
 import com.uas.platform.b2c.core.support.SystemSession;
+import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import com.uas.platform.b2c.prod.store.facade.StoreInFacade;
 import com.uas.platform.b2c.prod.store.model.StoreIn;
 import com.uas.platform.b2c.prod.store.model.StoreStatus;
@@ -17,12 +19,10 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.domain.Sort;
 import org.springframework.data.web.PageableDefault;
-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.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * 受限店铺操作接口类
@@ -156,4 +156,16 @@ public class StoreInController {
 		PageInfo pageInfo = new PageInfo(params);
 		return	storeService.pageStoreInfoWhenAdminQuery(pageInfo, type, status, keyword);
 	}
+
+
+	/**
+	 * 获取店铺的联系信息(电话,邮箱,地址信息)
+	 * @param storeids 店铺的数组
+	 * @return
+	 */
+	@RequestMapping(value = "/storeids", method = RequestMethod.GET)
+	public Map<String, JSONObject> getEnterpriseInfo(String storeids) {
+		List<String> storeidArray = FastjsonUtils.fromJsonArray(storeids, String.class);
+		return storeService.getContactInfo(storeidArray);
+	}
 }

+ 8 - 0
src/main/java/com/uas/platform/b2c/prod/store/dao/StoreInDao.java

@@ -34,6 +34,14 @@ public interface StoreInDao extends JpaSpecificationExecutor<StoreIn>, JpaReposi
 	 */
 	StoreIn findByUuid(String uuid);
 
+	/**
+	 * 获取店铺的信息
+	 * @param storeids 店铺的uuids
+	 * @return 店铺的信息
+	 */
+	@Query(value = "select s from StoreIn s where s.uuid in (:storeids)")
+	List<StoreIn> findByUuids(@Param("storeids") List<String> storeids);
+
 	/**
 	 * 根据店铺名称获取店铺信息
 	 *

+ 10 - 0
src/main/java/com/uas/platform/b2c/prod/store/service/StoreInService.java

@@ -1,5 +1,6 @@
 package com.uas.platform.b2c.prod.store.service;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.advertise.ad.model.StoreAdsType;
 import com.uas.platform.b2c.prod.store.model.StoreApply;
 import com.uas.platform.b2c.prod.store.model.StoreIn;
@@ -11,6 +12,7 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 
 import java.util.List;
+import java.util.Map;
 
 public interface StoreInService {
 
@@ -163,4 +165,12 @@ public interface StoreInService {
 
 	@Deprecated
     void syncStoreEnterpriseInfo();
+
+
+	/**
+	 * 获取店铺的联系信息
+	 * @param storeids 店铺信息
+	 * @return
+	 */
+	Map<String, JSONObject> getContactInfo(List<String> storeids);
 }

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

@@ -1,10 +1,12 @@
 package com.uas.platform.b2c.prod.store.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.advertise.ad.model.StoreAds;
 import com.uas.platform.b2c.advertise.ad.model.StoreAdsType;
 import com.uas.platform.b2c.advertise.ad.service.StoreAdsService;
 import com.uas.platform.b2c.common.account.dao.EnterpriseDao;
 import com.uas.platform.b2c.common.account.model.Enterprise;
+import com.uas.platform.b2c.common.account.service.EnterpriseService;
 import com.uas.platform.b2c.core.config.SysConf;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.core.utils.JacksonUtils;
@@ -72,8 +74,10 @@ public class StoreInServiceImpl implements StoreInService {
 
 	private final SysConf sysConf;
 
+	private final EnterpriseService enterpriseService;
+
 	@Autowired
-	public StoreInServiceImpl(StoreInDao storeDao, QualificationDao qualificationDao, GoodsDao goodsDao, ComponentDao componentDao, PurchaseDao purchaseDao, StoreBrandInfoDao brandInfoDao, StoreAdsService adsService, SysConf sysConf) {
+	public StoreInServiceImpl(StoreInDao storeDao, QualificationDao qualificationDao, GoodsDao goodsDao, ComponentDao componentDao, PurchaseDao purchaseDao, StoreBrandInfoDao brandInfoDao, StoreAdsService adsService, SysConf sysConf, EnterpriseService enterpriseService) {
 		this.storeDao = storeDao;
 		this.qualificationDao = qualificationDao;
 		this.goodsDao = goodsDao;
@@ -82,6 +86,7 @@ public class StoreInServiceImpl implements StoreInService {
 		this.brandInfoDao = brandInfoDao;
 		this.adsService = adsService;
 		this.sysConf = sysConf;
+		this.enterpriseService = enterpriseService;
 	}
 
 	@Override
@@ -525,4 +530,36 @@ public class StoreInServiceImpl implements StoreInService {
 		List<String> typeList = Arrays.asList(typeArray);
 		return storeDao.findFiveStoresByType(num, typeList);
 	}
+
+	/**
+	 * 获取店铺的联系信息
+	 *
+	 * @param storeids 店铺信息
+	 * @return
+	 */
+	@Override
+	public Map<String, JSONObject> getContactInfo(List<String> storeids) {
+		Map<String ,JSONObject> map = new HashMap<>();
+		List<StoreIn> storeIns = storeDao.findByUuids(storeids);
+		List<Long> uus = new ArrayList<>();
+		for (StoreIn storeIn : storeIns) {
+			uus.add(storeIn.getEnUU());
+		}
+		List<Enterprise> enterpriseInfos = enterpriseService.getEnterpriseInfos(uus);
+		for (StoreIn storeIn : storeIns) {
+			for (Enterprise enterpriseInfo : enterpriseInfos) {
+				if(storeIn.getEnUU().longValue() == enterpriseInfo.getUu().longValue()) {
+					JSONObject object = new JSONObject();
+					object.put("sellername", enterpriseInfo.getEnName());
+					object.put("sellPhone", enterpriseInfo.getEnTel());
+					object.put("sellEmail", enterpriseInfo.getEnEmail());
+					object.put("sellCompanyAddress", enterpriseInfo.getEnAddress());
+					object.put("sellCompanyArea", enterpriseInfo.getEnArea());
+					map.put(storeIn.getStoreName(), object);
+				}
+			}
+
+		}
+		return map;
+	}
 }

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

@@ -1,6 +1,5 @@
 package com.uas.platform.b2c.trade.order.controller;
 
-import com.alibaba.dubbo.common.utils.StringUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.uas.platform.b2c.common.account.model.Enterprise;
@@ -28,6 +27,7 @@ import com.uas.platform.core.model.Status;
 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.PathVariable;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;

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

@@ -1,7 +1,6 @@
 package com.uas.platform.b2c.trade.order.service.impl;
 
-import com.alibaba.dubbo.common.json.JSON;
-import com.alibaba.dubbo.common.json.ParseException;
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.uas.api.b2c_erp.buyer.model.B2cOrder;
@@ -960,18 +959,10 @@ public class OrderServiceImpl implements OrderService {
         String jsonAddress = null;
         if (Type.Delivery_ByUU_Code.value() == deliveryType) {
             Address address = addressDao.findOne(id);
-            try {
-                jsonAddress = JSON.json(address);
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
+            jsonAddress = FastjsonUtils.toJson(address);
         } else if (Type.Delivery_BySelf_Code.value() == deliveryType) { // 1302:上门自提
             PickUpAddress address = pickUpAddressDao.findOne(id);
-            try {
-                jsonAddress = JSON.json(address);
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
+            jsonAddress = FastjsonUtils.toJson(address);
         }
         return jsonAddress;
     }
@@ -1123,14 +1114,14 @@ public class OrderServiceImpl implements OrderService {
             throw new IllegalOperatorException("收货地址有误,请重新输入收货地址");
         }
         try {
-            Address address = JSON.parse(jsonAddress, Address.class);
+            Address address = FastjsonUtils.fromJson(jsonAddress, Address.class);
             if (address.getArea().startsWith("香港") && order.getCurrency().equalsIgnoreCase("RMB")) {// area包含:省市区
                 throw new IllegalOperatorException("币别与收货地址不一致,香港只能以美元购买商品,不能是人民币,请刷新页面重新确认订单");
             }
             if (!address.getArea().startsWith("香港") && order.getCurrency().equalsIgnoreCase("USD")) {
                 throw new IllegalOperatorException("币别与收货地址不一致,大陆只能以人民币购买商品,不能是美元,请刷新页面重新确认订单");
             }
-        } catch (ParseException e) {
+        } catch (Exception e) {
             throw new IllegalOperatorException("收货地址有误,请重新输入收货地址");
         }
     }

+ 1 - 1
src/main/java/com/uas/platform/b2c/trade/presale/service/impl/CartServiceImpl.java

@@ -1,6 +1,5 @@
 package com.uas.platform.b2c.trade.presale.service.impl;
 
-import com.alibaba.dubbo.common.utils.StringUtils;
 import com.uas.platform.b2c.common.account.dao.EnterpriseDao;
 import com.uas.platform.b2c.common.account.model.Enterprise;
 import com.uas.platform.b2c.common.account.model.User;
@@ -35,6 +34,7 @@ import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
 
 import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;

+ 4 - 0
src/main/resources/dev/sys.properties

@@ -29,6 +29,10 @@ floorMicroServiceIp=10.10.101.23
 carouselMicroServiceIp=10.10.101.23
 endpointUri=10.10.101.23
 recommendPort=20102
+# upload file
+uploadFileUrl = http://10.10.100.200:9999
+# search file
+searchUrl = http://10.10.100.191:8092
 
 # Kafka
 kafka-bootstrap-servers=10.10.100.11:9292,10.10.100.12:9292,10.10.100.13:9292,10.10.100.14:9292,10.10.100.15:9292,10.10.100.16:9292

+ 1 - 1
src/main/resources/log4j.properties

@@ -9,7 +9,7 @@ log4j.appender.stdout.layout.ConversionPattern=%d %p [%c]:%m%n
 log4j.appender.logfile=org.apache.log4j.RollingFileAppender
 log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
 #log4j.appender.logfile.File=../log4j.log
-log4j.appender.logfile.File=../logs/b2c_log4j.log
+#log4j.appender.logfile.File=$CATALINA_BASE/logs/b2c_log4j.log
 # Keep three backup files.
 log4j.appender.logfile.MaxBackupIndex=3
 log4j.appender.logfile.MaxFileSize=5120KB

+ 3 - 3
src/main/resources/prod/jdbc.properties

@@ -3,9 +3,9 @@
 #jdbc.username=platform$b2b
 #jdbc.password=select*fromuu
 jdbc.driverClassName=com.mysql.jdbc.Driver
-jdbc.url=jdbc:mysql://10.10.100.18:3306/mall_prod?characterEncoding=UTF-8
-jdbc.username=root
-jdbc.password=select
+jdbc.url=jdbc:mysql://10.10.0.208:8066/mall_prod?characterEncoding=UTF-8
+jdbc.username=sa
+jdbc.password=Select123!#%*(
 jdbc.initialSize=1
 jdbc.maxActive=100
 jdbc.maxIdle=50

+ 4 - 1
src/main/resources/prod/sys.properties

@@ -30,6 +30,9 @@ floorMicroServiceIp=10.10.0.30
 carouselMicroServiceIp=10.10.0.188
 endpointUri=10.10.100.23
 recommendPort=20100
-
+# upload file
+uploadFileUrl = http://10.10.0.254:8080
+# search file
+searchUrl = http://10.10.0.76:8081
 # Kafka
 kafka-bootstrap-servers=10.10.100.11:9292,10.10.100.12:9292,10.10.100.13:9292,10.10.100.14:9292,10.10.100.15:9292,10.10.100.16:9292

+ 4 - 0
src/main/resources/test/sys.properties

@@ -29,6 +29,10 @@ floorMicroServiceIp=10.10.101.23
 carouselMicroServiceIp=10.10.101.23
 endpointUri=10.10.101.23
 recommendPort=20102
+# upload file
+uploadFileUrl = http://10.10.100.200:9999
+# search file
+searchUrl = http://10.10.100.191:8092
 
 # Kafka
 kafka-bootstrap-servers=10.10.100.11:9292,10.10.100.12:9292,10.10.100.13:9292,10.10.100.14:9292,10.10.100.15:9292,10.10.100.16:9292

+ 10 - 0
src/main/webapp/resources/js/common/query/material.js

@@ -14,6 +14,16 @@ define([ 'ngResource' ], function() {
                 url: 'trade/products/:ids',
                 method: 'DELETE'
             },
+            // 删除所有非标的信息
+            deleteUnstandardAll: {
+                url: 'trade/products/unstandard',
+                method: 'DELETE'
+            },
+            // 删除所有非标的信息
+            deleteStandardAll: {
+                url: 'trade/products/standard',
+                method: 'DELETE'
+            },
             // 单个匹配
             match: {
                 url: 'trade/products/match/:id',

+ 7 - 0
src/main/webapp/resources/js/common/query/storeInfo.js

@@ -186,6 +186,13 @@ define([ 'ngResource' ], function() {
 				params: {
 					op: 'admin_page_query'
 				}
+			},
+			/**
+			 * 批量获取店铺的信息
+			 */
+			getContactInfo: {
+				url: 'store-service/storeids',
+				method: 'GET',
 			}
         });
     }]).factory('ConsignmentAgreementRecord', ['$resource', 'BaseService', function ($resource, BaseService) {

+ 1 - 0
src/main/webapp/resources/js/usercenter/controllers/forstore/buyer_cart_ctrl.js

@@ -526,6 +526,7 @@ define(["app/app", 'jquery-summernote'], function(app) {
 			}
 		};
 
+
 		/**
 		 * 控制联系卖家的模态框
 		 * @param value

+ 49 - 7
src/main/webapp/resources/js/usercenter/controllers/forstore/order_pay_ctrl.js

@@ -3,7 +3,7 @@
  *  订单付款的界面
  */
 define(['app/app'], function(app) {
-	app.register.controller('orderPayCtrl', ['$scope', '$rootScope', '$stateParams', '$modal', '$state', 'Bill', 'toaster', 'Order', '$filter', 'ShippingAddress', 'Ysepay', '$q', 'NumberService', 'Cart', '$timeout', 'DistributionRule', 'TakeSelf', function($scope, $rootScope, $stateParams, $modal, $state, Bill, toaster, Order, $filter, ShippingAddress, Ysepay, $q, NumberService, Cart, $timeout, DistributionRule, TakeSelf) {
+	app.register.controller('orderPayCtrl', ['$scope', '$rootScope', '$stateParams', '$modal', '$state', 'Bill', 'toaster', 'Order', '$filter', 'ShippingAddress', 'Ysepay', '$q', 'NumberService', 'Cart', '$timeout', 'DistributionRule', 'TakeSelf', 'StoreInfo', function($scope, $rootScope, $stateParams, $modal, $state, Bill, toaster, Order, $filter, ShippingAddress, Ysepay, $q, NumberService, Cart, $timeout, DistributionRule, TakeSelf, StoreInfo) {
 
 		$rootScope.active = 'buyer_cart';
 
@@ -20,6 +20,11 @@ define(['app/app'], function(app) {
 
 		$scope.bills = [];
 
+		//店铺的uuid
+		$scope.storeUuids = [];
+
+		$scope.storeContactInfos = {};
+
 		//获取个人的发票信息
 		var getBillInfo = function() {
 			Bill.getListPersonal(null, function(data) {
@@ -108,9 +113,15 @@ define(['app/app'], function(app) {
 								$scope.takeSelfList[detail.storeid] = null;
 								$scope.fareList[detail.storeid] = 0;
 								$scope.$$orderDetailsMap[detail.storeName].push(detail);
+								$scope.storeUuids.push(detail.storeid);
 							}
 							$scope.disabledAddAndSub(detail);
 						});
+						StoreInfo.getContactInfo({storeids : angular.toJson($scope.storeUuids)}, function (data) {
+							$scope.storeContactInfos = data;
+						}, function (response) {
+							toaster.pop('error', '获取店铺的联系信息失败');
+						});
 						if($scope.order.status == 501) { //如果不是待确认状态,则不需要计算
 							//计算总价格
 							$scope.calculateTotal();
@@ -168,14 +179,45 @@ define(['app/app'], function(app) {
 		getOrderData();
 		// 联系卖家弹框
 		$scope.contactBNox = false;
-		$scope.contactSeller = function (details) {
-			details.contactSeller = !details.contactSeller;
-			angular.forEach($scope.order.orderDetails, function (order) {
-				if(order.id != details.id) {
-					order.contactSeller = false;
-				}
+		$scope.contactSeller = function (key) {
+			$scope.storeContactInfos[key].contactSeller = !$scope.storeContactInfos[key].contactSeller;
+		};
+
+		/**
+		 * 监听点击的位置,隐藏相应的状态框
+		 * @param event
+		 */
+		document.onclick = function (event) {
+			var element = event.srcElement;
+			if(!element) {
+				return ;
+			}
+			var elementName =  element.getAttribute("name");
+			$scope.$apply(function () {
+				angular.forEach($scope.storeContactInfos, function (store, key) {
+					if(typeof store == 'object') {
+						var isThisTag = false;
+						if(elementName && key == elementName) {
+							isThisTag = true;
+						}
+						var parentEle = element.parentElement;
+						if(!isThisTag) {
+							while (parentEle && parentEle.tagName && parentEle.tagName != 'BODY') {
+								var parentElementName =  parentEle.getAttribute("name");
+								if(parentElementName && key == parentElementName) {
+									isThisTag = true;
+								}
+								parentEle = parentEle.parentElement;
+							}
+						}
+						if(!isThisTag) {
+							store.contactSeller = false;
+						}
+					}
+				});
 			});
 		};
+
 		$scope.closeBox = function () {
 			$scope.contactBNox = false;
 		};

+ 50 - 13
src/main/webapp/resources/js/vendor/controllers/forstore/vendor_materialCtrl.js

@@ -148,27 +148,64 @@ define([ 'app/app' ], function(app) {
 		$scope.chooseOne = function (material) {
 			if (typeof material.isChoosed == 'undefined' || !material.isChoosed) {
 				material.isChoosed = true;
-				$scope.choosedIds.push(material.id);
 			} else {
 				material.isChoosed = false;
-				$scope.choosedIds.splice($scope.choosedIds.indexOf(material.id),1);
 			}
 			checkChoosedAll();
 		};
 
+		//获取选中之后的信息
+		$scope.getChoosedInfo = function () {
+			angular.forEach($scope.currenctMaterial, function (material) {
+				if (material.isChoosed) {
+					$scope.choosedIds.push(material.id);
+				}
+			});
+		};
+
 		// 确认删除
 		$scope.confirmDelete = function (ids) {
-			var ids = $scope.choosedIds.join(',');
-			Material.deleteBatch({ids : ids}, function (data) {
-				toaster.pop('success', '删除成功');
-				$scope.choosedIds = [];
-				$scope.deleteDiv = false;
-				loadDataReload();
-			}, function (response) {
-				toaster.pop('error', response.data);
-				$scope.choosedIds = [];
-				$scope.deleteDiv = false;
-			});
+			if($scope.isChoosedAll) {
+				if($scope.standard_tab == 'standard') {
+					Material.deleteStandardAll(null, null, function (data) {
+						$scope.deleteDiv = false;
+						loadDataReload();
+						if(data.code != 1) {
+							toaster.pop('error', data.message);
+						}else {
+							toaster.pop('success', data.message);
+						}
+					}, function (response) {
+						toaster.pop('error', '批量删除信息失败');
+					});
+				}else {
+					Material.deleteUnstandardAll(null, null, function (data) {
+						$scope.deleteDiv = false;
+						loadDataReload();
+						if(data.code != 1) {
+							toaster.pop('error', data.message);
+						}else {
+							toaster.pop('success', data.message);
+						}
+					}, function (response) {
+						toaster.pop('error', '批量删除信息失败');
+					});
+				}
+			}else {
+				$scope.getChoosedInfo();
+				var ids = $scope.choosedIds.join(',');
+				Material.deleteBatch({ids : ids}, function (data) {
+					toaster.pop('success', '删除成功');
+					$scope.choosedIds = [];
+					$scope.deleteDiv = false;
+					loadDataReload();
+				}, function (response) {
+					toaster.pop('error', response.data);
+					$scope.choosedIds = [];
+					$scope.deleteDiv = false;
+				});
+			}
+
 		};
 
 		// 取消删除

+ 17 - 14
src/main/webapp/resources/view/usercenter/forstore/order_pay.html

@@ -545,6 +545,9 @@
 		line-height: 26px;
 		color: #fff;
 	}
+	.contact-box .title:hover {
+		cursor: pointer;
+	}
 	.contact-box .title i{
 		float: right;
 		margin: 7px 10px 0 0;
@@ -669,21 +672,21 @@
 							店铺:<a ng-href="store/{{details[0].storeid}}" ng-bind="::key" class="hover-color" target="_blank"></a>
 							<img src="static/img/common/songguo.png" style="margin-left: 110px; margin-right:0; ">
 							<!--<a href="javascript:void(0)" class="contact_btn" title="联系卖家" ng-controller="ChatContactCtrl as chat" ng-click="chat.contactWithOther(order.buyerTel, order.buyerenuu, chat.UserType.STORE)">联系卖家</a>-->
-							<a class="contact_btn" title="联系卖家">联系卖家</a>
+							<a class="contact_btn" title="联系卖家" name="{{key}}" ng-click="contactSeller(key)">联系卖家</a>
 							<!--<a class="contact_btn" title="联系卖家" ng-click="contactSeller(details[0])">联系卖家</a>-->
-							<!--<div class="contact-box" ng-if="details[0].contactSeller">-->
-								<!--<div class="title"><i class="fa fa-close fa-lg" ng-click="details[0].contactSeller = false"></i></div>-->
-								<!--<div class="content">-->
-									<!--<div class="company-title" ng-bind="order.sellername">深圳市优软科技</div>-->
-									<!--<div class="list">-->
-										<!--<em>手机:<em ng-bind="order.sellPhone || '暂无联系电话'">45413413131313</em></em>-->
-										<!--<em style="margin-left: 60px;">邮箱:<em ng-bind="::order.sellEmail || '暂无电子邮箱'">45413413131313</em></em>-->
-									<!--</div>-->
-									<!--<div class="list">地址:-->
-										<!--<em ng-bind="order.sellCompanyAddress || order.sellCompanyArea || '暂无地址信息'">1212314531455</em>-->
-									<!--</div>-->
-								<!--</div>-->
-							<!--</div>-->
+							<div class="contact-box" ng-if="storeContactInfos[key].contactSeller" name="{{key}}">
+								<div class="title"><i class="fa fa-close fa-lg" ng-click="storeContactInfos[key].contactSeller = false"></i></div>
+								<div class="content" name="{{key}}">
+									<div class="company-title" ng-bind="storeContactInfos[key].sellername">深圳市优软科技</div>
+									<div class="list">
+										<em>手机:<em ng-bind="storeContactInfos[key].sellPhone || '暂无联系电话'">45413413131313</em></em>
+										<em style="margin-left: 60px;">邮箱:<em ng-bind="::storeContactInfos[key].sellEmail || '暂无电子邮箱'">45413413131313</em></em>
+									</div>
+									<div class="list">地址:
+										<em ng-bind="storeContactInfos[key].sellCompanyAddress || storeContactInfos[key].sellCompanyArea || '暂无地址信息'">1212314531455</em>
+									</div>
+								</div>
+							</div>
 						</span>
 						</dd>
 						<dd class="oder_l" ng-repeat="detail in details">

+ 2 - 2
src/main/webapp/resources/view/vendor/forstore/vendor_upload.html

@@ -327,8 +327,8 @@
                             </label>
                             <label class="sellType" ng-disabled="!batch.selfSellEabled">
                                 <input ng-click="sellType('self')" type="radio" name="487" id="sellbyself" ng-model="batch.sellType" ng-checked="batch.sellType == 'self'">
-                                <label for="sellbyself"></label>
-                                <span>店铺自营</span>
+                                <label for="sellbyself" ng-disabled="!batch.selfSellEabled"></label>
+                                <span ng-disabled="!batch.selfSellEabled">店铺自营</span>
                             </label>
                         </div>
                         <div>2、请上传已经编辑好的库存表格,选择好上传的文件之后,点击确认上传</div>

+ 0 - 1
src/test/java/com/uas/platform/b2c/RegistForMall.java

@@ -1,6 +1,5 @@
 package com.uas.platform.b2c;
 
-import com.alibaba.dubbo.common.json.JSONObject;
 import com.uas.platform.b2c.core.utils.FastjsonUtils;
 import org.apache.commons.collections.map.HashedMap;