ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/AppMiniLoginDTO.java
@@ -23,6 +23,9 @@ private Integer type; @ApiModelProperty(value = "电话") private String phone; } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MemberAuctionSalesroomVO.java
@@ -3,6 +3,9 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; @Data public class MemberAuctionSalesroomVO { @ApiModelProperty(value = "拍卖场id") @@ -26,4 +29,13 @@ @ApiModelProperty("报名人数") private Integer applyNum; @ApiModelProperty(value = "开始时间") private LocalDateTime startTime; @ApiModelProperty(value = "结束时间") private LocalDateTime endTime; @ApiModelProperty(value = "保证金") private BigDecimal bond; } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/AuctionFallbackFactory.java
@@ -8,6 +8,7 @@ import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO; import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO; import com.ruoyi.system.api.domain.dto.BondDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import com.ruoyi.system.api.feignClient.AuctionClient; import org.springframework.cloud.openfeign.FallbackFactory; @@ -24,12 +25,12 @@ return new AuctionClient() { @Override public R<AuctionSalesroom> getauctionSalesroomOne(Long auctionSalesroomId, String source) { public R<AuctionSalesroom> getauctionSalesroomOne(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, String source) { return R.fail("获取普通拍卖场失败" + cause.getMessage()); } @Override public R<AuctionGoods> getauctionGoodsOne(Long auctionGoodsId, String source) { public R<AuctionGoods> getauctionGoodsOne(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, String source) { return R.fail("获取普通拍卖商品失败" + cause.getMessage()); } @@ -52,10 +53,7 @@ return R.fail("修改保证金支付状态失败" + cause.getMessage()); } @Override public R<List<OrderAuctionBond>> getAuctionGoodsOrderAuctionBondList(AuctionGoodsListDTO auctionGoodsListDTO, String source) { return R.fail("普通拍卖获取保证金失败" + cause.getMessage()); } }; } } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/OrderFallbackFactory.java
@@ -5,13 +5,7 @@ import com.ruoyi.common.core.enums.BondStatusEnum; import com.ruoyi.system.api.domain.Order; import com.ruoyi.system.api.domain.OrderAuctionBond; import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.OrderAuctionBondDTO; import com.ruoyi.system.api.domain.dto.OrderDTO; import com.ruoyi.system.api.domain.dto.OrderUpdDTO; import com.ruoyi.system.api.domain.dto.RefundDTO; import com.ruoyi.system.api.domain.dto.*; import com.ruoyi.system.api.domain.vo.OrderVO; import com.ruoyi.system.api.domain.vo.PayInfoVO; import com.ruoyi.system.api.feignClient.OrderClient; @@ -113,6 +107,11 @@ public R<List<Order>> getOrderByCouponIds(Collection<Long> couponIds, String source) { return R.fail("根据优惠券id列表获取订单列表失败" + cause.getMessage()); } @Override public R<List<OrderAuctionBond>> getAuctionGoodsOrderAuctionBondList(AuctionGoodsListDTO auctionGoodsListDTO, String source) { return R.fail("普通拍卖获取保证金失败" + cause.getMessage()); } }; } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/AuctionClient.java
@@ -10,6 +10,7 @@ import com.ruoyi.system.api.domain.dto.AppMiniLoginDTO; import com.ruoyi.system.api.domain.dto.AuctionGoodsListDTO; import com.ruoyi.system.api.domain.dto.BondDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import com.ruoyi.system.api.factory.AuctionFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PathVariable; @@ -22,12 +23,12 @@ @FeignClient(contextId = "auctionClient", value = ServiceNameConstants.RUOYI_AUCTION, fallbackFactory = AuctionFallbackFactory.class) public interface AuctionClient { @PostMapping("/forepart/auction-salesroom/getAuctionSalesroomOne") R<AuctionSalesroom> getauctionSalesroomOne(@RequestBody Long auctionSalesroomId, @PostMapping("/auction-salesroom/getAuctionSalesroomOne") R<AuctionSalesroom> getauctionSalesroomOne(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/forepart/auction-goods/getAuctionGoodsOne") R<AuctionGoods> getauctionGoodsOne(@RequestBody Long auctionGoodsId, @PostMapping("/auction-goods/getAuctionGoodsOne") R<AuctionGoods> getauctionGoodsOne(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PutMapping("/auction-goods/end/{id}") @@ -45,6 +46,5 @@ R<?> UpdateBond(@RequestBody BondDTO BondVO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/order-auction-bond/getAuctionGoodsOrderAuctionBondList") R<List<OrderAuctionBond>> getAuctionGoodsOrderAuctionBondList(@RequestBody AuctionGoodsListDTO auctionGoodsListDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); } ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/OrderClient.java
@@ -7,13 +7,7 @@ import com.ruoyi.common.core.enums.BondStatusEnum; import com.ruoyi.system.api.domain.Order; import com.ruoyi.system.api.domain.OrderAuctionBond; import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomDTO; import com.ruoyi.system.api.domain.dto.OrderAuctionBondDTO; import com.ruoyi.system.api.domain.dto.OrderDTO; import com.ruoyi.system.api.domain.dto.OrderUpdDTO; import com.ruoyi.system.api.domain.dto.RefundDTO; import com.ruoyi.system.api.domain.dto.*; import com.ruoyi.system.api.domain.vo.OrderVO; import com.ruoyi.system.api.domain.vo.PayInfoVO; import com.ruoyi.system.api.factory.OrderFallbackFactory; @@ -83,6 +77,8 @@ R<List<OrderAuctionBond>> getOrderAuctionBondList1(@RequestBody MemberAuctionSalesroomDTO memberAuctionSalesroomDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/order-auction-bond/getAuctionGoodsOrderAuctionBondList") R<List<OrderAuctionBond>> getAuctionGoodsOrderAuctionBondList(@RequestBody AuctionGoodsListDTO auctionGoodsListDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); @PostMapping("/order-auction-bond/getOrderAuctionBondone") R<OrderAuctionBond> getOrderAuctionBondone(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/forepart/ForepartAuctionSalesroomController.java
@@ -78,6 +78,14 @@ public R<AppMiniLoginVO> actionMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto) { return R.ok(iAuctionSalesroomService.actionMiniLogin(appMiniLoginDto)); } @PostMapping("/isMiniLogin") @ApiOperation(value = "拍卖师端-判断是否是拍卖师") public R<AppMiniLoginVO> isMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto) { return R.ok(iAuctionSalesroomService.isMiniLogin(appMiniLoginDto)); } @PostMapping("/getMemberAuctionSalesroomList") ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/inner/AuctionGoodsController.java
@@ -6,6 +6,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.annotation.InnerAuth; import com.ruoyi.system.api.domain.AuctionGoods; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PathVariable; @@ -33,8 +34,8 @@ @InnerAuth @PostMapping("/getAuctionGoodsOne") public R<AuctionGoods> getAuctionGoodsOne(@RequestBody Long auctionSalesroomId) { AuctionGoods auctionGoods=auctionGoodsService.getById(auctionSalesroomId); public R<AuctionGoods> getAuctionGoodsOne(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) { AuctionGoods auctionGoods=auctionGoodsService.getById(memberAuctionSalesroomBondDTO.getAuctionGoodsId()); return R.ok(auctionGoods); } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/inner/AuctionSalesroomController.java
@@ -5,6 +5,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.annotation.InnerAuth; import com.ruoyi.system.api.domain.AuctionSalesroom; import com.ruoyi.system.api.domain.dto.MemberAuctionSalesroomBondDTO; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -28,8 +29,8 @@ @InnerAuth @PostMapping("/getAuctionSalesroomOne") @ResponseBody public R<AuctionSalesroom> getauctionSalesroomOne(@RequestBody Long auctionSalesroomId) { AuctionSalesroom auctionSalesroomOne=iAuctionSalesroomService.getById(auctionSalesroomId); public R<AuctionSalesroom> getauctionSalesroomOne(@RequestBody MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) { AuctionSalesroom auctionSalesroomOne=iAuctionSalesroomService.getById(memberAuctionSalesroomBondDTO.getAuctionSalesroomId()); return R.ok(auctionSalesroomOne); } ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
@@ -57,6 +57,8 @@ AppMiniLoginVO actionMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto); AppMiniLoginVO isMiniLogin(@RequestBody AppMiniLoginDTO appMiniLoginDto); PageDTO<MemberAuctionSalesroomVO> getMemberAuctionSalesroomList(MemberAuctionSalesroomDTO MemberAuctionSalesroomDTO); ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -391,6 +391,7 @@ auctionGoodsVO.setStartTime(auctionGoods.getStartTime()); auctionGoodsVO.setStartingPrice(auctionGoods.getStartingPrice()); auctionGoodsVO.setStartStatus(auctionGoods.getStartStatus()); auctionGoodsVO.setAuctionStock(auctionGoods.getAuctionStock()); GoodsSku goodsSkuOne = goodsSkuClient.getGoodsSkuOne(auctionGoods.getGoodsSkuId(), SecurityConstants.INNER).getData(); auctionGoodsVO.setUnit(goodsSkuOne.getUnit()); auctionGoodsVO.setSpec(goodsSkuOne.getSpec()); @@ -466,7 +467,7 @@ }else { auctionGoodsinfoVO.setIsCollection(1); } List<OrderAuctionBond> datas = auctionClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData(); List<OrderAuctionBond> datas = orderClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData(); if (datas.size()>0){ auctionGoodsinfoVO.setIsApply(2); }else{ @@ -505,7 +506,7 @@ public PageDTO<AuctionGoodsListVO> getWdAuctionSalesList(AuctionGoodsListDTO auctionGoodsListDTO) { MemberAuctionSalesroomDTO memberAuctionSalesroomDTO =new MemberAuctionSalesroomDTO(); memberAuctionSalesroomDTO.setMemberId(auctionGoodsListDTO.getMemberId()); List<OrderAuctionBond> data = auctionClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData(); List<OrderAuctionBond> data = orderClient.getAuctionGoodsOrderAuctionBondList(auctionGoodsListDTO, SecurityConstants.INNER).getData(); Set<Long> goodsSkuIdList = null; if (data!=null){ goodsSkuIdList = data.stream().map(OrderAuctionBond::getAuctionSalesroomId) ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
@@ -184,15 +184,15 @@ /** * appID **/ private static final String APP_ID_PROD = "2021004147684313"; private static final String APP_ID_PROD = "2021004150664294"; /** * 私钥 */ private static final String APP_PRIVATE_KEY = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCg31tKXap7oTKKKDtfXc/hQjriSJkKopfRkh9j1UA/BpY+6GLkbJhg8kw9CRCILjfi5M0F3FCu+j1ogeDE1ivRGJlX1l/TGj+HuM1g8qLx/tD5D+9nJq5UHfaoKxXPko8H3AWcN1n/MAq3kRwUJRkeYJyYrZ7Sd6RU2taVLktWu92lqoUahjFkQSkdJoKi77v5i1T56PLRFfClt72tnvgol4OXBfFEjpGVrnuYoiHCgLV9eN5Qmvdas/04TtU396p+atYycU2P/dU9fdc8NFFFJo+eYH7astJXIQsowpLtTS7lavQuzCcLvC20pRBPhql5+5X96DVdnOLMbdUKwLQ9AgMBAAECggEAZLuXgVhnYSSN7f7FNrEaczWyg3DsC8HGCN9TsoKcyRpJyDhhfCEXxVTTMkDTzkIKkpOsYagUCYz+GMuCwB5Pr42Ur3C37gr4jvbD+5nTOG7T0bENumx5Kojco27fKGvgDg7SoH/0ZZtiipFdoKueL+xVAjFtSuLJzqx9Q0qKuFLJH0lrQfHYyGcq9ZzrPKLrMZb3Ve3upmpaLjIddZmqnzK7g5lx/OLHEujXIR9u0VWzzxqeaFkgCAMuyzkNYwlpqtiTJsEggbnG9YsLf0n156F0dXo2i44fUav+bKU2ksv7YmENx3R9gPDuPAKH+MwQlwVIc6tR8jKoz0cUbmaujQKBgQDhvaQd4jg9zszdVw1enPWKWViu4rsEFirIz3CUBRB3g2mkZ+tXpQQps7bL7KLBFfXmVYiVMu4EoOfZlkAjJPbFMj9aSPZ3pbx0VnHG8+3T9T2eJdzZp/CehG3MyycNHxAbbl2B04Chiiyf67R0b4ZLMHoElQgJP9jF1q3Xiloi0wKBgQC2b73S4LZWlWkyIsmHYHmXyWta64W2whlL4Nsy97tl4kZNfLCG7mgG5FhHhi16lT7J6Sw1D2FgFov2B1r9+yGBRxckGzWoY5m6FtBE/l+42+gxsB41+kEgirVjlEaX7YBXmnux2LntPVlJOG6HTizjcUnTesGIRvwbmbR2tuXCrwKBgQCMJwKq7xW+AhQdY/vP/yFPaRNvWSOFcQHVNT2PGOnVWciQI1jxTGmePo7CY0PVH35RKE+pWjp+syvfYrKlX0C6w+yjcGNde4/apwTy4eWJ0FwWQSmyFNuGf2/wUz0Gn3+PmGEDxr25DaGRFHUwSUGWkx1elOytWW+LvTKnfKVjswKBgGuh50MnskvI4IRkw7Mr9vDXM5AzjfLx9syuf4RFZflJEyMaImeo9hTC2VZxUhmVPbMP7zXqug9fnflsA4H+jJjh4UQ7DWAoSwTf+sYJsV211/qgpmJAH/Zb/4Idc7yksWh9yuZ1L9RIsomhUoxfUdpp9x1euhl1j72U5ER5yXofAoGAZNrIYFWk4S8mqFY8/h0YVGxT7Hj0ppLsq20N4OzglScoEEG+aYmWDOQU9kWcxsD44bMdzk2k0DyOhHbp8Tjd1hp0UFb03s8HgERcFHMZMzQ5oqtWQEoYiyQZxReXZZvWUbV+dg1HXXG8I26XAKb3OWFUIBBfKa2/Ig9ensY9m+M="; private static final String APP_PRIVATE_KEY = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC3ap1qQ5GTe+syB8Tu/fH8nRdpjA7yNgLINR/kFq1VFzxDref7DQDUDWXt+s5QZyBjL1UfbQWtA96F+OpgmIiNMdZSn9FH/w5XSqSd7B4nAa1sgfdLdZDvm+crqzn8OzyEJTrO8tihF+9K+btBl37s3QfmmzCRl1PAAMGqfy/JcQ2aivY+hxb25V0kD5AAXM7mVC2zzcBrykzafQCXEnDC7ls4Hjy0agmq1bKSx8SLYTsXAzZiGk9E7yh76nDAB+P1+kKPEYJXociU3k4YRR7l+6tzBPd+/mVkL34nuV5IiAK/795CrP/9gC50nZK/6CqSPDlQlOaAaJ2uZvAOeKx3AgMBAAECggEAMzw5+swjJ0KvYYtgDK6tYTZ0qswwBKLnxgto/CsFgkZ6VCGJMszgFVwkxASSi00zc+Ft8thehIUXLO9qcU9Knb51MyFnsafi1qmIMIEbryO90RjA/rg5o2U2fzFWgkn9zqAjvFmEAAQSmSwHjfwGvZ3Erjtdpt3RzEmpz7m1nJxYuZ2JLdo8AIY+iYn1NeDxHMi27RtqsZje7RV5YXrqKtMMzW2atmj+Dbn/E1pxpF0Dz6l0TqQh5B+9j1XlPTZKcYOYHNI0ACV+dV1NZsqmdhX0lKtQbsj/Q67vhq7uCmQRKcEka/5Z0X/TOKbwJE6i2/YEuA4PUGLpBMZQXhSGYQKBgQD50IuUTG6fg1dqFt9bJXxq2i1lkIHvzaCkHqVnTMyTDs+VcO2S6YaAFy6BLSI933qvHLogkhqnHiN+BRHe/M5+4TAOx30SQlJYa5ojpNFwMnRSZgxLoEddwlfj6qTnCgDW3CsUPR85x85NjIhONy75muNnNG8GHdn3blk2Y7KhpwKBgQC79TQhz5eJ6cwiWPWMWnnSAVvFKW4iPZjkbk+Sl7JXuqzvsdE47gGN0Vk8iYWEc2WrnQY6vf7WnamQYi+Gr5ySfTSt9qwvRx0IRzHdSZkOsHJLBCnAt+Pf+pSBc2Z788iUXVbDRAIfF6YYG44P3jHspbnGPJt14PP0sHbPmh7YsQKBgGzGGYChJyndjpprCyYs1FfSWCH5IhrAdkn/7hVko08FC+4OFeP6Os5bSayFcntua4UEBSdZdrF9tgaRPo7RlTg55SsKQbNJnYFSmPMcOPWZgny+YmwrheeVT5+188eF24eypi9Rzd7i2Tl7D36/GH0mrA2sDwuiw92w9rdwAb/RAoGAf6RDZPqvNI87e8/h4RDITd9yTPCXxFUEcYygKTMvf/hb3ONq7DhlgcO70CqsK4iacPLP+jBw0Zp8PnsPP24e7DRvA/zSbcDjbG285URH1vvogh0vpZq7+60WENsnq+GgQ3EnrK+QqUDMIO8FiK0iRk09XexmvqSnx3HXHaDSdeECgYB9htO5mOn2/ugIeMw11g+JJkZ/hzE55/6fLf7zh3yel5EflmAdYRv0lHafjyXIzNrAnBgD95x4LKGLi9A5AMo9SJJu0ZOg1KujKPVY4ByCm9SO7ErJDuHI4AhtewdHhYDpnXMakoxm/medSjlt7GCVv7E/eDpNZs+MLi9MiTFx2g=="; /** * 支付宝公钥 */ private static final String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+tCVKqUmlHDL8Ki1TUJtzE5IKV1irJuoHWZTvndJCKJJ8bdWxL9mu5xsy8KkfrnS6wJIKBMLTxMoYQHG7l2Gt07YyUCYHS5+yvbHtTkyFFy2KRPeUEWXz1Tm4juvInDvvr+n7v9ETepToGhC+UDlQcBvuSppw8N+463E+1GRrC4APwXYGLzaIvYvDHcQAULkWhXsjzxJSmeSi12kqWKlgnVJC1y0FT8xQtvhwShfaIqKwzErn9S2z7JjdXboJMUYQHoqF1A4SmWY8c0qawqvx2hGP36W3RDQ4cczzFwUHS1Cylhsbgh1COc4OdANCX4Np2NUzaRDCNzN0WVFKtK+QIDAQAB"; private static final String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlW2RMACojdqTa8H+j6411Lm5UipGXXbQiswq50rUflwjTj843zNVaVpk8uJmbdmtUBJlmblgBS/a31O4L4LrHB8WxJ+w0f9DBNTq9T6b80MiAVnU/3gXK365DmbzPWS5pR9wEgJVHnfOFUbsB5AVFHV0m9hUZcPv7xveuEp3BEoD5smaDJByR+KgFw0Q0JgINhhE6bsEa3UgJ198af269LtQ5HJl1TWLI8aeqW14HrxyADIt49NB9KZ8MOdKP+66HWcrXlipKFHtccy3dff72DqPmFdESoXfLXKZyhU5w9v4Q5F6UoAGTPwl9KQwikTobNeJ/7su7X3AB6+C14J4sQIDAQAB"; @@ -244,10 +244,10 @@ @Override public AppMiniLoginVO actionMiniLogin(AppMiniLoginDTO appMiniLoginDto) { AppMiniLoginVO appMiniLoginVo = new AppMiniLoginVO(); if (appMiniLoginDto.getType()==1) { /*if (appMiniLoginDto.getType()==1) { if (appMiniLoginDto.getAuth_code() == null || appMiniLoginDto.getAuth_code().length() == 0) { } else { //1. 获取验签和解密所需要的参数 } else {*/ /* //1. 获取验签和解密所需要的参数 Map<String, String> openapiResult = JSON.parseObject(appMiniLoginDto.getAuth_code(), new TypeReference<Map<String, String>>() { }, Feature.OrderedField); @@ -281,7 +281,7 @@ String plainData = null; if (isDataEncrypted) { try { plainData = AlipayEncrypt.decryptContent(content, encryptType, "VSpPcLQjLSoTz6Yd7KNoyQ==", charset); plainData = AlipayEncrypt.decryptContent(content, encryptType, "XABBSOeWDakvuG9TDez4Qg==", charset); } catch (AlipayApiException e) { //解密异常, 记录日志 e.getMessage(); @@ -293,16 +293,16 @@ Map<String, String> openapiResult1 = JSON.parseObject(plainData, new TypeReference<Map<String, String>>() { }, Feature.OrderedField); R<SysUser> sysUserR = sysUserClient.queryUserByPhone(openapiResult1.get("mobile")); */ /* R<SysUser> sysUserR = sysUserClient.queryUserByPhone(appMiniLoginDto.getAuth_code()); SysUser data = sysUserR.getData(); appMiniLoginVo.setSysUser(data); appMiniLoginVo.setPhone(openapiResult1.get("mobile")); appMiniLoginVo.setPhone(appMiniLoginDto.getAuth_code()); } }else{ */ String responseAccessToken = null; /* String responseAccessToken = null; try { responseAccessToken = getAccessTokenByWX(); } catch (Exception e) { @@ -328,18 +328,30 @@ String phoneInfo = jsonUserPhoneNumber.getString("phone_info"); JSONObject jsonUserPhoneInfo = JSONObject.parseObject(phoneInfo); String mobile = jsonUserPhoneInfo.getString("purePhoneNumber"); //获取用户 R<SysUser> sysUserR = sysUserClient.queryUserByPhone(mobile); //获取用户*/ /* R<SysUser> sysUserR = sysUserClient.queryUserByPhone(appMiniLoginDto.getCode()); SysUser data = sysUserR.getData(); appMiniLoginVo.setSysUser(data); appMiniLoginVo.setPhone(mobile); } appMiniLoginVo.setPhone(appMiniLoginDto.getCode()); }*/ R<SysUser> sysUserR = sysUserClient.queryUserByPhone(appMiniLoginDto.getPhone()); SysUser data = sysUserR.getData(); appMiniLoginVo.setSysUser(data); appMiniLoginVo.setPhone(appMiniLoginDto.getAuth_code()); return appMiniLoginVo; } @Override public AppMiniLoginVO isMiniLogin(AppMiniLoginDTO appMiniLoginDto) { AppMiniLoginVO appMiniLoginVo = new AppMiniLoginVO(); R<SysUser> sysUserR = sysUserClient.queryUserByPhone(appMiniLoginDto.getPhone()); SysUser data = sysUserR.getData(); appMiniLoginVo.setSysUser(data); appMiniLoginVo.setPhone(appMiniLoginDto.getCode()); return appMiniLoginVo; } @Override @@ -355,9 +367,12 @@ memberAuctionSalesroomVO.setDescription(auctionSalesroom.getDescription()); memberAuctionSalesroomVO.setStatus(auctionSalesroom.getStatus().getCode()); memberAuctionSalesroomVO.setSalesroomId(auctionSalesroom.getId()); memberAuctionSalesroomVO.setStartTime(auctionSalesroom.getStartTime()); memberAuctionSalesroomVO.setEndTime(auctionSalesroom.getEndTime()); memberAuctionSalesroomVO.setCoverPic(auctionSalesroom.getCoverPic()); memberAuctionSalesroomVO.setBond(auctionSalesroom.getBond()); List<OrderAuctionBond> data = orderClient.getOrderAuctionBondList1(memberAuctionSalesroomDTO, SecurityConstants.INNER).getData(); if (data.size()>0){ if (data!=null||data.size()>0){ memberAuctionSalesroomVO.setIsApply(2); }else{ memberAuctionSalesroomVO.setIsApply(1); @@ -829,8 +844,13 @@ } if(MemberAuctionSalesroomDTO.getStatus()!=4){ if (MemberAuctionSalesroomDTO.getStatus()==0){ memberAuctionSalesroomWdDTO.setStatus(5); }else{ memberAuctionSalesroomWdDTO.setStatus(MemberAuctionSalesroomDTO.getStatus()); } } List<AuctionSalesroom> auctionSalesroomList=auctionSalesroomMapper.pageMemberAuctionSalesroomWdList(page,memberAuctionSalesroomWdDTO); List<WdMemberAuctionSalesroomVO> List=new ArrayList<>(); for (AuctionSalesroom auctionSalesroom:auctionSalesroomList){ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
@@ -41,6 +41,8 @@ import com.ruoyi.system.api.feignClient.OrderClient; import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.api.util.WebSocketUsers; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -281,36 +283,51 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(30); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); wrapper3.gt(GoodsSku::getYears,parseTime7); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); wrapper3.le(GoodsSku::getYears,parseTime7); } if(homeGoodsSkuDTO.getYear()==3){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(30); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(15); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDateTime.parse(formattedDate15, formatter); wrapper3.gt(GoodsSku::getYears, parseTime15) .le(GoodsSku::getYears, parseTime7); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime15) .gt(GoodsSku::getYears, parseTime7); } if(homeGoodsSkuDTO.getYear()==3){ if(homeGoodsSkuDTO.getYear()==4){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(5); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(15); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDateTime.parse(formattedDate15, formatter); wrapper3.ge(GoodsSku::getYears, parseTime7) .le(GoodsSku::getYears, parseTime15); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime7) .gt(GoodsSku::getYears, parseTime15); } if(homeGoodsSkuDTO.getYear()==5){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(1); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(5); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime7) .ge(GoodsSku::getYears, parseTime15); } List<GoodsSku> page1 = goodsSkuService.list(wrapper3); Set<Long> goodsSkuIdList = null; ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
@@ -41,6 +41,8 @@ import com.ruoyi.system.api.domain.vo.HomeGoodsSkuListVO; import com.ruoyi.system.api.domain.vo.getHomeGoodsSkuXxiVO; import com.ruoyi.system.api.feignClient.GoodsSkuClient; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; @@ -333,35 +335,49 @@ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(30); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); wrapper3.gt(GoodsSku::getYears,parseTime7); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); wrapper3.le(GoodsSku::getYears,parseTime7); } if(homeGoodsSkuDTO.getYear()==3){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(30); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(15); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDateTime.parse(formattedDate15, formatter); wrapper3.gt(GoodsSku::getYears, parseTime15) .le(GoodsSku::getYears, parseTime7); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime15) .gt(GoodsSku::getYears, parseTime7); } if(homeGoodsSkuDTO.getYear()==3){ if(homeGoodsSkuDTO.getYear()==4){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(5); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDateTime.parse(formattedDate7, formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(15); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDateTime.parse(formattedDate15, formatter); wrapper3.ge(GoodsSku::getYears, parseTime7) .le(GoodsSku::getYears, parseTime15); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime7) .gt(GoodsSku::getYears, parseTime15); } if(homeGoodsSkuDTO.getYear()==5){ LocalDateTime now = LocalDateTime.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); LocalDateTime newTime7 = now.minusYears(1); String formattedDate7 = newTime7.format(formatter); LocalDateTime parseTime7 = LocalDate.parse(formattedDate7).atStartOfDay(); LocalDateTime newTime15 = now.minusYears(5); String formattedDate15 = newTime15.format(formatter); LocalDateTime parseTime15= LocalDate.parse(formattedDate15).atStartOfDay(); wrapper3.le(GoodsSku::getYears, parseTime7) .ge(GoodsSku::getYears, parseTime15); } wrapper3.orderByAsc(GoodsSku::getSortNum); Page<GoodsSku> page1 = this.page(page, wrapper3); ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
@@ -112,15 +112,15 @@ /** * appID **/ private static final String APP_ID_PROD = "2021004147684313"; private static final String APP_ID_PROD = "2021004150664294"; /** * 私钥 */ private static final String APP_PRIVATE_KEY = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCg31tKXap7oTKKKDtfXc/hQjriSJkKopfRkh9j1UA/BpY+6GLkbJhg8kw9CRCILjfi5M0F3FCu+j1ogeDE1ivRGJlX1l/TGj+HuM1g8qLx/tD5D+9nJq5UHfaoKxXPko8H3AWcN1n/MAq3kRwUJRkeYJyYrZ7Sd6RU2taVLktWu92lqoUahjFkQSkdJoKi77v5i1T56PLRFfClt72tnvgol4OXBfFEjpGVrnuYoiHCgLV9eN5Qmvdas/04TtU396p+atYycU2P/dU9fdc8NFFFJo+eYH7astJXIQsowpLtTS7lavQuzCcLvC20pRBPhql5+5X96DVdnOLMbdUKwLQ9AgMBAAECggEAZLuXgVhnYSSN7f7FNrEaczWyg3DsC8HGCN9TsoKcyRpJyDhhfCEXxVTTMkDTzkIKkpOsYagUCYz+GMuCwB5Pr42Ur3C37gr4jvbD+5nTOG7T0bENumx5Kojco27fKGvgDg7SoH/0ZZtiipFdoKueL+xVAjFtSuLJzqx9Q0qKuFLJH0lrQfHYyGcq9ZzrPKLrMZb3Ve3upmpaLjIddZmqnzK7g5lx/OLHEujXIR9u0VWzzxqeaFkgCAMuyzkNYwlpqtiTJsEggbnG9YsLf0n156F0dXo2i44fUav+bKU2ksv7YmENx3R9gPDuPAKH+MwQlwVIc6tR8jKoz0cUbmaujQKBgQDhvaQd4jg9zszdVw1enPWKWViu4rsEFirIz3CUBRB3g2mkZ+tXpQQps7bL7KLBFfXmVYiVMu4EoOfZlkAjJPbFMj9aSPZ3pbx0VnHG8+3T9T2eJdzZp/CehG3MyycNHxAbbl2B04Chiiyf67R0b4ZLMHoElQgJP9jF1q3Xiloi0wKBgQC2b73S4LZWlWkyIsmHYHmXyWta64W2whlL4Nsy97tl4kZNfLCG7mgG5FhHhi16lT7J6Sw1D2FgFov2B1r9+yGBRxckGzWoY5m6FtBE/l+42+gxsB41+kEgirVjlEaX7YBXmnux2LntPVlJOG6HTizjcUnTesGIRvwbmbR2tuXCrwKBgQCMJwKq7xW+AhQdY/vP/yFPaRNvWSOFcQHVNT2PGOnVWciQI1jxTGmePo7CY0PVH35RKE+pWjp+syvfYrKlX0C6w+yjcGNde4/apwTy4eWJ0FwWQSmyFNuGf2/wUz0Gn3+PmGEDxr25DaGRFHUwSUGWkx1elOytWW+LvTKnfKVjswKBgGuh50MnskvI4IRkw7Mr9vDXM5AzjfLx9syuf4RFZflJEyMaImeo9hTC2VZxUhmVPbMP7zXqug9fnflsA4H+jJjh4UQ7DWAoSwTf+sYJsV211/qgpmJAH/Zb/4Idc7yksWh9yuZ1L9RIsomhUoxfUdpp9x1euhl1j72U5ER5yXofAoGAZNrIYFWk4S8mqFY8/h0YVGxT7Hj0ppLsq20N4OzglScoEEG+aYmWDOQU9kWcxsD44bMdzk2k0DyOhHbp8Tjd1hp0UFb03s8HgERcFHMZMzQ5oqtWQEoYiyQZxReXZZvWUbV+dg1HXXG8I26XAKb3OWFUIBBfKa2/Ig9ensY9m+M="; private static final String APP_PRIVATE_KEY = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC3ap1qQ5GTe+syB8Tu/fH8nRdpjA7yNgLINR/kFq1VFzxDref7DQDUDWXt+s5QZyBjL1UfbQWtA96F+OpgmIiNMdZSn9FH/w5XSqSd7B4nAa1sgfdLdZDvm+crqzn8OzyEJTrO8tihF+9K+btBl37s3QfmmzCRl1PAAMGqfy/JcQ2aivY+hxb25V0kD5AAXM7mVC2zzcBrykzafQCXEnDC7ls4Hjy0agmq1bKSx8SLYTsXAzZiGk9E7yh76nDAB+P1+kKPEYJXociU3k4YRR7l+6tzBPd+/mVkL34nuV5IiAK/795CrP/9gC50nZK/6CqSPDlQlOaAaJ2uZvAOeKx3AgMBAAECggEAMzw5+swjJ0KvYYtgDK6tYTZ0qswwBKLnxgto/CsFgkZ6VCGJMszgFVwkxASSi00zc+Ft8thehIUXLO9qcU9Knb51MyFnsafi1qmIMIEbryO90RjA/rg5o2U2fzFWgkn9zqAjvFmEAAQSmSwHjfwGvZ3Erjtdpt3RzEmpz7m1nJxYuZ2JLdo8AIY+iYn1NeDxHMi27RtqsZje7RV5YXrqKtMMzW2atmj+Dbn/E1pxpF0Dz6l0TqQh5B+9j1XlPTZKcYOYHNI0ACV+dV1NZsqmdhX0lKtQbsj/Q67vhq7uCmQRKcEka/5Z0X/TOKbwJE6i2/YEuA4PUGLpBMZQXhSGYQKBgQD50IuUTG6fg1dqFt9bJXxq2i1lkIHvzaCkHqVnTMyTDs+VcO2S6YaAFy6BLSI933qvHLogkhqnHiN+BRHe/M5+4TAOx30SQlJYa5ojpNFwMnRSZgxLoEddwlfj6qTnCgDW3CsUPR85x85NjIhONy75muNnNG8GHdn3blk2Y7KhpwKBgQC79TQhz5eJ6cwiWPWMWnnSAVvFKW4iPZjkbk+Sl7JXuqzvsdE47gGN0Vk8iYWEc2WrnQY6vf7WnamQYi+Gr5ySfTSt9qwvRx0IRzHdSZkOsHJLBCnAt+Pf+pSBc2Z788iUXVbDRAIfF6YYG44P3jHspbnGPJt14PP0sHbPmh7YsQKBgGzGGYChJyndjpprCyYs1FfSWCH5IhrAdkn/7hVko08FC+4OFeP6Os5bSayFcntua4UEBSdZdrF9tgaRPo7RlTg55SsKQbNJnYFSmPMcOPWZgny+YmwrheeVT5+188eF24eypi9Rzd7i2Tl7D36/GH0mrA2sDwuiw92w9rdwAb/RAoGAf6RDZPqvNI87e8/h4RDITd9yTPCXxFUEcYygKTMvf/hb3ONq7DhlgcO70CqsK4iacPLP+jBw0Zp8PnsPP24e7DRvA/zSbcDjbG285URH1vvogh0vpZq7+60WENsnq+GgQ3EnrK+QqUDMIO8FiK0iRk09XexmvqSnx3HXHaDSdeECgYB9htO5mOn2/ugIeMw11g+JJkZ/hzE55/6fLf7zh3yel5EflmAdYRv0lHafjyXIzNrAnBgD95x4LKGLi9A5AMo9SJJu0ZOg1KujKPVY4ByCm9SO7ErJDuHI4AhtewdHhYDpnXMakoxm/medSjlt7GCVv7E/eDpNZs+MLi9MiTFx2g=="; /** * 支付宝公钥 */ private static final String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+tCVKqUmlHDL8Ki1TUJtzE5IKV1irJuoHWZTvndJCKJJ8bdWxL9mu5xsy8KkfrnS6wJIKBMLTxMoYQHG7l2Gt07YyUCYHS5+yvbHtTkyFFy2KRPeUEWXz1Tm4juvInDvvr+n7v9ETepToGhC+UDlQcBvuSppw8N+463E+1GRrC4APwXYGLzaIvYvDHcQAULkWhXsjzxJSmeSi12kqWKlgnVJC1y0FT8xQtvhwShfaIqKwzErn9S2z7JjdXboJMUYQHoqF1A4SmWY8c0qawqvx2hGP36W3RDQ4cczzFwUHS1Cylhsbgh1COc4OdANCX4Np2NUzaRDCNzN0WVFKtK+QIDAQAB"; private static final String ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlW2RMACojdqTa8H+j6411Lm5UipGXXbQiswq50rUflwjTj843zNVaVpk8uJmbdmtUBJlmblgBS/a31O4L4LrHB8WxJ+w0f9DBNTq9T6b80MiAVnU/3gXK365DmbzPWS5pR9wEgJVHnfOFUbsB5AVFHV0m9hUZcPv7xveuEp3BEoD5smaDJByR+KgFw0Q0JgINhhE6bsEa3UgJ198af269LtQ5HJl1TWLI8aeqW14HrxyADIt49NB9KZ8MOdKP+66HWcrXlipKFHtccy3dff72DqPmFdESoXfLXKZyhU5w9v4Q5F6UoAGTPwl9KQwikTobNeJ/7su7X3AB6+C14J4sQIDAQAB"; @Resource @@ -317,8 +317,8 @@ String idcard = "";// 身份证 int type = 1;// 普通版,不需要加密 Map<String, Object> params = new HashMap<>(); params.put("realname", realname); params.put("idcard", idcard); params.put("realname", memberDTO.getRealName()); params.put("idcard", memberDTO.getIdNumber()); CloseableHttpClient httpClient = HttpClients.createDefault(); CloseableHttpResponse response = null; String result = null; @@ -355,13 +355,14 @@ if (Integer.valueOf(jsonObject1.get("res").toString())==2){ throw new ServiceException("实名认证失败"); } String sex=getGender(idcard); String sex=getGender(memberDTO.getIdNumber()); if (sex.equals("女")){ member.setGender(GenderEnum.FEMALE); } if (sex.equals("男")){ member.setGender(GenderEnum.MALE); } member.setIsAuthentication(2); this.updateById(member); } ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionBondServiceImpl.java
@@ -118,7 +118,7 @@ public PayInfoVO SaveOrderAuctionBond(MemberAuctionSalesroomBondDTO memberAuctionSalesroomBondDTO) { PayInfoVO payInfoVO = new PayInfoVO(); if (memberAuctionSalesroomBondDTO.getBondType() == 2) { AuctionSalesroom data = auctionClient.getauctionSalesroomOne(memberAuctionSalesroomBondDTO.getAuctionSalesroomId(), SecurityConstants.INNER).getData(); AuctionSalesroom data = auctionClient.getauctionSalesroomOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData(); if (data.getBond().intValue() == 0) { OrderAuctionBond orderAuctionBond = new OrderAuctionBond(); orderAuctionBond.setOrderNo(OrderUtil.getOrderNoForPrefix("BO")); @@ -160,7 +160,7 @@ payInfoVO.setBody("保证金"); } } else { AuctionGoods data = auctionClient.getauctionGoodsOne(memberAuctionSalesroomBondDTO.getAuctionGoodsId(), SecurityConstants.INNER).getData(); AuctionGoods data = auctionClient.getauctionGoodsOne(memberAuctionSalesroomBondDTO, SecurityConstants.INNER).getData(); if (data.getBond().intValue() == 0) { OrderAuctionBond orderAuctionBond = new OrderAuctionBond(); orderAuctionBond.setOrderNo(OrderUtil.getOrderNoForPrefix("BO")); ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; import com.ruoyi.common.core.constant.CacheConstants; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.enums.OrderFromEnum; import com.ruoyi.common.core.enums.OrderStatusEnum; @@ -12,6 +13,7 @@ import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.page.PageDTO; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.order.controller.management.dto.MgtMallOrderQuery; import com.ruoyi.order.controller.management.vo.MgtMallOrderVO; import com.ruoyi.order.domain.Paylog; @@ -47,10 +49,15 @@ import java.time.LocalDateTime; import java.util.Collection; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.annotation.Resource; import lombok.Synchronized; import org.apache.commons.beanutils.BeanUtils; import org.redisson.api.RLock; import org.redisson.api.RedissonClient; import org.springframework.stereotype.Service; /** @@ -84,6 +91,12 @@ @Resource private SysUserClient sysUserClient; @Resource private RedissonClient redissonClient; @Resource private RedisService redisService; @Override @@ -198,6 +211,7 @@ } @Override @Synchronized public MemberTiOrderVO saveMemberOrder(MemberOrderDTO memberOrderDTO) { MemberTiOrderVO memberOrderVO=new MemberTiOrderVO(); @@ -244,8 +258,22 @@ pice=goodsSku.getPrice(); } if (memberOrderDTO.getOrderFrom()==2){ order.setOrderFrom(OrderFromEnum.SNAP_ORDERS); GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(memberOrderDTO.getGoodsSkuId(), SecurityConstants.INNER).getData(); /* String goodsLock = "goods_lock_" + CacheConstants.SECKILL_GOODS + data.getId(); RLock redissonLock = redissonClient.getLock(goodsLock); Integer surpNum = 0; try { redissonLock.lock(30, TimeUnit.SECONDS); surpNum = redisService.getCacheObject(CacheConstants.SECKILL_GOODS + data.getId()); if (surpNum == null || surpNum < memberOrderDTO.getGoodsQuantity()) { throw new ServiceException("商品已被抢完"); } }catch (Exception e){ throw new ServiceException("reids 出错"); }*/ order.setOrderFrom(OrderFromEnum.SNAP_ORDERS); GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData(); memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId()); memberOrderVO.setPrice(goodsSku.getPrice()); @@ -266,7 +294,7 @@ order.setSkuName(goodsSku.getSkuName()); order.setPrice(data.getSeckillPrice()); order.setCoverPic(goodsSku.getCoverPic()); /*redisService.setCacheObject(CacheConstants.SECKILL_GOODS + data.getId(), surpNum - memberOrderDTO.getGoodsQuantity());*/ } if (memberOrderDTO.getOrderFrom()==3){ order.setOrderFrom(OrderFromEnum.GROUP_PURCHASE_ORDERS); @@ -331,6 +359,8 @@ memberOrderVO.setReceiverCity(order.getReceiverCity()); memberOrderVO.setReceiverDetailAddress(order.getReceiverDetailAddress()); memberOrderVO.setReceiverphone(order.getReceiverphone()); Integer delayTime = 30; redisService.setCacheObject(CacheConstants.ORDER_AUTOMATIC_CANCEL + "-" + order.getId(), order.getId() , delayTime.longValue(), TimeUnit.MINUTES); return memberOrderVO; }