diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiMemberController.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiMemberController.java index 60bcc08..b112e69 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiMemberController.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/controller/AppletApiMemberController.java @@ -15,6 +15,7 @@ import org.jeecg.modules.demo.appletCouponRecord.entity.AppletCouponRecord; import org.jeecg.modules.demo.appletMemberOrder.entity.AppletMemberOrder; import org.jeecg.modules.demo.appletVip.entity.AppletVip; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -30,6 +31,7 @@ public class AppletApiMemberController { @Autowired private AppletApiCouponService appletCouponService; + @Operation(summary = "获取会员列表", description = "获取会员列表") @GetMapping(value = "/list") @IgnoreAuth diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiVipService.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiVipService.java index 8888fb9..6a276d1 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiVipService.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/AppletApiVipService.java @@ -23,6 +23,8 @@ public interface AppletApiVipService { Object getOpe(AppletMemberOrder appletMemberOrder); + + Object payNotify(String requestBody); /** diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiVipServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiVipServiceImpl.java index 84dc42f..1345bcb 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiVipServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiVipServiceImpl.java @@ -23,6 +23,7 @@ import org.jeecg.modules.demo.appletWater.entity.AppletWater; import org.jeecg.modules.demo.appletWater.service.IAppletWaterService; import org.jeecg.modules.pay.MpWxPayService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import java.math.BigDecimal; @@ -53,6 +54,10 @@ public class AppletApiVipServiceImpl implements AppletApiVipService { @Autowired private MpWxPayService mpWxPayService; + + @Value("${wechat.testPrice}") + private boolean testPrice; + /** * 查询会员列表 * @@ -145,6 +150,10 @@ public class AppletApiVipServiceImpl implements AppletApiVipService { int price = order.getPrice().multiply(new BigDecimal(100)).intValue(); + if (testPrice && price > 1){ + price = 1; + } + if (price > 0) { appletMemberOrderService.save(order); Object appOrder = mpWxPayService.createOrder( @@ -160,7 +169,6 @@ public class AppletApiVipServiceImpl implements AppletApiVipService { } else { //直接修改订单状态 order.setStatus("1"); - } appletMemberOrderService.save(order); return 0; diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiWaterServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiWaterServiceImpl.java index 1e14d7d..ab6387b 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiWaterServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/applet/service/impl/AppletApiWaterServiceImpl.java @@ -66,11 +66,10 @@ public class AppletApiWaterServiceImpl implements AppletApiWaterService { // 获取环境配置 String vsion = appletConfigService.getContentByCode("invite_env_version"); - Integer vsionStr = Integer.parseInt(vsion); String trial = "release"; - if(vsionStr == 0){ + if("0".equals(vsion)){ trial= "release"; - }else if(vsionStr == 1){ + }else if("1".equals(vsion)){ trial= "trial"; }else{ trial= "develop"; diff --git a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletConfig/service/impl/AppletConfigServiceImpl.java b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletConfig/service/impl/AppletConfigServiceImpl.java index fd44765..982b400 100644 --- a/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletConfig/service/impl/AppletConfigServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module/jeecgboot-boot-applet/src/main/java/org/jeecg/modules/demo/appletConfig/service/impl/AppletConfigServiceImpl.java @@ -20,13 +20,10 @@ public class AppletConfigServiceImpl extends ServiceImpl configs = lambdaQuery() + AppletConfig config = lambdaQuery() .eq(AppletConfig::getCode, code) - .list(); - if (configs.size() > 0){ - configs.get(0).getContent(); - } - return null; + .one(); + return config != null ? config.getContent() : null; } } diff --git a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml index edafcf5..4618f46 100644 --- a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml +++ b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml @@ -342,7 +342,7 @@ wechat: apiV3Key: 0fdb77429ffdf206c151af76a663041c # 商户APIV3密钥 refundNotifyUrl: # 退款通知地址(正式环境) transferNotify: https://www.yurangongfang.com/massage-admin/massage/cash/cashoutNotify/ # 转账结果通知地址 - + testPrice: true tencent: diff --git a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/pay_weixin.properties b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/pay_weixin.properties index 77afa7f..014830a 100644 --- a/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/pay_weixin.properties +++ b/jeecg-boot/jeecg-module-system/jeecg-system-start/src/main/resources/pay_weixin.properties @@ -1,8 +1,8 @@ -pay.mchId=1711030469 -pay.appId=wx8ff2ab9559aa6387 +pay.mchId=1724993508 +pay.appId=wx24736a3864e8f0e9 pay.mchKey=0fdb77429ffdf206c151af76a663041c pay.keyPath=classpath:apiclient_cert.pem pay.notifyUrl=https://www.multipleculture.com/englishread-admin/appletApi/member/payNotify pay.notifyUrlDev=https://www.multipleculture.com/englishread-admin/appletApi/member/payNotify pay.notifyOneUrl=https://www.multipleculture.com/englishread-admin/appletApi/member/payNotify -pay.notifyUrlOneDev=https://www.multipleculture.com/englishread-admin/appletApi/member/payNotify +pay.notifyUrlOneDev=https://www.multipleculture.com/englishread-admin/appletApi/member/payNotify \ No newline at end of file diff --git a/jeecgboot-vue3/src/views/applet/withdrawal/AppletWithdrawal.data.ts b/jeecgboot-vue3/src/views/applet/withdrawal/AppletWithdrawal.data.ts index 5025cf4..821cf2b 100644 --- a/jeecgboot-vue3/src/views/applet/withdrawal/AppletWithdrawal.data.ts +++ b/jeecgboot-vue3/src/views/applet/withdrawal/AppletWithdrawal.data.ts @@ -30,7 +30,7 @@ export const columns: BasicColumn[] = [ align:"center", dataIndex: 'upload', customRender:({text}) => { - return render.renderSwitch(text, [{text:'是',value:'Y'},{text:'否',value:'N'}]) + return render.renderImage(text) }, }, { @@ -83,8 +83,10 @@ export const formSchema: FormSchema[] = [ { label: '凭证上传', field: 'upload', - component: 'JSwitch', + component: 'JImageUpload', componentProps:{ + fileMax: 1, + text: '上传凭证图片' }, }, { @@ -126,7 +128,7 @@ export const superQuerySchema = { name: {title: '申请人',order: 1,view: 'text', type: 'string',}, money: {title: '提现金额',order: 2,view: 'number', type: 'number',}, method: {title: '提现方式',order: 3,view: 'list', type: 'string',dictCode: 'applett_translate_type',}, - upload: {title: '凭证上传',order: 4,view: 'switch', type: 'string',}, + upload: {title: '凭证上传',order: 4,view: 'image', type: 'string',}, status: {title: '审核状态',order: 5,view: 'list', type: 'string',dictCode: 'applett_money_type',}, withdrawStatus: {title: '提现状态',order: 6,view: 'list', type: 'string',dictCode: 'applet_withdraw_type',}, waterId: {title: '流水号',order: 7,view: 'sel_search', type: 'string',dictTable: "applet_water", dictCode: 'id', dictText: 'number',}, diff --git a/jeecgboot-vue3/src/views/applet/withdrawal/V20250919_1__menu_insert_AppletWithdrawal.sql b/jeecgboot-vue3/src/views/applet/withdrawal/V20250919_1__menu_insert_AppletWithdrawal.sql deleted file mode 100644 index 9fe3374..0000000 --- a/jeecgboot-vue3/src/views/applet/withdrawal/V20250919_1__menu_insert_AppletWithdrawal.sql +++ /dev/null @@ -1,26 +0,0 @@ --- 注意:该页面对应的前台目录为views/appletWithdrawal文件夹下 --- 如果你想更改到其他目录,请修改sql中component字段对应的值 - - -INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) -VALUES ('2025091903554910460', NULL, '提现', '/appletWithdrawal/appletWithdrawalList', 'appletWithdrawal/AppletWithdrawalList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0); - --- 权限控制sql --- 新增 -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910461', '2025091903554910460', '添加提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); --- 编辑 -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910462', '2025091903554910460', '编辑提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); --- 删除 -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910463', '2025091903554910460', '删除提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); --- 批量删除 -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910464', '2025091903554910460', '批量删除提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); --- 导出excel -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910465', '2025091903554910460', '导出excel_提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); --- 导入excel -INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) -VALUES ('2025091903554910466', '2025091903554910460', '导入excel_提现', NULL, NULL, 0, NULL, NULL, 2, 'appletWithdrawal:applet_withdrawal:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-09-19 15:55:46', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file