package com.duoqio.boot.business.app.service.shopping.impl;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Objects;
import java.util.Optional;
import java.util.UUID;
import java.util.function.BiFunction;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.LongFunction;
import java.util.stream.Collectors;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import org.springframework.web.util.WebUtils;
import com.alibaba.fastjson.JSONArray;
import com.duoqio.boot.business.app.controller.money.CapitalCode;
import com.duoqio.boot.business.app.repository.shopping.GoodsProductRepository;
import com.duoqio.boot.business.app.repository.shopping.GoodsRepository;
import com.duoqio.boot.business.app.repository.shopping.OrderEvalRepository;
import com.duoqio.boot.business.app.repository.shopping.OrderRefundRepository;
import com.duoqio.boot.business.app.repository.shopping.OrderRepository;
import com.duoqio.boot.business.app.repository.shopping.ShopRepository;
import com.duoqio.boot.business.app.repository.user.ShopAddrRepository;
import com.duoqio.boot.business.app.repository.user.UserRepository;
import com.duoqio.boot.business.app.service.message.NotifyServer;
import com.duoqio.boot.business.app.service.money.MoneyServer;
import com.duoqio.boot.business.app.service.shopping.OrderServer;
import com.duoqio.boot.business.pc.service.money.PcMoneyServer;
import com.duoqio.boot.entity.GoodsInfoTbl;
import com.duoqio.boot.entity.GoodsProductTbl;
import com.duoqio.boot.entity.OrderEntity;
import com.duoqio.boot.entity.OrderEvalTbl;
import com.duoqio.boot.entity.OrderInfoTbl;
import com.duoqio.boot.entity.OrderInfoTbl.OrderType;
import com.duoqio.boot.entity.OrderInfoTbl.PayType;
import com.duoqio.boot.entity.OrderRefundTbl;
import com.duoqio.boot.entity.ShopAddrTbl;
import com.duoqio.boot.entity.ShopInfoTbl;
import com.duoqio.boot.entity.UserCfg;
import com.duoqio.boot.enums.goods.OrderReturnType;
import com.duoqio.framework.constant.SystemConstant;
import com.duoqio.framework.exception.BaseException;
import com.duoqio.framework.result.GeneralResult;
import com.duoqio.framework.util.ThreadParameterUtil;
import com.duoqio.framework.util.base.impl.BaseServiceImpl;
import com.duoqio.module.util.DataConversion;
import com.duoqio.module.util.FieldStringVariable;
import com.duoqio.module.util.PubFun;
import com.duoqio.module.util.bigDecimal.BigDecimalUtil;
import com.duoqio.module.util.date.CalculateTypeEnum;
import com.duoqio.module.util.date.NewDateUtil;
import com.duoqio.module.util.date.TimeTypeEnum;
import com.duoqio.module.util.jdbc.SHCommonDao;
import com.duoqio.module.util.pay.wx.WxH5PayUtil;
import com.duoqio.module.util.random.RandomNumber;
import com.duoqio.module.util.system.SystemConfig;
import com.github.wxpay.sdk.WXPayUtil;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Repository
public class OrderServerImpl extends BaseServiceImpl implements OrderServer {
private SHCommonDao shCommonDao;
private OrderRepository orderRepository;
private OrderEvalRepository orderEvalRepository;
private ShopAddrRepository shopAddrRepository;
private OrderRefundRepository orderRefundRepository;
private GoodsProductRepository goodsProductRepository;
private ShopRepository shopRepository;
private GoodsRepository goodsRepository;
private UserRepository userRepository;
private MoneyServer moneyServer;
private NotifyServer notifyServer;
private PcMoneyServer pcMoneyServer;
@Autowired
public OrderServerImpl(SHCommonDao shCommonDao, OrderRepository orderRepository,
OrderEvalRepository orderEvalRepository, ShopAddrRepository shopAddrRepository,
OrderRefundRepository orderRefundRepository, GoodsRepository goodsRepository, UserRepository userRepository,
MoneyServer moneyServer, NotifyServer notifyServer, ShopRepository shopRepository,GoodsProductRepository goodsProductRepository,
PcMoneyServer pcMoneyServer) {
super();
this.shCommonDao = shCommonDao;
this.orderRepository = orderRepository;
this.orderEvalRepository = orderEvalRepository;
this.shopAddrRepository = shopAddrRepository;
this.orderRefundRepository = orderRefundRepository;
this.goodsRepository = goodsRepository;
this.userRepository = userRepository;
this.moneyServer = moneyServer;
this.notifyServer = notifyServer;
this.shopRepository = shopRepository;
this.goodsProductRepository = goodsProductRepository;
this.pcMoneyServer = pcMoneyServer;
}
/**
* @Title: orderListToVo
* @Description: 返回订单状态
* @author 程智多
* @Date 2019年7月17日 下午3:51:12
* @param list
* @return List<Map<String,Object>>
*/
private List<Map<String, Object>> orderListToVo(List<Map<String, Object>> list){
List<Map<String, Object>> collect = list.stream().map(m->{
if (DataConversion.objectToInt(m.get("status1")) == 1) {
m.put("orderType", OrderType.PENDINGPAYMENT);
m.put("orderTypeStr", "待付款");
} else if (DataConversion.objectToInt(m.get("status1")) == 2) {
m.put("orderType", OrderType.PENDINGDELIVERY);
m.put("orderTypeStr", "待发货");
} else if (DataConversion.objectToInt(m.get("status1")) == 3) {
m.put("orderType", OrderType.PENDINGRECEIPT);
m.put("orderTypeStr", "待收货");
} else if (DataConversion.objectToInt(m.get("status1")) == 4) {
m.put("orderType", OrderType.COMPLETED);
m.put("orderTypeStr", "已完成");
} else if (DataConversion.objectToInt(m.get("status1")) == 5) {
m.put("orderType", OrderType.REVIEWED);
m.put("orderTypeStr", "已评价");
} else if (DataConversion.objectToInt(m.get("status1")) == 7) {
m.put("orderType", OrderType.CANCELLED);
m.put("orderTypeStr", "已取消");
} else if (DataConversion.objectToInt(m.get("refund_flag")) == 4) {
m.put("orderType", OrderType.REFUNDING);
m.put("orderTypeStr", "退款信息待完善");
} else if (DataConversion.objectToInt(m.get("refund_flag")) == 5) {
m.put("orderType", OrderType.REFUNDING);
m.put("orderTypeStr", "退款中");
} else if (DataConversion.objectToInt(m.get("refund_flag")) == 1) {
m.put("orderType", OrderType.REFUNDING);
m.put("orderTypeStr", "退款中");
} else if (DataConversion.objectToInt(m.get("refund_flag")) == 2) {
m.put("orderType", OrderType.REFUNDSUCCESSFULLY);
m.put("orderTypeStr", "退款成功");
}
return m;
}).collect(Collectors.toList());
return collect;
}
/* 查询购物车商品 */
@Override
public Map<Object, List<Map<String, Object>>> queryShopCar() {
Map<Object, List<Map<String, Obj
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
商城完整代码,前端HBuild,后端JAVA (3764个子文件)
00da6dec11452b752ff33405d0a656e3daf34a85 7KB
01c8dc65b46b7797a288208d50ddc83291653540 250B
01de9e4280757c661166cfa8691199df7a9c4750 548B
03eb5f37590ae9d3b23ab9900ec6283952b02d49 241B
0696f021cc883bb5c38568b4fc8d3f4349ac3880 166B
078c0ecb03d86495247bff412e0ef13ac211b752 733B
086b0fdb070209b4dbc3dbaf5394db754debd36f 1KB
094beb77d27dad401d7e6ed75170def4528f5481 117B
0aa60cf576e19b9e04104af4723ad2c3403e5840 555B
0ab669d96d9099f011403044e432e73a3de90380 0B
0b51a4c1f3a2672aace81e5f66002f2634f668f8 297B
0cf06e7f10b4fc1215e611db5af60b4eb1de5c5b 2KB
0e1c56235766778cee7370beaef9077d2e830fb1 92B
0eb8f08d32c2102e9dced1c0f5a64e42b08237e3 995B
103eaea2493377709268160e43f816eb77105ff2 444B
1291b1d9a263598354f2ffbf8d33c6fc5c9e204d 0B
1518dea001a81b40d1e4506aed1ae6109253fe80 92B
1ba232d3492c226e1a8664d99084a49dc65a5d23 400B
1c02939840e5d8be9898bcb2bab59c3971b88f0c 679B
1ef38c38d616bb105ca0310bce7e29f9c3f45652 1KB
20cdf0c951779cea9da5e6a51a388013f5a90f24 0B
20f10cdff6034ea0e02eb070256eaa37b9a559a4 0B
20fdd87b4935fff855c9328bcb39821436743cf0 1KB
210eb324d62951c3fb0994402053be7303d05914 8KB
23947402407251aa9645cbcd6f38597e3648febd 10KB
2765b38233c9b72f696f5de27d75731959aae926 2KB
280e3f58efff840cbd6e55e2099341bf3a3439bc 1KB
28b990480872648cab6fd5ce6b0dc87ca30ff3e9 92B
29122df9339e011e9f7b5b171e89ca59f3afdf38 170B
2a59c48148dc89b0f255efb1feb7012c90995e8f 414B
2fc782b8536f4857bc0e75a5f2752152142ea44f 0B
312986b4af2b0fb1344689c3a28c82d23cfb1c11 172B
316d317ac08830b7a4eafe55b2115c360dfda612 3KB
3224ced9d01db5ea2c87351087467885118e1348 417B
37463aa36c548de6dd90ac6a10aee1b9d1461e01 0B
3855eebc19b3438840a099de918bfd6f8cb479e9 469B
38cc216ffce59daf23cde6c0c4083066cd6997b2 2KB
3999f103cc49afb2a968367c92009c1ed3a1bca5 0B
3a12eeda499891f501c6754780b797d2f2eb94f3 256B
3a5b7e4365c0b297cdf4ca7f5eea40120e7ccbcf 0B
3c1f94bb228a768484f981fdda97f0338e63a8d3 830B
3de3fe5de19123e403db2fc104ce346cb478a777 974B
3e43b8fc9315bba7e54596fa4232ac7afb5cfec1 280B
3eb7b0cf38c3197be091c8ee0c28ed9411e366b3 0B
3fcaff5de078071e0ec01af13e0c257a920ba5c0 86B
426583e7c808669987de4cddfbf927536605ef6c 0B
442292b8a7efeabbe4cc176709b833b1792140ec 72B
467c2a2dad92fb7833d3603a9d3653ecc11dee45 0B
4739ccc9d5a4ac5425ff12b47e12647183696cec 0B
47a81952143040e6d9fd6baa57a2dfd77901f92a 256B
4af84373934aca14a3b306faccdd0d22b6d189ab 237B
4d6eb525072281ac513967c6a8ddacaeaa11ee25 2KB
4e3beae748ca301a3d12f11525d27829c2a6e643 0B
4ea4054ec73da8493c802f6a5df3ecbfd0913ee8 0B
51203b6466e7057a2400641238b8aa3e185d1cf4 166B
5194fbb9be287a3f0e9c955087a1448aa4536beb 164B
52ddf0df0741eadd0ff9134d5d25580c0a182206 750B
538e7bd3ec3ea738f4bda107dd90d9223f6fabf0 710B
54cd1ff3267830fba4ca487497eabfb8c05bc74d 199B
558e553f8cffa67c58aa42cd8099597fac56cd6d 613B
55c77a4463f24fceb27a238f3f0bf25832b87283 0B
5cd3103dc6184a7fd480c7a0569b09a5d68d8971 266B
5ea7c7241cd0f02c9121a283dec2dd47b1a1b1d0 165B
604a7ea4c6dc6b2fd2d0f1651cbf2a6d2ba27c9a 2KB
606d370eb0bd46e7d9ffe1953c787e73ab9b1490 241B
60d6e477c286f4f9e94256b3bacb00ecbaa6fa93 644B
60e729e2ecebf7a21e8c6f1646f71fd34b511477 0B
610cdf7e954540d2b83673c25f88557d06a945b0 250B
61f0f06347ed93e4f1aa66a16c2cec7658b1af1f 172B
64d5bc4a7c60eea209cce5684fbf2b572fe25b63 2KB
650f49396a8dc7bb90f88c8a1d347dac21bfbcc0 3KB
65c257c0ac6a9943a94728738cdf29a050d2d65b 86B
667943954d51d01c79cf57f6f59de28ca487b248 6KB
66ed317b7c17596be2ab1435dab2557f9c112dc2 2KB
67b5d3c3ea9c9a7397a50aeac84b846b4e4255bb 366B
6831e81f1de7c69671731be7fda24f2e13b1ac4b 172B
687122ff9a41c120035629d7b7788decc1e06f36 187B
69789ba822a03f7cbe0d2b46eeb62d4d55ba537a 1KB
6a3ba7d0ee3cbb36147e940d7373e6a44545a59d 185B
6cc6f650667fbbe4909d7e31d35275a383b17275 304B
6d56b23dfd3e8a52d5110a61d995653207085ece 0B
6d7e9b8bbd44bce2f094315e24241657ee70793c 2KB
6e659a4963b74dae5023c7d79af937302299eea4 303B
6f0afcf3dda4c03abd166b09feaf5b05d9878957 640B
6f9547e649f77c10175c378cc7731812332ac287 172B
6fa738c5d7779b106a6795a7f683ff08e2f51e84 300B
6fd2aa1dcc699532ebc226d4f0569a94526f0e1d 5KB
70dec7b31954b17aaa338b3f5a7ba58e4cff9cc5 98B
70e6b0a99f3c88218e0ea92fa266f929d7ca169f 330B
71bd9cec0fd67b4d258fb5195c5b466baf72bdc7 92B
7490c5c33bbbfa6583583f4290499dbd2d019dec 0B
75c90725331a5d118556288dd4c2aab6f8e35bef 264B
77bcb9a535ce0da98c6efd87e7a0f36fddd08035 0B
7d69e2c51353abf22f3f0dabd36bcd963337a872 2KB
7e68502215d11916b95d90c519b59a871166f371 334B
7f152df523e27d197c08556fb6195912bfe81dea 0B
801f8db6b73b9739aefcc30c584bf3e1251ea353 428B
80e24bb9dfda07aefb11188585d1248d2ff325a1 0B
82580bd4655501fdba59d8e8dde6c3dab26d116c 124B
82facb588a71737e47db674568f376ef653d890c 485B
共 3764 条
- 1
- 2
- 3
- 4
- 5
- 6
- 38
资源评论
- qq_189241072020-05-05别下载,都是空架子,没啥用!!!xiao7cn2020-10-25小朋友,你懂程序,你懂搭建环境???
xiao7cn
- 粉丝: 15
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功