diff --git a/admin-hanhai-vue/.env.development b/admin-hanhai-vue/.env.development index bf4420c..a8ae589 100644 --- a/admin-hanhai-vue/.env.development +++ b/admin-hanhai-vue/.env.development @@ -1,5 +1,5 @@ NODE_ENV=development -VUE_APP_API_BASE_URL=http://admin.anqi.shop/a-notice-api/ +VUE_APP_API_BASE_URL=http://localhost:8000/a-notice-api/ VUE_APP_CAS_BASE_URL=http://cas.example.org:8443/cas VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview diff --git a/admin-hanhai-vue/.env.production b/admin-hanhai-vue/.env.production index 8a85667..4ae3ecb 100644 --- a/admin-hanhai-vue/.env.production +++ b/admin-hanhai-vue/.env.production @@ -1,4 +1,4 @@ NODE_ENV=production -VUE_APP_API_BASE_URL=http://admin.anqi.shop/a-notice-api/ +VUE_APP_API_BASE_URL=http://localhost:8000/a-notice-api/ VUE_APP_CAS_BASE_URL=http://localhost:8888/cas VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/target/jeecg-system-cloud-api-3.2.0.jar b/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/target/jeecg-system-cloud-api-3.2.0.jar index 53f5268..0fba5b7 100644 Binary files a/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/target/jeecg-system-cloud-api-3.2.0.jar and b/jeecg-boot-base/jeecg-boot-base-api/jeecg-system-cloud-api/target/jeecg-system-cloud-api-3.2.0.jar differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index a950dfb..d565286 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java @@ -75,6 +75,9 @@ public class ShiroConfig { //开启小程序不需要token的接口过滤 (现在先全开放后面再来改) filterChainDefinitionMap.put("/api/**", "anon"); + //开启小程序不需要token的接口过滤 (现在先全开放后面再来改) + filterChainDefinitionMap.put("/cheer/login/**", "anon"); + filterChainDefinitionMap.put("/sys/oss/file/upload", "anon"); //图片上传验证放开 diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/controller/CheerConfController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/controller/CheerConfController.java new file mode 100644 index 0000000..6311d8d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/controller/CheerConfController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.cheerConf.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.cheerConf.entity.CheerConf; +import org.jeecg.modules.cheerConf.service.ICheerConfService; + +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: 2024-08-29 + * @Version: V1.0 + */ +@Api(tags="配置表") +@RestController +@RequestMapping("/cheerConf/cheerConf") +@Slf4j +public class CheerConfController extends JeecgController { + @Autowired + private ICheerConfService cheerConfService; + + /** + * 分页列表查询 + * + * @param cheerConf + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "配置表-分页列表查询") + @ApiOperation(value="配置表-分页列表查询", notes="配置表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(CheerConf cheerConf, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(cheerConf, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = cheerConfService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param cheerConf + * @return + */ + @AutoLog(value = "配置表-添加") + @ApiOperation(value="配置表-添加", notes="配置表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody CheerConf cheerConf) { + cheerConfService.save(cheerConf); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param cheerConf + * @return + */ + @AutoLog(value = "配置表-编辑") + @ApiOperation(value="配置表-编辑", notes="配置表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody CheerConf cheerConf) { + cheerConfService.updateById(cheerConf); + 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) { + cheerConfService.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.cheerConfService.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) { + CheerConf cheerConf = cheerConfService.getById(id); + if(cheerConf==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(cheerConf); + } + + /** + * 导出excel + * + * @param request + * @param cheerConf + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, CheerConf cheerConf) { + return super.exportXls(request, cheerConf, CheerConf.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, CheerConf.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/entity/CheerConf.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/entity/CheerConf.java new file mode 100644 index 0000000..4266dea --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/entity/CheerConf.java @@ -0,0 +1,62 @@ +package org.jeecg.modules.cheerConf.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: 2024-08-29 + * @Version: V1.0 + */ +@Data +@TableName("cheer_conf") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="cheer_conf对象", description="配置表") +public class CheerConf 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 keyValue; + /**说明*/ + @Excel(name = "说明", width = 15) + @ApiModelProperty(value = "说明") + private java.lang.String keyTitle; + /**内容*/ + @Excel(name = "内容", width = 15) + @ApiModelProperty(value = "内容") + private java.lang.String keyCentent; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.java new file mode 100644 index 0000000..a40657f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.cheerConf.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.cheerConf.entity.CheerConf; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 配置表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface CheerConfMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.xml new file mode 100644 index 0000000..6e16809 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.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/cheerConf/service/ICheerConfService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/service/ICheerConfService.java new file mode 100644 index 0000000..a0ee87f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/service/ICheerConfService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.cheerConf.service; + +import org.jeecg.modules.cheerConf.entity.CheerConf; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 配置表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface ICheerConfService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.java new file mode 100644 index 0000000..5a9942b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.cheerConf.service.impl; + +import org.jeecg.modules.cheerConf.entity.CheerConf; +import org.jeecg.modules.cheerConf.mapper.CheerConfMapper; +import org.jeecg.modules.cheerConf.service.ICheerConfService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 配置表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +@Service +public class CheerConfServiceImpl extends ServiceImpl implements ICheerConfService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/CheerConfList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/CheerConfList.vue new file mode 100644 index 0000000..f2edd1b --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/CheerConfList.vue @@ -0,0 +1,183 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfForm.vue new file mode 100644 index 0000000..2cd14a4 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfForm.vue @@ -0,0 +1,114 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfModal.Style#Drawer.vue new file mode 100644 index 0000000..2adcf5f --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfModal.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/cheerConf/vue/modules/CheerConfModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfModal.vue new file mode 100644 index 0000000..c9b5de8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue/modules/CheerConfModal.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/cheerConf/vue3/CheerConf.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConf.api.ts new file mode 100644 index 0000000..0a3a913 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConf.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/cheerConf/cheerConf/list', + save='/cheerConf/cheerConf/add', + edit='/cheerConf/cheerConf/edit', + deleteOne = '/cheerConf/cheerConf/delete', + deleteBatch = '/cheerConf/cheerConf/deleteBatch', + importExcel = '/cheerConf/cheerConf/importExcel', + exportXls = '/cheerConf/cheerConf/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/cheerConf/vue3/CheerConf.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConf.data.ts new file mode 100644 index 0000000..7cca604 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConf.data.ts @@ -0,0 +1,43 @@ +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: 'keyValue' + }, + { + title: '说明', + align:"center", + dataIndex: 'keyTitle' + }, + { + title: '内容', + align:"center", + dataIndex: 'keyCentent' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '键', + field: 'keyValue', + component: 'Input', + }, + { + label: '说明', + field: 'keyTitle', + component: 'Input', + }, + { + label: '内容', + field: 'keyCentent', + component: 'Input', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConfList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConfList.vue new file mode 100644 index 0000000..ab5f457 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/CheerConfList.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/cheerConf/vue3/components/CheerConfModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/components/CheerConfModal.vue new file mode 100644 index 0000000..49c804e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerConf/vue3/components/CheerConfModal.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/cheerRecharge/controller/CheerRechargeController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/controller/CheerRechargeController.java new file mode 100644 index 0000000..71e5874 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/controller/CheerRechargeController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.cheerRecharge.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.cheerRecharge.entity.CheerRecharge; +import org.jeecg.modules.cheerRecharge.service.ICheerRechargeService; + +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: 2024-08-29 + * @Version: V1.0 + */ +@Api(tags="充值套餐") +@RestController +@RequestMapping("/cheerRecharge/cheerRecharge") +@Slf4j +public class CheerRechargeController extends JeecgController { + @Autowired + private ICheerRechargeService cheerRechargeService; + + /** + * 分页列表查询 + * + * @param cheerRecharge + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "充值套餐-分页列表查询") + @ApiOperation(value="充值套餐-分页列表查询", notes="充值套餐-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(CheerRecharge cheerRecharge, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(cheerRecharge, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = cheerRechargeService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param cheerRecharge + * @return + */ + @AutoLog(value = "充值套餐-添加") + @ApiOperation(value="充值套餐-添加", notes="充值套餐-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody CheerRecharge cheerRecharge) { + cheerRechargeService.save(cheerRecharge); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param cheerRecharge + * @return + */ + @AutoLog(value = "充值套餐-编辑") + @ApiOperation(value="充值套餐-编辑", notes="充值套餐-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody CheerRecharge cheerRecharge) { + cheerRechargeService.updateById(cheerRecharge); + 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) { + cheerRechargeService.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.cheerRechargeService.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) { + CheerRecharge cheerRecharge = cheerRechargeService.getById(id); + if(cheerRecharge==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(cheerRecharge); + } + + /** + * 导出excel + * + * @param request + * @param cheerRecharge + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, CheerRecharge cheerRecharge) { + return super.exportXls(request, cheerRecharge, CheerRecharge.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, CheerRecharge.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.java new file mode 100644 index 0000000..73c49d7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.java @@ -0,0 +1,54 @@ +package org.jeecg.modules.cheerRecharge.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: 2024-08-29 + * @Version: V1.0 + */ +@Data +@TableName("cheer_recharge") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="cheer_recharge对象", description="充值套餐") +public class CheerRecharge 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.math.BigDecimal price; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.java new file mode 100644 index 0000000..d19bbd9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.cheerRecharge.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.cheerRecharge.entity.CheerRecharge; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 充值套餐 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface CheerRechargeMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.xml new file mode 100644 index 0000000..e025af8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.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/cheerRecharge/service/ICheerRechargeService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/service/ICheerRechargeService.java new file mode 100644 index 0000000..5dd8ff8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/service/ICheerRechargeService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.cheerRecharge.service; + +import org.jeecg.modules.cheerRecharge.entity.CheerRecharge; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 充值套餐 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface ICheerRechargeService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.java new file mode 100644 index 0000000..8861b81 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.cheerRecharge.service.impl; + +import org.jeecg.modules.cheerRecharge.entity.CheerRecharge; +import org.jeecg.modules.cheerRecharge.mapper.CheerRechargeMapper; +import org.jeecg.modules.cheerRecharge.service.ICheerRechargeService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 充值套餐 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +@Service +public class CheerRechargeServiceImpl extends ServiceImpl implements ICheerRechargeService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/CheerRechargeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/CheerRechargeList.vue new file mode 100644 index 0000000..fb52825 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/CheerRechargeList.vue @@ -0,0 +1,171 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeForm.vue new file mode 100644 index 0000000..1a42f68 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeForm.vue @@ -0,0 +1,104 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeModal.Style#Drawer.vue new file mode 100644 index 0000000..72f22c9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeModal.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/cheerRecharge/vue/modules/CheerRechargeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeModal.vue new file mode 100644 index 0000000..b41219d --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue/modules/CheerRechargeModal.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/cheerRecharge/vue3/CheerRecharge.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRecharge.api.ts new file mode 100644 index 0000000..b013494 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRecharge.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/cheerRecharge/cheerRecharge/list', + save='/cheerRecharge/cheerRecharge/add', + edit='/cheerRecharge/cheerRecharge/edit', + deleteOne = '/cheerRecharge/cheerRecharge/delete', + deleteBatch = '/cheerRecharge/cheerRecharge/deleteBatch', + importExcel = '/cheerRecharge/cheerRecharge/importExcel', + exportXls = '/cheerRecharge/cheerRecharge/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/cheerRecharge/vue3/CheerRecharge.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRecharge.data.ts new file mode 100644 index 0000000..e0f0077 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRecharge.data.ts @@ -0,0 +1,23 @@ +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: 'price' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '金融', + field: 'price', + component: 'InputNumber', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRechargeList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRechargeList.vue new file mode 100644 index 0000000..17a6006 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/CheerRechargeList.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/cheerRecharge/vue3/components/CheerRechargeModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/components/CheerRechargeModal.vue new file mode 100644 index 0000000..fa0861a --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerRecharge/vue3/components/CheerRechargeModal.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/cheerWater/controller/CheerWaterController.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/controller/CheerWaterController.java new file mode 100644 index 0000000..4f80895 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/controller/CheerWaterController.java @@ -0,0 +1,171 @@ +package org.jeecg.modules.cheerWater.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.cheerWater.entity.CheerWater; +import org.jeecg.modules.cheerWater.service.ICheerWaterService; + +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: 2024-08-29 + * @Version: V1.0 + */ +@Api(tags="加油流水表") +@RestController +@RequestMapping("/cheerWater/cheerWater") +@Slf4j +public class CheerWaterController extends JeecgController { + @Autowired + private ICheerWaterService cheerWaterService; + + /** + * 分页列表查询 + * + * @param cheerWater + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "加油流水表-分页列表查询") + @ApiOperation(value="加油流水表-分页列表查询", notes="加油流水表-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(CheerWater cheerWater, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(cheerWater, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = cheerWaterService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param cheerWater + * @return + */ + @AutoLog(value = "加油流水表-添加") + @ApiOperation(value="加油流水表-添加", notes="加油流水表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody CheerWater cheerWater) { + cheerWaterService.save(cheerWater); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param cheerWater + * @return + */ + @AutoLog(value = "加油流水表-编辑") + @ApiOperation(value="加油流水表-编辑", notes="加油流水表-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody CheerWater cheerWater) { + cheerWaterService.updateById(cheerWater); + 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) { + cheerWaterService.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.cheerWaterService.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) { + CheerWater cheerWater = cheerWaterService.getById(id); + if(cheerWater==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(cheerWater); + } + + /** + * 导出excel + * + * @param request + * @param cheerWater + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, CheerWater cheerWater) { + return super.exportXls(request, cheerWater, CheerWater.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, CheerWater.class); + } + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/entity/CheerWater.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/entity/CheerWater.java new file mode 100644 index 0000000..bd5a801 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/entity/CheerWater.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.cheerWater.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: 2024-08-29 + * @Version: V1.0 + */ +@Data +@TableName("cheer_water") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="cheer_water对象", description="加油流水表") +public class CheerWater 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.math.BigDecimal oldPrice; + /**支付价*/ + @Excel(name = "支付价", width = 15) + @ApiModelProperty(value = "支付价") + private java.math.BigDecimal price; + /**订单名称*/ + @Excel(name = "订单名称", width = 15) + @ApiModelProperty(value = "订单名称") + private java.lang.String name; + /**用户标识*/ + @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; + /**支付状态*/ + @Excel(name = "支付状态", width = 15) + @ApiModelProperty(value = "支付状态") + private java.lang.String state; +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.java new file mode 100644 index 0000000..45b88d3 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.cheerWater.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.cheerWater.entity.CheerWater; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 加油流水表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface CheerWaterMapper extends BaseMapper { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.xml new file mode 100644 index 0000000..0656457 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.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/cheerWater/service/ICheerWaterService.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/service/ICheerWaterService.java new file mode 100644 index 0000000..1932122 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/service/ICheerWaterService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.cheerWater.service; + +import org.jeecg.modules.cheerWater.entity.CheerWater; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 加油流水表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +public interface ICheerWaterService extends IService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.java new file mode 100644 index 0000000..50238e9 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.cheerWater.service.impl; + +import org.jeecg.modules.cheerWater.entity.CheerWater; +import org.jeecg.modules.cheerWater.mapper.CheerWaterMapper; +import org.jeecg.modules.cheerWater.service.ICheerWaterService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 加油流水表 + * @Author: jeecg-boot + * @Date: 2024-08-29 + * @Version: V1.0 + */ +@Service +public class CheerWaterServiceImpl extends ServiceImpl implements ICheerWaterService { + +} diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/CheerWaterList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/CheerWaterList.vue new file mode 100644 index 0000000..867cea1 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/CheerWaterList.vue @@ -0,0 +1,203 @@ + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterForm.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterForm.vue new file mode 100644 index 0000000..23a4dc7 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterForm.vue @@ -0,0 +1,124 @@ + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterModal.Style#Drawer.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterModal.Style#Drawer.vue new file mode 100644 index 0000000..7c8d9f1 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterModal.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/cheerWater/vue/modules/CheerWaterModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterModal.vue new file mode 100644 index 0000000..91db811 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue/modules/CheerWaterModal.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/cheerWater/vue3/CheerWater.api.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWater.api.ts new file mode 100644 index 0000000..c11f370 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWater.api.ts @@ -0,0 +1,61 @@ +import {defHttp} from '/@/utils/http/axios'; +import {Modal} from 'ant-design-vue'; + +enum Api { + list = '/cheerWater/cheerWater/list', + save='/cheerWater/cheerWater/add', + edit='/cheerWater/cheerWater/edit', + deleteOne = '/cheerWater/cheerWater/delete', + deleteBatch = '/cheerWater/cheerWater/deleteBatch', + importExcel = '/cheerWater/cheerWater/importExcel', + exportXls = '/cheerWater/cheerWater/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/cheerWater/vue3/CheerWater.data.ts b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWater.data.ts new file mode 100644 index 0000000..10a7a80 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWater.data.ts @@ -0,0 +1,72 @@ +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", + sorter: true, + dataIndex: 'createTime' + }, + { + title: '原价', + align:"center", + dataIndex: 'oldPrice' + }, + { + title: '支付价', + align:"center", + dataIndex: 'price' + }, + { + title: '订单名称', + align:"center", + dataIndex: 'name' + }, + { + title: '用户标识', + align:"center", + dataIndex: 'userId_dictText' + }, + { + title: '支付状态', + align:"center", + dataIndex: 'state' + }, +]; +//查询数据 +export const searchFormSchema: FormSchema[] = [ +]; +//表单数据 +export const formSchema: FormSchema[] = [ + { + label: '原价', + field: 'oldPrice', + component: 'InputNumber', + }, + { + label: '支付价', + field: 'price', + component: 'InputNumber', + }, + { + label: '订单名称', + field: 'name', + component: 'Input', + }, + { + label: '用户标识', + field: 'userId', + component: 'JSearchSelect', + componentProps:{ + dict:"han_hai_member,nick_name,id" + }, + }, + { + label: '支付状态', + field: 'state', + component: 'Input', + }, +]; diff --git a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWaterList.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWaterList.vue new file mode 100644 index 0000000..7b54d9e --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/CheerWaterList.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/cheerWater/vue3/components/CheerWaterModal.vue b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/components/CheerWaterModal.vue new file mode 100644 index 0000000..faa1ac3 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/cheerWater/vue3/components/CheerWaterModal.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/service/impl/AppletLoginServiceImpl.java b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/service/impl/AppletLoginServiceImpl.java index d32b299..c81f5e6 100644 --- a/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/service/impl/AppletLoginServiceImpl.java +++ b/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/service/impl/AppletLoginServiceImpl.java @@ -65,7 +65,7 @@ public class AppletLoginServiceImpl implements AppletLoginService { throw new JeecgBootException("未获取到openid"); } - HanHaiMember member = memberService.lambdaQuery().eq(HanHaiMember::getAppOpenid,wxOpenid).one(); + HanHaiMember member = memberService.lambdaQuery().eq(HanHaiMember::getAppletOpenid,wxOpenid).one(); if (member == null) { //如果user等于null说明该用户第一次登录,数据库没有该用户信息。 loginReq.setOpenid(wxOpenid); @@ -77,19 +77,20 @@ public class AppletLoginServiceImpl implements AppletLoginService { member.setHeadImage(loginReq.getHeadimgurl()); // 生成token返回给小程序端 String token = JwtUtil.sign(member.getAppletOpenid(), wxOpenid); + memberService.save(member); redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); // 设置超时时间 redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 100); map.put("userInfo", member); map.put("token", token); - result.setCode(905); + result.setCode(200); result.setResult(map); return result; } else { - member.setHeadImage(loginReq.getHeadimgurl()); +// member.setHeadImage(loginReq.getHeadimgurl()); // member.setSessionKey(sessionKey); - memberService.saveOrUpdate(member); +// memberService.saveOrUpdate(member); // 生成token返回给小程序端 String token = JwtUtil.sign(member.getAppletOpenid(), wxOpenid); redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token); diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/config/shiro/ShiroConfig.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/config/shiro/ShiroConfig.class index ef5622b..8f7712f 100644 Binary files a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/config/shiro/ShiroConfig.class and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/config/shiro/ShiroConfig.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/controller/CheerConfController.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/controller/CheerConfController.class new file mode 100644 index 0000000..44b93d4 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/controller/CheerConfController.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/entity/CheerConf.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/entity/CheerConf.class new file mode 100644 index 0000000..c90c3c7 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/entity/CheerConf.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.class new file mode 100644 index 0000000..f46bc76 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/CheerConfMapper.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.xml new file mode 100644 index 0000000..6e16809 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/mapper/xml/CheerConfMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/ICheerConfService.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/ICheerConfService.class new file mode 100644 index 0000000..4bd9811 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/ICheerConfService.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.class new file mode 100644 index 0000000..7fd77ad Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerConf/service/impl/CheerConfServiceImpl.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/controller/CheerRechargeController.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/controller/CheerRechargeController.class new file mode 100644 index 0000000..e4dc64f Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/controller/CheerRechargeController.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.class new file mode 100644 index 0000000..bd0c924 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/entity/CheerRecharge.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.class new file mode 100644 index 0000000..eb26327 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/CheerRechargeMapper.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.xml new file mode 100644 index 0000000..e025af8 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/mapper/xml/CheerRechargeMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/ICheerRechargeService.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/ICheerRechargeService.class new file mode 100644 index 0000000..dafbced Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/ICheerRechargeService.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.class new file mode 100644 index 0000000..1187722 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerRecharge/service/impl/CheerRechargeServiceImpl.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/controller/CheerWaterController.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/controller/CheerWaterController.class new file mode 100644 index 0000000..bceeed5 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/controller/CheerWaterController.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/entity/CheerWater.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/entity/CheerWater.class new file mode 100644 index 0000000..18f51ac Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/entity/CheerWater.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.class new file mode 100644 index 0000000..bfa275e Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/CheerWaterMapper.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.xml b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.xml new file mode 100644 index 0000000..0656457 --- /dev/null +++ b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/mapper/xml/CheerWaterMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/ICheerWaterService.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/ICheerWaterService.class new file mode 100644 index 0000000..fae8fac Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/ICheerWaterService.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.class new file mode 100644 index 0000000..4869966 Binary files /dev/null and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/cheerWater/service/impl/CheerWaterServiceImpl.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/service/impl/AppletLoginServiceImpl.class b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/service/impl/AppletLoginServiceImpl.class index 181a9dd..90df7cd 100644 Binary files a/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/service/impl/AppletLoginServiceImpl.class and b/jeecg-boot-base/jeecg-boot-base-core/target/classes/org/jeecg/modules/service/impl/AppletLoginServiceImpl.class differ diff --git a/jeecg-boot-base/jeecg-boot-base-core/target/jeecg-boot-base-core-3.2.0.jar b/jeecg-boot-base/jeecg-boot-base-core/target/jeecg-boot-base-core-3.2.0.jar index 8a24d3a..9acaafc 100644 Binary files a/jeecg-boot-base/jeecg-boot-base-core/target/jeecg-boot-base-core-3.2.0.jar and b/jeecg-boot-base/jeecg-boot-base-core/target/jeecg-boot-base-core-3.2.0.jar differ diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerInfoController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerInfoController.java new file mode 100644 index 0000000..7e520ae --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerInfoController.java @@ -0,0 +1,54 @@ +package org.jeecg.modules.api.cheeroncontroller; + + +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.OrderWaterPageBean; +import org.jeecg.modules.apiservice.InfoApiService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +@Api(tags="加油小程序-个人中心相关接口") +@RestController +@RequestMapping("/cheer/info") +@Slf4j +public class CheerInfoController { + + //获取个人中心接口 + @Resource + private InfoApiService infoApiService; + + + //获取个人信息接口 + @ApiOperation(value="小程序-获取个人信息接口", notes="小程序-获取个人信息接口") + @GetMapping("/getInfo") + public Result getInfo(@RequestHeader("X-Access-Token") String token) + { + return infoApiService.getInfo(token); + } + + + //修改个人信息接口 + @ApiOperation(value="小程序-修改个人信息接口", notes="小程序-修改个人信息接口") + @PostMapping("/updateInfo") + public Result updateInfo(@RequestHeader("X-Access-Token") String token, HanHaiMember bean) + { + return infoApiService.updateInfo(token,bean); + } + + + //获取加油流水订单 + @ApiOperation(value="小程序-获取加油流水订单", notes="小程序-获取加油流水订单") + @GetMapping("/getOrderWaterPage") + public Result getOrderWaterPage(@RequestHeader("X-Access-Token") String token, OrderWaterPageBean bean) + { + return infoApiService.getOrderWaterPage(token,bean); + } + + + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerLoginApiController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerLoginApiController.java new file mode 100644 index 0000000..260f991 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/cheeroncontroller/CheerLoginApiController.java @@ -0,0 +1,50 @@ +package org.jeecg.modules.api.cheeroncontroller; + + +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.apiservice.LoginApiService; +import org.jeecg.modules.bean.LoginReq; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags="加油小程序-登录相关接口") +@RestController +@RequestMapping("/cheer/login") +@Slf4j +public class CheerLoginApiController { + + //授权登录 + @Resource + private LoginApiService loginApiService; + + + //小程序授权登录 + @ApiOperation(value="小程序-登录接口", notes="小程序-登录接口") + @GetMapping("/login") + public Result login(LoginReq loginReq){ + return loginApiService.login(loginReq); + } + + + //获取用户协议 + @ApiOperation(value="小程序-获取用户协议", notes="小程序-获取用户协议") + @GetMapping("/getUserAgreement") + public Result getUserAgreement(){ + return loginApiService.getUserAgreement(); + } + + + //获取隐私政策 + @ApiOperation(value="小程序-获取隐私政策", notes="小程序-获取隐私政策") + @GetMapping("/getPrivacyPolicy") + public Result getPrivacyPolicy(){ + return loginApiService.getPrivacyPolicy(); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/noticeapicontroller/LoginApiController.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/noticeapicontroller/LoginApiController.java index e185c80..19ee009 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/noticeapicontroller/LoginApiController.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/noticeapicontroller/LoginApiController.java @@ -33,6 +33,42 @@ public class LoginApiController { + //获取用户协议 + @ApiOperation(value="小程序-获取用户协议", notes="小程序-获取用户协议") + @GetMapping("/getUserAgreement") + public Result getUserAgreement(){ + return loginApiService.getUserAgreement(); + } + + + //获取隐私政策 + @ApiOperation(value="小程序-获取隐私政策", notes="小程序-获取隐私政策") + @GetMapping("/getPrivacyPolicy") + public Result getPrivacyPolicy(){ + return loginApiService.getPrivacyPolicy(); + } + + //获取联系电话 + @ApiOperation(value="小程序-获取联系电话", notes="小程序-获取联系电话") + @GetMapping("/getPhone") + public Result getPhone(){ + return loginApiService.getPhone(); + } + + //获取联系微信 + @ApiOperation(value="小程序-获取联系微信", notes="小程序-获取联系微信") + @GetMapping("/getWechat") + public Result getWechat(){ + return loginApiService.getWechat(); + } + + //或者折扣 + @ApiOperation(value="小程序-获取折扣", notes="小程序-获取折扣") + @GetMapping("/getDiscount") + public Result getDiscount(){ + return loginApiService.getDiscount(); + } + diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderPayBean.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderPayBean.java new file mode 100644 index 0000000..a402a16 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderPayBean.java @@ -0,0 +1,15 @@ +package org.jeecg.modules.apiBean; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class OrderPayBean { + + /**支付金额*/ + @ApiModelProperty(value = "支付金额" ) + private BigDecimal money; + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderWaterPageBean.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderWaterPageBean.java new file mode 100644 index 0000000..9c62ea4 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiBean/OrderWaterPageBean.java @@ -0,0 +1,21 @@ +package org.jeecg.modules.apiBean; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class OrderWaterPageBean { + + + /**显示条数*/ + @ApiModelProperty(value = "显示条数" ) + private Integer pageSize; + /**当前页*/ + @ApiModelProperty(value = "当前页" ) + private Integer pageNo; + + public OrderWaterPageBean() { + this.pageNo = 1; + this.pageSize = 1000; + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/InfoApiService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/InfoApiService.java index 90808f5..0e7e1e3 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/InfoApiService.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/InfoApiService.java @@ -1,10 +1,7 @@ package org.jeecg.modules.apiservice; import org.jeecg.common.api.vo.Result; -import org.jeecg.modules.apiBean.HanHaiBankBean; -import org.jeecg.modules.apiBean.HanHaiWaterBean; -import org.jeecg.modules.apiBean.MyReleasePageBean; -import org.jeecg.modules.apiBean.PromotionPageBean; +import org.jeecg.modules.apiBean.*; import org.jeecg.modules.hanHaiBank.entity.HanHaiBank; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; @@ -62,4 +59,10 @@ public interface InfoApiService { //用户提现 Result withdraw(String token); + + //加油小程序-获取订单流水信息 + Result getOrderWaterPage(String token,OrderWaterPageBean bean); + //加油小程序-用户输入支付创建支付订单并且支付 + Result createOrderPay(String token,OrderPayBean bean); + } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/LoginApiService.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/LoginApiService.java index 8e2ff95..dff059a 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/LoginApiService.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/LoginApiService.java @@ -8,6 +8,23 @@ public interface LoginApiService { //小程序-登录接口 Result login(LoginReq loginReq); - //小程序-退出接口 - Result logout(); + + //获取用户协议 + Result getUserAgreement(); + + //获取隐私政策 + Result getPrivacyPolicy(); + + //获取联系电话 + Result getPhone(); + + //获取联系微信 + Result getWechat(); + + //获取折扣 + Result getDiscount(); + + //获取套餐列表 + Result getPackageList(); + } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java index 0cc301a..eb475bd 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java @@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.common.api.vo.Result; import org.jeecg.common.util.RedisUtil; import org.jeecg.config.shiro.ShiroRealm; -import org.jeecg.modules.apiBean.HanHaiBankBean; -import org.jeecg.modules.apiBean.HanHaiWaterBean; -import org.jeecg.modules.apiBean.MyReleasePageBean; -import org.jeecg.modules.apiBean.PromotionPageBean; +import org.jeecg.modules.apiBean.*; import org.jeecg.modules.apiservice.InfoApiService; import org.jeecg.modules.atPerformer.entity.AtPerformer; import org.jeecg.modules.atPerformer.service.IAtPerformerService; @@ -15,6 +12,11 @@ import org.jeecg.modules.atPromotion.entity.AtPromotion; import org.jeecg.modules.atPromotion.service.IAtPromotionService; import org.jeecg.modules.atTrends.entity.AtTrends; import org.jeecg.modules.atTrends.service.IAtTrendsService; +import org.jeecg.modules.cheerConf.entity.CheerConf; +import org.jeecg.modules.cheerConf.service.ICheerConfService; +import org.jeecg.modules.cheerRecharge.service.ICheerRechargeService; +import org.jeecg.modules.cheerWater.entity.CheerWater; +import org.jeecg.modules.cheerWater.service.ICheerWaterService; import org.jeecg.modules.hanHaiBank.entity.HanHaiBank; import org.jeecg.modules.hanHaiBank.service.IHanHaiBankService; import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; @@ -28,6 +30,8 @@ import org.jeecg.modules.hanHaiWater.service.IHanHaiWaterService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.Date; import java.util.List; @Service @@ -63,6 +67,18 @@ public class InfoApiServiceImpl implements InfoApiService { + + + //加油小程序 + @Resource + private ICheerWaterService cheerWaterService; + @Resource + private ICheerConfService cheerConfService; + + + + + //获取个人信息接口 @Override public Result getInfo(String token){ @@ -208,4 +224,65 @@ public class InfoApiServiceImpl implements InfoApiService { return Result.OK(); } + + + + + //加油小程序相关 + + //加油小程序-获取订单流水信息 + @Override + public Result getOrderWaterPage(String token, OrderWaterPageBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiAccount(token); + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page page1 = cheerWaterService.lambdaQuery() + .eq(CheerWater::getUserId, hanHaiMember.getId()) + .orderByDesc(CheerWater::getCreateTime) + .page(page); + + return Result.OK("加油流水",page1); + } + + + //加油小程序-用户输入支付创建支付订单并且支付 + @Override + public Result createOrderPay(String token, OrderPayBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiAccount(token); + //判断输入金额是否为空 + if(bean.getMoney() == null){ + return Result.error("支付金额不能为空"); + } + //查询当前折扣 + CheerConf one = cheerConfService.lambdaQuery() + .eq(CheerConf::getKeyValue, "preferential") + .one(); + //判断折扣是否为空 + if(one == null){ + return Result.error("当前没有折扣"); + } + //得到折扣值转为BigDecimal类型 + BigDecimal discount = new BigDecimal(one.getKeyCentent()); + if(bean.getMoney().compareTo(new BigDecimal(0)) == 0){ + return Result.error("支付金额不能为0"); + } + if(bean.getMoney().compareTo(new BigDecimal(0)) == -1){ + return Result.error("支付金额不能为负数"); + } + BigDecimal oldMoney = bean.getMoney(); + //支付金额乘折扣保留两位小数 + BigDecimal money = bean.getMoney().multiply(discount).setScale(2, BigDecimal.ROUND_HALF_UP); + + //创建订单流水 + CheerWater cheerWater = new CheerWater(); + cheerWater.setUserId(hanHaiMember.getId()); + cheerWater.setOldPrice(oldMoney); + cheerWater.setPrice(money); + cheerWater.setState("0"); + cheerWater.setCreateTime(new Date()); + cheerWaterService.save(cheerWater); + + + return Result.OK("支付成功"); + } + } diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java index 678fb2a..2518231 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java @@ -3,16 +3,25 @@ package org.jeecg.modules.apiservice.impl; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.apiservice.LoginApiService; import org.jeecg.modules.bean.LoginReq; +import org.jeecg.modules.cheerConf.entity.CheerConf; +import org.jeecg.modules.cheerConf.service.ICheerConfService; +import org.jeecg.modules.cheerRecharge.entity.CheerRecharge; +import org.jeecg.modules.cheerRecharge.service.ICheerRechargeService; import org.jeecg.modules.service.AppletLoginService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.List; @Service public class LoginApiServiceImpl implements LoginApiService { @Resource private AppletLoginService appletLoginService; + @Resource + private ICheerConfService cheerConfService; + @Resource + private ICheerRechargeService cheerRechargeService; //小程序-登录接口 @Override @@ -21,13 +30,63 @@ public class LoginApiServiceImpl implements LoginApiService { return appletLoginService.appletLogin(loginReq); } - //小程序-退出接口 + + //小程序-获取用户协议 @Override - public Result logout() + public Result getUserAgreement() { - return null; + + return Result.OK("用户协议"); } + //获取隐私政策 + @Override + public Result getPrivacyPolicy() + { + + return Result.OK("隐私政策"); + } + + + //获取联系电话 + @Override + public Result getPhone(){ + CheerConf one = cheerConfService.lambdaQuery() + .eq(CheerConf::getKeyValue, "phone") + .one(); + + return Result.OK("电话",one.getKeyCentent()); + } + + //获取联系微信 + @Override + public Result getWechat(){ + CheerConf one = cheerConfService.lambdaQuery() + .eq(CheerConf::getKeyValue, "wx") + .one(); + + return Result.OK("微信",one.getKeyCentent()); + } + + //获取折扣 + @Override + public Result getDiscount(){ + CheerConf one = cheerConfService.lambdaQuery() + .eq(CheerConf::getKeyValue, "preferential") + .one(); + + return Result.OK("折扣",one.getKeyCentent()); + } + + + //获取套餐列表 + @Override + public Result getPackageList(){ + List list = cheerRechargeService.lambdaQuery() + .orderByDesc(CheerRecharge::getCreateTime) + .list(); + return Result.OK("套餐列表",list); + }