From 02dc744bf302d7a3986761bd4f8daf96b194170d Mon Sep 17 00:00:00 2001 From: Aug <17674666882@163.com> Date: Thu, 8 May 2025 18:37:17 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=94=AE=E5=90=8E=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=202=E3=80=81=E8=AE=A2=E5=8D=95=E6=A8=A1=E5=9D=97=203=E3=80=81?= =?UTF-8?q?=E9=92=B1=E5=8C=85=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/jeecg/modules/pay/MpWxPayService.java | 39 ++++ .../controller/HanHaiMemberController.java | 2 +- .../modules/hanHaiMember/entity/HanHaiMember.java | 9 +- .../hanHaiMember/mapper/HanHaiMemberMapper.java | 2 +- .../hanHaiMember/service/IHanHaiMemberService.java | 2 +- .../service/impl/HanHaiMemberServiceImpl.java | 2 +- .../modules/hanHaiMember/vue/HanHaiMemberList.vue | 82 ++++--- .../hanHaiMember/vue/modules/HanHaiMemberForm.vue | 11 +- .../modules/hanHaiMember/vue3/HanHaiMember.data.ts | 24 +- .../controller/TeambuyCashController.java | 171 ++++++++++++++ .../modules/teambuyCash/entity/TeambuyCash.java | 77 ++++++ .../teambuyCash/mapper/TeambuyCashMapper.java | 17 ++ .../teambuyCash/mapper/xml/TeambuyCashMapper.xml | 5 + .../teambuyCash/service/ITeambuyCashService.java | 14 ++ .../service/impl/TeambuyCashServiceImpl.java | 19 ++ .../modules/teambuyCash/vue/TeambuyCashList.vue | 202 ++++++++++++++++ .../teambuyCash/vue/modules/TeambuyCashForm.vue | 129 +++++++++++ .../vue/modules/TeambuyCashModal.Style#Drawer.vue | 84 +++++++ .../teambuyCash/vue/modules/TeambuyCashModal.vue | 60 +++++ .../modules/teambuyCash/vue3/TeambuyCash.api.ts | 61 +++++ .../modules/teambuyCash/vue3/TeambuyCash.data.ts | 82 +++++++ .../modules/teambuyCash/vue3/TeambuyCashList.vue | 162 +++++++++++++ .../vue3/components/TeambuyCashModal.vue | 58 +++++ .../controller/TeambuyLevelController.java | 171 ++++++++++++++ .../modules/teambuyLevel/entity/TeambuyLevel.java | 58 +++++ .../teambuyLevel/mapper/TeambuyLevelMapper.java | 17 ++ .../teambuyLevel/mapper/xml/TeambuyLevelMapper.xml | 5 + .../teambuyLevel/service/ITeambuyLevelService.java | 14 ++ .../service/impl/TeambuyLevelServiceImpl.java | 19 ++ .../modules/teambuyLevel/vue/TeambuyLevelList.vue | 177 ++++++++++++++ .../teambuyLevel/vue/modules/TeambuyLevelForm.vue | 109 +++++++++ .../vue/modules/TeambuyLevelModal.Style#Drawer.vue | 84 +++++++ .../teambuyLevel/vue/modules/TeambuyLevelModal.vue | 60 +++++ .../modules/teambuyLevel/vue3/TeambuyLevel.api.ts | 61 +++++ .../modules/teambuyLevel/vue3/TeambuyLevel.data.ts | 33 +++ .../modules/teambuyLevel/vue3/TeambuyLevelList.vue | 162 +++++++++++++ .../vue3/components/TeambuyLevelModal.vue | 58 +++++ .../controller/TeambuyOrderMemberController.java | 2 +- .../entity/TeambuyOrderMember.java | 11 +- .../mapper/TeambuyOrderMemberMapper.java | 2 +- .../service/ITeambuyOrderMemberService.java | 2 +- .../impl/TeambuyOrderMemberServiceImpl.java | 2 +- .../vue/TeambuyOrderMemberList.vue | 6 + .../vue/modules/TeambuyOrderMemberForm.vue | 5 + .../vue3/TeambuyOrderMember.data.ts | 10 + .../api/teambuyController/AfterController.java | 37 +++ .../api/teambuyController/AmountController.java | 20 +- .../api/teambuyController/OrderController.java | 48 ++++ .../org/jeecg/modules/apiService/AfterService.java | 13 ++ .../jeecg/modules/apiService/AmountService.java | 7 + .../org/jeecg/modules/apiService/OrderService.java | 14 ++ .../modules/apiService/impl/AfterServiceImpl.java | 56 +++++ .../modules/apiService/impl/AmountServiceImpl.java | 83 +++++++ .../modules/apiService/impl/OrderServiceImpl.java | 258 +++++++++++++++++++-- .../apiService/impl/UserInfoServiceImpl.java | 15 +- 55 files changed, 2855 insertions(+), 78 deletions(-) create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/controller/TeambuyCashController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/entity/TeambuyCash.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/TeambuyCashMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/xml/TeambuyCashMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/ITeambuyCashService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/impl/TeambuyCashServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/TeambuyCashList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCashList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/components/TeambuyCashModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/controller/TeambuyLevelController.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/entity/TeambuyLevel.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/TeambuyLevelMapper.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/xml/TeambuyLevelMapper.xml create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/ITeambuyLevelService.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/impl/TeambuyLevelServiceImpl.java create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/TeambuyLevelList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelForm.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.Style#Drawer.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.api.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.data.ts create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevelList.vue create mode 100644 jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/components/TeambuyLevelModal.vue create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AfterController.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AfterService.java create mode 100644 jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AfterServiceImpl.java diff --git a/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java b/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java index dc593fd..8cea047 100644 --- a/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java +++ b/han-hai-module-pay/src/main/java/org/jeecg/modules/pay/MpWxPayService.java @@ -116,6 +116,45 @@ public class MpWxPayService { } } + /** + * 微信吊起支付 + * @param productName + * @param clientIp + * @param productId + * @param price + * @param orderNo + * @param openId + * @param body + * @return + */ + public Object createOrderCashIn(String productName, String clientIp, + String productId, Integer price, String orderNo, + String openId, String body){ + WxPayUnifiedOrderRequest request = new WxPayUnifiedOrderRequest(); + request.setDeviceInfo("WEB"); //设备号 + request.setTradeType("JSAPI"); //交易类型 + request.setBody(productName); //商品描述 + request.setOutTradeNo(orderNo); //商户订单号 + request.setDetail(productName); //商品详情 + request.setTotalFee(price); //总金额|分计 + request.setSpbillCreateIp(clientIp); //终端IP +// request.setNotifyUrl(wxPay.notifyUrl);//设置回调路径 + request.setNotifyUrl("http://augcl.natapp1.cc/teambuy-api/teambuy/amount/CashNotify");//设置回调路径 + request.setProductId(productId); //商品id + request.setOpenid(openId); //JSAPI OPENID + if (dev){ + request.setTotalFee(price); +// request.setNotifyUrl(wxPay.notifyUrlDev); + request.setNotifyUrl("http://augcl.natapp1.cc/teambuy-api/teambuy/amount/CashNotify");//设置回调路径 + } + try { + Object order = wxPayService.createOrder(request); + return order; + } catch (WxPayException e) { + e.printStackTrace(); + return e.getLocalizedMessage(); + } + } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java index 5d96eeb..0763eea 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/controller/HanHaiMemberController.java @@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog; /** * @Description: han_hai_member * @Author: jeecg-boot - * @Date: 2025-04-24 + * @Date: 2025-05-08 * @Version: V1.0 */ @Api(tags="han_hai_member") diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java index d09f8d1..bc0e2af 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/entity/HanHaiMember.java @@ -20,7 +20,7 @@ import lombok.experimental.Accessors; /** * @Description: han_hai_member * @Author: jeecg-boot - * @Date: 2025-04-24 + * @Date: 2025-05-08 * @Version: V1.0 */ @Data @@ -183,7 +183,7 @@ public class HanHaiMember implements Serializable { /**余额*/ @Excel(name = "余额", width = 15) @ApiModelProperty(value = "余额") - private java.math.BigDecimal price; + private java.math.BigDecimal balance; /**积分*/ @Excel(name = "积分", width = 15) @ApiModelProperty(value = "积分") @@ -200,4 +200,9 @@ public class HanHaiMember implements Serializable { @Excel(name = "是否分销商", width = 15) @ApiModelProperty(value = "是否分销商") private java.lang.String isDai; + /**团长等级*/ + @Excel(name = "团长等级", width = 15, dictTable = "teambuy_level", dicText = "title", dicCode = "id") + @Dict(dictTable = "teambuy_level", dicText = "title", dicCode = "id") + @ApiModelProperty(value = "团长等级") + private java.lang.String leaderLevelId; } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java index 3109ce2..14151ad 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/mapper/HanHaiMemberMapper.java @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: han_hai_member * @Author: jeecg-boot - * @Date: 2025-04-24 + * @Date: 2025-05-08 * @Version: V1.0 */ public interface HanHaiMemberMapper extends BaseMapper { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java index a1aeea8..d4a0611 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/IHanHaiMemberService.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @Description: han_hai_member * @Author: jeecg-boot - * @Date: 2025-04-24 + * @Date: 2025-05-08 * @Version: V1.0 */ public interface IHanHaiMemberService extends IService { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java index 2336770..d880142 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/service/impl/HanHaiMemberServiceImpl.java @@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** * @Description: han_hai_member * @Author: jeecg-boot - * @Date: 2025-04-24 + * @Date: 2025-05-08 * @Version: V1.0 */ @Service diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/HanHaiMemberList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/HanHaiMemberList.vue index 7630bd7..9de4130 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/HanHaiMemberList.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/HanHaiMemberList.vue @@ -99,6 +99,7 @@ import { mixinDevice } from '@/utils/mixin' import { JeecgListMixin } from '@/mixins/JeecgListMixin' import HanHaiMemberModal from './modules/HanHaiMemberModal' + import {filterMultiDictText} from '@/components/dict/JDictSelectUtil' export default { name: 'HanHaiMemberList', @@ -129,7 +130,8 @@ { title:'用户头像', align:"center", - dataIndex: 'headImage' + dataIndex: 'headImage', + scopedSlots: {customRender: 'imgSlot'} }, { title:'真实姓名', @@ -282,7 +284,7 @@ { title:'余额', align:"center", - dataIndex: 'price' + dataIndex: 'balance' }, { title:'积分', @@ -304,6 +306,11 @@ align:"center", dataIndex: 'isDai' }, + { + title:'团长等级', + align:"center", + dataIndex: 'leaderLevelId_dictText' + }, { title: '操作', dataIndex: 'action', @@ -338,42 +345,43 @@ }, getSuperFieldList(){ let fieldList=[]; - fieldList.push({type:'string',value:'nickName',text:'昵称'}) - fieldList.push({type:'string',value:'headImage',text:'用户头像'}) - fieldList.push({type:'string',value:'name',text:'真实姓名'}) - fieldList.push({type:'string',value:'phone',text:'手机号码'}) - fieldList.push({type:'string',value:'account',text:'登录账号'}) - fieldList.push({type:'string',value:'password',text:'登录密码'}) - fieldList.push({type:'string',value:'passwordSalt',text:'登录盐'}) - fieldList.push({type:'string',value:'shopName',text:'店铺名称备注'}) - fieldList.push({type:'string',value:'role',text:'角色'}) - fieldList.push({type:'string',value:'cardId',text:'ID标识号码'}) - fieldList.push({type:'string',value:'frozenFlag',text:'是否冻结'}) - fieldList.push({type:'string',value:'deleteFlag',text:'是否删除'}) - fieldList.push({type:'string',value:'token',text:'登录TOEKN'}) - fieldList.push({type:'string',value:'officialOpenid',text:'公众号openid'}) - fieldList.push({type:'string',value:'appletOpenid',text:'小程序标识'}) - fieldList.push({type:'string',value:'appOpenid',text:'APP标识'}) - fieldList.push({type:'string',value:'wxUnionid',text:'微信UNIONID'}) - fieldList.push({type:'string',value:'officialAppid',text:'公众号appid'}) - fieldList.push({type:'string',value:'idCard',text:'身份证号码'}) - fieldList.push({type:'string',value:'idCardPassword',text:'发薪平台密码'}) - fieldList.push({type:'string',value:'idCardSalt',text:'发薪平台加密盐'}) - fieldList.push({type:'string',value:'idCardOpen',text:'是否实名认证'}) - fieldList.push({type:'int',value:'intentionNum',text:'intentionNum'}) - fieldList.push({type:'int',value:'successNum',text:'successNum'}) - fieldList.push({type:'int',value:'addNum',text:'addNum'}) - fieldList.push({type:'string',value:'shareId',text:'shareId'}) - fieldList.push({type:'string',value:'vid',text:'邀请人'}) + fieldList.push({type:'string',value:'nickName',text:'昵称',dictCode:''}) + fieldList.push({type:'string',value:'headImage',text:'用户头像',dictCode:''}) + fieldList.push({type:'string',value:'name',text:'真实姓名',dictCode:''}) + fieldList.push({type:'string',value:'phone',text:'手机号码',dictCode:''}) + fieldList.push({type:'string',value:'account',text:'登录账号',dictCode:''}) + fieldList.push({type:'string',value:'password',text:'登录密码',dictCode:''}) + fieldList.push({type:'string',value:'passwordSalt',text:'登录盐',dictCode:''}) + fieldList.push({type:'string',value:'shopName',text:'店铺名称备注',dictCode:''}) + fieldList.push({type:'string',value:'role',text:'角色',dictCode:''}) + fieldList.push({type:'string',value:'cardId',text:'ID标识号码',dictCode:''}) + fieldList.push({type:'string',value:'frozenFlag',text:'是否冻结',dictCode:''}) + fieldList.push({type:'string',value:'deleteFlag',text:'是否删除',dictCode:''}) + fieldList.push({type:'string',value:'token',text:'登录TOEKN',dictCode:''}) + fieldList.push({type:'string',value:'officialOpenid',text:'公众号openid',dictCode:''}) + fieldList.push({type:'string',value:'appletOpenid',text:'小程序标识',dictCode:''}) + fieldList.push({type:'string',value:'appOpenid',text:'APP标识',dictCode:''}) + fieldList.push({type:'string',value:'wxUnionid',text:'微信UNIONID',dictCode:''}) + fieldList.push({type:'string',value:'officialAppid',text:'公众号appid',dictCode:''}) + fieldList.push({type:'string',value:'idCard',text:'身份证号码',dictCode:''}) + fieldList.push({type:'string',value:'idCardPassword',text:'发薪平台密码',dictCode:''}) + fieldList.push({type:'string',value:'idCardSalt',text:'发薪平台加密盐',dictCode:''}) + fieldList.push({type:'string',value:'idCardOpen',text:'是否实名认证',dictCode:''}) + fieldList.push({type:'int',value:'intentionNum',text:'intentionNum',dictCode:''}) + fieldList.push({type:'int',value:'successNum',text:'successNum',dictCode:''}) + fieldList.push({type:'int',value:'addNum',text:'addNum',dictCode:''}) + fieldList.push({type:'string',value:'shareId',text:'shareId',dictCode:''}) + fieldList.push({type:'string',value:'vid',text:'邀请人',dictCode:''}) fieldList.push({type:'date',value:'vtime',text:'邀请时间'}) - fieldList.push({type:'int',value:'isPay',text:'兼兼街会员'}) - fieldList.push({type:'int',value:'follow',text:'是否关注公众号'}) - fieldList.push({type:'number',value:'payRole',text:'payRole'}) - fieldList.push({type:'number',value:'price',text:'余额'}) - fieldList.push({type:'number',value:'integerPrice',text:'积分'}) - fieldList.push({type:'string',value:'appletAppid',text:'小程序appid'}) - fieldList.push({type:'string',value:'sex',text:'性别'}) - fieldList.push({type:'string',value:'isDai',text:'是否分销商'}) + fieldList.push({type:'int',value:'isPay',text:'兼兼街会员',dictCode:''}) + fieldList.push({type:'int',value:'follow',text:'是否关注公众号',dictCode:''}) + fieldList.push({type:'BigDecimal',value:'payRole',text:'payRole',dictCode:''}) + fieldList.push({type:'BigDecimal',value:'balance',text:'余额',dictCode:''}) + fieldList.push({type:'BigDecimal',value:'integerPrice',text:'积分',dictCode:''}) + fieldList.push({type:'string',value:'appletAppid',text:'小程序appid',dictCode:''}) + fieldList.push({type:'string',value:'sex',text:'性别',dictCode:''}) + fieldList.push({type:'string',value:'isDai',text:'是否分销商',dictCode:''}) + fieldList.push({type:'string',value:'leaderLevelId',text:'团长等级',dictCode:"teambuy_level,title,id"}) this.superFieldList = fieldList } } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/modules/HanHaiMemberForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/modules/HanHaiMemberForm.vue index ef859c9..88bf2f9 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/modules/HanHaiMemberForm.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue/modules/HanHaiMemberForm.vue @@ -10,7 +10,7 @@ - + @@ -159,8 +159,8 @@ - - + + @@ -183,6 +183,11 @@ + + + + + diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue3/HanHaiMember.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue3/HanHaiMember.data.ts index 244c32a..db13eb6 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue3/HanHaiMember.data.ts +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/hanHaiMember/vue3/HanHaiMember.data.ts @@ -12,7 +12,8 @@ export const columns: BasicColumn[] = [ { title: '用户头像', align:"center", - dataIndex: 'headImage' + dataIndex: 'headImage', + customRender:render.renderAvatar, }, { title: '真实姓名', @@ -165,7 +166,7 @@ export const columns: BasicColumn[] = [ { title: '余额', align:"center", - dataIndex: 'price' + dataIndex: 'balance' }, { title: '积分', @@ -187,6 +188,11 @@ export const columns: BasicColumn[] = [ align:"center", dataIndex: 'isDai' }, + { + title: '团长等级', + align:"center", + dataIndex: 'leaderLevelId_dictText' + }, ]; //查询数据 export const searchFormSchema: FormSchema[] = [ @@ -201,7 +207,9 @@ export const formSchema: FormSchema[] = [ { label: '用户头像', field: 'headImage', - component: 'Input', + component: 'JImageUpload', + componentProps:{ + }, }, { label: '真实姓名', @@ -350,7 +358,7 @@ export const formSchema: FormSchema[] = [ }, { label: '余额', - field: 'price', + field: 'balance', component: 'InputNumber', }, { @@ -373,4 +381,12 @@ export const formSchema: FormSchema[] = [ field: 'isDai', component: 'Input', }, + { + label: '团长等级', + field: 'leaderLevelId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"teambuy_level,title,id" + }, + }, ]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/controller/TeambuyCashController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/controller/TeambuyCashController.java new file mode 100644 index 0000000..3ece174 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/controller/TeambuyCashController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.teambuyCash.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; +import org.jeecg.modules.teambuyCash.service.ITeambuyCashService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 充值提现表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Api(tags="充值提现表") +@RestController +@RequestMapping("/teambuyCash/teambuyCash") +@Slf4j +public class TeambuyCashController extends JeecgController { + @Autowired + private ITeambuyCashService teambuyCashService; + + /** + * 分页列表查询 + * + * @param teambuyCash + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "充值提现表-分页列表查询") + @ApiOperation(value="充值提现表-分页列表查询", notes="充值提现表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TeambuyCash teambuyCash, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(teambuyCash, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = teambuyCashService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param teambuyCash + * @return + */ + @AutoLog(value = "充值提现表-添加") + @ApiOperation(value="充值提现表-添加", notes="充值提现表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody TeambuyCash teambuyCash) { + teambuyCashService.save(teambuyCash); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param teambuyCash + * @return + */ + @AutoLog(value = "充值提现表-编辑") + @ApiOperation(value="充值提现表-编辑", notes="充值提现表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TeambuyCash teambuyCash) { + teambuyCashService.updateById(teambuyCash); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "充值提现表-通过id删除") + @ApiOperation(value="充值提现表-通过id删除", notes="充值提现表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + teambuyCashService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "充值提现表-批量删除") + @ApiOperation(value="充值提现表-批量删除", notes="充值提现表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.teambuyCashService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "充值提现表-通过id查询") + @ApiOperation(value="充值提现表-通过id查询", notes="充值提现表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TeambuyCash teambuyCash = teambuyCashService.getById(id); + if(teambuyCash==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(teambuyCash); + } + + /** + * 导出excel + * + * @param request + * @param teambuyCash + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TeambuyCash teambuyCash) { + return super.exportXls(request, teambuyCash, TeambuyCash.class, "充值提现表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TeambuyCash.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/entity/TeambuyCash.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/entity/TeambuyCash.java new file mode 100644 index 0000000..38ebaf2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/entity/TeambuyCash.java @@ -0,0 +1,77 @@ +package org.jeecg.modules.teambuyCash.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 充值提现表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Data +@TableName("teambuy_cash") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="teambuy_cash对象", description="充值提现表") +public class TeambuyCash implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**标题*/ + @Excel(name = "标题", width = 15) + @ApiModelProperty(value = "标题") + private java.lang.String title; + /**金额*/ + @Excel(name = "金额", width = 15) + @ApiModelProperty(value = "金额") + private java.math.BigDecimal amount; + /**类型*/ + @Excel(name = "类型", width = 15, dicCode = "teambuy_cash_type") + @Dict(dicCode = "teambuy_cash_type") + @ApiModelProperty(value = "类型") + private java.lang.String type; + /**充值状态*/ + @Excel(name = "充值状态", width = 15, dicCode = "teambuy_cashIn_status") + @Dict(dicCode = "teambuy_cashIn_status") + @ApiModelProperty(value = "充值状态") + private java.lang.String status; + /**支付时间*/ + @Excel(name = "支付时间", width = 15) + @ApiModelProperty(value = "支付时间") + private java.util.Date payTime; + /**关联用户id*/ + @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户id") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/TeambuyCashMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/TeambuyCashMapper.java new file mode 100644 index 0000000..85cce8c --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/TeambuyCashMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.teambuyCash.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 充值提现表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +public interface TeambuyCashMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/xml/TeambuyCashMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/xml/TeambuyCashMapper.xml new file mode 100644 index 0000000..081b285 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/mapper/xml/TeambuyCashMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/ITeambuyCashService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/ITeambuyCashService.java new file mode 100644 index 0000000..862feb5 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/ITeambuyCashService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.teambuyCash.service; + +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 充值提现表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +public interface ITeambuyCashService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/impl/TeambuyCashServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/impl/TeambuyCashServiceImpl.java new file mode 100644 index 0000000..e191132 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/service/impl/TeambuyCashServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.teambuyCash.service.impl; + +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; +import org.jeecg.modules.teambuyCash.mapper.TeambuyCashMapper; +import org.jeecg.modules.teambuyCash.service.ITeambuyCashService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 充值提现表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Service +public class TeambuyCashServiceImpl extends ServiceImpl implements ITeambuyCashService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/TeambuyCashList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/TeambuyCashList.vue new file mode 100644 index 0000000..2dfbe0a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/TeambuyCashList.vue @@ -0,0 +1,202 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashForm.vue new file mode 100644 index 0000000..2b21c3a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashForm.vue @@ -0,0 +1,129 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.Style#Drawer.vue new file mode 100644 index 0000000..c131edf --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.vue new file mode 100644 index 0000000..9ded327 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue/modules/TeambuyCashModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.api.ts new file mode 100644 index 0000000..fd0713d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/teambuyCash/teambuyCash/list', + save='/teambuyCash/teambuyCash/add', + edit='/teambuyCash/teambuyCash/edit', + deleteOne = '/teambuyCash/teambuyCash/delete', + deleteBatch = '/teambuyCash/teambuyCash/deleteBatch', + importExcel = '/teambuyCash/teambuyCash/importExcel', + exportXls = '/teambuyCash/teambuyCash/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.data.ts new file mode 100644 index 0000000..50099bf --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCash.data.ts @@ -0,0 +1,82 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '标题', + align:"center", + dataIndex: 'title' + }, + { + title: '金额', + align:"center", + dataIndex: 'amount' + }, + { + title: '类型', + align:"center", + dataIndex: 'type_dictText' + }, + { + title: '充值状态', + align:"center", + dataIndex: 'status_dictText' + }, + { + title: '支付时间', + align:"center", + dataIndex: 'payTime' + }, + { + title: '关联用户id', + align:"center", + dataIndex: 'userId_dictText' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '标题', + field: 'title', + component: 'Input', + }, + { + label: '金额', + field: 'amount', + component: 'InputNumber', + }, + { + label: '类型', + field: 'type', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"teambuy_cash_type" + }, + }, + { + label: '充值状态', + field: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"teambuy_cashIn_status" + }, + }, + { + label: '支付时间', + field: 'payTime', + component: 'Input', + }, + { + label: '关联用户id', + field: 'userId', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"han_hai_member,nick_name,id" + }, + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCashList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCashList.vue new file mode 100644 index 0000000..12a6618 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/TeambuyCashList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/components/TeambuyCashModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/components/TeambuyCashModal.vue new file mode 100644 index 0000000..89ffc23 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyCash/vue3/components/TeambuyCashModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/controller/TeambuyLevelController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/controller/TeambuyLevelController.java new file mode 100644 index 0000000..2d35dc2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/controller/TeambuyLevelController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.teambuyLevel.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.teambuyLevel.entity.TeambuyLevel; +import org.jeecg.modules.teambuyLevel.service.ITeambuyLevelService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 佣金等级表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Api(tags="佣金等级表") +@RestController +@RequestMapping("/teambuyLevel/teambuyLevel") +@Slf4j +public class TeambuyLevelController extends JeecgController { + @Autowired + private ITeambuyLevelService teambuyLevelService; + + /** + * 分页列表查询 + * + * @param teambuyLevel + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "佣金等级表-分页列表查询") + @ApiOperation(value="佣金等级表-分页列表查询", notes="佣金等级表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TeambuyLevel teambuyLevel, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(teambuyLevel, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = teambuyLevelService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param teambuyLevel + * @return + */ + @AutoLog(value = "佣金等级表-添加") + @ApiOperation(value="佣金等级表-添加", notes="佣金等级表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody TeambuyLevel teambuyLevel) { + teambuyLevelService.save(teambuyLevel); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param teambuyLevel + * @return + */ + @AutoLog(value = "佣金等级表-编辑") + @ApiOperation(value="佣金等级表-编辑", notes="佣金等级表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TeambuyLevel teambuyLevel) { + teambuyLevelService.updateById(teambuyLevel); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "佣金等级表-通过id删除") + @ApiOperation(value="佣金等级表-通过id删除", notes="佣金等级表-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + teambuyLevelService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "佣金等级表-批量删除") + @ApiOperation(value="佣金等级表-批量删除", notes="佣金等级表-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.teambuyLevelService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "佣金等级表-通过id查询") + @ApiOperation(value="佣金等级表-通过id查询", notes="佣金等级表-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TeambuyLevel teambuyLevel = teambuyLevelService.getById(id); + if(teambuyLevel==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(teambuyLevel); + } + + /** + * 导出excel + * + * @param request + * @param teambuyLevel + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TeambuyLevel teambuyLevel) { + return super.exportXls(request, teambuyLevel, TeambuyLevel.class, "佣金等级表"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TeambuyLevel.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/entity/TeambuyLevel.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/entity/TeambuyLevel.java new file mode 100644 index 0000000..9e7874b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/entity/TeambuyLevel.java @@ -0,0 +1,58 @@ +package org.jeecg.modules.teambuyLevel.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 佣金等级表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Data +@TableName("teambuy_level") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="teambuy_level对象", description="佣金等级表") +public class TeambuyLevel implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建日期*/ + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新日期*/ + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + /**等级名称*/ + @Excel(name = "等级名称", width = 15) + @ApiModelProperty(value = "等级名称") + private java.lang.String title; + /**佣金*/ + @Excel(name = "佣金", width = 15) + @ApiModelProperty(value = "佣金") + private java.math.BigDecimal amount; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/TeambuyLevelMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/TeambuyLevelMapper.java new file mode 100644 index 0000000..dda70a2 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/TeambuyLevelMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.teambuyLevel.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.teambuyLevel.entity.TeambuyLevel; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 佣金等级表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +public interface TeambuyLevelMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/xml/TeambuyLevelMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/xml/TeambuyLevelMapper.xml new file mode 100644 index 0000000..fc2ce28 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/mapper/xml/TeambuyLevelMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/ITeambuyLevelService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/ITeambuyLevelService.java new file mode 100644 index 0000000..83449ae --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/ITeambuyLevelService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.teambuyLevel.service; + +import org.jeecg.modules.teambuyLevel.entity.TeambuyLevel; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 佣金等级表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +public interface ITeambuyLevelService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/impl/TeambuyLevelServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/impl/TeambuyLevelServiceImpl.java new file mode 100644 index 0000000..3ac4255 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/service/impl/TeambuyLevelServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.teambuyLevel.service.impl; + +import org.jeecg.modules.teambuyLevel.entity.TeambuyLevel; +import org.jeecg.modules.teambuyLevel.mapper.TeambuyLevelMapper; +import org.jeecg.modules.teambuyLevel.service.ITeambuyLevelService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 佣金等级表 + * @Author: jeecg-boot + * @Date: 2025-05-08 + * @Version: V1.0 + */ +@Service +public class TeambuyLevelServiceImpl extends ServiceImpl implements ITeambuyLevelService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/TeambuyLevelList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/TeambuyLevelList.vue new file mode 100644 index 0000000..8a4783b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/TeambuyLevelList.vue @@ -0,0 +1,177 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelForm.vue new file mode 100644 index 0000000..748a24d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelForm.vue @@ -0,0 +1,109 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.Style#Drawer.vue new file mode 100644 index 0000000..5b0be68 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.vue new file mode 100644 index 0000000..00cd0bd --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue/modules/TeambuyLevelModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.api.ts new file mode 100644 index 0000000..35fd55e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/teambuyLevel/teambuyLevel/list', + save='/teambuyLevel/teambuyLevel/add', + edit='/teambuyLevel/teambuyLevel/edit', + deleteOne = '/teambuyLevel/teambuyLevel/delete', + deleteBatch = '/teambuyLevel/teambuyLevel/deleteBatch', + importExcel = '/teambuyLevel/teambuyLevel/importExcel', + exportXls = '/teambuyLevel/teambuyLevel/exportXls', +} +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; +/** + * 列表接口 + * @param params + */ +export const list = (params) => + defHttp.get({url: Api.list, params}); + +/** + * 删除单个 + */ +export const deleteOne = (params,handleSuccess) => { + return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); +} +/** + * 批量删除 + * @param params + */ +export const batchDelete = (params, handleSuccess) => { + Modal.confirm({ + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => { + handleSuccess(); + }); + } + }); +} +/** + * 保存或者更新 + * @param params + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({url: url, params}); +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.data.ts new file mode 100644 index 0000000..ecee74a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevel.data.ts @@ -0,0 +1,33 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '等级名称', + align:"center", + dataIndex: 'title' + }, + { + title: '佣金', + align:"center", + dataIndex: 'amount' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '等级名称', + field: 'title', + component: 'Input', + }, + { + label: '佣金', + field: 'amount', + component: 'InputNumber', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevelList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevelList.vue new file mode 100644 index 0000000..b316aee --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/TeambuyLevelList.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/components/TeambuyLevelModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/components/TeambuyLevelModal.vue new file mode 100644 index 0000000..22dbdf0 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyLevel/vue3/components/TeambuyLevelModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/controller/TeambuyOrderMemberController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/controller/TeambuyOrderMemberController.java index 6f1dbe4..2dbe5ad 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/controller/TeambuyOrderMemberController.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/controller/TeambuyOrderMemberController.java @@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog; /** * @Description: 团员订单表 * @Author: jeecg-boot - * @Date: 2025-05-06 + * @Date: 2025-05-08 * @Version: V1.0 */ @Api(tags="团员订单表") diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/entity/TeambuyOrderMember.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/entity/TeambuyOrderMember.java index e1c2299..3947be4 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/entity/TeambuyOrderMember.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/entity/TeambuyOrderMember.java @@ -14,6 +14,7 @@ import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; import org.jeecg.modules.teambuyOrderGoods.entity.TeambuyOrderGoods; +import org.jeecg.modules.teambuyTeamLeader.entity.TeambuyTeamLeader; import org.springframework.format.annotation.DateTimeFormat; import org.jeecgframework.poi.excel.annotation.Excel; import org.jeecg.common.aspect.annotation.Dict; @@ -25,7 +26,7 @@ import lombok.experimental.Accessors; /** * @Description: 团员订单表 * @Author: jeecg-boot - * @Date: 2025-05-06 + * @Date: 2025-05-08 * @Version: V1.0 */ @Data @@ -82,6 +83,10 @@ public class TeambuyOrderMember implements Serializable { @Dict(dictTable = "teambuy_order_leader", dicText = "title", dicCode = "id") @ApiModelProperty(value = "关联团餐订单id") private java.lang.String orderLeaderId; + /**备注*/ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private java.lang.String remark; /**关联用户id*/ @Excel(name = "关联用户id", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") @@ -95,4 +100,8 @@ public class TeambuyOrderMember implements Serializable { //用户信息 @TableField(exist = false) HanHaiMember hanHaiMember; + + //团长信息 + @TableField(exist = false) + TeambuyTeamLeader teamLeader; } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/mapper/TeambuyOrderMemberMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/mapper/TeambuyOrderMemberMapper.java index 1f7adee..6ffb429 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/mapper/TeambuyOrderMemberMapper.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/mapper/TeambuyOrderMemberMapper.java @@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: 团员订单表 * @Author: jeecg-boot - * @Date: 2025-05-06 + * @Date: 2025-05-08 * @Version: V1.0 */ public interface TeambuyOrderMemberMapper extends BaseMapper { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/ITeambuyOrderMemberService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/ITeambuyOrderMemberService.java index e69a2e1..d260a7e 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/ITeambuyOrderMemberService.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/ITeambuyOrderMemberService.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @Description: 团员订单表 * @Author: jeecg-boot - * @Date: 2025-05-06 + * @Date: 2025-05-08 * @Version: V1.0 */ public interface ITeambuyOrderMemberService extends IService { diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/impl/TeambuyOrderMemberServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/impl/TeambuyOrderMemberServiceImpl.java index 3e3a59a..c39e109 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/impl/TeambuyOrderMemberServiceImpl.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/service/impl/TeambuyOrderMemberServiceImpl.java @@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** * @Description: 团员订单表 * @Author: jeecg-boot - * @Date: 2025-05-06 + * @Date: 2025-05-08 * @Version: V1.0 */ @Service diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/TeambuyOrderMemberList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/TeambuyOrderMemberList.vue index 4fd4ead..784b834 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/TeambuyOrderMemberList.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/TeambuyOrderMemberList.vue @@ -157,6 +157,11 @@ align:"center", dataIndex: 'orderLeaderId_dictText' }, + { + title:'备注', + align:"center", + dataIndex: 'remark' + }, { title:'关联用户id', align:"center", @@ -203,6 +208,7 @@ fieldList.push({type:'datetime',value:'payTime',text:'付款时间'}) fieldList.push({type:'string',value:'status',text:'订单状态',dictCode:'teambuy_status_order'}) fieldList.push({type:'string',value:'orderLeaderId',text:'关联团餐订单id',dictCode:"teambuy_order_leader,title,id"}) + fieldList.push({type:'string',value:'remark',text:'备注',dictCode:''}) fieldList.push({type:'string',value:'userId',text:'关联用户id',dictCode:"han_hai_member,nick_name,id"}) this.superFieldList = fieldList } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/modules/TeambuyOrderMemberForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/modules/TeambuyOrderMemberForm.vue index c90fea5..054b6ea 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/modules/TeambuyOrderMemberForm.vue +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue/modules/TeambuyOrderMemberForm.vue @@ -38,6 +38,11 @@ + + + + + diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue3/TeambuyOrderMember.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue3/TeambuyOrderMember.data.ts index e0a766e..4f4a158 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue3/TeambuyOrderMember.data.ts +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/teambuyOrderMember/vue3/TeambuyOrderMember.data.ts @@ -39,6 +39,11 @@ export const columns: BasicColumn[] = [ align:"center", dataIndex: 'orderLeaderId_dictText' }, + { + title: '备注', + align:"center", + dataIndex: 'remark' + }, { title: '关联用户id', align:"center", @@ -91,6 +96,11 @@ export const formSchema: FormSchema[] = [ dictCode:"teambuy_order_leader,title,id" }, }, + { + label: '备注', + field: 'remark', + component: 'Input', + }, { label: '关联用户id', field: 'userId', diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AfterController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AfterController.java new file mode 100644 index 0000000..5541c67 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AfterController.java @@ -0,0 +1,37 @@ +package org.jeecg.modules.api.teambuyController; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.AfterService; +import org.jeecg.modules.apiService.ShopcarService; +import org.jeecg.modules.teambuyBuycar.entity.TeambuyBuycar; +import org.jeecg.modules.teambuyService.entity.TeambuyService; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="订单-售后相关接口") +@RestController +@RequestMapping("/teambuy/afterservice") +@Slf4j +public class AfterController { + + /******************************************************************************************************************/ + //购物车 + @Resource + private AfterService afterService; + /******************************************************************************************************************/ + //添加订单售后信息 + @ApiOperation(value="订单-订单售后", notes="购物车-订单售后") + @RequestMapping(value = "/addAfterService", method = {RequestMethod.POST}) + public Result addAfterService(@RequestHeader("X-Access-Token") String token, TeambuyService teambuyService){ + return afterService.addAfterService(token, teambuyService); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AmountController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AmountController.java index b583580..1443c6d 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AmountController.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/AmountController.java @@ -8,6 +8,7 @@ import org.jeecg.modules.apiBean.PageBean; import org.jeecg.modules.apiService.AmountService; import org.jeecg.modules.apiService.LeaderService; import org.jeecg.modules.teambuyBalanceLog.entity.TeambuyBalanceLog; +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; import org.jeecg.modules.teambuyTeamLeader.entity.TeambuyTeamLeader; import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; @@ -33,12 +34,12 @@ public class AmountController { // return leaderService.addLeader(token, teamLeader); // } -// //充值 -// @ApiOperation(value="钱包-充值", notes="钱包-充值") -// @RequestMapping(value = "/addLeader", method = {RequestMethod.POST}) -// public Result addLeader(@RequestHeader("X-Access-Token") String token, TeambuyTeamLeader teamLeader){ -// return leaderService.addLeader(token, teamLeader); -// } + //充值 + @ApiOperation(value="钱包-充值", notes="钱包-充值") + @RequestMapping(value = "/cashIn", method = {RequestMethod.POST}) + public Result cashIn(@RequestHeader("X-Access-Token") String token, TeambuyCash teambuyCash){ + return amountService.cashIn(token, teambuyCash); + } //收入明细 @ApiOperation(value="钱包-收支明细", notes="钱包-收支明细") @@ -46,4 +47,11 @@ public class AmountController { public Result queryAmountLog(@RequestHeader("X-Access-Token") String token, TeambuyBalanceLog balanceLog, PageBean pageBean){ return amountService.queryAmountLog(token, balanceLog, pageBean); } + + //充值回调 + @ApiOperation(value="钱包-充值回调", notes="钱包-充值回调") + @RequestMapping(value = "/CashNotify", method = {RequestMethod.POST}) + public Result CashNotify(String requestBody){ + return amountService.CashNotify(requestBody); + } } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/OrderController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/OrderController.java index 359fac6..e5a04c6 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/OrderController.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/teambuyController/OrderController.java @@ -31,6 +31,12 @@ public class OrderController { public Result queryLeaderOrderList(@RequestHeader("X-Access-Token") String token, TeambuyOrderLeader teambuyOrderLeader, PageBean pageBean){ return orderService.queryLeaderOrderList(token, teambuyOrderLeader, pageBean); } + //根据团餐id查询团团员订单列表 + @ApiOperation(value="订单-根据团餐id查询团团员订单列表", notes="订单-根据团餐id查询团团员订单列表") + @RequestMapping(value = "/queryLeaderOrderListById", method = {RequestMethod.GET}) + public Result queryLeaderOrderListById(@RequestHeader("X-Access-Token") String token, String teambuyOrderLeaderId, PageBean pageBean){ + return orderService.queryLeaderOrderListById(token, teambuyOrderLeaderId, pageBean); + } //查看团员订单列表 @ApiOperation(value="订单-查看团员订单列表/详情", notes="订单-查看团员订单列表/详情") @@ -39,6 +45,48 @@ public class OrderController { return orderService.queryMemberOrderList(token, teambuyOrderMember, pageBean); } + //团长通知取餐 + @ApiOperation(value="订单-团长通知全体团员取餐", notes="订单-团长通知全体团员取餐") + @RequestMapping(value = "/informOrderAll", method = {RequestMethod.POST}) + public Result informOrderAll(@RequestHeader("X-Access-Token") String token, String leaderOrderId){ + return orderService.informOrderAll(token, leaderOrderId); + } + + //团长完成取餐 + @ApiOperation(value="订单-团长完成全体取餐", notes="订单-团长完成全体取餐") + @RequestMapping(value = "/finishOrderAll", method = {RequestMethod.POST}) + public Result finishOrderAll(@RequestHeader("X-Access-Token") String token, String leaderOrderId){ + return orderService.finishOrderAll(token, leaderOrderId); + } + + //团长通知取餐 + @ApiOperation(value="订单-团长通知单体取餐", notes="订单-团长通知单体取餐") + @RequestMapping(value = "/informOrderOne", method = {RequestMethod.POST}) + public Result informOrderOne(@RequestHeader("X-Access-Token") String token, String memberOrderId){ + return orderService.informOrderOne(token, memberOrderId); + } + + //团长完成取餐 + @ApiOperation(value="订单-团长完成单体取餐", notes="订单-团长完成单体取餐") + @RequestMapping(value = "/finishOrderOne", method = {RequestMethod.POST}) + public Result finishOrderOne(@RequestHeader("X-Access-Token") String token, String memberOrderId){ + return orderService.finishOrderOne(token, memberOrderId); + } + + //修改团长订单状态 + @ApiOperation(value="订单-修改团长订单状态", notes="订单-修改团长订单状态") + @RequestMapping(value = "/updateLeaderOrderById", method = {RequestMethod.POST}) + public Result updateLeaderOrderById(@RequestHeader("X-Access-Token") String token, TeambuyOrderLeader teambuyOrderLeader){ + return orderService.updateLeaderOrderById(token, teambuyOrderLeader); + } + + //修改团员订单状态 + @ApiOperation(value="订单-修改团员订单状态", notes="订单-修改团员订单状态") + @RequestMapping(value = "/updateMemberOrderById", method = {RequestMethod.POST}) + public Result updateMemberOrderById(@RequestHeader("X-Access-Token") String token, TeambuyOrderMember teambuyOrderMember){ + return orderService.updateMemberOrderById(token, teambuyOrderMember); + } + // //创建订单 // @ApiOperation(value="订单-创建订单", notes="支付方式(payType):0-微信支付 1-余额支付") // @RequestMapping(value = "/createOrder", method = {RequestMethod.POST}) diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AfterService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AfterService.java new file mode 100644 index 0000000..79488ff --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AfterService.java @@ -0,0 +1,13 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.teambuyService.entity.TeambuyService; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface AfterService { + //添加订单售后信息 + public Result addAfterService(String token, TeambuyService teambuyService); +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java index fde97a2..17b9037 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/AmountService.java @@ -4,6 +4,7 @@ import io.swagger.annotations.ApiOperation; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.apiBean.PageBean; import org.jeecg.modules.teambuyBalanceLog.entity.TeambuyBalanceLog; +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; import org.jeecg.modules.teambuyTeamLeader.entity.TeambuyTeamLeader; import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; @@ -11,6 +12,12 @@ import org.springframework.web.bind.annotation.RequestMethod; public interface AmountService { + //充值 + public Result cashIn(String token, TeambuyCash teambuyCash); + //收支明细 public Result queryAmountLog(String token, TeambuyBalanceLog balanceLog, PageBean pageBean); + + //充值回调 + public Result CashNotify(String requestBody); } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java index e0c3c2c..45d6be1 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java @@ -15,8 +15,22 @@ import java.util.List; public interface OrderService { //查看团餐订单列表 public Result queryLeaderOrderList(String token, TeambuyOrderLeader teambuyOrderLeader, PageBean pageBean); + //根据团餐id查询团团员订单列表 + public Result queryLeaderOrderListById(String token, String teambuyOrderId, PageBean pageBean); //查看团员订单列表 public Result queryMemberOrderList(String token, TeambuyOrderMember teambuyOrderMember, PageBean pageBean); + //团长通知全体取餐 + public Result informOrderAll(String token, String leaderOrderId); + //团长完成全体取餐 + public Result finishOrderAll(String token, String leaderOrderId); + //团长通知单体取餐 + public Result informOrderOne(String token, String leaderOrderId); + //团长完成单体取餐 + public Result finishOrderOne(String token, String leaderOrderId); + //修改团长订单状态 + public Result updateLeaderOrderById(String token, TeambuyOrderLeader teambuyOrderLeader); + //修改团员订单状态 + public Result updateMemberOrderById(String token, TeambuyOrderMember teambuyOrderMember); //创建订单 public Result createOrder(String token, TeambuyOrderMember teambuyOrderMember, String payType); //创建订单 diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AfterServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AfterServiceImpl.java new file mode 100644 index 0000000..64ad257 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AfterServiceImpl.java @@ -0,0 +1,56 @@ +package org.jeecg.modules.apiService.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiService.AfterService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.teambuyBuycar.entity.TeambuyBuycar; +import org.jeecg.modules.teambuyBuycar.service.ITeambuyBuycarService; +import org.jeecg.modules.teambuyGoods.service.ITeambuyGoodsService; +import org.jeecg.modules.teambuyService.entity.TeambuyService; +import org.jeecg.modules.teambuyService.service.ITeambuyServiceService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class AfterServiceImpl implements AfterService { + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + //用户信息 + @Resource + private IHanHaiMemberService hanHaiMemberService; + //购物车信息 + @Resource + private ITeambuyServiceService teambuyServiceService; + /******************************************************************************************************************/ + //添加购物车 + @Override + public Result addAfterService(String token, TeambuyService teambuyService) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //返回信息 + String massege = ""; + + try{ + //执行新增操作(不传id进行新增,传了id则进行修改) + teambuyService.setUserId(hanHaiMember.getId()); + boolean result = teambuyServiceService.saveOrUpdate(teambuyService); + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.OK("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java index baf1150..fa6badc 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/AmountServiceImpl.java @@ -1,26 +1,40 @@ package org.jeecg.modules.apiService.impl; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; 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.common.api.vo.Result; import org.jeecg.config.shiro.ShiroRealm; import org.jeecg.modules.apiBean.PageBean; import org.jeecg.modules.apiService.AmountService; +import org.jeecg.modules.apiUtils.CommonUtils; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.pay.MpWxPayService; import org.jeecg.modules.teambuyBalanceLog.entity.TeambuyBalanceLog; import org.jeecg.modules.teambuyBalanceLog.service.ITeambuyBalanceLogService; +import org.jeecg.modules.teambuyCash.entity.TeambuyCash; +import org.jeecg.modules.teambuyCash.service.ITeambuyCashService; +import org.jeecg.modules.teambuyOrderMember.entity.TeambuyOrderMember; import org.jeecg.modules.teambuyTeamLeader.entity.TeambuyTeamLeader; import org.jeecg.modules.teambuyTeamLeader.service.ITeambuyTeamLeaderService; import org.jeecg.modules.teambuyTeamRelation.service.ITeambuyTeamRelationService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.math.BigDecimal; +@Slf4j @Service public class AmountServiceImpl implements AmountService { /******************************************************************************************************************/ + //支付接口 + @Autowired + private MpWxPayService mpWxPayService; //权限验证 @Resource private ShiroRealm shiroRealm; @@ -30,7 +44,47 @@ public class AmountServiceImpl implements AmountService { //收支信息 @Resource private ITeambuyBalanceLogService teambuyBalanceLogService; + //充值提现信息 + @Resource + private ITeambuyCashService teambuyCashService; /******************************************************************************************************************/ + + //充值 + @Override + public Result cashIn(String token, TeambuyCash teambuyCash) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + try{ + //订单信息 + String payNo = IdWorker.getIdStr();//生成订单号 + teambuyCash.setId(payNo);//订单编号 + teambuyCash.setTitle("金额充值");//订单名称 + teambuyCash.setUserId(hanHaiMember.getId());//关联用户 + + //创建订单信息 + teambuyCashService.save(teambuyCash); + + //吊起微信支付 + BigDecimal price = teambuyCash.getAmount();//价格 + String productName = teambuyCash.getTitle();//服务名称 + + String s = price.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + Object appOrder = mpWxPayService.createOrderCashIn( + "充值"+ productName , + "127.0.0.1", + teambuyCash.getId(), + i1, + teambuyCash.getId(), + hanHaiMember.getAppletOpenid(), + teambuyCash.toString()); + return Result.OK("充值成功",appOrder); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("充值失败"); + } + } + @Override public Result queryAmountLog(String token, TeambuyBalanceLog balanceLog, PageBean pageBean) { //权限验证 @@ -75,4 +129,33 @@ public class AmountServiceImpl implements AmountService { return Result.error("收支列表查询失败"); } } + + //充值回调 + public Result CashNotify(String requestBody){ + WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody); + String outTradeNo = notify.getOutTradeNo(); + log.info("充值回调订单号码:"+outTradeNo); + + try{ + + + + //查询订单信息 + TeambuyCash teambuyCash = teambuyCashService.getById(outTradeNo); + //如果订单存在则修改订单状态 + if (null != teambuyCash){ + if("0".equals(teambuyCash.getStatus())){ + teambuyCash.setStatus("1");//订单状态 + teambuyCash.setPayTime(CommonUtils.getCurrentTime());//订单支付时间 + teambuyCashService.updateById(teambuyCash); + } + } + + }catch (Exception e){ + log.info("充值回调失败,订单号码:"+outTradeNo); + e.printStackTrace(); + } + return null; + } + } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java index ff13404..5d4493e 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java @@ -66,7 +66,7 @@ public class OrderServiceImpl implements OrderService { public Result queryLeaderOrderList(String token, TeambuyOrderLeader teambuyOrderLeader, PageBean pageBean) { //权限验证 HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); - //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919587097244078081"); //返回信息 String massege = ""; //分页信息 @@ -103,13 +103,13 @@ public class OrderServiceImpl implements OrderService { //获取团餐内团员订单信息 pageList = query.page(page); - if(null == pageList){ - return Result.OK("团餐订单列表为空", pageList); - } - for (TeambuyOrderLeader record : pageList.getRecords()) { - List orderMemberList = getOrderMemberList(record.getId()); - record.setOrderMemberList(orderMemberList); - } +// if(null == pageList){ +// return Result.OK("团餐订单列表为空", pageList); +// } +// for (TeambuyOrderLeader record : pageList.getRecords()) { +// List orderMemberList = getOrderMemberList(record.getId()); +// record.setOrderMemberList(orderMemberList); +// } return Result.OK("订单列表", pageList); }catch (Exception e){ @@ -117,6 +117,26 @@ public class OrderServiceImpl implements OrderService { return Result.error("订单列表查询失败"); } } + //查看团餐订单列表 + @Override + public Result queryLeaderOrderListById(String token, String teambuyOrderId, PageBean pageBean) { + //权限验证 + //HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919587097244078081"); + //返回信息 + String massege = ""; + + try{ + TeambuyOrderLeader order = teambuyOrderLeaderService.getById(teambuyOrderId); + List orderMemberList = getOrderMemberList(order.getId()); + order.setOrderMemberList(orderMemberList); + + return Result.OK("订单列表", order); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("订单列表查询失败"); + } + } //查询团餐订单内的团员订单列表 public List getOrderMemberList(String orderLeaderId){ try{ @@ -194,6 +214,12 @@ public class OrderServiceImpl implements OrderService { //查询团员订单商品信息列表列表 for (TeambuyOrderMember record : pageList.getRecords()) { + //订单所属团长信息 + TeambuyOrderLeader orderLeader = teambuyOrderLeaderService.getById(record.getOrderLeaderId()); + TeambuyTeamLeader leader = teambuyTeamLeaderService.getById(orderLeader.getUserId()); + record.setTeamLeader(leader); + + //订单商品列表 List goodsList = teambuyOrderGoodsService .lambdaQuery() .eq(TeambuyOrderGoods::getOrderId, record.getId()) @@ -219,6 +245,210 @@ public class OrderServiceImpl implements OrderService { } } + //团长通知全体团员取餐 + @Override + public Result informOrderAll(String token, String leaderOrderId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //返回信息 + String massege = ""; + + try{ + //查询团长信息 + TeambuyTeamLeader leader = teambuyTeamLeaderService + .lambdaQuery() + .eq(TeambuyTeamLeader::getUserId, hanHaiMember.getId()) + .one(); + //判断该团餐订单是否为团长所有 + TeambuyOrderLeader orderLeader = teambuyOrderLeaderService + .lambdaQuery() + .eq(TeambuyOrderLeader::getId, leaderOrderId) + .eq(TeambuyOrderLeader::getUserId, leader.getId()) + .one(); + if(null == orderLeader){ + return Result.error("该订单不属于该团长,请核对订单编号:"+leaderOrderId); + } + //将团餐订单下的团员订单状态改为待取餐 + boolean result = teambuyOrderMemberService + .lambdaUpdate() + .eq(TeambuyOrderMember::getOrderLeaderId, leaderOrderId) + .set(TeambuyOrderMember::getStatus, "3") + .update(); + + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.error("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + + //团长完成全体取餐 + @Override + public Result finishOrderAll(String token, String leaderOrderId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //返回信息 + String massege = ""; + + try{ + //查询团长信息 + TeambuyTeamLeader leader = teambuyTeamLeaderService + .lambdaQuery() + .eq(TeambuyTeamLeader::getUserId, hanHaiMember.getId()) + .one(); + //判断该团餐订单是否为团长所有 + TeambuyOrderLeader orderLeader = teambuyOrderLeaderService + .lambdaQuery() + .eq(TeambuyOrderLeader::getId, leaderOrderId) + .eq(TeambuyOrderLeader::getUserId, leader.getId()) + .one(); + if(null == orderLeader){ + return Result.error("该订单不属于该团长,请核对订单编号:"+leaderOrderId); + } + //将团餐订单下的团员订单状态改为待取餐 + boolean result = teambuyOrderMemberService + .lambdaUpdate() + .eq(TeambuyOrderMember::getOrderLeaderId, leaderOrderId) + .set(TeambuyOrderMember::getStatus, "4") + .update(); + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.error("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + + //团长通知全体团员取餐 + @Override + public Result informOrderOne(String token, String memberOrderId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //返回信息 + String massege = ""; + + try{ + //将团餐订单下的团员订单状态改为待取餐 + boolean result = teambuyOrderMemberService + .lambdaUpdate() + .eq(TeambuyOrderMember::getId, memberOrderId) + .set(TeambuyOrderMember::getStatus, "3") + .update(); + + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.error("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + + //团长完成单体体取餐 + @Override + public Result finishOrderOne(String token, String memberOrderId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); + //返回信息 + String massege = ""; + + try{ + //将团餐订单下的团员订单状态改为待取餐 + boolean result = teambuyOrderMemberService + .lambdaUpdate() + .eq(TeambuyOrderMember::getId, memberOrderId) + .set(TeambuyOrderMember::getStatus, "4") + .update(); + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.error("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + + //修改团长订单 + @Override + public Result updateLeaderOrderById(String token, TeambuyOrderLeader teambuyOrderLeader) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1898983659468853250"); + //返回信息 + String massege = ""; + + try{ + //执行新增操作(不传id进行新增,传了id则进行修改) + teambuyOrderLeader.setUserId(hanHaiMember.getId()); + boolean result = teambuyOrderLeaderService.saveOrUpdate(teambuyOrderLeader); + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.OK("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + + //修改团员订单 + @Override + public Result updateMemberOrderById(String token, TeambuyOrderMember teambuyOrderMember) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1898983659468853250"); + //返回信息 + String massege = ""; + + try{ + //执行新增操作(不传id进行新增,传了id则进行修改) + teambuyOrderMember.setUserId(hanHaiMember.getId()); + boolean result = teambuyOrderMemberService.saveOrUpdate(teambuyOrderMember); + + //判断是否新增成功 + if(result){ + return Result.OK("操作成功"); + }else { + return Result.OK("操作失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + return Result.error("操作失败"); + } + } + //创建订单 @Override public Result createOrder(String token, TeambuyOrderMember teambuyOrderMember, String payType) { @@ -265,7 +495,7 @@ public class OrderServiceImpl implements OrderService { //余额支付 case "1": //用户余额 - BigDecimal balance = hanHaiMember.getPrice(); + BigDecimal balance = hanHaiMember.getBalance(); //订单实付金额 BigDecimal amount = teambuyOrderMember.getPricePay(); @@ -276,7 +506,7 @@ public class OrderServiceImpl implements OrderService { return Result.error("余额不足"); } //修改用户余额 - hanHaiMember.setPrice(balance); + hanHaiMember.setBalance(balance); hanHaiMemberService.updateById(hanHaiMember); //修改订单信息 @@ -384,7 +614,7 @@ public class OrderServiceImpl implements OrderService { //余额支付 case "1": //用户余额 - BigDecimal balance = hanHaiMember.getPrice(); + BigDecimal balance = hanHaiMember.getBalance(); //订单实付金额 BigDecimal amount = teambuyOrderMember.getPricePay(); @@ -395,7 +625,7 @@ public class OrderServiceImpl implements OrderService { return Result.error("余额不足"); } //修改用户余额 - hanHaiMember.setPrice(balance); + hanHaiMember.setBalance(balance); hanHaiMemberService.updateById(hanHaiMember); //修改订单信息 @@ -446,7 +676,7 @@ public class OrderServiceImpl implements OrderService { //余额支付 case "1": //用户余额 - BigDecimal balance = hanHaiMember.getPrice(); + BigDecimal balance = hanHaiMember.getBalance(); //订单实付金额 BigDecimal amount = teambuyOrderMember.getPricePay(); @@ -457,7 +687,7 @@ public class OrderServiceImpl implements OrderService { return Result.error("余额不足,支付失败"); } //修改用户余额 - hanHaiMember.setPrice(balance); + hanHaiMember.setBalance(balance); hanHaiMemberService.updateById(hanHaiMember); //修改订单信息 diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java index 34e516d..1140ac5 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java @@ -6,6 +6,8 @@ import org.jeecg.config.shiro.ShiroRealm; import org.jeecg.modules.apiService.UserInfoService; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.teambuyLevel.entity.TeambuyLevel; +import org.jeecg.modules.teambuyLevel.service.ITeambuyLevelService; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -21,6 +23,9 @@ public class UserInfoServiceImpl implements UserInfoService { //用户信息 @Resource private IHanHaiMemberService hanHaiMemberService; + //佣金等级信息 + @Resource + private ITeambuyLevelService teambuyLevelService; /******************************************************************************************************************/ //查询个人信息 @@ -44,7 +49,7 @@ public class UserInfoServiceImpl implements UserInfoService { public Result updateUserInfo(String token, String nickName, String phone, String headImage){ //权限验证 HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); - //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1898983659468853250"); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); try{ //用户昵称不能为空 @@ -72,7 +77,7 @@ public class UserInfoServiceImpl implements UserInfoService { public Result getUserCenterData(String token){ //权限验证 HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); - //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1898983659468853250"); + //HanHaiMember hanHaiMember = hanHaiMemberService.getById("1919589727643111426"); //返回信息 Map map = new HashMap(); @@ -82,7 +87,11 @@ public class UserInfoServiceImpl implements UserInfoService { map.put("member",hanHaiMember);//用户基础信息 map.put("score",hanHaiMember.getIntegerPrice());//积分 - map.put("balance",hanHaiMember.getPrice());//余额 + map.put("balance",hanHaiMember.getBalance());//余额 + + //团长等级 + TeambuyLevel level = teambuyLevelService.getById(hanHaiMember.getLeaderLevelId()); + map.put("level",level); //推广佣金 //优惠券