From 8605c781efac96695cf61aea6f79118a0236114e Mon Sep 17 00:00:00 2001 From: lzx_win <2602107437@qq.com> Date: Thu, 5 Jun 2025 08:37:19 +0800 Subject: [PATCH] 1 --- admin-pc/.env.development | 2 +- admin-pc/.env.production | 2 +- .../java/org/jeecg/config/shiro/ShiroConfig.java | 2 + .../jeecg/api/controller/AppletCatController.java | 65 +++++++ .../api/controller/AppletIndexController.java | 28 ++- .../jeecg/api/controller/AppletInfoController.java | 41 ++++- .../api/controller/AppletOrderController.java | 28 ++- .../org/jeecg/api/service/AppletCatService.java | 22 +++ .../org/jeecg/api/service/AppletIndexService.java | 8 +- .../org/jeecg/api/service/AppletInfoService.java | 12 ++ .../org/jeecg/api/service/AppletOrderService.java | 9 + .../api/service/impl/AppletCatServiceImpl.java | 127 +++++++++++++ .../api/service/impl/AppletIndexServiceImpl.java | 62 ++++++- .../api/service/impl/AppletInfoServiceImpl.java | 198 +++++++++++++++++++++ .../api/service/impl/AppletOrderServiceImpl.java | 197 +++++++++++++++++++- .../commonAddOrder/entity/CommonAddOrder.java | 9 + .../modules/commonOrder/entity/CommonOrder.java | 30 ++++ .../commonShopClass/entity/CommonShopClass.java | 7 + .../src/main/resources/application-dev.yml | 2 +- .../src/main/resources/pay_weixin.properties | 14 +- 20 files changed, 838 insertions(+), 27 deletions(-) create mode 100644 module-common/src/main/java/org/jeecg/api/controller/AppletCatController.java create mode 100644 module-common/src/main/java/org/jeecg/api/service/AppletCatService.java create mode 100644 module-common/src/main/java/org/jeecg/api/service/impl/AppletCatServiceImpl.java diff --git a/admin-pc/.env.development b/admin-pc/.env.development index 2ebda44..3540697 100644 --- a/admin-pc/.env.development +++ b/admin-pc/.env.development @@ -1,5 +1,5 @@ NODE_ENV=development -VUE_APP_API_BASE_URL=http://localhost:8001/building-admin/ +VUE_APP_API_BASE_URL=http://localhost:8002/building-admin/ VUE_APP_CAS_BASE_URL=http://cas.example.org:8443/cas VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview diff --git a/admin-pc/.env.production b/admin-pc/.env.production index 99f8dac..6b44f9a 100644 --- a/admin-pc/.env.production +++ b/admin-pc/.env.production @@ -1,4 +1,4 @@ NODE_ENV=production -VUE_APP_API_BASE_URL=http://localhost:8001/novel-admin/ +VUE_APP_API_BASE_URL=http://localhost:8002/building-admin/ VUE_APP_CAS_BASE_URL=http://localhost:8888/cas VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview \ No newline at end of file diff --git a/module-base/base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/module-base/base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index fa37080..79c3aa9 100644 --- a/module-base/base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/module-base/base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java @@ -81,6 +81,8 @@ public class ShiroConfig { filterChainDefinitionMap.put("/index/**", "anon"); filterChainDefinitionMap.put("/all_login/**", "anon"); filterChainDefinitionMap.put("/order/**", "anon"); + filterChainDefinitionMap.put("/cat/**", "anon"); + diff --git a/module-common/src/main/java/org/jeecg/api/controller/AppletCatController.java b/module-common/src/main/java/org/jeecg/api/controller/AppletCatController.java new file mode 100644 index 0000000..bab4502 --- /dev/null +++ b/module-common/src/main/java/org/jeecg/api/controller/AppletCatController.java @@ -0,0 +1,65 @@ +package org.jeecg.api.controller; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.api.bean.PageBean; +import org.jeecg.api.service.AppletCatService; +import org.jeecg.api.service.AppletIndexService; +import org.jeecg.common.api.vo.Result; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +@Api(tags="购物车相关接口") +@RestController +@RequestMapping("/cat") +@Slf4j +public class AppletCatController { + + @Resource + private AppletCatService apiRiceService; + + + //获取购物车信息列表带分页 + @ApiOperation(value="获取购物车信息列表带分页", notes="获取购物车信息列表带分页") + @GetMapping(value = "/getCartPageList") + public Result getCartPageList(@RequestHeader("X-Access-Token") String token, PageBean pageBean){ + return apiRiceService.getCartPageList(token,pageBean); + } + + //加入购物车 传入token shopId num + @ApiOperation(value="加入购物车 传入token shopId num", notes="加入购物车 传入token shopId num") + @GetMapping(value = "/addCart") + public Result addCart(@RequestHeader("X-Access-Token") String token, String shopId, Integer num){ + return apiRiceService.addCart(token,shopId,num); + } + + + //删除购物车信息 + @ApiOperation(value="删除购物车信息", notes="删除购物车信息") + @PostMapping(value = "/deleteCart") + public Result deleteCart(@RequestHeader("X-Access-Token") String token,String ids){ + return apiRiceService.deleteCart(token,ids); + } + + + //修改购物车信息数量 + @ApiOperation(value="修改购物车信息数量", notes="修改购物车信息数量") + @PostMapping(value = "/updateCartNum") + public Result updateCartNum(@RequestHeader("X-Access-Token") String token,String id,Integer num){ + return apiRiceService.updateCartNum(token,id,num); + } + + + + + + + + + + + + +} diff --git a/module-common/src/main/java/org/jeecg/api/controller/AppletIndexController.java b/module-common/src/main/java/org/jeecg/api/controller/AppletIndexController.java index b0c16c5..dc91e77 100644 --- a/module-common/src/main/java/org/jeecg/api/controller/AppletIndexController.java +++ b/module-common/src/main/java/org/jeecg/api/controller/AppletIndexController.java @@ -36,6 +36,15 @@ public class AppletIndexController { return appletIndexService.getIcon(); } + //获取分类 + @ApiOperation(value="获取分类", notes="获取分类") + @GetMapping("/getClassify") + public Result getClassify(){ + return appletIndexService.getClassify(); + } + + + //获取建材商品信息列表 @ApiOperation(value="获取建材商品信息列表", notes="获取建材商品信息列表") @@ -67,11 +76,26 @@ public class AppletIndexController { return appletIndexService.addOrder(token,commonAddOrder); } + //取消快捷订单 + @ApiOperation(value="取消快捷订单", notes="取消快捷订单") + @PostMapping("/cancelOrder") + public Result cancelOrder(@RequestHeader("X-Access-Token") String token,String orderId){ + return appletIndexService.cancelOrder(token,orderId); + } + + + + + + + + + //创建订单 @ApiOperation(value="创建订单", notes="创建订单") @PostMapping("/createOrder") - public Result createOrder(@RequestHeader("X-Access-Token") String token,Integer payType,String productId,String addressId){ - return appletIndexService.createOrder(token,payType,productId,addressId); + public Result createOrder(@RequestHeader("X-Access-Token") String token,Integer payType,String productId,String addressId,Integer orderNum){ + return appletIndexService.createOrder(token,payType,productId,addressId,orderNum); } diff --git a/module-common/src/main/java/org/jeecg/api/controller/AppletInfoController.java b/module-common/src/main/java/org/jeecg/api/controller/AppletInfoController.java index 2d6870d..42e9066 100644 --- a/module-common/src/main/java/org/jeecg/api/controller/AppletInfoController.java +++ b/module-common/src/main/java/org/jeecg/api/controller/AppletInfoController.java @@ -9,6 +9,7 @@ import org.jeecg.api.service.AppletInfoService; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.commonAddress.entity.CommonAddress; import org.jeecg.modules.commonHelp.entity.CommonHelp; +import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -55,6 +56,20 @@ public class AppletInfoController { return appletInfoService.saveOrUpdateAddress(token,commonAddress); } + + + //修改默认地址 + @ApiOperation(value="修改默认地址", notes="修改默认地址") + @PostMapping("/updateDefaultAddress") + public Result updateDefaultAddress(@RequestHeader("X-Access-Token") String token,String id){ + return appletInfoService.updateDefaultAddress(token,id); + } + + + + + + @ApiOperation(value="删除地址", notes="删除地址") @PostMapping("/deleteAddress") public Result deleteAddress(@RequestHeader("X-Access-Token") String token,String id){ @@ -69,6 +84,16 @@ public class AppletInfoController { } + //获取团队头部信息 + @ApiOperation(value="获取团队头部信息", notes="获取团队头部信息") + @GetMapping("/getTeamHeader") + public Result getTeamHeader(@RequestHeader("X-Access-Token") String token){ + return appletInfoService.getTeamHeader(token); + } + + + + //提现 @ApiOperation(value="提现", notes="提现") @PostMapping("/openMoney") @@ -83,10 +108,18 @@ public class AppletInfoController { return appletInfoService.getLogList(token,timeDate,pageBean); } - @ApiOperation(value="创建二维码", notes="创建二维码") - @GetMapping("/createQrCode") - public Result createQrCode(@RequestHeader("X-Access-Token") String token){ - return appletInfoService.createQrCode(token); +// @ApiOperation(value="创建二维码", notes="创建二维码") +// @GetMapping("/createQrCode") +// public Result createQrCode(@RequestHeader("X-Access-Token") String token){ +// return appletInfoService.createQrCode(token); +// } + + + //获取个人邀请码 + @ApiOperation(value="获取个人邀请码", notes="获取个人邀请码") + @GetMapping(value = "/createQrCode", produces = MediaType.IMAGE_PNG_VALUE) + public byte[] createQrCode(String token){ + return appletInfoService.getInviteCode2(token); } @ApiOperation(value="添加帮助", notes="添加帮助") diff --git a/module-common/src/main/java/org/jeecg/api/controller/AppletOrderController.java b/module-common/src/main/java/org/jeecg/api/controller/AppletOrderController.java index af00165..597f2d5 100644 --- a/module-common/src/main/java/org/jeecg/api/controller/AppletOrderController.java +++ b/module-common/src/main/java/org/jeecg/api/controller/AppletOrderController.java @@ -24,9 +24,9 @@ public class AppletOrderController { // 获取订单列表带分页 @ApiOperation(value="获取订单列表带分页", notes="获取订单列表带分页") @GetMapping(value = "/getOrderPageBean") - public Result getOrderPageBean(@RequestHeader("X-Access-Token") String token,Integer status, PageBean pageBean) + public Result getOrderPageBean(@RequestHeader("X-Access-Token") String token,Integer state, PageBean pageBean) { - return appletOrderService.getOrderPageBean(token,status,pageBean); + return appletOrderService.getOrderPageBean(token,state,pageBean); } @ApiOperation(value="获取订单详情", notes="获取订单详情") @@ -54,5 +54,29 @@ public class AppletOrderController { } + //取消订单 + @ApiOperation(value="取消订单", notes="取消订单") + @PostMapping(value = "/cancelOrder") + public Result cancelOrder(@RequestHeader("X-Access-Token") String token,String orderId) + { + return appletOrderService.cancelOrder(token,orderId); + } + + + + //支付回调 + @PostMapping("/payNotify") + public Object payNotify(@RequestBody String requestBody){ + return appletOrderService.payNotify(requestBody); + } + + + //商城-加入购物车之后一次下多个订单 + @ApiOperation(value="商城-加入购物车之后一次下多个订单", notes="商城-加入购物车之后一次下多个订单") + @PostMapping("/createSumOrder") + public Result createSumOrder(@RequestHeader("X-Access-Token") String token,String list,String addressId,Integer payType,String orderId){ + return appletOrderService.createSumOrder(token,list,addressId,payType,orderId); + } + } diff --git a/module-common/src/main/java/org/jeecg/api/service/AppletCatService.java b/module-common/src/main/java/org/jeecg/api/service/AppletCatService.java new file mode 100644 index 0000000..02e27e8 --- /dev/null +++ b/module-common/src/main/java/org/jeecg/api/service/AppletCatService.java @@ -0,0 +1,22 @@ +package org.jeecg.api.service; + +import org.jeecg.api.bean.PageBean; +import org.jeecg.common.api.vo.Result; + +public interface AppletCatService { + + + //获取购物车信息列表带分页 + Result getCartPageList(String token, PageBean pageBean); + + //加入购物车 + Result addCart(String token, String shopId, Integer num); + + //删除购物车信息 + Result deleteCart(String token,String ids); + + //修改购物车信息数量 + Result updateCartNum(String token,String id,Integer num); + + +} diff --git a/module-common/src/main/java/org/jeecg/api/service/AppletIndexService.java b/module-common/src/main/java/org/jeecg/api/service/AppletIndexService.java index c6dceb9..ba5fbe3 100644 --- a/module-common/src/main/java/org/jeecg/api/service/AppletIndexService.java +++ b/module-common/src/main/java/org/jeecg/api/service/AppletIndexService.java @@ -17,6 +17,9 @@ public interface AppletIndexService { Result getIcon(); + //获取分类 + Result getClassify(); + //获取建材商品信息列表带分页搜索 Result getProductList(String shopIconId,String shopClassId,PageBean pageBean); @@ -32,8 +35,11 @@ public interface AppletIndexService { //快捷下单-拍照下单/语音下单 Result addOrder(String token, CommonAddOrder commonAddOrder); + //取消快捷订单 + Result cancelOrder(String token,String orderId); + //创建订单 - Result createOrder(String token,Integer payType,String productId,String addressId); + Result createOrder(String token,Integer payType,String productId,String addressId,Integer orderNum); //立即支付 diff --git a/module-common/src/main/java/org/jeecg/api/service/AppletInfoService.java b/module-common/src/main/java/org/jeecg/api/service/AppletInfoService.java index 65ea75d..8eb2fc6 100644 --- a/module-common/src/main/java/org/jeecg/api/service/AppletInfoService.java +++ b/module-common/src/main/java/org/jeecg/api/service/AppletInfoService.java @@ -29,6 +29,11 @@ public interface AppletInfoService { Result saveOrUpdateAddress(String token, CommonAddress commonAddress); + //修改默认地址 + Result updateDefaultAddress(String token,String id); + + + //删除地址信息 Result deleteAddress(String token,String id); @@ -37,6 +42,10 @@ public interface AppletInfoService { Result getTeamList(String token, Integer state,PageBean pageBean); + //获取团队头部信息 + Result getTeamHeader(String token); + + //提现 Result openMoney (String token, BigDecimal money); @@ -49,6 +58,9 @@ public interface AppletInfoService { Result createQrCode(String token); + //获取个人邀请码 + byte[] getInviteCode2(String token); + //新增帮助反馈信息 Result addHelp(String token, CommonHelp commonHelp); diff --git a/module-common/src/main/java/org/jeecg/api/service/AppletOrderService.java b/module-common/src/main/java/org/jeecg/api/service/AppletOrderService.java index cd10872..d73a646 100644 --- a/module-common/src/main/java/org/jeecg/api/service/AppletOrderService.java +++ b/module-common/src/main/java/org/jeecg/api/service/AppletOrderService.java @@ -17,4 +17,13 @@ public interface AppletOrderService { //确认订单送达 Result confirmOrder(String token,String orderId); + //取消订单 + Result cancelOrder(String token,String orderId); + + //支付回调 + Object payNotify(String requestBody); + + + //商城-加入购物车之后一次下多个订单 + Result createSumOrder(String token,String list,String addressId,Integer payType,String orderId); } diff --git a/module-common/src/main/java/org/jeecg/api/service/impl/AppletCatServiceImpl.java b/module-common/src/main/java/org/jeecg/api/service/impl/AppletCatServiceImpl.java new file mode 100644 index 0000000..e420f86 --- /dev/null +++ b/module-common/src/main/java/org/jeecg/api/service/impl/AppletCatServiceImpl.java @@ -0,0 +1,127 @@ +package org.jeecg.api.service.impl; + +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.commons.lang.StringUtils; +import org.jeecg.api.bean.PageBean; +import org.jeecg.api.service.AppletCatService; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.commonAddress.entity.CommonAddress; +import org.jeecg.modules.commonCat.entity.CommonCat; +import org.jeecg.modules.commonCat.service.ICommonCatService; +import org.jeecg.modules.commonOrder.entity.CommonOrder; +import org.jeecg.modules.commonShop.entity.CommonShop; +import org.jeecg.modules.commonShop.service.ICommonShopService; +import org.jeecg.modules.commonShop.service.impl.CommonShopServiceImpl; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Service +public class AppletCatServiceImpl implements AppletCatService { + //权限验证 + @Resource + private ShiroRealm shiroRealm; + @Resource + private IHanHaiMemberService hanHaiMemberService; + @Resource + private ICommonShopService commonShopService; + @Resource + private ICommonCatService commonCatService; + + + //获取购物车信息列表带分页 + @Override + public Result getCartPageList(String token, PageBean pageBean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Page page = commonCatService + .lambdaQuery() + .eq(CommonCat::getUserId,hanHaiMember.getId()) + .page(new Page<>(pageBean.getPageNo(), pageBean.getPageSize())); + //创建一个新的list集合 + List records = new ArrayList<>(); + //循环得到信息 + for (CommonCat commonCart : page.getRecords()) { + commonCart.setShop(commonShopService.getById(commonCart.getShopId())); + records.add(commonCart); + } + page.setRecords(records); + + return Result.OK(page); + } + + + //加入购物车 + @Override + public Result addCart(String token, String shopId, Integer num){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //根据商品标识查询商品信息 + CommonShop commonShop = commonShopService.getById(shopId); + if (commonShop==null){ + return Result.error("商品不存在"); + } + //根据商品标识查询购物车是否存在该商品 + CommonCat commonCart = commonCatService.lambdaQuery() + .eq(CommonCat::getUserId,hanHaiMember.getId()) + .eq(CommonCat::getShopId,shopId) + .one(); + //如果有则修改数量 + if (commonCart!=null){ + commonCart.setNum(commonCart.getNum()+num); + commonCatService.updateById(commonCart); + return Result.OK("修改成功"); + }else{ + CommonCat commonCat = new CommonCat(); + commonCat.setTitle(commonShop.getName()); + commonCat.setShopId(commonShop.getId()); + commonCat.setImage(commonShop.getImage()); + commonCat.setSku(commonShop.getMaterial()); + commonCat.setPrice(commonShop.getPrice()); + commonCat.setUserId(hanHaiMember.getId()); + commonCat.setNum(num); + commonCat.setCreateTime(new Date()); + commonCatService.save(commonCat); + return Result.OK("加入成功"); + } + } + + //删除购物车信息 + @Override + public Result deleteCart(String token,String ids){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //删除多个购物车数据 + String[] split = ids.split(","); + //如果没有,则直接删除 + if (split.length==1){ + commonCatService.removeById(split[0]); + return Result.OK("删除成功"); + } + //如果有则循环删除 + for (String id : split) { + commonCatService.removeById(id); + } + return Result.OK("删除成功"); + } + + + //修改购物车信息数量 + @Override + public Result updateCartNum(String token,String id,Integer num){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + CommonCat commonCat = commonCatService.getById(id); + commonCat.setNum(num); + commonCatService.updateById(commonCat); + return Result.OK("修改成功"); + } + + + +} diff --git a/module-common/src/main/java/org/jeecg/api/service/impl/AppletIndexServiceImpl.java b/module-common/src/main/java/org/jeecg/api/service/impl/AppletIndexServiceImpl.java index e2080e7..84e3500 100644 --- a/module-common/src/main/java/org/jeecg/api/service/impl/AppletIndexServiceImpl.java +++ b/module-common/src/main/java/org/jeecg/api/service/impl/AppletIndexServiceImpl.java @@ -21,6 +21,8 @@ import org.jeecg.modules.commonOrder.entity.CommonOrder; import org.jeecg.modules.commonOrder.service.ICommonOrderService; import org.jeecg.modules.commonShop.entity.CommonShop; import org.jeecg.modules.commonShop.service.ICommonShopService; +import org.jeecg.modules.commonShopClass.entity.CommonShopClass; +import org.jeecg.modules.commonShopClass.service.ICommonShopClassService; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; import org.jeecg.modules.pay.MpWxPayService; @@ -30,6 +32,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -50,6 +53,8 @@ public class AppletIndexServiceImpl implements AppletIndexService { @Resource private ICommonShopService commonShopService; @Resource + private ICommonShopClassService commonShopClassService; + @Resource private ICommonAddOrderService commonAddOrderService; @Resource private ICommonAddressService commonAddressService; @@ -76,6 +81,21 @@ public class AppletIndexServiceImpl implements AppletIndexService { return Result.OK("金刚区icon",list); } + //获取分类 + @Override + public Result getClassify(){ + List list = commonShopClassService + .lambdaQuery() + .eq(CommonShopClass::getPid,0) + .list(); + list.forEach(item->{ + item.setChildren(commonShopClassService + .lambdaQuery() + .eq(CommonShopClass::getPid,item.getId()) + .list()); + }); + return Result.OK("建材分类",list); + } @@ -91,7 +111,7 @@ public class AppletIndexServiceImpl implements AppletIndexService { }else if(shopClassId!=null){ //根据classId查询商品信息 page = commonShopService.lambdaQuery() - .eq(CommonShop::getShopClass,shopClassId) + .like(CommonShop::getShopClass,shopClassId) .page(page); }else if(pageBean.getTitle()!=null){ //根据classId查询商品信息 @@ -120,11 +140,29 @@ public class AppletIndexServiceImpl implements AppletIndexService { HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); List list = commonAddOrderService.lambdaQuery() .eq(CommonAddOrder::getUserId, hanHaiMember.getId()) - .eq(CommonAddOrder::getStatus, "0") - .eq(CommonAddOrder::getIsPay, "Y") + .eq(CommonAddOrder::getStatus, "1") + .eq(CommonAddOrder::getIsPay, "N") .orderByDesc(CommonAddOrder::getCreateTime) .list(); - return Result.OK("快捷订单查询成功",list); + //如果有数据返回数据,循环赋值 + List listNew = new ArrayList<>(); + if (list.size()>0){ + for (CommonAddOrder commonAddOrder : list) { + //获取商品标识 + String[] shopIdSplit = commonAddOrder.getShopId().split(","); + //创建一个集合 + List list1 = new ArrayList<>(); + for (String shopId : shopIdSplit) { + //获取商品信息 + CommonShop commonShop = commonShopService.getById(shopId); + //加入集合 + list1.add(commonShop); + } + commonAddOrder.setCommonShop(list1); + listNew.add(commonAddOrder); + } + } + return Result.OK("快捷订单查询成功",listNew); } @@ -141,9 +179,21 @@ public class AppletIndexServiceImpl implements AppletIndexService { return Result.OK("快捷下单成功"); } + //取消快捷订单 + @Override + public Result cancelOrder(String token,String orderId){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + CommonAddOrder commonAddOrder = commonAddOrderService.getById(orderId); + //存在则删除 + if (commonAddOrder!=null){ + commonAddOrderService.removeById(orderId); + } + return Result.OK("取消快捷订单成功"); + } + //创建订单 @Override - public Result createOrder(String token,Integer payType,String productId,String addressId){ + public Result createOrder(String token,Integer payType,String productId,String addressId,Integer orderNum){ HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); CommonShop commonShop = commonShopService.getById(productId); if (commonShop==null){ @@ -187,6 +237,7 @@ public class AppletIndexServiceImpl implements AppletIndexService { commonOrder.setTwoMoney(commonShop.getTwoMoney()); commonOrderService.save(commonOrder); + return Result.OK("余额支付成功",commonOrder); }else{ //微信支付 if (commonShop.getNum()==0){ @@ -235,7 +286,6 @@ public class AppletIndexServiceImpl implements AppletIndexService { return Result.OK("支付成功",appOrder); } - return Result.OK("订单创建失败"); } diff --git a/module-common/src/main/java/org/jeecg/api/service/impl/AppletInfoServiceImpl.java b/module-common/src/main/java/org/jeecg/api/service/impl/AppletInfoServiceImpl.java index 4998dba..95109d5 100644 --- a/module-common/src/main/java/org/jeecg/api/service/impl/AppletInfoServiceImpl.java +++ b/module-common/src/main/java/org/jeecg/api/service/impl/AppletInfoServiceImpl.java @@ -35,9 +35,15 @@ import org.springframework.util.MultiValueMap; import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; +import javax.imageio.ImageIO; +import java.awt.*; +import java.awt.image.BufferedImage; import java.io.*; import java.math.BigDecimal; +import java.net.URL; +import java.nio.file.Files; import java.util.*; +import java.util.List; @Slf4j @Service @@ -126,6 +132,33 @@ public class AppletInfoServiceImpl implements AppletInfoService { } + //修改默认地址 + @Override + public Result updateDefaultAddress(String token,String id){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //查到当前用户是否有默认地址给他修改成否 + List commonAddressList = commonAddressService.lambdaQuery() + .eq(CommonAddress::getUserId, hanHaiMember.getId()) + .eq(CommonAddress::getDefaultFlag, "1") + .list(); + if(commonAddressList.size() > 0){ + for (CommonAddress commonAddress : commonAddressList) { + commonAddress.setDefaultFlag("0"); + commonAddressService.updateById(commonAddress); + } + } + //查询当前地址是否是默认地址 + CommonAddress commonAddress = commonAddressService.getById(id); + if(commonAddress.getDefaultFlag().equals("0")){ + commonAddress.setDefaultFlag("1"); + commonAddressService.updateById(commonAddress); + }else if(commonAddress.getDefaultFlag().equals("1")){ + commonAddress.setDefaultFlag("0"); + commonAddressService.updateById(commonAddress); + } + return Result.OK("修改成功"); + } + //删除地址信息 @Override public Result deleteAddress(String token,String id){ @@ -182,11 +215,26 @@ public class AppletInfoServiceImpl implements AppletInfoService { }); pageListFans.setRecords(fansPageBean); + return Result.OK(pageListFans); } + + //获取团队头部信息 + @Override + public Result getTeamHeader(String token){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Map map = new HashMap(); + map.put("money",hanHaiMember.getMoney()); + map.put("role",0); + map.put("lj_money",100);// + map.put("lj_price",0);//总佣金 + + return Result.OK("团队头部信息查询成功",map); + } + //提现 @Override public Result openMoney (String token, BigDecimal money){ @@ -350,6 +398,156 @@ public class AppletInfoServiceImpl implements AppletInfoService { } + //获取推广二维码 2 + @Override + public byte[] getInviteCode2(String token){ + HanHaiMember member = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + // 获取环境配置 + CommonConfig vsion = commonConfigService.lambdaQuery() + .eq(CommonConfig::getKeyName, "v_sion") + .one(); + Integer vsionStr = Integer.parseInt(vsion.getKeyContent()); + String trial = "release"; + if(vsionStr == 0){ + trial= "release"; + }else if(vsionStr == 1){ + trial= "trial"; + }else{ + trial= "develop"; + } + + // 获取必要的配置信息 + CommonConfig xcxSharePage = commonConfigService.lambdaQuery() + .eq(CommonConfig::getKeyName, "xcxSharePage") + .one(); + + CommonConfig oneImage = commonConfigService.lambdaQuery() + .eq(CommonConfig::getKeyName, "codeImg") + .one(); + + CommonConfig qr_code = commonConfigService.lambdaQuery() + .eq(CommonConfig::getKeyName, "qr_code") + .one(); + + CommonConfig image_go_url = commonConfigService.lambdaQuery() + .eq(CommonConfig::getKeyName, "image_go_url") + .one(); + + String backgroundImageUrl = qr_code.getKeyContent(); + + // 尝试从缓存获取二维码 + String cacheKey = "CodeImage::" + trial + member.getId(); + WxQrCodeVo wxCodeVo = new WxQrCodeVo(); + + wxCodeVo.setName("陌美人珠宝欢迎您"); + + // 如果启用了Redis缓存,可以取消下面注释 +// String cachedQrCode = (String) redisUtil.get(cacheKey); +// if(cachedQrCode != null){ +// String combinedImageUrl = this.generateAndCombineImagesFromUrl(cachedQrCode, backgroundImageUrl, "combined_image_code"); +// wxCodeVo.setUrl(combinedImageUrl); +// return Result.OK(wxCodeVo); +// } + + try { + + // 准备微信API请求参数 + String key = "shareId=" + member.getId(); + Map param = new HashMap<>(); + param.put("path", xcxSharePage.getKeyContent() + "?" + key); + param.put("scene", member.getId()); + param.put("width", 150); + param.put("auto_color", false); + param.put("env_version", trial); + +// Map line_color = new HashMap<>(); +// line_color.put("r", 0); +// line_color.put("g", 0); +// line_color.put("b", 0); +// param.put("line_color", line_color); + + + param.put("is_hyaline", true); + + // 获取微信小程序码 + String accessToken = this.getAccessToken(); + String url = "https://api.weixin.qq.com/wxa/getwxacode?access_token=" + accessToken; + + // 请求微信API获取二维码图片数据 + RestTemplate rest = new RestTemplate(); + MultiValueMap headers = new LinkedMultiValueMap<>(); + org.springframework.http.HttpEntity requestEntity = new org.springframework.http.HttpEntity(JSON.toJSONString(param), headers); + ResponseEntity entity = rest.exchange(url, HttpMethod.POST, requestEntity, byte[].class, new Object[0]); + byte[] qrCodeBytes = entity.getBody(); + + // 直接将二维码图片转为MultipartFile,避免写入临时文件 +// MultipartFile qrCodeFile = createMultipartFile(qrCodeBytes, "qrcode.jpg"); + + // 上传二维码到阿里云并获取URL +// String qrCodeImageUrl = image_go_url.getKeyContent() + this.uploadAliYunOss(qrCodeFile); + + // 合并图片并上传 +// String combinedImageUrl = this.generateAndCombineImagesFromUrl2(qrCodeBytes, backgroundImageUrl); + + // 设置返回数据 + + // 如果启用了Redis缓存,可以取消下面注释 + //redisUtil.set(cacheKey, qrCodeImageUrl, 3600); // 缓存一小时 + + return this.generateAndCombineImagesFromUrl2(qrCodeBytes, backgroundImageUrl); + } catch (Exception e) { + e.printStackTrace(); + + return null; + } + } + + + public byte[] generateAndCombineImagesFromUrl2(byte[] qrCodeImageByte, String backgroundUrl) { + File file = null; + try { + // 从字节数组加载小程序码图像 + BufferedImage qrCodeImage = ImageIO.read(new ByteArrayInputStream(qrCodeImageByte)); + + // 从URL加载背景图像 + URL backgroundImageUrl = new URL(backgroundUrl); + BufferedImage backgroundImage = ImageIO.read(backgroundImageUrl); + + // 创建一个新的BufferedImage来保存合并后的图像 + Graphics2D g2d = backgroundImage.createGraphics(); + + int wh = backgroundImage.getWidth() / 3; + + // 计算小程序码放置的位置(这里以中心位置为例) + int qrCodeX = (backgroundImage.getWidth() - wh) / 2; + int qrCodeY = (int) ((backgroundImage.getHeight() - wh) * 0.6); + + // 绘制小程序码图像 + g2d.drawImage(qrCodeImage, qrCodeX, qrCodeY, wh, wh, null); + + // 释放Graphics2D资源 + g2d.dispose(); + + // 将合并后的图像保存到临时文件 + file = File.createTempFile("combined_", ".png"); + ImageIO.write(backgroundImage, "png", file); + + // 上传到阿里云OSS +// return this.uploadAliYunOss(Files.readAllBytes(file.toPath()), file.getName()); + return Files.readAllBytes(file.toPath()); + } catch (Exception e) { + log.error("生成合并图片失败", e); + throw new RuntimeException("生成合并图片失败", e); + } finally { + // 删除临时文件 + if (file != null && file.exists()) { + file.delete(); + } + } + } + + /** * 获取令牌 * diff --git a/module-common/src/main/java/org/jeecg/api/service/impl/AppletOrderServiceImpl.java b/module-common/src/main/java/org/jeecg/api/service/impl/AppletOrderServiceImpl.java index 36a0bc8..af36758 100644 --- a/module-common/src/main/java/org/jeecg/api/service/impl/AppletOrderServiceImpl.java +++ b/module-common/src/main/java/org/jeecg/api/service/impl/AppletOrderServiceImpl.java @@ -1,17 +1,27 @@ package org.jeecg.api.service.impl; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; import org.jeecg.api.bean.PageBean; import org.jeecg.api.service.AppletOrderService; import org.jeecg.common.api.vo.Result; import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.commonAddOrder.entity.CommonAddOrder; +import org.jeecg.modules.commonAddOrder.service.ICommonAddOrderService; import org.jeecg.modules.commonAddress.entity.CommonAddress; +import org.jeecg.modules.commonAddress.service.ICommonAddressService; +import org.jeecg.modules.commonConfig.entity.CommonConfig; import org.jeecg.modules.commonMoneyLog.entity.CommonMoneyLog; import org.jeecg.modules.commonMoneyLog.service.ICommonMoneyLogService; import org.jeecg.modules.commonOrder.entity.CommonOrder; import org.jeecg.modules.commonOrder.service.ICommonOrderService; +import org.jeecg.modules.commonShop.entity.CommonShop; +import org.jeecg.modules.commonShop.service.ICommonShopService; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; import org.jeecg.modules.pay.MpWxPayService; @@ -21,6 +31,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.Date; +import java.util.List; @Slf4j @Service @@ -38,17 +49,40 @@ public class AppletOrderServiceImpl implements AppletOrderService { private MpWxPayService mpWxPayService; @Resource private ICommonMoneyLogService commonMoneyLogService; + @Resource + private ICommonAddressService commonAddressService; + @Resource + private ICommonShopService commonShopService; + @Resource + private ICommonAddOrderService iCommonAddOrderService; //获取订单信息列表带分页 @Override - public Result getOrderPageBean(String token, Integer status, PageBean pageBean){ + public Result getOrderPageBean(String token, Integer state, PageBean pageBean){ HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); Page page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); Page page1 = commonOrderService.lambdaQuery() .eq(CommonOrder::getUserId, hanHaiMember.getId()) - .eq(CommonOrder::getStatus, status) .orderByDesc(CommonOrder::getCreateTime) .page(page); + if(state != null){ + page1 = commonOrderService.lambdaQuery() + .eq(CommonOrder::getUserId, hanHaiMember.getId()) + .eq(CommonOrder::getStatus, state) + .orderByDesc(CommonOrder::getCreateTime) + .page(page); + } + //循环得到订单信息 + List records = page1.getRecords(); + for (CommonOrder commonOrder : records) { + commonOrder.setChildren(commonOrderService.lambdaQuery().eq(CommonOrder::getPid, commonOrder.getId()).list()); + } + + + + + + return Result.OK("订单信息查询成功",page1); } @@ -60,6 +94,7 @@ public class AppletOrderServiceImpl implements AppletOrderService { .eq(CommonOrder::getUserId, hanHaiMember.getId()) .eq(CommonOrder::getId, orderId) .one(); + commonOrder.setChildren(commonOrderService.lambdaQuery().eq(CommonOrder::getPid, commonOrder.getId()).list()); return Result.OK("订单信息查询成功",commonOrder); } @@ -129,4 +164,162 @@ public class AppletOrderServiceImpl implements AppletOrderService { } + //取消订单 + @Override + public Result cancelOrder(String token,String orderId){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + CommonOrder commonOrder = commonOrderService.getById(orderId); + if (commonOrder.getStatus().equals("0")){ + commonOrder.setStatus("3"); + commonOrderService.updateById(commonOrder); + HanHaiMember hanHaiMember1 = hanHaiMemberService.getById(hanHaiMember.getId()); + hanHaiMember1.setMoney(hanHaiMember1.getMoney().add(commonOrder.getPrice())); + hanHaiMemberService.updateById(hanHaiMember1); + } + return Result.OK("取消成功"); + } + + + + //商城-支付回调 + @Override + public Result payNotify(String requestBody){ + WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody); + String outTradeNo = notify.getOutTradeNo(); + log.info("支付回调订单号码:"+outTradeNo); + //查询订单信息 + CommonOrder commonOrder = commonOrderService.getById(outTradeNo); + //如果该订单为未支付,修改订单状态 + if (commonOrder.getStatus().equals("0")){ + commonOrder.setStatus("1"); + commonOrderService.updateById(commonOrder); + } + return null; + } + + + + + //商城-加入购物车之后一次下多个订单 + //商城-立即购买多少商品 + @Override + public Result createSumOrder(String token,String list,String addressId,Integer payType,String orderAddId){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + //orderId 不为 空 + if(StringUtils.isNotBlank(orderAddId)){ + CommonAddOrder commonAddOrder = iCommonAddOrderService.getById(orderAddId); + //修改订单状态 + commonAddOrder.setIsPay("Y"); + iCommonAddOrderService.updateById(commonAddOrder); + } + + + + + + + + + + //用户地址不能为空 + if(StringUtils.isBlank(addressId)){ + return Result.error("请选择收货地址"); + } + //查询地址是否存在 + CommonAddress commonAddress = commonAddressService.getById(addressId); + if (commonAddress==null){ + return Result.error("地址不存在"); + } + //把list转为对象 list = [{"shopId":"1","num":1},{"shopId":"2","num":2}] + List list1 = JSON.parseArray(list, CommonOrder.class); + //创建订单标识 + String orderId = IdWorker.getIdStr(); + if(null!=list1 && list1.size()>0){ + //订单总额 + BigDecimal totalPrice = new BigDecimal(0); + //订单商品数量 + Integer totalNum = 0; + + //创建订单详情 + for (CommonOrder sku : list1) { + //查询商品信息 + CommonShop commonShop = commonShopService.getById(sku.getShopId()); + //商品不能为空 + if (commonShop==null){ + return Result.error("商品不存在"); + } + //创建订单 + BigDecimal price = commonShop.getPrice().multiply(new BigDecimal(sku.getNum())); + + + + + + sku.setPid(orderId); + + sku.setHasChild("0"); + sku.setShopId(commonShop.getId()); + sku.setTitle(commonShop.getName()); + sku.setImage(commonShop.getImage()); + sku.setPrice(price); + sku.setNum(sku.getNum()); + sku.setMaterial(commonShop.getMaterial()); + sku.setCreateTime(new Date()); + sku.setPrice(price); + + sku.setImage(commonShop.getImage()); + sku.setCreateTime(new Date()); + + commonOrderService.save(sku); + + //计算总价格 + totalPrice = totalPrice.add(price); + + totalNum = totalNum + sku.getNum(); + } + + + //创建主订单 + CommonOrder cityOrder = new CommonOrder(); + cityOrder.setId(orderId); + cityOrder.setUserId(hanHaiMember.getId()); + cityOrder.setShopId(null); + cityOrder.setNum(totalNum); + cityOrder.setAddress(commonAddress.getAddress()); + cityOrder.setName(commonAddress.getName()); + cityOrder.setPhone(commonAddress.getPhone()); + cityOrder.setAddressDetail(commonAddress.getAddressDetails()); +// cityOrder.seta(addressId); + cityOrder.setName(commonAddress.getName()); + cityOrder.setTitle("组合订单"); + cityOrder.setPrice(totalPrice); + cityOrder.setPid("0"); + cityOrder.setHasChild("1"); + +// cityOrder.setShopState(2); + + cityOrder.setImage(null); + cityOrder.setStatus("0"); + cityOrder.setCreateTime(new Date()); + + commonOrderService.save(cityOrder); + + //吊起微信支付 + String s = totalPrice.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + Object appOrder = mpWxPayService.createOrder( + "购买"+ "组合订单" , + "127.0.0.1", + orderId, + i1, + orderId, + hanHaiMember.getAppletOpenid(), + cityOrder.toString()); + + return Result.OK("支付成功",appOrder); + } + return null; + } + } diff --git a/module-common/src/main/java/org/jeecg/modules/commonAddOrder/entity/CommonAddOrder.java b/module-common/src/main/java/org/jeecg/modules/commonAddOrder/entity/CommonAddOrder.java index bb2a4ec..22615dd 100644 --- a/module-common/src/main/java/org/jeecg/modules/commonAddOrder/entity/CommonAddOrder.java +++ b/module-common/src/main/java/org/jeecg/modules/commonAddOrder/entity/CommonAddOrder.java @@ -4,11 +4,15 @@ import java.io.Serializable; import java.io.UnsupportedEncodingException; import java.util.Date; import java.math.BigDecimal; +import java.util.List; + import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; +import org.jeecg.modules.commonShop.entity.CommonShop; import org.springframework.format.annotation.DateTimeFormat; import org.jeecgframework.poi.excel.annotation.Excel; import org.jeecg.common.aspect.annotation.Dict; @@ -79,4 +83,9 @@ public class CommonAddOrder implements Serializable { @Excel(name = "是否支付", width = 15) @ApiModelProperty(value = "是否支付") private java.lang.String isPay; + + + + @TableField(exist = false) + private List commonShop; } diff --git a/module-common/src/main/java/org/jeecg/modules/commonOrder/entity/CommonOrder.java b/module-common/src/main/java/org/jeecg/modules/commonOrder/entity/CommonOrder.java index 94ef1ba..96cc24a 100644 --- a/module-common/src/main/java/org/jeecg/modules/commonOrder/entity/CommonOrder.java +++ b/module-common/src/main/java/org/jeecg/modules/commonOrder/entity/CommonOrder.java @@ -4,7 +4,10 @@ import java.io.Serializable; import java.io.UnsupportedEncodingException; import java.util.Date; import java.math.BigDecimal; +import java.util.List; + import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -93,4 +96,31 @@ public class CommonOrder implements Serializable { @Excel(name = "间推佣金", width = 15) @ApiModelProperty(value = "间推佣金") private java.math.BigDecimal twoMoney; + + + private Integer num; + /**材料*/ + @Excel(name = "材料", width = 15) + @ApiModelProperty(value = "材料") + private java.lang.String material; + + /**关联商品*/ + @Excel(name = "关联商品", width = 15) + @ApiModelProperty(value = "关联商品") + private java.lang.String shopId; + + /**父级节点*/ + @Excel(name = "父级节点", width = 15) + @ApiModelProperty(value = "父级节点") + private java.lang.String pid; + /**是否有子节点*/ + @Excel(name = "是否有子节点", width = 15, dicCode = "yn") + @Dict(dicCode = "yn") + @ApiModelProperty(value = "是否有子节点") + private java.lang.String hasChild; + + + + @TableField (exist = false) + private List children; } diff --git a/module-common/src/main/java/org/jeecg/modules/commonShopClass/entity/CommonShopClass.java b/module-common/src/main/java/org/jeecg/modules/commonShopClass/entity/CommonShopClass.java index fcc1438..d12fc84 100644 --- a/module-common/src/main/java/org/jeecg/modules/commonShopClass/entity/CommonShopClass.java +++ b/module-common/src/main/java/org/jeecg/modules/commonShopClass/entity/CommonShopClass.java @@ -4,6 +4,7 @@ import java.io.Serializable; import java.util.Date; import java.math.BigDecimal; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -14,6 +15,7 @@ import org.jeecg.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.UnsupportedEncodingException; +import java.util.List; /** * @Description: 商品分类表 @@ -60,4 +62,9 @@ public class CommonShopClass implements Serializable { @Dict(dicCode = "yn") @ApiModelProperty(value = "是否有子节点") private java.lang.String hasChild; + + + + @TableField (exist = false) + private List children; } diff --git a/module-system/src/main/resources/application-dev.yml b/module-system/src/main/resources/application-dev.yml index 8afb559..d49ea09 100644 --- a/module-system/src/main/resources/application-dev.yml +++ b/module-system/src/main/resources/application-dev.yml @@ -1,5 +1,5 @@ server: - port: 8001 + port: 8002 tomcat: max-swallow-size: -1 error: diff --git a/module-system/src/main/resources/pay_weixin.properties b/module-system/src/main/resources/pay_weixin.properties index 8f75044..fddea51 100644 --- a/module-system/src/main/resources/pay_weixin.properties +++ b/module-system/src/main/resources/pay_weixin.properties @@ -1,10 +1,10 @@ -pay.mchId=1659066870 -pay.appId=wx797abcfb479c75ec -pay.mchKey=vtribevtribevtribevtribevtribe12 +pay.mchId=1715326134 +pay.appId=wx328ba180b4a88d49 +pay.mchKey=0fdb77429ffdf206c151af76a663041c pay.keyPath=classpath:apiclient_cert.pem -pay.notifyUrl=https://popularize-admin.hhlm1688.com/popularize-admin/order_common/payNotify -pay.notifyUrlDev=https://popularize-admin.hhlm1688.com/popularize-admin/order_common/payNotify -pay.notifyOneUrl=https://popularize-admin.hhlm1688.com/popularize-admin/order_common/payNotify -pay.notifyUrlOneDev=https://popularize-admin.hhlm1688.com/popularize-admin/order_common/payNotify +pay.notifyUrl=https://building-admin.hhlm1688.com/building-admin/order/payNotify +pay.notifyUrlDev=https://building-admin.hhlm1688.com/building-admin/order/payNotify +pay.notifyOneUrl=https://building-admin.hhlm1688.com/building-admin/order/payNotify +pay.notifyUrlOneDev=https://building-admin.hhlm1688.com/building-admin/order/payNotify