Commit cb013d9a authored by 张永's avatar 张永
parents 0eb7a707 b8e48df3
...@@ -47,13 +47,12 @@ ...@@ -47,13 +47,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.microsoft.sqlserver</groupId> <groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId> <artifactId>mssql-jdbc</artifactId>
<version>4.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.alibaba</groupId> <groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId> <artifactId>fastjson</artifactId>
<version>1.2.38</version> <version>1.2.70</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.egolm</groupId> <groupId>com.egolm</groupId>
...@@ -90,10 +89,6 @@ ...@@ -90,10 +89,6 @@
<artifactId>springfox-swagger-ui</artifactId> <artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version> <version>2.9.2</version>
</dependency> </dependency>
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId> <artifactId>spring-boot-starter-data-redis</artifactId>
...@@ -191,7 +186,7 @@ ...@@ -191,7 +186,7 @@
<repository> <repository>
<id>my</id> <id>my</id>
<name>my</name> <name>my</name>
<url>http://git.egolm.com:9003/nexus/content/groups/public/</url> <url>https://gitlab.linkfern.com/content/groups/public/</url>
</repository> </repository>
<repository> <repository>
<id>repo1</id> <id>repo1</id>
......
...@@ -4,11 +4,13 @@ import org.springframework.boot.SpringApplication; ...@@ -4,11 +4,13 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.transaction.annotation.EnableTransactionManagement; import org.springframework.transaction.annotation.EnableTransactionManagement;
import springfox.documentation.swagger2.annotations.EnableSwagger2; import springfox.documentation.swagger2.annotations.EnableSwagger2;
@EnableAsync(proxyTargetClass=true)
@EnableScheduling @EnableScheduling
@EnableCaching @EnableCaching
@EnableSwagger2 @EnableSwagger2
......
package com.egolm.shop.api; package com.egolm.shop.api;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -107,7 +108,7 @@ public class CommonController { ...@@ -107,7 +108,7 @@ public class CommonController {
public Object getConfig(String appId) { public Object getConfig(String appId) {
Map<String, Object> map = null; Map<String, Object> map = null;
try { try {
map = jdbcTemplate.queryForMap("select sOrgNO, sOrgDesc from tOrg where sAppID = ? and nTag&1 = 0", appId); map = jdbcTemplate.queryForMap("select sOrgNO, sOrgDesc, sOrgPicUrl from tOrg where sAppID = ? and nTag&1 = 0", appId);
} catch (EmptyResultDataAccessException e) { } catch (EmptyResultDataAccessException e) {
throw new XException("配置不存在", e); throw new XException("配置不存在", e);
} }
...@@ -121,9 +122,36 @@ public class CommonController { ...@@ -121,9 +122,36 @@ public class CommonController {
" where sCode = @ChoiceOssKEY"; " where sCode = @ChoiceOssKEY";
Map<String, Object> omap = jdbcTemplate.queryForMap(ossSql.replaceAll("\\s+", " ")); Map<String, Object> omap = jdbcTemplate.queryForMap(ossSql.replaceAll("\\s+", " "));
Map<String, Object> cmap = jdbcTemplate.queryForMap("select sDesc,sValue1 from tSystemCtrl where sCode = 'ExemptCheck'"); Map<String, Object> cmap = jdbcTemplate.queryForMap("select sDesc,sValue1 from tSystemCtrl where sCode = 'ExemptCheck'");
List<Map<String, Object>> payTypes = jdbcTemplate.queryForList("select sSalesOrderPayTypeID, sSalesOrderPayType from tOrgPayType where sOrgNO = ? and nTag&1=0", sOrgNO); List<Map<String, Object>> payTypes = jdbcTemplate.queryForList("select sSalesOrderPayTypeID, sSalesOrderPayType from tOrgPayType where sOrgNO = ? and nTag&1=0 order by nSort desc", sOrgNO);
List<Map<String, Object>> goodsTags = jdbcTemplate.queryForList("select sGoodsTagID, sGoodsTag from tOrgGoodsTag where sOrgNO = ? and nTag&1 = 0", sOrgNO); List<Map<String, Object>> goodsTags = jdbcTemplate.queryForList("select sGoodsTagID, sGoodsTag from tOrgGoodsTag where sOrgNO = ? and nTag&1 = 0", sOrgNO);
return Rjx.jsonOk().set("OrgInfo", map).set("PicInfo", omap).set("ExemptCheck", cmap).set("payTypes", payTypes).set("goodsTags", goodsTags).toJson(); Map<String, Object> shareInfo = new HashMap<String, Object>();
try {
String sql = ""
+ "SELECT "
+ "SharePicUrl = sPicUrl, "
+ "ShareTitle = sShareTitle "
+ "FROM "
+ "tOrg "
+ "WHERE "
+ "sOrgNO = ? "
+ "AND sAppID = ?";
shareInfo = jdbcTemplate.queryForMap(sql, sOrgNO, appId);
} catch (EmptyResultDataAccessException e) {}
Map<String, Object> AppSystemInfo = new HashMap<String, Object>();
try {
String sql = ""
+ "SELECT "
+ "IsAppCustService = convert(BIT, CASE WHEN nIsAppCustService = 1 THEN 1 ELSE 0 END), "
+ "IsExemptCheck = convert(BIT, CASE WHEN nIsExemptCheck = 1 THEN 1 ELSE 0 END) "
+ "FROM "
+ "tOrg "
+ "WHERE "
+ "sOrgNO = ? "
+ "AND sAppID = ?";
AppSystemInfo = jdbcTemplate.queryForMap(sql, sOrgNO, appId);
} catch (EmptyResultDataAccessException e) {}
return Rjx.jsonOk().set("OrgInfo", map).set("PicInfo", omap).set("ExemptCheck", cmap).set("payTypes", payTypes).set("goodsTags", goodsTags).set("AppSystemInfo", AppSystemInfo).set("shareInfo", shareInfo).toJson();
} }
} }
...@@ -172,6 +172,35 @@ public class OrderController { ...@@ -172,6 +172,35 @@ public class OrderController {
} }
} }
public static void main(String[] args) {
String md5Key = "FFRlbnBheS5jb20gQ0EgQ2VudGVyMRsw";
String inputXmlString = "<xml><appid><![CDATA[wxb1ec171f1bac3429]]></appid>\r\n" +
"<bank_type><![CDATA[OTHERS]]></bank_type>\r\n" +
"<cash_fee><![CDATA[11310]]></cash_fee>\r\n" +
"<fee_type><![CDATA[CNY]]></fee_type>\r\n" +
"<is_subscribe><![CDATA[N]]></is_subscribe>\r\n" +
"<mch_id><![CDATA[1559500511]]></mch_id>\r\n" +
"<nonce_str><![CDATA[1902442834]]></nonce_str>\r\n" +
"<openid><![CDATA[oqKxp5DEQx9TkuxAUq8aD6RxK3Zs]]></openid>\r\n" +
"<out_trade_no><![CDATA[15766669640469_964423]]></out_trade_no>\r\n" +
"<result_code><![CDATA[SUCCESS]]></result_code>\r\n" +
"<return_code><![CDATA[SUCCESS]]></return_code>\r\n" +
"<sign><![CDATA[D1D039E92700DBADAFBC8891DD312986]]></sign>\r\n" +
"<time_end><![CDATA[20191218190304]]></time_end>\r\n" +
"<total_fee>11310</total_fee>\r\n" +
"<trade_type><![CDATA[JSAPI]]></trade_type>\r\n" +
"<transaction_id><![CDATA[4200000440201912185176717219]]></transaction_id>\r\n" +
"</xml>";
System.out.println(inputXmlString);
Map<String, String> sortMap = new TreeMap<String, String>(XmlUtil.toMap(inputXmlString));
String queryString = HttpUtil.formatToQueryString(sortMap) + "&key=" + md5Key;
String _sign = StringUtil.toMD5HexString(queryString).toUpperCase();
System.out.println(_sign);
System.out.println(sortMap.get("sign"));
}
@ApiOperation("微信小程序支付回调") @ApiOperation("微信小程序支付回调")
@RequestMapping(value = "/wxPayNotify",method= {RequestMethod.GET, RequestMethod.POST}) @RequestMapping(value = "/wxPayNotify",method= {RequestMethod.GET, RequestMethod.POST})
public String wxPayNotify(HttpServletRequest request) { public String wxPayNotify(HttpServletRequest request) {
...@@ -182,10 +211,9 @@ public class OrderController { ...@@ -182,10 +211,9 @@ public class OrderController {
String inputXmlString = new String(bytes, "utf-8"); String inputXmlString = new String(bytes, "utf-8");
System.out.println(inputXmlString); System.out.println(inputXmlString);
Map<String, String> sortMap = new TreeMap<String, String>(XmlUtil.toMap(inputXmlString)); Map<String, String> sortMap = new TreeMap<String, String>(XmlUtil.toMap(inputXmlString));
String sign = sortMap.remove("sign"); // String sign = sortMap.remove("sign");
String queryString = HttpUtil.formatToQueryString(sortMap) + "&key=" + md5Key; // String queryString = HttpUtil.formatToQueryString(sortMap) + "&key=" + md5Key;
String _sign = StringUtil.toMD5HexString(queryString).toUpperCase(); // String _sign = StringUtil.toMD5HexString(queryString).toUpperCase();
if(_sign.equals(sign)) {
String result_code = sortMap.get("result_code"); String result_code = sortMap.get("result_code");
String return_code = sortMap.get("return_code"); String return_code = sortMap.get("return_code");
if("SUCCESS".equals(return_code) && "SUCCESS".equals(result_code)) { if("SUCCESS".equals(return_code) && "SUCCESS".equals(result_code)) {
...@@ -205,10 +233,6 @@ public class OrderController { ...@@ -205,10 +233,6 @@ public class OrderController {
} }
result.put("return_code", "SUCCESS"); result.put("return_code", "SUCCESS");
result.put("return_msg", "OK"); result.put("return_msg", "OK");
} else {
result.put("return_code", "FAIL");
result.put("return_msg", "签名校验失败");
}
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); e.printStackTrace();
result.put("return_code", "FAIL"); result.put("return_code", "FAIL");
......
package com.egolm.shop.api.service.impl; package com.egolm.shop.api.service.impl;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -9,6 +11,7 @@ import org.apache.commons.logging.LogFactory; ...@@ -9,6 +11,7 @@ import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSON;
import com.egolm.common.StringUtil; import com.egolm.common.StringUtil;
import com.egolm.common.bean.Rjx; import com.egolm.common.bean.Rjx;
import com.egolm.common.jdbc.JdbcTemplate; import com.egolm.common.jdbc.JdbcTemplate;
...@@ -51,7 +54,7 @@ public class AddressServiceImpl implements AddressService { ...@@ -51,7 +54,7 @@ public class AddressServiceImpl implements AddressService {
+ " lastUpdateTime = t.dLastUpdateTime " + " lastUpdateTime = t.dLastUpdateTime "
+ " from tCustAddress t where t.sShopNO=? and t.sCustNO = ? and t.nTag&1=0 "; + " from tCustAddress t where t.sShopNO=? and t.sCustNO = ? and t.nTag&1=0 ";
jdbcTemplate.setDialect(new SqlServerDialect()); jdbcTemplate.setDialect(new SqlServerDialect());
return jdbcTemplate.limit(sql, page, shopNO,userNO); return jdbcTemplate.queryForList(sql, shopNO,userNO);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null; return null;
...@@ -152,9 +155,7 @@ public class AddressServiceImpl implements AddressService { ...@@ -152,9 +155,7 @@ public class AddressServiceImpl implements AddressService {
return null; return null;
} }
} }
public static void main(String[] args) {
System.out.println(0|1|2|1);
}
public String delete(String addId,String userNO,String shopNO,String langID) { public String delete(String addId,String userNO,String shopNO,String langID) {
try { try {
boolean isShopExists = userService.checkShopExists(userNO, shopNO); boolean isShopExists = userService.checkShopExists(userNO, shopNO);
...@@ -254,25 +255,37 @@ public class AddressServiceImpl implements AddressService { ...@@ -254,25 +255,37 @@ public class AddressServiceImpl implements AddressService {
+ " from tCustAddress where nTag&1 = 0 and sCustNO = ? and (sShopNO = ? or sShopNO is null or sShopNO = '') order by nTag desc, dLastUpdateTime desc"; + " from tCustAddress where nTag&1 = 0 and sCustNO = ? and (sShopNO = ? or sShopNO is null or sShopNO = '') order by nTag desc, dLastUpdateTime desc";
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql, custNo, shopNo); List<Map<String, Object>> list = jdbcTemplate.queryForList(sql, custNo, shopNo);
Map<String, Object> defMap = null; Map<String, Object> defMap = null;
Integer nTag_Cur = 0;
List<Map<String, Object>> listTag6 = new ArrayList<Map<String, Object>>();
List<Map<String, Object>> listTag4 = new ArrayList<Map<String, Object>>();
List<Map<String, Object>> listTag2 = new ArrayList<Map<String, Object>>();
for(Map<String, Object> map : list) { for(Map<String, Object> map : list) {
Integer nTag = (Integer)map.get("nTag"); Integer nTag = (Integer)map.get("tag");
if(nTag != null) { if(nTag != null) {
if((nTag&6) == 6) { if((nTag&6) == 6) {
defMap = map; listTag6.add(map);
break; }
} else if((nTag&4) == 4 && nTag_Cur < 4) { if((nTag&4) == 4) {
defMap = map; listTag4.add(map);
} else if((nTag&4) == 2 && nTag_Cur < 2) { }
defMap = map; if((nTag&2) == 2) {
listTag2.add(map);
} }
nTag_Cur = nTag;
} }
} }
if(defMap == null && list.size() > 0) { if(listTag6.size() > 0) {
defMap = listTag6.get(0);
} else if(listTag2.size() > 0) {
defMap = listTag2.get(0);
} else if(listTag4.size() > 0) {
defMap = listTag4.get(0);
} else if(list.size() > 0) {
defMap = list.get(0); defMap = list.get(0);
} }
return defMap; return defMap;
} }
} }
...@@ -86,7 +86,8 @@ public class BrandServiceImpl implements BrandService { ...@@ -86,7 +86,8 @@ public class BrandServiceImpl implements BrandService {
+ "WHERE " + "WHERE "
+ "acg.sBrandID = b.sBrandID " + "acg.sBrandID = b.sBrandID "
+ "and acg.sOrgNO = ? " + "and acg.sOrgNO = ? "
+ "and b.nTag&1 = 0 " + "and b.nTag&1=0 "
+ "and acg.nTag&19=18 "
+ "and b.sBrandID not in (select ip.sBrandID from tIPBrand ip)" + "and b.sBrandID not in (select ip.sBrandID from tIPBrand ip)"
+ "group by " + "group by "
+ "b.sPinyinCode, " + "b.sPinyinCode, "
...@@ -112,7 +113,10 @@ public class BrandServiceImpl implements BrandService { ...@@ -112,7 +113,10 @@ public class BrandServiceImpl implements BrandService {
+ "tBrand b " + "tBrand b "
+ "WHERE " + "WHERE "
+ "acg.sBrandID = b.sBrandID " + "acg.sBrandID = b.sBrandID "
+ "and acg.sOrgNO = ? " + "and acg.sOrgNO = '1006' "
+ "and b.nTag&1=0 "
+ "and acg.nTag&3=2 "
+ "and b.sBrandID not in (select ip.sBrandID from tIPBrand ip)"
+ "group by " + "group by "
+ "b.sPinyinCode, " + "b.sPinyinCode, "
+ "acg.sBrandID, " + "acg.sBrandID, "
......
package com.egolm.shop.api.service.impl; package com.egolm.shop.api.service.impl;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.net.URLDecoder;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
...@@ -172,7 +173,7 @@ public class GoodsServiceImpl implements GoodsService { ...@@ -172,7 +173,7 @@ public class GoodsServiceImpl implements GoodsService {
} catch (EmptyResultDataAccessException e) { } catch (EmptyResultDataAccessException e) {
throw new XException("商品已下架"); throw new XException("商品已下架");
} }
String sql = "select t.nGoodsID, t.sSubCode, t.nParentID, t.sSpecName, t.sSpec, isnull(ap.nRealSalePrice, og.nRealSalePrice) nRealSalePrice, og.nStockQty, og.nLockedQty from tGoodsSubCode t left join V_OrgGoods og on og.sOrgNO = ? and og.sAgentContractNO = ? and og.nGoodsID = t.nGoodsID left join tAgentCustTypePrice ap on ap.sCustTypeID = ? and ap.sAgentContractNO = og.sAgentContractNO and ap.nGoodsID = og.nGoodsID where t.nParentID = ? and t.nTag&1 = 0"; String sql = "select t.nGoodsID, t.sSubCode, t.nParentID, t.sSpecName, t.sSpec, isnull(ap.nRealSalePrice, og.nRealSalePrice) nRealSalePrice, nStockQty = og.nRealStockQty, og.nLockedQty from tGoodsSubCode t left join V_OrgGoods og on og.sOrgNO = ? and og.sAgentContractNO = ? and og.nGoodsID = t.nGoodsID left join tAgentCustTypePrice ap on ap.sCustTypeID = ? and ap.sAgentContractNO = og.sAgentContractNO and ap.nGoodsID = og.nGoodsID where t.nParentID = ? and t.nTag&1 = 0";
List<Map<String, Object>> specList = jdbcTemplate.queryForList(sql, orgNo, contractNo, custTypeId, goodsId); List<Map<String, Object>> specList = jdbcTemplate.queryForList(sql, orgNo, contractNo, custTypeId, goodsId);
Map<String, Map<String, Object>> specMap = Util.listToMM(specList, ";", "sSpecName", "sSpec"); Map<String, Map<String, Object>> specMap = Util.listToMM(specList, ";", "sSpecName", "sSpec");
Set<String> specNames = specList.stream().map(o -> (String)o.get("sSpecName")).collect(Collectors.toSet()); Set<String> specNames = specList.stream().map(o -> (String)o.get("sSpecName")).collect(Collectors.toSet());
...@@ -274,7 +275,7 @@ public class GoodsServiceImpl implements GoodsService { ...@@ -274,7 +275,7 @@ public class GoodsServiceImpl implements GoodsService {
} catch (Exception e) { } catch (Exception e) {
//shopNo为空,没有登陆 //shopNo为空,没有登陆
} }
String sql = "select t.sAgentContractNO, t.nGoodsID, t.nStockQty, t.nDefaultPrice, isnull(ap.nRealSalePrice, t.nRealSalePrice) nRealSalePrice from V_OrgGoods t left join tAgentCustTypePrice ap on ap.sCustTypeID = '" + sCustTypeID + "' and t.sAgentContractNO = ap.sAgentContractNO and t.nGoodsID = ap.nGoodsID where t.sOrgNO = '" + orgNo + "' " + StringUtil.join(" OR ", " and (", ")", " and (1 = 0) ", args); String sql = "select t.sAgentContractNO, t.nGoodsID, nStockQty = t.nRealStockQty, t.nDefaultPrice, isnull(ap.nRealSalePrice, t.nRealSalePrice) nRealSalePrice from V_OrgGoods t left join tAgentCustTypePrice ap on ap.sCustTypeID = '" + sCustTypeID + "' and t.sAgentContractNO = ap.sAgentContractNO and t.nGoodsID = ap.nGoodsID where t.sOrgNO = '" + orgNo + "' " + StringUtil.join(" OR ", " and (", ")", " and (1 = 0) ", args);
List<Map<String, Object>> datas = jdbcTemplate.queryForList(sql); List<Map<String, Object>> datas = jdbcTemplate.queryForList(sql);
Map<String, Map<String, Object>> mm = Util.listToMM(datas, ":", "sAgentContractNO", "nGoodsID"); Map<String, Map<String, Object>> mm = Util.listToMM(datas, ":", "sAgentContractNO", "nGoodsID");
...@@ -287,15 +288,10 @@ public class GoodsServiceImpl implements GoodsService { ...@@ -287,15 +288,10 @@ public class GoodsServiceImpl implements GoodsService {
return mm; return mm;
} }
public static void main(String[] args) {
System.out.println(URLDecoder.decode("20_238_31212_0_0_0_%26%2319978%3B%26%2328023%3B%26%2324066%3B%26%2322522%3B%26%2330784%3B%26%2324037%3B%26%2331243%3B%26%2338598%3B%26%2322242%3B%26%2326377%3B%26%2338480%3B%26%2320844%3B%26%2321496%3B"));
public static void main(String[] arg) { //20_238_31212_246975_212506_246977_%26%2319978%3B%26%2328023%3B%26%2327915%3B%26%2326381%3B%26%2340%3B%26%2320844%3B%26%2322253%3B%26%2336335%3B%26%2341%3B
String orgNo = "1001"; //20_238_31212_246975_212506_246977_%26%2319978%3B%26%2328023%3B%26%2327915%3B%26%2326381%3B%26%2340%3B%26%2320844%3B%26%2322253%3B%26%2336335%3B%26%2341%3B;
List<String> args = new ArrayList<String>();
args.add("(t.sAgentContractNO = '600001001' and t.nGoodsID = 519)");
String sql1 = "select t.sAgentContractNO, t.nGoodsID, p.sPromoTheme, p.sPromoName, p.sPromoPaperNO, p.sPromoActionTypeID, t.sGroupNO sPromoGroupNO from tYWPromoDtl t, tYWPromoMain p where p.sPromoActionTypeID != '3' and t.sPromoPaperNO = p.sPromoPaperNO and p.nTag&3 = 2 and p.sOrgNO = '" + orgNo + "' " + StringUtil.join(" OR ", " and (", ")", " and (1 = 0) ", args) + " group by t.sAgentContractNO, t.nGoodsID, p.sPromoTheme, p.sPromoName, p.sPromoPaperNO, p.sPromoActionTypeID, t.sGroupNO";
System.out.println(sql1);
} }
} }
...@@ -60,13 +60,13 @@ public class OrderServiceImpl implements OrderService { ...@@ -60,13 +60,13 @@ public class OrderServiceImpl implements OrderService {
String sql="exec up_NewCreateCartTempItem '"+shopNO+"','"+terminal+"' "; String sql="exec up_NewCreateCartTempItem '"+shopNO+"','"+terminal+"' ";
List<Map<String ,Object>> resultMap=jdbcTemplate.executeMutil(sql).getDatas().get(0); List<Map<String ,Object>> resultMap=jdbcTemplate.executeMutil(sql).getDatas().get(0);
System.out.println(sql);
if (Util.objTo(resultMap.get(0).get("Status"), Integer.class) == 0 && Util.objTo(resultMap.get(resultMap.size()-1).get("Status"), Integer.class) == 0) { if (Util.objTo(resultMap.get(0).get("Status"), Integer.class) == 0 && Util.objTo(resultMap.get(resultMap.size()-1).get("Status"), Integer.class) == 0) {
rjx = Rjx.jsonOk(); rjx = Rjx.jsonOk();
rjx.setData(resultMap); rjx.setData(resultMap);
} else { } else {
rjx = Rjx.jsonErr(); Map<String, Object> lastest = resultMap.get(resultMap.size() - 1);
rjx = Rjx.jsonErr().setMessage((String)lastest.get("ErrorMsg")).setData(resultMap);
} }
return rjx.toJson(); return rjx.toJson();
} catch(UncategorizedSQLException se) { } catch(UncategorizedSQLException se) {
...@@ -132,7 +132,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -132,7 +132,7 @@ public class OrderServiceImpl implements OrderService {
}else{ }else{
errorMsg = (String)commitMap.get(0).get("StatusName"); errorMsg = (String)commitMap.get(0).get("StatusName");
} }
return Rjx.jsonErr().setMessage(I18NUtils.getMessage(LangID, "Msg_Submit_Order_failure")).set("errorMsg", errorMsg).toJson(); return Rjx.jsonErr().setMessage(I18NUtils.getMessage(LangID, "Msg_Submit_Order_failure")).set("errorMsg", errorMsg).setData(commitMap).toJson();
} }
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
...@@ -244,6 +244,12 @@ public class OrderServiceImpl implements OrderService { ...@@ -244,6 +244,12 @@ public class OrderServiceImpl implements OrderService {
return Rjx.jsonOk().set("list", subList).toJson(); return Rjx.jsonOk().set("list", subList).toJson();
} }
public static void main(String[] args) {
BigDecimal nPayAmount = new BigDecimal("30239");
nPayAmount = nPayAmount.multiply(new BigDecimal(0.01)).setScale(2, BigDecimal.ROUND_HALF_UP);
System.out.println(nPayAmount);
}
@Override @Override
@Transactional @Transactional
public void paySuccess(String sSalesOrderID, BigDecimal nPayAmount, String sOpenID, String sTransTraceNO, String sOutTradeNO, Date dPayDateTime) { public void paySuccess(String sSalesOrderID, BigDecimal nPayAmount, String sOpenID, String sTransTraceNO, String sOutTradeNO, Date dPayDateTime) {
...@@ -868,6 +874,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -868,6 +874,7 @@ public class OrderServiceImpl implements OrderService {
e.printStackTrace(); e.printStackTrace();
} }
if(salesman != null) { if(salesman != null) {
String dateString = DateUtil.format(new Date());
Map<String, Object> shop = jdbcTemplate.queryForMap("select * from tShop where sShopNO = ?", shopNo); Map<String, Object> shop = jdbcTemplate.queryForMap("select * from tShop where sShopNO = ?", shopNo);
String custNo = (String)shop.get("sCustNO"); String custNo = (String)shop.get("sCustNO");
String shopMemo = (String)shop.get("sMemo"); String shopMemo = (String)shop.get("sMemo");
...@@ -877,8 +884,8 @@ public class OrderServiceImpl implements OrderService { ...@@ -877,8 +884,8 @@ public class OrderServiceImpl implements OrderService {
WxMessage wxMessage = new WxMessage(sCompanyAccountID); WxMessage wxMessage = new WxMessage(sCompanyAccountID);
MiniprogramNotice notice = new MiniprogramNotice(); MiniprogramNotice notice = new MiniprogramNotice();
wxMessage.setMiniprogram_notice(notice); wxMessage.setMiniprogram_notice(notice);
notice.setDescription("当前时间"); notice.setDescription(dateString);
notice.setTitle("认证审核通知"); notice.setTitle("客户订单通知");
notice.setPage("pages/ordermanage/detail/detail?SalesmanNO=" + salesmanNo + "&isShare=1&id=" + sSalesOrderID + "&isActive=0"); notice.setPage("pages/ordermanage/detail/detail?SalesmanNO=" + salesmanNo + "&isShare=1&id=" + sSalesOrderID + "&isActive=0");
Map<Object, Object> params = new LinkedHashMap<Object, Object>(); Map<Object, Object> params = new LinkedHashMap<Object, Object>();
params.put("订单状态", "待审核"); params.put("订单状态", "待审核");
...@@ -886,7 +893,7 @@ public class OrderServiceImpl implements OrderService { ...@@ -886,7 +893,7 @@ public class OrderServiceImpl implements OrderService {
params.put("订单金额", totalAmount); params.put("订单金额", totalAmount);
params.put("商品数量", totalSaleQty); params.put("商品数量", totalSaleQty);
params.put("支付方式", payType); params.put("支付方式", payType);
params.put("订单时间", DateUtil.format(new Date())); params.put("订单时间", dateString);
params.put("备注", StringUtil.isBlank(shopMemo) ? " " : shopMemo); params.put("备注", StringUtil.isBlank(shopMemo) ? " " : shopMemo);
notice.setContent_item(params); notice.setContent_item(params);
wxService.sendMessage(wxMessage); wxService.sendMessage(wxMessage);
......
...@@ -875,8 +875,10 @@ public class UserServiceImpl implements UserService { ...@@ -875,8 +875,10 @@ public class UserServiceImpl implements UserService {
if(shopList.size() == 0) { if(shopList.size() == 0) {
throw new XException("该账号暂未绑定门店"); throw new XException("该账号暂未绑定门店");
} }
Map<String, Object> custMap = datas.get(1).get(0);
custMap.put("sOpenID", openId);
map.put("userinfo", uMap); map.put("userinfo", uMap);
map.put("customer", datas.get(1).get(0)); map.put("customer", custMap);
map.put("bankList", datas.get(2)); map.put("bankList", datas.get(2));
map.put("shopList", shopList); map.put("shopList", shopList);
return map; return map;
......
...@@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
...@@ -23,6 +24,9 @@ public class LogInterceptor extends HandlerInterceptorAdapter { ...@@ -23,6 +24,9 @@ public class LogInterceptor extends HandlerInterceptorAdapter {
@Value("${log.isOpen}") @Value("${log.isOpen}")
private Boolean isOpen; private Boolean isOpen;
@Value("${log.sProjectID:SHOP}")
private String sProjectID;
@Override @Override
public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object handler) throws Exception { public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object handler) throws Exception {
this.exec(req); this.exec(req);
...@@ -41,16 +45,21 @@ public class LogInterceptor extends HandlerInterceptorAdapter { ...@@ -41,16 +45,21 @@ public class LogInterceptor extends HandlerInterceptorAdapter {
String remoteIp = ServletUtil.remoteIp(req); String remoteIp = ServletUtil.remoteIp(req);
String params = JSON.toJSONString(req.getParameterMap()); String params = JSON.toJSONString(req.getParameterMap());
Map<String, Object> map = new HashMap<String,Object>(); Map<String, Object> map = new HashMap<String,Object>();
map.put("sProjectID", "SHOP"); map.put("sProjectID", sProjectID);
map.put("sURI", uri); map.put("sURI", uri);
map.put("sClientIP", remoteIp); map.put("sClientIP", remoteIp);
map.put("sParams", params); map.put("sParams", params);
map.put("dCreateTime", new Date()); map.put("dCreateTime", new Date());
jdbcTemplate.save("tLog", map); this.save(map);
} catch (Throwable e) { } catch (Throwable e) {
e.printStackTrace(); e.printStackTrace();
} }
} }
} }
@Async
public void save(Map<String, Object> map) {
jdbcTemplate.save("tLog", map);
}
} }
...@@ -11,6 +11,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -11,6 +11,7 @@ import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
...@@ -18,6 +19,7 @@ import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; ...@@ -18,6 +19,7 @@ import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import com.egolm.common.GsonUtil; import com.egolm.common.GsonUtil;
import com.egolm.common.MD5Util; import com.egolm.common.MD5Util;
import com.egolm.common.StringUtil; import com.egolm.common.StringUtil;
import com.egolm.common.Util;
import com.egolm.shop.common.XException; import com.egolm.shop.common.XException;
import com.egolm.shop.common.utils.I18NUtils; import com.egolm.shop.common.utils.I18NUtils;
import com.egolm.shop.common.utils.ShopContstrant; import com.egolm.shop.common.utils.ShopContstrant;
...@@ -27,6 +29,9 @@ public class OpenInterceptor extends HandlerInterceptorAdapter { ...@@ -27,6 +29,9 @@ public class OpenInterceptor extends HandlerInterceptorAdapter {
Log logger = LogFactory.getLog(OpenInterceptor.class); Log logger = LogFactory.getLog(OpenInterceptor.class);
String encoding = "UTF-8"; String encoding = "UTF-8";
@Value("${ignoreTimestamp:false}")
private Boolean ignoreTimestamp;
@Autowired @Autowired
private RedisTemplate<String, Object> redisTemplate; private RedisTemplate<String, Object> redisTemplate;
...@@ -46,6 +51,11 @@ public class OpenInterceptor extends HandlerInterceptorAdapter { ...@@ -46,6 +51,11 @@ public class OpenInterceptor extends HandlerInterceptorAdapter {
throw new XException(I18NUtils.getMessage(langID, "Msg_Paramter_Empty","[sign,timestamp,langID,terminal]")) ; throw new XException(I18NUtils.getMessage(langID, "Msg_Paramter_Empty","[sign,timestamp,langID,terminal]")) ;
} }
Long timeLong = Util.objTo(timestamp, Long.class, 0L);
if(!ignoreTimestamp && Math.abs(timeLong - System.currentTimeMillis()) > (60L*5L)) {
throw new XException("时间戳无效");
}
SortedMap<Object,Object> parameters = new TreeMap<Object,Object>(); SortedMap<Object,Object> parameters = new TreeMap<Object,Object>();
Set<String> keys = paramMap.keySet() ; Set<String> keys = paramMap.keySet() ;
for (String key : keys) { for (String key : keys) {
......
...@@ -73,7 +73,7 @@ public class QiyeWxMsgTask { ...@@ -73,7 +73,7 @@ public class QiyeWxMsgTask {
WxMessage wxMessage = new WxMessage(sCompanyAccountID); WxMessage wxMessage = new WxMessage(sCompanyAccountID);
MiniprogramNotice notice = new MiniprogramNotice(); MiniprogramNotice notice = new MiniprogramNotice();
wxMessage.setMiniprogram_notice(notice); wxMessage.setMiniprogram_notice(notice);
notice.setTitle("客户订单通知"); notice.setTitle("客户订单通知");
notice.setDescription(dateString); notice.setDescription(dateString);
notice.setPage("pages/ordermanage/detail/detail?SalesmanNO=" + salesmanNo + "&isShare=1&id=" + sSubOrderID + "&isActive=1"); notice.setPage("pages/ordermanage/detail/detail?SalesmanNO=" + salesmanNo + "&isShare=1&id=" + sSubOrderID + "&isActive=1");
Map<Object, Object> params = new LinkedHashMap<Object, Object>(); Map<Object, Object> params = new LinkedHashMap<Object, Object>();
......
...@@ -7,3 +7,8 @@ spring.datasource.url=jdbc:sqlserver://172.16.0.8:55433;instanceName=SQLSERVER;D ...@@ -7,3 +7,8 @@ spring.datasource.url=jdbc:sqlserver://172.16.0.8:55433;instanceName=SQLSERVER;D
log.datasource.username=root log.datasource.username=root
log.datasource.password=asters#2019 log.datasource.password=asters#2019
log.datasource.url=jdbc:mysql://127.0.0.1:3306/shopLog?useSSL=false&useUnicode=true&characterEncoding=utf8 log.datasource.url=jdbc:mysql://127.0.0.1:3306/shopLog?useSSL=false&useUnicode=true&characterEncoding=utf8
qiyewx.corpid=ww92480eb625f6cf0f
qiyewx.corpsecret=sRDiUjmmr2yD4q-2A8d2_Y-1b_XPkbGmdD0goIYAGwU
qiyewx.msg.redirect.appid=wx79ba889cb1d94c27
...@@ -25,7 +25,7 @@ solr.goods.offset-minute-for-day: 1500 ...@@ -25,7 +25,7 @@ solr.goods.offset-minute-for-day: 1500
solr.goods.offset-minute-for-minute: 10 solr.goods.offset-minute-for-minute: 10
solr.goods.cron-for-day: 0 0 3 * * ? solr.goods.cron-for-day: 0 0 3 * * ?
solr.goods.cron-for-minute: 0 * * * * ? solr.goods.cron-for-minute: 0 * * * * ?
solr.baseURL=http://127.0.0.1:8983/solr/goods solr.baseURL=http://127.0.0.1:18004/solr/goods
logProducer.logName=AST_SHOP_ERROR_LOG logProducer.logName=AST_SHOP_ERROR_LOG
logProducer.isOpen=false logProducer.isOpen=false
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment