|
@@ -23,6 +23,8 @@ import com.kmall.common.utils.wechat.WechatRefundQueryResult;
|
|
import com.kmall.manager.manager.wechat.wxtemplate.TemplateData;
|
|
import com.kmall.manager.manager.wechat.wxtemplate.TemplateData;
|
|
import com.kmall.manager.manager.wechat.wxtemplate.WxTemplateUtil;
|
|
import com.kmall.manager.manager.wechat.wxtemplate.WxTemplateUtil;
|
|
import com.kmall.schedule.quartz.OrderTask;
|
|
import com.kmall.schedule.quartz.OrderTask;
|
|
|
|
+import com.kmall.schedule.entity.MngChangeJobEntity;
|
|
|
|
+import com.kmall.schedule.entity.StoreMngChangeJobEntity;
|
|
import net.sf.json.JSONObject;
|
|
import net.sf.json.JSONObject;
|
|
import org.apache.commons.logging.Log;
|
|
import org.apache.commons.logging.Log;
|
|
import org.apache.commons.logging.LogFactory;
|
|
import org.apache.commons.logging.LogFactory;
|
|
@@ -210,7 +212,7 @@ public class QzOrderService {
|
|
List<Map> pastOrderList = qzOrderMapper.queryPastOrderList();
|
|
List<Map> pastOrderList = qzOrderMapper.queryPastOrderList();
|
|
if (null != pastOrderList && pastOrderList.size() > 0) {
|
|
if (null != pastOrderList && pastOrderList.size() > 0) {
|
|
for (Map map : pastOrderList) {
|
|
for (Map map : pastOrderList) {
|
|
- restStockNum(map);
|
|
|
|
|
|
+ restStockNum(map,"更新过期未支付订单");
|
|
}
|
|
}
|
|
qzOrderMapper.unpayPastUpdate();
|
|
qzOrderMapper.unpayPastUpdate();
|
|
}
|
|
}
|
|
@@ -221,31 +223,80 @@ public class QzOrderService {
|
|
* 还原库存
|
|
* 还原库存
|
|
* @param map
|
|
* @param map
|
|
*/
|
|
*/
|
|
- private void restStockNum(Map map){
|
|
|
|
- Integer number = MapUtils.getInteger("number", map);
|
|
|
|
- Integer stock_num = MapUtils.getInteger("stock_num", map);
|
|
|
|
|
|
+ private void restStockNum(Map map, String changeReason){
|
|
|
|
+ Integer goods_number = MapUtils.getInteger("goods_number", map);//商品总库存数
|
|
|
|
+ Integer number = MapUtils.getInteger("number", map);//订单商品购买数
|
|
|
|
+ Integer stock_num = MapUtils.getInteger("stock_num", map);//门店商品总库存数
|
|
Long storeRelaId = MapUtils.getLong("storeRelaId", map);
|
|
Long storeRelaId = MapUtils.getLong("storeRelaId", map);
|
|
String isStockShare = MapUtils.getString("is_stock_share", map);
|
|
String isStockShare = MapUtils.getString("is_stock_share", map);
|
|
- Integer goods_number = MapUtils.getInteger("goods_number", map);
|
|
|
|
Long goods_id = MapUtils.getLong("goods_id", map);
|
|
Long goods_id = MapUtils.getLong("goods_id", map);
|
|
String goods_biz_type = MapUtils.getString("goods_biz_type", map);
|
|
String goods_biz_type = MapUtils.getString("goods_biz_type", map);
|
|
|
|
+ Long store_id = MapUtils.getLong("store_id", map);
|
|
|
|
+ String merch_sn = MapUtils.getString("merch_sn", map);
|
|
|
|
+ String third_party_merch_code = MapUtils.getString("third_party_merch_code", map);
|
|
if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem())){
|
|
if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem())){
|
|
if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem()) && isStockShare.equalsIgnoreCase(Dict.isStockShare.item_1.getItem())) {//共享
|
|
if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem()) && isStockShare.equalsIgnoreCase(Dict.isStockShare.item_1.getItem())) {//共享
|
|
Map param = Maps.newHashMap();
|
|
Map param = Maps.newHashMap();
|
|
param.put("id", goods_id);
|
|
param.put("id", goods_id);
|
|
param.put("goods_number", goods_number + number);
|
|
param.put("goods_number", goods_number + number);
|
|
qzOrderMapper.updateGoodsStockNum(param);//商户商品库存还原
|
|
qzOrderMapper.updateGoodsStockNum(param);//商户商品库存还原
|
|
|
|
+ MngChangeJobEntity mngChangeJobEntity = new MngChangeJobEntity();
|
|
|
|
+ mngChangeJobEntity.setGoodsId(Integer.parseInt(String.valueOf(goods_id)));
|
|
|
|
+ mngChangeJobEntity.setThirdPartyMerchCode(third_party_merch_code);
|
|
|
|
+ mngChangeJobEntity.setChangeReason(changeReason);
|
|
|
|
+ mngChangeJobEntity.setChangeType(Dict.changeType.item_0.getItem());
|
|
|
|
+ mngChangeJobEntity.setChangeNum(number);//变化数
|
|
|
|
+ mngChangeJobEntity.setOriginalNum(goods_number);//原库存数
|
|
|
|
+ mngChangeJobEntity.setValidNum(goods_number + number);//可用数
|
|
|
|
+ mngChangeJobEntity.setCreateTime(new Date());
|
|
|
|
+ mngChangeJobEntity.setModTime(new Date());
|
|
|
|
+ mngChangeJobEntity.setCreaterSn("定时任务");
|
|
|
|
+ mngChangeJobEntity.setModerSn("定时任务");
|
|
|
|
+ mngChangeJobEntity.setIsValid(0);
|
|
|
|
+ mngChangeJobEntity.setMerchSn(merch_sn);
|
|
|
|
+ qzOrderMapper.saveMngChange(mngChangeJobEntity);
|
|
|
|
+
|
|
}else{
|
|
}else{
|
|
Map param = Maps.newHashMap();
|
|
Map param = Maps.newHashMap();
|
|
param.put("id", storeRelaId);
|
|
param.put("id", storeRelaId);
|
|
param.put("stock_num", stock_num + number);
|
|
param.put("stock_num", stock_num + number);
|
|
qzOrderMapper.updateStockNum(param);//门店库存还原
|
|
qzOrderMapper.updateStockNum(param);//门店库存还原
|
|
|
|
+ StoreMngChangeJobEntity storeMngChangeJobEntity = new StoreMngChangeJobEntity();
|
|
|
|
+ storeMngChangeJobEntity.setChangeType(Dict.changeType.item_0.getItem());
|
|
|
|
+ storeMngChangeJobEntity.setChangeReason(changeReason);
|
|
|
|
+ storeMngChangeJobEntity.setGoodsId(Integer.parseInt(String.valueOf(goods_id)));
|
|
|
|
+ storeMngChangeJobEntity.setStoreId(Integer.parseInt(String.valueOf(store_id)));
|
|
|
|
+ storeMngChangeJobEntity.setMerchSn(merch_sn);
|
|
|
|
+ storeMngChangeJobEntity.setCreateTime(new Date());
|
|
|
|
+ storeMngChangeJobEntity.setModTime(new Date());
|
|
|
|
+ storeMngChangeJobEntity.setStoreChangeNum(number);
|
|
|
|
+ storeMngChangeJobEntity.setStoreOriginalNum(stock_num);
|
|
|
|
+ storeMngChangeJobEntity.setStoreValidNum(stock_num + number);
|
|
|
|
+ storeMngChangeJobEntity.setCreaterSn("定时任务");
|
|
|
|
+ storeMngChangeJobEntity.setModerSn("定时任务");
|
|
|
|
+ storeMngChangeJobEntity.setIsValid(0);
|
|
|
|
+ qzOrderMapper.saveStoreMngChange(storeMngChangeJobEntity);
|
|
}
|
|
}
|
|
}else{
|
|
}else{
|
|
Map param = Maps.newHashMap();
|
|
Map param = Maps.newHashMap();
|
|
param.put("id", storeRelaId);
|
|
param.put("id", storeRelaId);
|
|
param.put("stock_num", stock_num + number);
|
|
param.put("stock_num", stock_num + number);
|
|
qzOrderMapper.updateStockNum(param);//门店库存还原
|
|
qzOrderMapper.updateStockNum(param);//门店库存还原
|
|
|
|
+ StoreMngChangeJobEntity storeMngChangeJobEntity = new StoreMngChangeJobEntity();
|
|
|
|
+ storeMngChangeJobEntity.setChangeType(Dict.changeType.item_0.getItem());
|
|
|
|
+ storeMngChangeJobEntity.setChangeReason(changeReason);
|
|
|
|
+ storeMngChangeJobEntity.setStoreId(Integer.parseInt(String.valueOf(store_id)));
|
|
|
|
+ storeMngChangeJobEntity.setGoodsId(Integer.parseInt(String.valueOf(goods_id)));
|
|
|
|
+ storeMngChangeJobEntity.setMerchSn(merch_sn);
|
|
|
|
+ storeMngChangeJobEntity.setCreateTime(new Date());
|
|
|
|
+ storeMngChangeJobEntity.setModTime(new Date());
|
|
|
|
+ storeMngChangeJobEntity.setStoreChangeNum(number);
|
|
|
|
+ storeMngChangeJobEntity.setStoreOriginalNum(stock_num);
|
|
|
|
+ storeMngChangeJobEntity.setStoreValidNum(stock_num + number);
|
|
|
|
+ storeMngChangeJobEntity.setCreaterSn("定时任务");
|
|
|
|
+ storeMngChangeJobEntity.setModerSn("定时任务");
|
|
|
|
+ storeMngChangeJobEntity.setIsValid(0);
|
|
|
|
+ qzOrderMapper.saveStoreMngChange(storeMngChangeJobEntity);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -661,7 +712,7 @@ public class QzOrderService {
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_NOTPAY.getItem())) {//订单未支付
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_NOTPAY.getItem())) {//订单未支付
|
|
Map orderRaram = Maps.newHashMap();
|
|
Map orderRaram = Maps.newHashMap();
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
- restStockNum(map);//库存还原
|
|
|
|
|
|
+ restStockNum(map,"定时任务更新过期未支付订单");//库存还原
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_101.getItem());//订单状态已取消
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_101.getItem());//订单状态已取消
|
|
orderRaram.put("payStatus", Dict.payStatus.item_0.getItem());//支付状态未支付
|
|
orderRaram.put("payStatus", Dict.payStatus.item_0.getItem());//支付状态未支付
|
|
} else {
|
|
} else {
|
|
@@ -676,7 +727,7 @@ public class QzOrderService {
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_500.getItem());
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_500.getItem());
|
|
orderRaram.put("orderId", orderId);
|
|
orderRaram.put("orderId", orderId);
|
|
qzOrderMapper.updateOrderInfo(orderRaram);
|
|
qzOrderMapper.updateOrderInfo(orderRaram);
|
|
- restStockNum(map);//库存还原
|
|
|
|
|
|
+ restStockNum(map,"定时任务更新已关闭订单");//库存还原
|
|
logger.info(">>>>>>>>>>>>>>>>>>>>wxOrderByTransactionIdQueryUpdFail 根据支付单查询微信接口返回信息:state 【" + result.getTrade_state() +
|
|
logger.info(">>>>>>>>>>>>>>>>>>>>wxOrderByTransactionIdQueryUpdFail 根据支付单查询微信接口返回信息:state 【" + result.getTrade_state() +
|
|
"】,des【" + result.getTrade_state_desc() + "】");
|
|
"】,des【" + result.getTrade_state_desc() + "】");
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_PAYERROR.getItem())) {
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_PAYERROR.getItem())) {
|
|
@@ -749,7 +800,7 @@ public class QzOrderService {
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_NOTPAY.getItem())) {//订单未支付
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_NOTPAY.getItem())) {//订单未支付
|
|
Map orderRaram = Maps.newHashMap();
|
|
Map orderRaram = Maps.newHashMap();
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
- restStockNum(map);//库存还原
|
|
|
|
|
|
+ restStockNum(map,"定时任务更新过期未支付订单");//库存还原
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_101.getItem());//订单状态已取消
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_101.getItem());//订单状态已取消
|
|
orderRaram.put("payStatus", Dict.payStatus.item_0.getItem());//支付状态未支付
|
|
orderRaram.put("payStatus", Dict.payStatus.item_0.getItem());//支付状态未支付
|
|
} else {
|
|
} else {
|
|
@@ -764,7 +815,7 @@ public class QzOrderService {
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_500.getItem());
|
|
orderRaram.put("orderStatus", Dict.orderStatus.item_500.getItem());
|
|
orderRaram.put("orderId", orderId);
|
|
orderRaram.put("orderId", orderId);
|
|
qzOrderMapper.updateOrderInfo(orderRaram);
|
|
qzOrderMapper.updateOrderInfo(orderRaram);
|
|
- restStockNum(map);//库存还原
|
|
|
|
|
|
+ restStockNum(map,"定时任务更新已关闭订单");//库存还原
|
|
logger.info(">>>>>>>>>>>>>>>>>>>>wxGlobalOrderByTransactionIdQueryUpdFail 根据支付单查询微信国际接口返回信息:state 【" + result.getTrade_state() +
|
|
logger.info(">>>>>>>>>>>>>>>>>>>>wxGlobalOrderByTransactionIdQueryUpdFail 根据支付单查询微信国际接口返回信息:state 【" + result.getTrade_state() +
|
|
"】,des【" + Dict.tradeState.item_CLOSED.getItemName() + "】");
|
|
"】,des【" + Dict.tradeState.item_CLOSED.getItemName() + "】");
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_PAYERROR.getItem())) {
|
|
} else if (result.getTrade_state().equalsIgnoreCase(Dict.tradeState.item_PAYERROR.getItem())) {
|
|
@@ -843,7 +894,7 @@ public class QzOrderService {
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
if (getDateBetween(addTime, nowDate) >= 15) {//订单下单时间超过15分钟直接取消订单
|
|
orderRaram.put("payStatus", 0);//支付状态未支付
|
|
orderRaram.put("payStatus", 0);//支付状态未支付
|
|
orderRaram.put("orderStatus", 101);//订单状态已取消
|
|
orderRaram.put("orderStatus", 101);//订单状态已取消
|
|
- restStockNum(map);//库存还原
|
|
|
|
|
|
+ restStockNum(map, "定时任务更新平安超时未支付订单");//库存还原
|
|
} else {
|
|
} else {
|
|
orderRaram.put("payStatus", 0);//支付状态未支付
|
|
orderRaram.put("payStatus", 0);//支付状态未支付
|
|
orderRaram.put("orderStatus", 0);//订单状态未支付
|
|
orderRaram.put("orderStatus", 0);//订单状态未支付
|