优化项

This commit is contained in:
cun-nan 2024-01-09 11:26:55 +08:00
parent c3e633ca43
commit 418ec4a863
13 changed files with 140 additions and 31 deletions

View File

@ -12,7 +12,7 @@ public class ReceiveParameter {
*/
private String orderNo;
/**
* 类型1油品2商品3储值卡4积分5囤油卡6油品加商品
* 类型1油品2商品3储值卡4积分5囤油卡6油品加商品(收银台订单)7挂账订单
*/
private String type;
/**

View File

@ -52,9 +52,9 @@ public interface MerchantConfigService extends IService<MerchantConfig> {
public MerchantConfig selectMerchById(int id);
/**
* 所有的使用1改为0
* 此店铺中所有的使用1改为0
*/
public void updateMerchOrter();
public void updateMerchOrter(int store);
/**
* 修改商户使用状态

View File

@ -9,10 +9,13 @@ import com.fuint.api.fuyou.entity.*;
import com.fuint.api.fuyou.service.FyPayService;
import com.fuint.api.fuyou.service.MerchantConfigService;
import com.fuint.api.fuyou.util.Utils;
import com.fuint.business.integral.entity.IntegralOrders;
import com.fuint.business.integral.service.IntegralOrdersService;
import com.fuint.business.marketingActivity.cardFavorable.entity.CardFavorableRecord;
import com.fuint.business.marketingActivity.cardFavorable.service.CardFavorableRecordService;
import com.fuint.business.marketingActivity.cardFule.entity.CardFuelRecord;
import com.fuint.business.marketingActivity.cardFule.service.CardFuelRecordService;
import com.fuint.business.marketingActivity.cardValue.entity.CardValueRecord;
import com.fuint.business.marketingActivity.cardValue.service.CardValueRecordService;
import com.fuint.business.order.entity.*;
import com.fuint.business.order.service.*;
@ -68,14 +71,7 @@ public class FyPayServiceImpl implements FyPayService {
map.put("ins_cd", insCd);
map.put("mchnt_cd", mchntCd);
map.put("goods_des", goodsDes);
// ReceiveParameter receiveParameter = new ReceiveParameter();
// receiveParameter.setOrderNo(orderNo);
// receiveParameter.setType("油品订单");
// receiveParameter.setContent(map1.get("goodsDes"));
// receiveParameter.setGoodsMoney(Double.valueOf(map1.get("allAmount")));
// receiveParameter.setStoreId(oilOrder.getStoreId());
// receiveParameter.setPayType(oilOrder.getPayType());
// receiveParameter.setUserId(oilOrder.getUserId());
// 请求报文
String reqBody = Message.requestMsg(map);
@ -87,7 +83,6 @@ public class FyPayServiceImpl implements FyPayService {
String str = resMap.get("sign");
if (Utils.verifySign(resMap, str)){
// this.insertAllOrderInfo(receiveParameter);
ThreadUtil.execAsync(() -> {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@ -125,7 +120,6 @@ public class FyPayServiceImpl implements FyPayService {
@Override
public Map<String, String> queryOrder(Map<String, String> map1) throws Exception {
// AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
Map<String, String> resMap =new HashMap<>();
resMap.put("msg","error");
try {
@ -144,10 +138,17 @@ public class FyPayServiceImpl implements FyPayService {
// 余额新增
String type = "";
String payStates="";
String payStatus="unpaid";
if (!ObjectUtil.isEmpty(map1.get("type"))) {
type = map1.get("type");
}
ReceiveParameter receiveParameter = new ReceiveParameter();
receiveParameter.setOrderNo(orderNo);
receiveParameter.setGoodsMoney(allAmount*100);
receiveParameter.setStoreId(storeId1);
receiveParameter.setPayType(payType);
// 请求报文
String reqBody = Message.requestMsg(map);
// 响应报文
@ -165,11 +166,12 @@ public class FyPayServiceImpl implements FyPayService {
List<ReturnRecord> returnRecords = returnRecordService.selectReturnRecordByOrderNo(orderNo);
Date date = new Date();
if (reqMap.get("trans_stat").equals("SUCCESS")){
merchantConfigService.updateMeChAmountByStoreId(storeId1,allAmount);
payStatus = "paid";
if (!ObjectUtil.isEmpty(oilOrder)){
// 油品订单
oilOrder.setOrderStatus("paid");
oilOrder.setPayTime(date);
// 修改油罐容量
List<JSONObject> jsonObjects = JSONArray.parseArray(map1.get("oilOrder"), JSONObject.class);
if (jsonObjects.size()<=1) {
@ -191,6 +193,7 @@ public class FyPayServiceImpl implements FyPayService {
// 商品订单
goodsOrder.setStatus("paid");
goodsOrder.setPayTime(date);
if (!map1.get("goodsOrder").equals("[]")){
List<JSONObject> goods = JSONArray.parseArray(map1.get("goodsOrder"), JSONObject.class);
OrderGoods orderGoods = new OrderGoods();
@ -198,7 +201,7 @@ public class FyPayServiceImpl implements FyPayService {
orderGoods.setOrderId(goodsOrder.getId());
orderGoods.setGoodsId(Integer.valueOf(good.get("id").toString()));
orderGoods.setNum(Integer.valueOf(good.get("num").toString()));
orderGoodsService.insertOrderGoods(orderGoods);
orderGoodsService.insertOrderGoods(orderGoods,storeId1);
}
}
}
@ -216,6 +219,8 @@ public class FyPayServiceImpl implements FyPayService {
hangBillService.updateHangBill(returnRecord.getHangBillId(), returnRecord.getAmount());
returnRecordService.updateReturnRecord(returnRecord);
}
receiveParameter.setType("7");
receiveParameter.setContent("挂账订单");
}
if (!ArrayUtil.isEmpty(list)){
if (list.size()>1){
@ -242,6 +247,10 @@ public class FyPayServiceImpl implements FyPayService {
}
if ("CVR".equals(type)) {
payStates = "paid";
receiveParameter.setType("2");
if (goodsOrder.getUserId()!=null){
receiveParameter.setUserId(goodsOrder.getUserId());
}
// if (!ObjectUtil.isEmpty(map1.get("orderId"))) {
//
// }
@ -260,6 +269,7 @@ public class FyPayServiceImpl implements FyPayService {
}else if (reqMap.get("trans_stat").equals("USERPAYING")){
resMap.put("msg","unpaid");
}else {
payStatus = "payFail";
if (!ObjectUtil.isEmpty(oilOrder)){
oilOrder.setOrderStatus("payFail");
}
@ -275,6 +285,9 @@ public class FyPayServiceImpl implements FyPayService {
returnRecord.setPayStatus("payFail");
returnRecordService.updateReturnRecord(returnRecord);
}
receiveParameter.setType("7");
receiveParameter.setContent("挂账订单");
}
if (!ArrayUtil.isEmpty(list)){
if (list.size()>1) {
@ -298,29 +311,77 @@ public class FyPayServiceImpl implements FyPayService {
}
}
if (!ObjectUtil.isEmpty(oilOrder)){
receiveParameter.setType("1");
if (oilOrder.getUserId()!=null){
receiveParameter.setUserId(oilOrder.getUserId());
}
receiveParameter.setContent("油品订单");
oilOrderService.updateOilOrder(oilOrder);
}
if (!ObjectUtil.isEmpty(goodsOrder)){
receiveParameter.setType("2");
if (goodsOrder.getUserId()!=null){
receiveParameter.setUserId(goodsOrder.getUserId());
}
receiveParameter.setContent("商品订单");
goodsOrderService.updateGoodOrder(goodsOrder);
}
if (!ObjectUtil.isEmpty(cashierOrder)){
receiveParameter.setType("6");
if (!ObjectUtil.isEmpty(oilOrder)){
if (oilOrder.getUserId()!=null){
receiveParameter.setUserId(oilOrder.getUserId());
}
}
if (!ObjectUtil.isEmpty(goodsOrder)){
if (goodsOrder.getUserId()!=null){
receiveParameter.setUserId(goodsOrder.getUserId());
}
}
receiveParameter.setContent("收银台订单");
cashierOrderService.updateCashierOrder(cashierOrder);
}
if ("CVR".equals(type) && !ObjectUtil.isEmpty(map1.get("orderId"))) {
// 储值卡
Integer id = Integer.parseInt(map1.get("orderId"));
cardValueRecordService.editPayStatus(id, payStates);
CardValueRecord byId = cardValueRecordService.getById(id);
receiveParameter.setType("3");
if (byId.getMtUserId()!=null){
receiveParameter.setUserId(byId.getMtUserId());
}
receiveParameter.setContent("储值卡订单");
}
if ("CFR".equals(type) && !ObjectUtil.isEmpty(map1.get("orderId"))) {
// 存油卡
// 油卡
Integer id = Integer.parseInt(map1.get("orderId"));
cardFuelRecordService.editPayStatus(id, payStates);
CardFuelRecord cardFuelRecord = cardFuelRecordService.queryById(id);
receiveParameter.setType("5");
if (cardFuelRecord.getMtUserId()!=null){
receiveParameter.setUserId(cardFuelRecord.getMtUserId());
}
receiveParameter.setContent("囤油卡订单");
}
if ("IOS".equals(type)) {
// 存油卡
// 积分商城
String storeId = ObjectUtil.isEmpty(map1.get("storeId"))?"-1":map1.get("storeId");
integralOrdersService.editPayStatus(orderNo, payStates,Integer.parseInt(storeId));
IntegralOrders integralOrders = integralOrdersService.queryIntegralOrdersByOrderNo(orderNo, Integer.parseInt(storeId));
receiveParameter.setType("4");
if (integralOrders.getUserId()!=null){
receiveParameter.setUserId(integralOrders.getUserId());
}
receiveParameter.setContent("积分订单");
}
this.insertAllOrderInfo(receiveParameter,payStatus);
}
}catch (Exception e){
log.error(e.getMessage());
@ -410,6 +471,26 @@ public class FyPayServiceImpl implements FyPayService {
@Autowired
private AllOrderInfoService allOrderInfoService;
/**
* 添加所有订单信息
*/
private void insertAllOrderInfo(ReceiveParameter receiveParameter,String payStatus){
AllOrderInfo allOrderInfo = new AllOrderInfo();
allOrderInfo.setOrderNo(receiveParameter.getOrderNo());
allOrderInfo.setType(receiveParameter.getType());
allOrderInfo.setStoreId(receiveParameter.getStoreId());
allOrderInfo.setGoodsMoney(receiveParameter.getGoodsMoney());
allOrderInfo.setPayType(receiveParameter.getPayType());
allOrderInfo.setUserId(receiveParameter.getUserId());
allOrderInfo.setPayChannel("cashier");
allOrderInfo.setStatus(payStatus);
allOrderInfo.setContent(receiveParameter.getContent());
allOrderInfoService.insertAllOrderInfo(allOrderInfo);
}
/**
* 添加所有订单信息
*/
private void insertAllOrderInfo(ReceiveParameter receiveParameter){
AllOrderInfo allOrderInfo = new AllOrderInfo();
allOrderInfo.setOrderNo(receiveParameter.getOrderNo());

View File

@ -78,9 +78,10 @@ public class MerchantConfigServiceImpl extends ServiceImpl<MerchantConfigMapper,
}
@Override
public void updateMerchOrter() {
public void updateMerchOrter(int storeId) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("is_use","1");
queryWrapper.eq("store_id",storeId);
List<MerchantConfig> list = baseMapper.selectList(queryWrapper);
if (list.size()>0){
for (MerchantConfig merchantConfig : list) {

View File

@ -54,7 +54,7 @@ public class OilConfigServiceImpl extends ServiceImpl<OilConfigMapper, OilConfig
}
}
// 将其他使用的账户关掉
merchantConfigService.updateMerchOrter();
merchantConfigService.updateMerchOrter(nowAccountInfo.getStoreId());
// 改变目前使用账户
MerchantConfig merchantConfig = merchantConfigService.selectMerchById(list.get(index).getMerchConfigId());
merchantConfig.setIsUse("1");

View File

@ -105,5 +105,12 @@ public interface IntegralOrdersMapper {
int editPayStatus(@Param("orderNumber") String orderNumber,@Param("payStates") String payStates, @Param("storeId") Integer storeId );
// int editPayStatus(@Param("orderNumber") String orderNumber,@Param("payStates") String payStates, @Param("storeId") Integer storeId );
/**
* 根据订单号查询订单信息
* @param orderNo
* @return
*/
IntegralOrders queryIntegralOrdersByOrderNo(@Param("orderNumber") String orderNo,@Param("storeId") Integer storeId);
}

View File

@ -440,6 +440,12 @@
</update>
<select id="queryIntegralOrdersByOrderNo">
select * from integral_orders where order_number = #{orderNumber}
<if test="storeId != -1">
and store_id = #{storeId}
</if>
</select>
</mapper>

View File

@ -91,4 +91,11 @@ public interface IntegralOrdersService {
*/
Boolean checkTheRedemptionLimit(Integer giftId);
/**
* 根据订单号查询订单信息
* @param orderNo
* @return
*/
IntegralOrders queryIntegralOrdersByOrderNo(String orderNo,Integer storeId);
}

View File

@ -516,4 +516,9 @@ public class IntegralOrdersServiceImpl implements IntegralOrdersService {
return flag;
}
@Override
public IntegralOrders queryIntegralOrdersByOrderNo(String orderNo,Integer storeId) {
return integralOrdersDao.queryIntegralOrdersByOrderNo(orderNo,storeId);
}
}

View File

@ -31,7 +31,7 @@ public class AllOrderInfo extends BaseEntity implements Serializable {
*/
private String orderNo;
/**
* 类型1油品2商品3储值卡4积分5囤油卡6油品加商品
* 类型1油品2商品3储值卡4积分5囤油卡6油品加商品(收银台订单)7挂账订单
*/
private String type;
/**

View File

@ -24,11 +24,11 @@ public interface OrderGoodsService extends IService<OrderGoods> {
* @param goods
* @return
*/
public int insertOrderGoods(OrderGoods goods);
public int insertOrderGoods(OrderGoods goods,Integer storeId);
/**
* 添加库存跟踪信息
* @param goods
*/
public void insertStockTrack(OrderGoods goods);
public void insertStockTrack(OrderGoods goods,Integer storeId);
}

View File

@ -287,7 +287,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
orderGoods.setOrderId(ljOrder2.getId());
orderGoods.setGoodsId(Integer.valueOf(good.get("id").toString()));
orderGoods.setNum(Integer.valueOf(good.get("num").toString()));
orderGoodsService.insertOrderGoods(orderGoods);
orderGoodsService.insertOrderGoods(orderGoods,storeId);
}
}
ljOrder1 = orderService.selectGoodsOrder(orderNo);
@ -402,7 +402,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder.setGoodsOrderId(goodsOrder1.getId());
}
cashierOrderService.insertCashierOrder(cashierOrder);
this.insertAllOrderInfo(orderNo,storeId,oilAmount,payType,userId,"PC");
// this.insertAllOrderInfo(orderNo,storeId,oilAmount,payType,userId,"PC");
return orders;
}
@ -516,7 +516,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
cashierOrder.setOilOrderId(oilOrder.getId());
cashierOrderService.insertCashierOrder(cashierOrder);
this.updateGrowthValue1(oilAmount,userId, Integer.valueOf(oilOrder.getOils()),0.0,storeId);
this.insertAllOrderInfo(orderNo,accountInfo.getStoreId(),oilAmount,map.get("payType"),userId,"applet");
// this.insertAllOrderInfo(orderNo,accountInfo.getStoreId(),oilAmount,map.get("payType"),userId,"applet");
res.put("success","success");
} else {
@ -590,7 +590,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
}
cashierOrderService.insertCashierOrder(cashierOrder);
this.insertAllOrderInfo(orderNo,accountInfo.getStoreId(),oilAmount,map.get("payType"),userId,"applet");
// this.insertAllOrderInfo(orderNo,accountInfo.getStoreId(),oilAmount,map.get("payType"),userId,"applet");
res.put("success","success");
}

View File

@ -35,16 +35,18 @@ public class OrderGoodsServiceImpl extends ServiceImpl<OrderGoodsMapper, OrderGo
}
@Override
public int insertOrderGoods(OrderGoods goods) {
public int insertOrderGoods(OrderGoods goods,Integer storeId) {
int row = baseMapper.insert(goods);
this.insertStockTrack(goods);
this.insertStockTrack(goods,storeId);
return row;
}
@Override
public void insertStockTrack(OrderGoods goods) {
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
Integer storeId = nowAccountInfo.getStoreId();
public void insertStockTrack(OrderGoods goods,Integer storeId) {
if (storeId==null){
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
storeId = nowAccountInfo.getStoreId();
}
// 查询插入的库存统计信息
StockStatistic stockStatistic = stockService.selectStockByGoodsId(goods.getGoodsId());
// 添加库存跟踪信息