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 3bd4e4c..9299df2 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 @@ -99,13 +99,13 @@ public class MpWxPayService { request.setTotalFee(price); //总金额|分计 request.setSpbillCreateIp(clientIp); //终端IP // request.setNotifyUrl(wxPay.notifyUrl);//设置回调路径 - request.setNotifyUrl("https://tai-testapi.sanhemovie.com/massage-api/post/notify");//设置回调路径 + request.setNotifyUrl("https://admin.augcl.com/employ-admin/employ/amount/payNotify");//设置回调路径 request.setProductId(productId); //商品id request.setOpenid(openId); //JSAPI OPENID if (dev){ request.setTotalFee(price); // request.setNotifyUrl(wxPay.notifyUrlDev); - request.setNotifyUrl("https://tai-testapi.sanhemovie.com/massage-api/post/notify");//设置回调路径 + request.setNotifyUrl("http://augcl.natapp1.cc/employ-admin/employ/amount/payNotify");//设置回调路径 } try { Object order = wxPayService.createOrder(request); diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java index 53c2705..92c9fb9 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employOrder/entity/EmployOrder.java @@ -5,10 +5,14 @@ import java.io.UnsupportedEncodingException; import java.util.Date; import java.math.BigDecimal; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employJob.entity.EmployJob; import org.springframework.format.annotation.DateTimeFormat; import org.jeecgframework.poi.excel.annotation.Excel; import org.jeecg.common.aspect.annotation.Dict; @@ -67,4 +71,20 @@ public class EmployOrder implements Serializable { @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") @ApiModelProperty(value = "关联求职者id") private java.lang.String bossId; + + //工作信息 + @TableField(exist = false) + private EmployJob employJob; + + //招聘者企业实名信息 + @TableField(exist = false) + private EmployAuthenticationCompany employAuthenticationCompany; + + //招聘者个人实名信息 + @TableField(exist = false) + private EmployAuthenticationPerson employAuthenticationPersonBoss; + + //求职者个人实名信息 + @TableField(exist = false) + private EmployAuthenticationPerson employAuthenticationPersonEmployee; } diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/controller/EmployTradeController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/controller/EmployTradeController.java new file mode 100644 index 0000000..cd27f22 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/controller/EmployTradeController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.employTrade.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.employTrade.entity.EmployTrade; +import org.jeecg.modules.employTrade.service.IEmployTradeService; + +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-02-22 + * @Version: V1.0 + */ +@Api(tags="交易订单") +@RestController +@RequestMapping("/employTrade/employTrade") +@Slf4j +public class EmployTradeController extends JeecgController { + @Autowired + private IEmployTradeService employTradeService; + + /** + * 分页列表查询 + * + * @param employTrade + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "交易订单-分页列表查询") + @ApiOperation(value="交易订单-分页列表查询", notes="交易订单-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(EmployTrade employTrade, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(employTrade, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = employTradeService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param employTrade + * @return + */ + @AutoLog(value = "交易订单-添加") + @ApiOperation(value="交易订单-添加", notes="交易订单-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody EmployTrade employTrade) { + employTradeService.save(employTrade); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param employTrade + * @return + */ + @AutoLog(value = "交易订单-编辑") + @ApiOperation(value="交易订单-编辑", notes="交易订单-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody EmployTrade employTrade) { + employTradeService.updateById(employTrade); + 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) { + employTradeService.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.employTradeService.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) { + EmployTrade employTrade = employTradeService.getById(id); + if(employTrade==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(employTrade); + } + + /** + * 导出excel + * + * @param request + * @param employTrade + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EmployTrade employTrade) { + return super.exportXls(request, employTrade, EmployTrade.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, EmployTrade.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/entity/EmployTrade.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/entity/EmployTrade.java new file mode 100644 index 0000000..b461cec --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/entity/EmployTrade.java @@ -0,0 +1,68 @@ +package org.jeecg.modules.employTrade.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-02-22 + * @Version: V1.0 + */ +@Data +@TableName("employ_trade") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="employ_trade对象", description="交易订单") +public class EmployTrade 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 = "employ_trade_status") + @Dict(dicCode = "employ_trade_status") + @ApiModelProperty(value = "状态") + private java.lang.String status; + /**关联用户*/ + @Excel(name = "关联用户", width = 15, dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @Dict(dictTable = "han_hai_member", dicText = "nick_name", dicCode = "id") + @ApiModelProperty(value = "关联用户") + private java.lang.String userId; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/EmployTradeMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/EmployTradeMapper.java new file mode 100644 index 0000000..9a4ac29 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/EmployTradeMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.employTrade.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.employTrade.entity.EmployTrade; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 交易订单 + * @Author: jeecg-boot + * @Date: 2025-02-22 + * @Version: V1.0 + */ +public interface EmployTradeMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/xml/EmployTradeMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/xml/EmployTradeMapper.xml new file mode 100644 index 0000000..ed178e7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/mapper/xml/EmployTradeMapper.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/employTrade/service/IEmployTradeService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/service/IEmployTradeService.java new file mode 100644 index 0000000..9a423ee --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/service/IEmployTradeService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.employTrade.service; + +import org.jeecg.modules.employTrade.entity.EmployTrade; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 交易订单 + * @Author: jeecg-boot + * @Date: 2025-02-22 + * @Version: V1.0 + */ +public interface IEmployTradeService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/service/impl/EmployTradeServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/service/impl/EmployTradeServiceImpl.java new file mode 100644 index 0000000..616248e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/service/impl/EmployTradeServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.employTrade.service.impl; + +import org.jeecg.modules.employTrade.entity.EmployTrade; +import org.jeecg.modules.employTrade.mapper.EmployTradeMapper; +import org.jeecg.modules.employTrade.service.IEmployTradeService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 交易订单 + * @Author: jeecg-boot + * @Date: 2025-02-22 + * @Version: V1.0 + */ +@Service +public class EmployTradeServiceImpl extends ServiceImpl implements IEmployTradeService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/EmployTradeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/EmployTradeList.vue new file mode 100644 index 0000000..4728299 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/EmployTradeList.vue @@ -0,0 +1,190 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeForm.vue new file mode 100644 index 0000000..f6a5a11 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeForm.vue @@ -0,0 +1,119 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeModal.Style#Drawer.vue new file mode 100644 index 0000000..45b3112 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeModal.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/employTrade/vue/modules/EmployTradeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeModal.vue new file mode 100644 index 0000000..b35eda8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue/modules/EmployTradeModal.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/employTrade/vue3/EmployTrade.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTrade.api.ts new file mode 100644 index 0000000..750e6cb --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTrade.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/employTrade/employTrade/list', + save='/employTrade/employTrade/add', + edit='/employTrade/employTrade/edit', + deleteOne = '/employTrade/employTrade/delete', + deleteBatch = '/employTrade/employTrade/deleteBatch', + importExcel = '/employTrade/employTrade/importExcel', + exportXls = '/employTrade/employTrade/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/employTrade/vue3/EmployTrade.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTrade.data.ts new file mode 100644 index 0000000..129f95b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTrade.data.ts @@ -0,0 +1,59 @@ +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: 'status_dictText' + }, + { + title: '关联用户', + 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: 'status', + component: 'JDictSelectTag', + componentProps:{ + dictCode:"employ_trade_status" + }, + }, + { + label: '关联用户', + 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/employTrade/vue3/EmployTradeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTradeList.vue new file mode 100644 index 0000000..abc38d8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/EmployTradeList.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/employTrade/vue3/components/EmployTradeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/components/EmployTradeModal.vue new file mode 100644 index 0000000..7d95a1d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employTrade/vue3/components/EmployTradeModal.vue @@ -0,0 +1,58 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java index 6d525dc..3179ddf 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/AmountController.java @@ -4,12 +4,10 @@ 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.AmountService; import org.jeecg.modules.apiService.AuthenticationService; -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 org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.math.BigDecimal; @@ -25,6 +23,11 @@ public class AmountController { @Resource private AmountService amountService; /******************************************************************************************************************/ + @ApiOperation(value="我的钱包-我的余额", notes="我的钱包-我的余额") + @RequestMapping(value = "/queryBalance", method = {RequestMethod.GET}) + public Result queryBalance(@RequestHeader("X-Access-Token") String token){ + return amountService.queryBalance(token); + } @ApiOperation(value="我的钱包-累计提现", notes="我的钱包-累计提现") @RequestMapping(value = "/CountCashOut", method = {RequestMethod.GET}) @@ -41,12 +44,18 @@ public class AmountController { @ApiOperation(value="我的钱包-充值", notes="我的钱包-充值") @RequestMapping(value = "/recharge", method = {RequestMethod.GET}) public Result recharge(@RequestHeader("X-Access-Token") String token, BigDecimal price){ - return amountService.recharge(token); + return amountService.recharge(token, price); + } + + //支付回调 + @PostMapping("/payNotify") + public Object payNotify(@RequestBody String requestBody){ + return amountService.payNotify(requestBody); } @ApiOperation(value="我的钱包-金额明细", notes="我的钱包-金额明细") @RequestMapping(value = "/amountLog", method = {RequestMethod.GET}) - public Result amountLog(@RequestHeader("X-Access-Token") String token){ - return amountService.amountLog(token); + public Result amountLog(@RequestHeader("X-Access-Token") String token, String type, PageBean pageBean){ + return amountService.amountLog(token, type, pageBean); } } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/OrderController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/OrderController.java new file mode 100644 index 0000000..aacf90b --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/employController/OrderController.java @@ -0,0 +1,50 @@ +package org.jeecg.modules.api.employController; + +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.NewsService; +import org.jeecg.modules.apiService.OrderService; +import org.jeecg.modules.employOrder.entity.EmployOrder; +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("/employ/order") +@Slf4j +public class OrderController { + /******************************************************************************************************************/ + //订单信息 + @Resource + private OrderService orderService; + /******************************************************************************************************************/ + + //订单信息-查看订单列表 + @ApiOperation(value="订单信息-查看订单列表", notes="role-0:求职方 1:招聘方") + @RequestMapping(value = "/queryOrderList", method = {RequestMethod.POST}) + public Result queryOrderList(@RequestHeader("X-Access-Token")String token, String status, String role, PageBean pageBean){ + return orderService.queryOrderList(token, status, role, pageBean); + } + + //订单信息-添加订单 + @ApiOperation(value="订单信息-添加订单", notes="订单信息-添加订单") + @RequestMapping(value = "/addOrder", method = {RequestMethod.POST}) + public Result addOrder(@RequestHeader("X-Access-Token")String token, EmployOrder employOrder){ + return orderService.addOrder(token, employOrder); + } + + //订单信息-添加订单 + @ApiOperation(value="订单信息-取消订单", notes="订单信息-取消订单") + @RequestMapping(value = "/deleteOrder", method = {RequestMethod.POST}) + public Result deleteOrder(@RequestHeader("X-Access-Token")String token, String orderId){ + return orderService.deleteOrder(token, orderId); + } + +} 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 accb34d..240a813 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 @@ -1,8 +1,11 @@ package org.jeecg.modules.apiService; import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; import org.springframework.web.bind.annotation.RequestHeader; +import java.math.BigDecimal; + public interface AmountService { //我的钱包-我的余额 @@ -15,8 +18,11 @@ public interface AmountService { public Result CashOut(@RequestHeader("X-Access-Token") String token); //我的钱包-充值 - public Result recharge(@RequestHeader("X-Access-Token") String token); + public Result recharge(@RequestHeader("X-Access-Token") String token, BigDecimal price); + + //支付回调 + Object payNotify(String requestBody); //我的钱包-金额明细 - public Result amountLog(@RequestHeader("X-Access-Token") String token); + public Result amountLog(@RequestHeader("X-Access-Token") String token, String type, PageBean pageBean); } 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 new file mode 100644 index 0000000..8b9c2c2 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/OrderService.java @@ -0,0 +1,22 @@ +package org.jeecg.modules.apiService; + +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.employOrder.entity.EmployOrder; +import org.springframework.web.bind.annotation.RequestHeader; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +public interface OrderService { + + //订单信息-查看订单列表 + public Result queryOrderList(@RequestHeader("X-Access-Token")String token, String status, String role, PageBean pageBean); + + //订单信息-添加订单 + public Result addOrder(@RequestHeader("X-Access-Token")String token, EmployOrder employOrder); + + //订单信息-添加订单 + public Result deleteOrder(@RequestHeader("X-Access-Token")String token, String orderId); + +} 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 973e4b2..d59458c 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,22 +1,92 @@ 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.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.apiService.OrderService; +import org.jeecg.modules.employAmountLog.entity.EmployAmountLog; +import org.jeecg.modules.employAmountLog.service.IEmployAmountLogService; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.employTrade.entity.EmployTrade; +import org.jeecg.modules.employTrade.service.IEmployTradeService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.pay.MpWxPayService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.List; + +@Slf4j @Service public class AmountServiceImpl implements AmountService { + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + //支付接口 + @Autowired + private MpWxPayService mpWxPayService; + + //交易订单 + @Resource + private IEmployTradeService employTradeService; + + //金额明细 + @Resource + private IEmployAmountLogService employAmountLogService; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + /******************************************************************************************************************/ + //我的钱包-我的余额 @Override public Result queryBalance(String token) { - return null; + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + return Result.OK("余额",hanHaiMember.getPrice()); } //我的钱包-累计提现 @Override public Result CountCashOut(String token) { - return null; + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + //查询提现记录 + List cashOutAmount = employAmountLogService + .lambdaQuery() + .eq(EmployAmountLog::getTitle, "提现") + .eq(EmployAmountLog::getUserId, hanHaiMember.getId()) + .list(); + + //累加提现金额 + BigDecimal amount = BigDecimal.valueOf(0); + for (EmployAmountLog amountLog : cashOutAmount) { + amount.add(amountLog.getAmount()); + } + + return Result.OK("累计提现金额", amount); + }catch (Exception e){ + e.printStackTrace(); + return Result.OK("累计提现查询失败!"); + } + } //我的钱包-提现 @@ -27,13 +97,130 @@ public class AmountServiceImpl implements AmountService { //我的钱包-充值 @Override - public Result recharge(String token) { + public Result recharge(String token, BigDecimal amount) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + try{ + //生成订单信息 + EmployTrade employTrade = new EmployTrade(); + String payNo = IdWorker.getIdStr();//生成订单号 + employTrade.setTitle("金额充值"); + employTrade.setId(payNo);//订单号 + employTrade.setUserId(hanHaiMember.getId());//关联用户id + employTrade.setAmount(amount);//金额 + + //添加交易订单记录 + employTradeService.save(employTrade); + + //吊起微信支付 + BigDecimal price = employTrade.getAmount();//价格 + String productName = employTrade.getTitle();//产品名称 + + String s = price.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + Object appOrder = + mpWxPayService.createOrder( + "购买"+ productName , + "127.0.0.1", + employTrade.getId(), + i1, + employTrade.getId(), + hanHaiMember.getAppletOpenid(), + employTrade.toString()); + + return Result.OK("支付成功",appOrder); + }catch (Exception e){ + e.printStackTrace(); + return Result.error("金额充值失败"); + } + } + + //开通vip-支付回调 + public Result payNotify(String requestBody){ + WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody); + String outTradeNo = notify.getOutTradeNo(); + log.info("支付回调订单号码:"+outTradeNo); + + try{ + //查询订单信息 + EmployTrade employTrade = employTradeService.getById(outTradeNo); + //如果订单存在则修改订单状态 + if (employTrade!=null){ + if("0".equals(employTrade.getStatus())){ + employTrade.setStatus("1"); + } + employTradeService.updateById(employTrade); + + //用户钱包金额增加 + HanHaiMember hanHaiMember = hanHaiMemberService.getById(employTrade.getUserId()); + BigDecimal newPrice = hanHaiMember.getPrice().add(employTrade.getAmount()); + hanHaiMember.setPrice(newPrice); + hanHaiMemberService.updateById(hanHaiMember); + + //添加金额明细记录 + EmployAmountLog amountLog = new EmployAmountLog(); + amountLog.setTitle(employTrade.getTitle()); + amountLog.setAmount(employTrade.getAmount()); + amountLog.setType("0");//收入 + amountLog.setUserId(employTrade.getUserId()); + employAmountLogService.save(amountLog); + } + + }catch (Exception e){ + log.info("支付回调失败,订单号码:"+outTradeNo); + e.printStackTrace(); + } + return null; } //我的钱包-金额明细 @Override - public Result amountLog(String token) { - return null; + public Result amountLog(String token, String type, PageBean pageBean) { + //权限验证 + //HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + HanHaiMember hanHaiMember = hanHaiMemberService.getById("1889615338279010306"); + //返回信息 + String message = "获取金额明细列表失败!"; + //金额明细列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employAmountLogService.lambdaQuery(); + + //金额明细关联用户 + query.orderByDesc(EmployAmountLog::getCreateTime); + + if(null != type){ + query.eq(EmployAmountLog::getType, type); + } + + //按时间倒序 + query.orderByDesc(EmployAmountLog::getCreateTime); + + + //获取工作信息列表 + pageList = query.page(page); + + //判断执行结果 + if(null != pageList){ + message = "金额明细列表信息"; + }else { + message = "金额明细列表信息为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } } } 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 new file mode 100644 index 0000000..6caf1c6 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/OrderServiceImpl.java @@ -0,0 +1,196 @@ +package org.jeecg.modules.apiService.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.common.api.vo.Result; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.PageBean; +import org.jeecg.modules.apiService.OrderService; +import org.jeecg.modules.employAuthenticationCompany.entity.EmployAuthenticationCompany; +import org.jeecg.modules.employAuthenticationCompany.service.IEmployAuthenticationCompanyService; +import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson; +import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService; +import org.jeecg.modules.employJob.entity.EmployJob; +import org.jeecg.modules.employJob.service.IEmployJobService; +import org.jeecg.modules.employNews.entity.EmployNews; +import org.jeecg.modules.employOrder.entity.EmployOrder; +import org.jeecg.modules.employOrder.service.IEmployOrderService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class OrderServiceImpl implements OrderService { + + /******************************************************************************************************************/ + //权限验证 + @Resource + private ShiroRealm shiroRealm; + + @Resource + private IEmployOrderService employOrderService; + + @Resource + private IEmployJobService employJobService; + + @Resource + private IEmployAuthenticationCompanyService employAuthenticationCompanyService; + + @Resource + private IEmployAuthenticationPersonService employAuthenticationPersonService; + + @Resource + private IHanHaiMemberService hanHaiMemberService; + /******************************************************************************************************************/ + + //订单信息-查看订单列表 + @Override + public Result queryOrderList(String token, String status, String role, PageBean pageBean) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "订单信息列表失败!"; + //订单信息列表 + Page pageList = null; + //分页信息 + Page page = null; + + try{ + //分页 + page = new Page(pageBean.getPageNo(), pageBean.getPageSize()); + LambdaQueryChainWrapper query = employOrderService.lambdaQuery(); + + //组装查询信息 + // 用户角色:0-求职方 1-招聘方 + if("0".equals(role)){ + query.eq(EmployOrder::getEmployeeId, hanHaiMember.getId()); + }else if("1".equals(role)){ + query.eq(EmployOrder::getBossId, hanHaiMember.getId()); + } + //订单状态 + if(null != status){ + query.eq(EmployOrder::getStatus, status); + } + //按时间倒序 + query.orderByDesc(EmployOrder::getCreateTime); + + //获取订单信息列表 + pageList = query.page(page); + + for (EmployOrder record : pageList.getRecords()) { + //招聘工作信息 + EmployJob employJob = employJobService.getById(record.getJobId()); + if(null != employJob){ + record.setEmployJob(employJob); + } + + //招聘方企业实名信息 + EmployAuthenticationCompany employAuthenticationCompany = employAuthenticationCompanyService + .lambdaQuery() + .eq(EmployAuthenticationCompany::getUserId, record.getBossId()) + .one(); + if(null != employAuthenticationCompany){ + record.setEmployAuthenticationCompany(employAuthenticationCompany); + } + + //招聘方个人实名信息 + EmployAuthenticationPerson boss = employAuthenticationPersonService + .lambdaQuery() + .eq(EmployAuthenticationPerson::getUserId, record.getBossId()) + .one(); + if(null != boss){ + record.setEmployAuthenticationPersonBoss(boss); + } + + //求职方个人实名信息 + EmployAuthenticationPerson employee = employAuthenticationPersonService + .lambdaQuery() + .eq(EmployAuthenticationPerson::getUserId, record.getEmployeeId()) + .one(); + if(null != employee){ + record.setEmployAuthenticationPersonEmployee(employee); + } + } + + //判断执行结果 + if(null != pageList){ + message = "订单信息列表"; + }else { + message = "订单信息列表为空"; + } + + //返回执行结果 + return Result.OK(message, pageList); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message, pageList); + } + } + + //订单信息-添加订单 + @Override + public Result addOrder(String token, EmployOrder employOrder) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "订单添加失败"; + //执行结果 + boolean result = false; + + try{ + //3、执行订单信息添加 + result = employOrderService.save(employOrder); + + //判断执行结果 + if(result){ + message = "订单添加成功!"; + }else { + message = "订单添加失败!"; + } + + //4、返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } + + //订单信息-取消订单 + @Override + public Result deleteOrder(String token, String orderId) { + //权限验证 + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //返回信息 + String message = "订单取消失败"; + //执行结果 + boolean result = false; + + try{ + //3、执行订单信息添加 + result = employOrderService.removeById(orderId); + + //判断执行结果 + if(result){ + message = "订单取消成功!"; + }else { + message = "订单取消失败!"; + } + + //4、返回执行结果 + return Result.OK(message); + + }catch (Exception e){ + //错误信息打印 + e.printStackTrace(); + return Result.error(message); + } + } + +} diff --git a/jeecg-boot-module-system/src/main/resources/apiclient_cert.p12 b/jeecg-boot-module-system/src/main/resources/apiclient_cert.p12 new file mode 100644 index 0000000..1484963 Binary files /dev/null and b/jeecg-boot-module-system/src/main/resources/apiclient_cert.p12 differ diff --git a/jeecg-boot-module-system/src/main/resources/apiclient_cert.pem b/jeecg-boot-module-system/src/main/resources/apiclient_cert.pem new file mode 100644 index 0000000..dfddb8a --- /dev/null +++ b/jeecg-boot-module-system/src/main/resources/apiclient_cert.pem @@ -0,0 +1,25 @@ +-----BEGIN CERTIFICATE----- +MIIEKDCCAxCgAwIBAgIUbk+ecNVsxDm1dbgRy0MnYhyBqDkwDQYJKoZIhvcNAQEL +BQAwXjELMAkGA1UEBhMCQ04xEzARBgNVBAoTClRlbnBheS5jb20xHTAbBgNVBAsT +FFRlbnBheS5jb20gQ0EgQ2VudGVyMRswGQYDVQQDExJUZW5wYXkuY29tIFJvb3Qg +Q0EwHhcNMjUwMTEzMDkxMjA2WhcNMzAwMTEyMDkxMjA2WjCBgTETMBEGA1UEAwwK +MTcwNDA0NTMwNDEbMBkGA1UECgwS5b6u5L+h5ZWG5oi357O757ufMS0wKwYDVQQL +DCTplb/mspnmsrPkuJzlirPliqHmnI3liqHmnInpmZDlhazlj7gxCzAJBgNVBAYT +AkNOMREwDwYDVQQHDAhTaGVuWmhlbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBAKn5VPODXobGUSu6ZBqfgEnjiFWZ829s1xfgWXW2N4EM48V4iqZ0Sf0y +CNEAhQc4OH5Adt2cZjWG3PE04KQsqg59HE56OFq8szrrk/W4lVLntb19SQHkVXsI ++M3RArdzQyixZQ1Di9m5oUIFxlINOiRSlA3fHcwSpKy95FlBZ+ThKNGHiBXVFT8M +DULhM0omEc9WssB4KJkIdociJYVqc9diBsSA7eTQT0XtGKPAINrb460P4yIyvtWY +wegc5NHvaVO8jDqwIAfiV3N0XJstsYYOq8Nfi4b+qyKhmmy9eaeM8azk6y/16XqQ +Zq69pIawqW0JOGrDRryCdmPuK9tT2dkCAwEAAaOBuTCBtjAJBgNVHRMEAjAAMAsG +A1UdDwQEAwID+DCBmwYDVR0fBIGTMIGQMIGNoIGKoIGHhoGEaHR0cDovL2V2Y2Eu +aXRydXMuY29tLmNuL3B1YmxpYy9pdHJ1c2NybD9DQT0xQkQ0MjIwRTUwREJDMDRC +MDZBRDM5NzU0OTg0NkMwMUMzRThFQkQyJnNnPUhBQ0M0NzFCNjU0MjJFMTJCMjdB +OUQzM0E4N0FEMUNERjU5MjZFMTQwMzcxMA0GCSqGSIb3DQEBCwUAA4IBAQAnTWfq +232lsiU9XBiINtLq3pnVnhao1OCJ8xWrke6o4ys9bsuBOXk+OP+VifdphRS+o+BU +PglRo0UPJHMKDguOZ/dxET0qcKdRMPwB07H19AECz4Z8mhEosMlpO9BbKNbG8XQ6 +5va/CchRU1HMa1I2zNEUl68Deib59dcO2SDLomfs57cu2gZimP0jwvQipe8aFXnn +rTzr6Gql4KJcMfpwfNzQYFeEsiRci5RwrcG2ylik5sb/h3qTOJB+TOnwlkP71VlC +AWTE8aSY5J9XdwX6avubdvcp/3dZSC4S42KaBmMKKkk0qcA4PVG+RdmXmtbapoCF +20kYEjj7kp+3WYvX +-----END CERTIFICATE----- diff --git a/jeecg-boot-module-system/src/main/resources/apiclient_key.pem b/jeecg-boot-module-system/src/main/resources/apiclient_key.pem new file mode 100644 index 0000000..676d31c --- /dev/null +++ b/jeecg-boot-module-system/src/main/resources/apiclient_key.pem @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCp+VTzg16GxlEr +umQan4BJ44hVmfNvbNcX4Fl1tjeBDOPFeIqmdEn9MgjRAIUHODh+QHbdnGY1htzx +NOCkLKoOfRxOejhavLM665P1uJVS57W9fUkB5FV7CPjN0QK3c0MosWUNQ4vZuaFC +BcZSDTokUpQN3x3MEqSsveRZQWfk4SjRh4gV1RU/DA1C4TNKJhHPVrLAeCiZCHaH +IiWFanPXYgbEgO3k0E9F7RijwCDa2+OtD+MiMr7VmMHoHOTR72lTvIw6sCAH4ldz +dFybLbGGDqvDX4uG/qsioZpsvXmnjPGs5Osv9el6kGauvaSGsKltCThqw0a8gnZj +7ivbU9nZAgMBAAECggEAM8R0UxYXnASahC7ofhNGBzr9MtUIh08m02bI2Ej+7pb2 +aBYmZDvWrP6oIL9/xIsi6ZDIowYXOwYwFGZ+ZIIV6QPBs0UWFMyT6cYF8jidgfqA +J44YxjK8thQtcsHNigHY2nPsyvVfipg2vNz1YdgVdSqRXQgvExA6h0HuYiDBe7t4 +hqOqPGm+X8iVmwCTam+OovUtPy2is3uXxwjePF1lbfVrWsmn/D7ZpG54Pdyi0v+O +WX65NVkZ5h+nwHWs5479V/Cpen6+3O/N+rrdijB1fjBNBWnX9FQ7PKSVC2mR/ugb +wvM3LJ2fiMHsDpryrbmsx8ADD7cl+jbVfbeqXDHS4QKBgQDYESJmvOpaNzIz2Ri2 +20LiCLG+AtEaFmMOobZ7nNONjW0P3N6HMkCwTGU6omnLXKLqs0aXnVlWBy8CF4yj +iES7OjAQ7i604gpc3vjJkElj3eAStK3kx0N/1tTOnNcOzGHu3Dl8eIJCOjxWeBbC ++KfLtqET2xxdvFG9tIvOE+NPGwKBgQDJY2GHIXWFCm3xK+9/D/CC9N7Snrs+7PeN +AWxqvT5UCI+S3LGnXZ5sWShIJWRHix7Ke2oK7ZRdodzMBfOCES8UnbrXS5RHze2X +VAkqho6HiyxMpVU84kFh3vAsXRpEKvfG2rzzYya/sSzotCabrArIjr1fJvdh2ioo +kapKpR2mGwKBgGSoHtGj4r1ih2W2FphhLxhkGoG9iDJSCZWwanXNypRgNVW1fImZ +NJ+tB1+4d/bAUjlqiVFqgUrdj922oNMyUWqzod7RRzsHLvKzAU3NhRMcMx4jw/sX +hW+R4pPaZynCt0DyoWlGLtCxlphl25y7AFib3RCF/AIDEEWDTboUc8nPAoGBAKqW +rlRi+UNa1EpIJzUAcYDcn6rVnlLtM7yTihzYdOWF4uhKXYoh+UJaO47xbYJUzB5E +cE0Vdmnh5EBGgkCZAcJ64Xvhn5c7TpizLJiDJlSWhU3fdtZ96VhYGiXaL5eytfQR +8aBRSs9x61Kq11FiaDf/AVaKkV6oCLIYwaE9QGIlAoGBAL1JAn9QxaZk2qkcir94 +7fZtvuVA5U5WUDau2qhdYgPAefVBn1ID65Em52juFQVX2/QpxMdK6NfQurtof731 +XoLUnqB5cf1etuL0ihKVgBQsJ4x996Ht8ledwDh8uMc1nyd4IIbgo4TU2b4hjRPO +U/7juGQEOUE03MnBpVgGz9YU +-----END PRIVATE KEY----- diff --git a/jeecg-boot-module-system/src/main/resources/pay_weixin.properties b/jeecg-boot-module-system/src/main/resources/pay_weixin.properties index a3dec94..d91397c 100644 --- a/jeecg-boot-module-system/src/main/resources/pay_weixin.properties +++ b/jeecg-boot-module-system/src/main/resources/pay_weixin.properties @@ -1,8 +1,8 @@ -pay.mchId=1681494138 -pay.appId=wx15be4225a7e41a1e +pay.mchId=1704045304 +pay.appId=wx6931d85f7371b032 pay.mchKey=0fdb77429ffdf206c151af76a663041c pay.keyPath=classpath:apiclient_cert.pem -pay.notifyUrl=http://h5.xzaiyp.top/massage-api/post/create -pay.notifyUrlDev=http://h5.xzaiyp.top/massage-api/post/notify +pay.notifyUrl=https://admin.augcl.com/employ-admin/employ/amount/payNotify +pay.notifyUrlDev=http://augcl.natapp1.cc/employ-admin/employ/amount/payNotify