From 5a12f9b8c617b2c9f3085ec122b04e4a3e660e19 Mon Sep 17 00:00:00 2001 From: "autumn.g@foxmail.com" Date: Tue, 4 Jul 2023 14:03:11 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E5=B9=B3=E5=8F=B0=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E5=91=98=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pile/MemberBasicInfoController.java | 294 ++++++++++-------- .../common/constant/CacheConstants.java | 6 +- .../jsowell/pile/dto/PlatformTesterDTO.java | 21 ++ .../pile/service/IMemberBasicInfoService.java | 6 +- .../impl/MemberBasicInfoServiceImpl.java | 38 +++ .../jsowell/pile/vo/web/PlatformTesterVO.java | 21 ++ 6 files changed, 249 insertions(+), 137 deletions(-) create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/dto/PlatformTesterDTO.java create mode 100644 jsowell-pile/src/main/java/com/jsowell/pile/vo/web/PlatformTesterVO.java diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberBasicInfoController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberBasicInfoController.java index b32433084..838514830 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberBasicInfoController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberBasicInfoController.java @@ -1,5 +1,6 @@ package com.jsowell.web.controller.pile; +import com.alibaba.fastjson2.JSON; import com.github.pagehelper.PageHelper; import com.google.common.collect.Lists; import com.jsowell.common.annotation.Log; @@ -8,9 +9,11 @@ import com.jsowell.common.core.domain.AjaxResult; import com.jsowell.common.core.page.TableDataInfo; import com.jsowell.common.enums.BusinessType; import com.jsowell.common.enums.uniapp.BalanceChangesEnum; +import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.MemberBasicInfo; import com.jsowell.pile.domain.MemberPlateNumberRelation; +import com.jsowell.pile.dto.PlatformTesterDTO; import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO; import com.jsowell.pile.service.IMemberBasicInfoService; import com.jsowell.pile.service.IMemberPlateNumberRelationService; @@ -18,6 +21,7 @@ import com.jsowell.pile.service.IMemberTransactionRecordService; import com.jsowell.pile.vo.uniapp.MemberVO; import com.jsowell.pile.vo.uniapp.MemberWalletLogVO; import com.jsowell.pile.vo.web.MemberTransactionVO; +import com.jsowell.pile.vo.web.PlatformTesterVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @@ -33,29 +37,29 @@ import java.util.List; @RestController @RequestMapping("/member/info") public class MemberBasicInfoController extends BaseController { - @Autowired - private IMemberBasicInfoService memberBasicInfoService; + @Autowired + private IMemberBasicInfoService memberBasicInfoService; - @Autowired - private IMemberTransactionRecordService memberTransactionRecordService; + @Autowired + private IMemberTransactionRecordService memberTransactionRecordService; - @Autowired - private IMemberPlateNumberRelationService memberPlateNumberRelationService; + @Autowired + private IMemberPlateNumberRelationService memberPlateNumberRelationService; - /** - * 查询会员基础信息列表 - */ - @PreAuthorize("@ss.hasPermi('member:info:list')") - @GetMapping("/list") - public TableDataInfo list(MemberBasicInfo memberBasicInfo) { - startPage(); - List list = memberBasicInfoService.selectMemberList(memberBasicInfo.getMobileNumber(), memberBasicInfo.getNickName()); - return getDataTable(list); - } + /** + * 查询会员基础信息列表 + */ + @PreAuthorize("@ss.hasPermi('member:info:list')") + @GetMapping("/list") + public TableDataInfo list(MemberBasicInfo memberBasicInfo) { + startPage(); + List list = memberBasicInfoService.selectMemberList(memberBasicInfo.getMobileNumber(), memberBasicInfo.getNickName()); + return getDataTable(list); + } - /** - * 导出会员基础信息列表 - */ + /** + * 导出会员基础信息列表 + */ /*@PreAuthorize("@ss.hasPermi('member:info:export')") @Log(title = "会员基础信息", businessType = BusinessType.EXPORT) @PostMapping("/export") @@ -65,127 +69,153 @@ public class MemberBasicInfoController extends BaseController { util.exportExcel(response, list, "会员基础信息数据"); }*/ - /** - * 获取会员基础信息详细信息 - */ - @PreAuthorize("@ss.hasPermi('member:info:query')") - @GetMapping(value = "/{memberId}") - public AjaxResult getInfo(@PathVariable("memberId") String memberId) { - return AjaxResult.success(memberBasicInfoService.queryMemberInfoByMemberId(memberId)); - } + /** + * 获取会员基础信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('member:info:query')") + @GetMapping(value = "/{memberId}") + public AjaxResult getInfo(@PathVariable("memberId") String memberId) { + return AjaxResult.success(memberBasicInfoService.queryMemberInfoByMemberId(memberId)); + } - @PreAuthorize("@ss.hasPermi('member:info:query')") - @GetMapping(value = "/getMemberPersonPileInfo/{memberId}") - public AjaxResult getMemberPersonPileInfo(@PathVariable("memberId") String memberId){ - return AjaxResult.success(memberBasicInfoService.getMemberPersonPileInfo(memberId)); - } + @PreAuthorize("@ss.hasPermi('member:info:query')") + @GetMapping(value = "/getMemberPersonPileInfo/{memberId}") + public AjaxResult getMemberPersonPileInfo(@PathVariable("memberId") String memberId) { + return AjaxResult.success(memberBasicInfoService.getMemberPersonPileInfo(memberId)); + } - /** - * 新增会员基础信息 - */ - // @PreAuthorize("@ss.hasPermi('member:info:add')") - // @Log(title = "会员基础信息", businessType = BusinessType.INSERT) - // @PostMapping - // public AjaxResult add(@RequestBody MemberBasicInfo memberBasicInfo) { - // return toAjax(memberBasicInfoService.insertMemberBasicInfo(memberBasicInfo)); - // } + /** + * 新增会员基础信息 + */ + // @PreAuthorize("@ss.hasPermi('member:info:add')") + // @Log(title = "会员基础信息", businessType = BusinessType.INSERT) + // @PostMapping + // public AjaxResult add(@RequestBody MemberBasicInfo memberBasicInfo) { + // return toAjax(memberBasicInfoService.insertMemberBasicInfo(memberBasicInfo)); + // } - /** - * 修改会员基础信息 - */ - @PreAuthorize("@ss.hasPermi('member:info:edit')") - @Log(title = "会员基础信息", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody MemberBasicInfo memberBasicInfo) { - return toAjax(memberBasicInfoService.updateMemberBasicInfo(memberBasicInfo)); - } + /** + * 修改会员基础信息 + */ + @PreAuthorize("@ss.hasPermi('member:info:edit')") + @Log(title = "会员基础信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody MemberBasicInfo memberBasicInfo) { + return toAjax(memberBasicInfoService.updateMemberBasicInfo(memberBasicInfo)); + } - /** - * 删除会员基础信息 - */ - @PreAuthorize("@ss.hasPermi('member:info:remove')") - @Log(title = "会员基础信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Integer[] ids) { - return toAjax(memberBasicInfoService.deleteMemberBasicInfoByIds(Lists.newArrayList(ids))); - } + /** + * 删除会员基础信息 + */ + @PreAuthorize("@ss.hasPermi('member:info:remove')") + @Log(title = "会员基础信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) { + return toAjax(memberBasicInfoService.deleteMemberBasicInfoByIds(Lists.newArrayList(ids))); + } - /** - * 充值/扣款余额 - */ - // @PreAuthorize("@ss.hasPermi('member:balance:update')") - // @Log(title = "会员充值/扣款余额", businessType = BusinessType.UPDATE) - // @PutMapping("/updateGiftBalance") - // public AjaxResult updateGiftBalance(@RequestBody UpdateMemberBalanceDTO dto) { - // logger.info("后管充值/扣款余额 param:{}", dto.toString()); - // // 判断入参 - // return toAjax(memberBasicInfoService.updateMemberBalance(dto)); - // } + /** + * 充值/扣款余额 + */ + // @PreAuthorize("@ss.hasPermi('member:balance:update')") + // @Log(title = "会员充值/扣款余额", businessType = BusinessType.UPDATE) + // @PutMapping("/updateGiftBalance") + // public AjaxResult updateGiftBalance(@RequestBody UpdateMemberBalanceDTO dto) { + // logger.info("后管充值/扣款余额 param:{}", dto.toString()); + // // 判断入参 + // return toAjax(memberBasicInfoService.updateMemberBalance(dto)); + // } - /** - * 查询会员钱包流水 - */ - @PostMapping("/queryMemberBalanceChanges") - public TableDataInfo queryMemberBalanceChanges(@RequestBody UniAppQueryMemberBalanceDTO dto) { - String type = dto.getType(); - if (!StringUtils.equals("1", type) && !StringUtils.equals("2", type)) { - type = ""; - } - PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); - List list = memberBasicInfoService.getMemberBalanceChanges(dto.getMemberId(), type); - for (MemberWalletLogVO walletLogVO : list) { - String subType = walletLogVO.getSubType(); - String subTypeValue = BalanceChangesEnum.getValueByCode(subType); - if (StringUtils.isNotBlank(subTypeValue)) { - walletLogVO.setSubType(subTypeValue); - } - } - return getDataTable(list); - } + /** + * 查询会员钱包流水 + */ + @PostMapping("/queryMemberBalanceChanges") + public TableDataInfo queryMemberBalanceChanges(@RequestBody UniAppQueryMemberBalanceDTO dto) { + String type = dto.getType(); + if (!StringUtils.equals("1", type) && !StringUtils.equals("2", type)) { + type = ""; + } + PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); + List list = memberBasicInfoService.getMemberBalanceChanges(dto.getMemberId(), type); + for (MemberWalletLogVO walletLogVO : list) { + String subType = walletLogVO.getSubType(); + String subTypeValue = BalanceChangesEnum.getValueByCode(subType); + if (StringUtils.isNotBlank(subTypeValue)) { + walletLogVO.setSubType(subTypeValue); + } + } + return getDataTable(list); + } - /** - * 查询会员交易流水 - * IMemberTransactionRecordService - */ - @PostMapping("/selectMemberTransactionRecordList") - public TableDataInfo selectMemberTransactionRecordList(@RequestBody UniAppQueryMemberBalanceDTO dto) { - startPage(); - List list = memberTransactionRecordService.selectMemberTransactionRecordList(dto.getMemberId()); - return getDataTable(list); - } + /** + * 查询会员交易流水 + * IMemberTransactionRecordService + */ + @PostMapping("/selectMemberTransactionRecordList") + public TableDataInfo selectMemberTransactionRecordList(@RequestBody UniAppQueryMemberBalanceDTO dto) { + startPage(); + List list = memberTransactionRecordService.selectMemberTransactionRecordList(dto.getMemberId()); + return getDataTable(list); + } - /** - * 修改车牌号信息 - * @param relation - * @return - */ - @PreAuthorize("@ss.hasPermi('member:info:edit')") - @Log(title = "修改车牌号信息", businessType = BusinessType.UPDATE) - @PostMapping("/updatePlateNumber") - public AjaxResult updatePlateNumber(@RequestBody MemberPlateNumberRelation relation){ - int i = memberPlateNumberRelationService.updatePlateNumber(relation); - logger.info("后管修改用户:{} 的车牌号:{}", relation.getMemberId(), relation.getLicensePlateNumber()); - return toAjax(i); - } + /** + * 修改车牌号信息 + * + * @param relation + * @return + */ + @PreAuthorize("@ss.hasPermi('member:info:edit')") + @Log(title = "修改车牌号信息", businessType = BusinessType.UPDATE) + @PostMapping("/updatePlateNumber") + public AjaxResult updatePlateNumber(@RequestBody MemberPlateNumberRelation relation) { + int i = memberPlateNumberRelationService.updatePlateNumber(relation); + logger.info("后管修改用户:{} 的车牌号:{}", relation.getMemberId(), relation.getLicensePlateNumber()); + return toAjax(i); + } - /** - * 删除会员绑定的车牌号信息 - */ - @PreAuthorize("@ss.hasPermi('member:info:remove')") - @Log(title = "会员绑定的车牌号信息", businessType = BusinessType.DELETE) - @PostMapping("/deletePlateNumber") - public AjaxResult deletePlateNumber(@RequestBody MemberPlateNumberRelation relation){ - int i = memberPlateNumberRelationService.unbindingPlateNumber(relation.getMemberId(), relation.getLicensePlateNumber()); - logger.info("后管解除绑定用户:{} 的车牌号:{}", relation.getMemberId(), relation.getLicensePlateNumber()); - return toAjax(i); - } + /** + * 删除会员绑定的车牌号信息 + */ + @PreAuthorize("@ss.hasPermi('member:info:remove')") + @Log(title = "会员绑定的车牌号信息", businessType = BusinessType.DELETE) + @PostMapping("/deletePlateNumber") + public AjaxResult deletePlateNumber(@RequestBody MemberPlateNumberRelation relation) { + int i = memberPlateNumberRelationService.unbindingPlateNumber(relation.getMemberId(), relation.getLicensePlateNumber()); + logger.info("后管解除绑定用户:{} 的车牌号:{}", relation.getMemberId(), relation.getLicensePlateNumber()); + return toAjax(i); + } - /** - * 修改平台测试员状态 - * - */ - public AjaxResult updatePlatformTester() { - AjaxResult result = new AjaxResult(); - return result; - } + /** + * 修改平台测试员状态 + * http://localhost:8080/member/info/updatePlatformTester + */ + @PostMapping("/updatePlatformTester") + public AjaxResult updatePlatformTester(@RequestBody PlatformTesterDTO dto) { + AjaxResult result; + try { + memberBasicInfoService.updatePlatformTester(dto); + result = AjaxResult.success(); + } catch (BusinessException e) { + logger.error("修改平台测试员状态error param:{}", JSON.toJSONString(dto), e); + result = AjaxResult.error(e.getMessage()); + } + return result; + } + + /** + * 查询平台测试员状态 + * http://localhost:8080/member/info/selectPlatformTesterStatus + */ + @PostMapping("/selectPlatformTesterStatus") + public AjaxResult selectPlatformTesterStatus(@RequestBody PlatformTesterDTO dto) { + AjaxResult result; + try { + PlatformTesterVO platformTesterVO = memberBasicInfoService.selectPlatformTesterStatus(dto); + result = AjaxResult.success(platformTesterVO); + } catch (BusinessException e) { + logger.error("查询平台测试员状态error param:{}", JSON.toJSONString(dto), e); + result = AjaxResult.error(e.getMessage()); + } + return result; + } } diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java index 058043cc4..6c829a447 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java @@ -6,10 +6,6 @@ package com.jsowell.common.constant; * @author jsowell */ public class CacheConstants { - /** - * - */ - public static final int cache_expire_time_1m = 60; @@ -23,6 +19,8 @@ public class CacheConstants { public static final int cache_expire_time_1d = 60 * 60 * 24; + public static final String PLATFORM_TESTER = "platform_tester:"; + public static final String GET_PILE_MODEL_INFO_BY_MODEL_ID = "get_pile_model_info_by_model_id:"; // 根据站点id查询充电桩列表 diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/PlatformTesterDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PlatformTesterDTO.java new file mode 100644 index 000000000..f544a7c0b --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/PlatformTesterDTO.java @@ -0,0 +1,21 @@ +package com.jsowell.pile.dto; + +import lombok.*; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class PlatformTesterDTO { + /** + * 会员id + */ + private String memberId; + + /** + * 平台测试员状态 + * 1-是;0-否 + */ + private String status; +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/IMemberBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/IMemberBasicInfoService.java index e1db5c2cc..62777eaf1 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/IMemberBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/IMemberBasicInfoService.java @@ -1,10 +1,11 @@ package com.jsowell.pile.service; import com.jsowell.pile.domain.MemberBasicInfo; -import com.jsowell.pile.dto.BindingCarNoDTO; +import com.jsowell.pile.dto.PlatformTesterDTO; import com.jsowell.pile.vo.uniapp.MemberVO; import com.jsowell.pile.vo.uniapp.MemberWalletLogVO; import com.jsowell.pile.vo.uniapp.PersonalPileInfoVO; +import com.jsowell.pile.vo.web.PlatformTesterVO; import com.jsowell.pile.vo.web.UpdateMemberBalanceDTO; import java.util.List; @@ -117,4 +118,7 @@ public interface IMemberBasicInfoService { */ List getMemberPersonPileInfo(String memberId); + void updatePlatformTester(PlatformTesterDTO dto); + + PlatformTesterVO selectPlatformTesterStatus(PlatformTesterDTO dto); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberBasicInfoServiceImpl.java index 3e6e9b538..30597d9fe 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberBasicInfoServiceImpl.java @@ -1,12 +1,16 @@ package com.jsowell.pile.service.impl; import com.google.common.collect.Lists; +import com.jsowell.common.constant.CacheConstants; +import com.jsowell.common.constant.Constants; +import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.util.DateUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.pile.domain.MemberBasicInfo; import com.jsowell.pile.domain.MemberPlateNumberRelation; import com.jsowell.pile.domain.MemberWalletInfo; import com.jsowell.pile.domain.MemberWalletLog; +import com.jsowell.pile.dto.PlatformTesterDTO; import com.jsowell.pile.mapper.MemberBasicInfoMapper; import com.jsowell.pile.mapper.MemberPlateNumberRelationMapper; import com.jsowell.pile.mapper.MemberWalletInfoMapper; @@ -16,6 +20,7 @@ import com.jsowell.pile.service.IPileBasicInfoService; import com.jsowell.pile.vo.uniapp.MemberVO; import com.jsowell.pile.vo.uniapp.MemberWalletLogVO; import com.jsowell.pile.vo.uniapp.PersonalPileInfoVO; +import com.jsowell.pile.vo.web.PlatformTesterVO; import com.jsowell.pile.vo.web.UpdateMemberBalanceDTO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; @@ -49,6 +54,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService { @Autowired private MemberPlateNumberRelationMapper memberPlateNumberRelationMapper; + + @Autowired + private RedisCache redisCache; /** * 查询会员基础信息 * @@ -282,5 +290,35 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService { return pileBasicInfoService.getPileInfoByMemberId(memberId); } + @Override + public void updatePlatformTester(PlatformTesterDTO dto) { + if (StringUtils.isBlank(dto.getMemberId()) || StringUtils.isBlank(dto.getStatus())) { + return; + } + + String redisKey = CacheConstants.PLATFORM_TESTER + dto.getMemberId(); + if (StringUtils.equals(dto.getStatus(), Constants.ONE)) { + // 放缓存 + redisCache.setCacheObject(redisKey, Constants.ONE); + } else { + // 清缓存 + redisCache.deleteObject(redisKey); + } + } + + @Override + public PlatformTesterVO selectPlatformTesterStatus(PlatformTesterDTO dto) { + PlatformTesterVO vo = new PlatformTesterVO(); + String redisKey = CacheConstants.PLATFORM_TESTER + dto.getMemberId(); + String status = redisCache.getCacheObject(redisKey); + if (StringUtils.isNotBlank(status)) { + vo.setStatus(status); + } else { + vo.setStatus(Constants.ZERO); + } + vo.setMemberId(dto.getMemberId()); + return vo; + } + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/PlatformTesterVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/PlatformTesterVO.java new file mode 100644 index 000000000..b0b4889b4 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/PlatformTesterVO.java @@ -0,0 +1,21 @@ +package com.jsowell.pile.vo.web; + +import lombok.*; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class PlatformTesterVO { + /** + * 会员id + */ + private String memberId; + + /** + * 平台测试员状态 + * 1-是;0-否 + */ + private String status; +}