.gitignore
@@ -15,4 +15,6 @@ target *.yaml *.yml *.log ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppCouponFallbackFactory.java
File was deleted ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java
New file @@ -0,0 +1,29 @@ package com.ruoyi.account.api.factory; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.AppUser; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FallbackFactory; /** * @author zhibing.pu * @Date 2024/11/21 9:52 */ @Slf4j public class AppUserClientFallbackFactory implements FallbackFactory<AppUserClient> { @Override public AppUserClient create(Throwable cause) { return new AppUserClient() { @Override public AppUser getAppUserById(Long id) { log.error("根据id获取用户失败:" + cause.getMessage()); throw new RuntimeException("根据id获取用户失败"); } }; } } ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
New file @@ -0,0 +1,25 @@ package com.ruoyi.account.api.feignClient; import com.ruoyi.account.api.factory.AppUserClientFallbackFactory; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.common.core.constant.ServiceNameConstants; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; /** * @author zhibing.pu * @Date 2024/11/21 9:50 */ @FeignClient(contextId = "AppUserClient", value = ServiceNameConstants.ACCOUNT_SERVICE, fallbackFactory = AppUserClientFallbackFactory.class) public interface AppUserClient { /** * 根据id获取用户 * @param id * @return */ @PostMapping("/appUser/getAppUserById") AppUser getAppUserById(@RequestParam("id") Long id); } ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java
New file @@ -0,0 +1,115 @@ package com.ruoyi.account.api.model; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; /** * 用户 * @author zhibing.pu * @Date 2024/11/21 9:25 */ @Data @TableName("t_app_user") public class AppUser { /** * 主键 */ @TableId(value = "id", type = IdType.NONE) private Long id; /** * 用户名 */ @TableField("name") private String name; /** * 手机号 */ @TableField("phone") private String phone; /** * 头像 */ @TableField("avatar") private String avatar; /** * 会员id */ @TableField("vip_id") private Integer vipId; /** * 微信openid */ @TableField("wx_openid") private String wxOpenid; /** * 状态(1=正常,2=冻结,3=注销) */ @TableField("status") private Integer status; /** * 添加时间 */ @TableField("create_time") private LocalDateTime createTime; /** * 删除(0=否,1=是) */ @TableField("del_flag") private Integer delFlag; /** * 0否1是第一次添加 */ @TableField("first_add") private Integer firstAdd; /** * 最后一次登录时间 */ @TableField("last_login_time") private LocalDateTime lastLoginTime; /** * 推广人id */ @TableField("invite_user_id") private Long inviteUserId; /** * 拥有门店id */ @TableField("shop_id") private Integer shopId; /** * 合伙人积分数 */ @TableField("part_point") private Integer partPoint; /** * 合伙人培育积分数 */ @TableField("part_grow_point") private Integer partGrowPoint; /** * 消费积分数 */ @TableField("shop_point") private Integer shopPoint; /** * 返佣积分数 */ @TableField("share_point") private Integer sharePoint; /** * 消费总金额 */ @TableField("shop_amount") private BigDecimal shopAmount; /** * 最后消费时间 */ @TableField("last_shop_time") private LocalDateTime lastShopTime; } ruoyi-api/ruoyi-api-account/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@ com.ruoyi.account.api.factory.AppUserClientFallbackFactory ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GenTable.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GenTableColumn.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/Region.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/SysDictData.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/SysDictType.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/SysNotice.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TActivity.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TAdvertising.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCompany.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TCoupon.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TEnterpriseUserApplication.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TEvaluationTag.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TGoods.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/THtml.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TInvoiceType.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TNotice.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TRoleSite.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TSystemConfiguration.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TUserSite.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TUserTag.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/AdvertisingDTO.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/GoodsDTO.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/NoticeQueryDto.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/SaveHtml.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/SaveIntegralDTO.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/TagListQueryDto.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/UnitListQueryDto.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/VipCouponDto.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/VipInfoDto.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/dto/WebSocketMsg.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/vo/CouponListVOVO.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/vo/TEvaluationTagVO.java
File was deleted ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
@@ -3,12 +3,9 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import com.ruoyi.chargingPile.api.feignClient.PartnerClient; import com.ruoyi.chargingPile.api.model.Partner; import com.ruoyi.system.api.domain.SysRole; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysUserClient; import io.seata.spring.annotation.GlobalTransactional; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; @@ -42,15 +39,11 @@ @Resource private SysUserClient userClient; @Resource private PartnerClient partnerClient; @PostMapping("login") @GlobalTransactional(rollbackFor = Exception.class)//分布式事务 public R<?> login(@RequestBody LoginBody form, HttpServletRequest request) { // 用户登录 LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword(), request); @@ -63,10 +56,6 @@ map.put("roleName",roles.get(0).getRoleName()); map.put("info", userInfo); if(userInfo.getSysUser().getRoleType() == 2){ Partner partner = partnerClient.getPartnerById(userInfo.getSysUser().getObjectId()).getData(); map.put("partnerName", partner.getName()); } // 修改用户最后登录时间 SysUser sysUser = new SysUser(); sysUser.setUserId(userInfo.getSysUser().getUserId()); ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/ServiceNameConstants.java
@@ -22,9 +22,6 @@ */ public static final String FILE_SERVICE = "ruoyi-file"; public static final String ACCOUNT_SERVICE = "ruoyi-account"; public static final String CHARGINGPILE_SERVICE = "ruoyi-chargingPile"; public static final String OTHER_SERVICE = "ruoyi-other"; public static final String ORDER_SERVICE = "ruoyi-order"; public static final String INTEGRATION_SERVICE = "ruoyi-integration"; public static final String PAYMENT_SERVICE = "ruoyi-payment"; } ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
@@ -1,25 +1,16 @@ package com.ruoyi.system.controller; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.stream.Collectors; import javax.annotation.Resource; import javax.management.relation.Role; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.page.BasePage; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.other.api.domain.TRoleSite; import com.ruoyi.other.api.feignClient.RoleSiteClient; import com.ruoyi.system.api.model.GetSysRoleByIds; import com.ruoyi.system.domain.SysMenus; import com.ruoyi.system.domain.SysRoleMenu; @@ -79,12 +70,6 @@ @Resource private SysMenuMapper menuMapper; @Resource private RoleSiteClient roleSiteClient; @Resource private SiteClient siteClient; @ApiOperation(value = "获取角色列表", tags = {"管理后台-系统用户管理"}) @GetMapping("/list") @@ -106,12 +91,6 @@ PageInfo<SysRole> page = roleService.page(pageInfo, wrapper.orderByDesc(SysRole::getCreateTime)); for (SysRole record : page.getRecords()) { List<Integer> data = roleSiteClient.getSiteIds(record.getRoleId()).getData(); List<Site> sites = siteClient.getSiteByIds(data).getData(); if (null != sites) { List<String> collect = sites.stream().map(Site::getName).collect(Collectors.toList()); record.setSiteNames(collect); } long count = sysUserRoleService.count(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getRoleId, record.getRoleId())); record.setNumber(count); } @@ -141,15 +120,6 @@ role.setCreateBy(SecurityUtils.getUsername()); role.setCreateTime(new Date()); roleService.insertRole(role); //添加站点权限 List<TRoleSite> roleSites = new ArrayList<>(); for (Integer siteId : dto.getSiteIds()) { TRoleSite roleSite = new TRoleSite(); roleSite.setRoleId(role.getRoleId().intValue()); roleSite.setSiteId(siteId); roleSites.add(roleSite); } roleSiteClient.addRoleSite(roleSites); return AjaxResult.success(); } @@ -186,13 +156,6 @@ } roleInfoVo.setMenus(menusId); roleInfoVo.setRemark(role.getRemark()); List<Integer> siteIds = roleSiteClient.getSiteIds(role.getRoleId()).getData(); if (null != siteIds && siteIds.size() > 0) { List<Site> sites = siteClient.getSiteByIds(siteIds).getData(); List<String> siteNames = sites.stream().map(Site::getName).collect(Collectors.toList()); roleInfoVo.setSiteNames(siteNames); roleInfoVo.setSiteIds(siteIds); } return AjaxResult.success(roleInfoVo); } @@ -236,19 +199,6 @@ sysRoleMenus.add(sysRoleMenu); } sysRoleMenuMapper.batchRoleMenu(sysRoleMenus); //删除旧站点数据 roleSiteClient.delRoleSite(dto.getRoleId()); //添加站点权限 List<TRoleSite> roleSites = new ArrayList<>(); if(null != dto.getSiteIds()){ for (Integer siteId : dto.getSiteIds()) { TRoleSite roleSite = new TRoleSite(); roleSite.setRoleId(role.getRoleId().intValue()); roleSite.setSiteId(siteId); roleSites.add(roleSite); } } roleSiteClient.addRoleSite(roleSites); return AjaxResult.success(); } ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -6,20 +6,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.other.api.domain.TUserSite; import com.ruoyi.other.api.feignClient.RoleSiteClient; import com.ruoyi.other.api.feignClient.UserSiteClient; import com.ruoyi.system.api.query.ChangeUserQuery; import com.ruoyi.system.api.model.*; import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.query.GetSysUserList; import com.ruoyi.system.query.ShopUserStart; import com.ruoyi.system.service.*; import io.seata.core.context.RootContext; import io.seata.spring.annotation.GlobalTransactional; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -72,15 +66,6 @@ @Resource private ISysUserRoleService sysUserRoleService; @Resource private UserSiteClient userSiteClient; @Resource private RoleSiteClient roleSiteClient; @Resource private SiteClient siteClient; @@ -132,14 +117,6 @@ sysUserRole.setUserId(user.getUserId()); userRoleService.insertSysUserRole(sysUserRole); List<Integer> siteIds = user.getSiteIds(); List<TUserSite> userSites = new ArrayList<>(); for (Integer siteId : siteIds) { TUserSite userSite = new TUserSite(); userSite.setUserId(user.getUserId().intValue()); userSite.setSiteId(siteId); userSites.add(userSite); } userSiteClient.addUserSite(userSites); return AjaxResult.success(); } @@ -153,18 +130,6 @@ return error("账号不可重复"); } return success(); } @GetMapping("/getRoleSiteName/{roleId}") @ApiOperation(value = "获取角色对应的站点名称", tags = {"管理后台-系统用户管理"}) public AjaxResult<List<String>> getRoleSiteName(@PathVariable Integer roleId){ List<Integer> ids = roleSiteClient.getSiteIds(roleId.longValue()).getData(); List<Site> data = siteClient.getSiteByIds(ids).getData(); if(null == data){ return AjaxResult.success(new ArrayList<>()); } List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); return AjaxResult.success(siteNames); } @@ -181,17 +146,6 @@ List<SysRole> roles = roleService.selectRoleAll(); ajax.put("roles", SysUser.isAdmin(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList())); ajax.put("posts", postService.selectPostAll()); if (StringUtils.isNotNull(userId)) { SysUser sysUser = userService.selectUserById(userId); List<Integer> siteIds = userSiteClient.getSiteIds(userId).getData(); sysUser.setSiteIds(siteIds); List<Site> data = siteClient.getSiteByIds(siteIds).getData(); List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); sysUser.setSiteNames(siteNames); ajax.put(AjaxResult.DATA_TAG, sysUser); ajax.put("postIds", postService.selectPostListByUserId(userId)); ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList())); } return AjaxResult.success(ajax); } @@ -243,18 +197,6 @@ user.setUpdateBy(SecurityUtils.getUsername()); user.setUpdateTime(new Date()); userService.updateUser(user); //删除旧的站点数据后添加新的 userSiteClient.delUserSite(user.getUserId()); List<Integer> siteIds = user.getSiteIds(); List<TUserSite> userSites = new ArrayList<>(); for (Integer siteId : siteIds) { TUserSite userSite = new TUserSite(); userSite.setUserId(user.getUserId().intValue()); userSite.setSiteId(siteId); userSites.add(userSite); } userSiteClient.addUserSite(userSites); return success(); } ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/filter/AuthFilter.java
@@ -2,17 +2,15 @@ import com.alibaba.fastjson.JSON; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.common.core.constant.TokenConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.service.ISysUserService; import org.apache.logging.log4j.core.config.Order; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; @@ -70,8 +68,8 @@ } //小程序用户 if ("applet".equals(userType)) { TAppUser appUser = appUserClient.getUserById(Long.valueOf(userid)).getData(); if(null == appUser || appUser.getDelFlag() || 3 == appUser.getStatus()){ AppUser appUser = appUserClient.getAppUserById(Long.valueOf(userid)); if(null == appUser || 1 == appUser.getDelFlag() || 3 == appUser.getStatus()){ log.error("[账户异常处理]请求账户id:{}", userid); unauthorizedResponse(response,"无效的账户"); return; ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -10,12 +10,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.feignClient.RoleSiteClient; import com.ruoyi.other.api.feignClient.UserSiteClient; import com.ruoyi.system.api.query.ChangeUserQuery; import com.ruoyi.system.domain.SysPost; import com.ruoyi.system.domain.SysUserPost; @@ -78,15 +74,6 @@ @Resource private ISysUserRoleService sysUserRoleService; @Resource private RoleSiteClient roleSiteClient; @Resource private UserSiteClient userSiteClient; @Resource private SiteClient siteClient; @Resource private ISysRoleService sysRoleService; @@ -528,35 +515,6 @@ @Override public PageInfo<SysUser> getList(PageInfo<SysUser> pageInfo, GetSysUserList getSysUserList) { List<SysUser> list = this.baseMapper.getList(pageInfo, getSysUserList); for (SysUser sysUser : list) { List<SysUserRole> list1 = sysUserRoleService.list(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, sysUser.getUserId())); List<Integer> data1 = userSiteClient.getSiteIds(sysUser.getUserId()).getData(); if (null == data1) { data1 = new ArrayList<>(); } for (SysUserRole sysUserRole : list1) { List<Integer> data = roleSiteClient.getSiteIds(sysUserRole.getRoleId()).getData(); if (null == data) { continue; } data1.addAll(data); } Set<Integer> siteIds = new HashSet<>(data1); List<Site> data = siteClient.getSiteByIds(siteIds.stream().collect(Collectors.toList())).getData(); if (null != data) { List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); sysUser.setSiteNames(siteNames); sysUser.setSiteIds(data.stream().map(Site::getId).collect(Collectors.toList())); } List<String> roleNames = new ArrayList<>(); for (SysUserRole sysUserRole : list1) { SysRole sysRole = sysRoleService.selectRoleById(sysUserRole.getRoleId()); roleNames.add(sysRole.getRoleName()); } Long[] roleIds = new Long[]{}; sysUser.setRoleIds(list1.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()).toArray(roleIds)); sysUser.setRoleNames(roleNames); } return pageInfo.setRecords(list); } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
New file @@ -0,0 +1,34 @@ package com.ruoyi.account.controller; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.service.IAppUserService; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; /** * @author zhibing.pu * @Date 2024/11/21 9:47 */ @RestController @RequestMapping("/appUser") public class AppUserController { @Resource private IAppUserService appUserService; /** * 根据id获取用户信息 * @param id * @return */ @PostMapping("/getAppUserById") public AppUser getAppUserById(@RequestParam("id") Long id){ return appUserService.getById(id); } } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java
@@ -1,8 +1,8 @@ package com.ruoyi.account.filter; import com.alibaba.fastjson.JSON; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.service.TAppUserService; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.service.IAppUserService; import com.ruoyi.common.core.constant.TokenConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; @@ -11,7 +11,6 @@ import org.apache.logging.log4j.core.config.Order; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; @@ -36,7 +35,7 @@ @Lazy @Resource // private TAppUserService appUserService; private IAppUserService appUserService; @Lazy @Resource @@ -74,8 +73,8 @@ } //小程序用户 if ("applet".equals(userType)) { TAppUser appUser = appUserService.getById(userid); if(null == appUser || appUser.getDelFlag() || 3 == appUser.getStatus()){ AppUser appUser = appUserService.getById(userid); if(null == appUser || appUser.getDelFlag() == 1 || 3 == appUser.getStatus()){ log.error("[账户异常处理]请求账户id:{}", userid); unauthorizedResponse(response,"无效的账户"); return; ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/mapper/AppUserMapper.java
New file @@ -0,0 +1,11 @@ package com.ruoyi.account.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.account.api.model.AppUser; /** * @author zhibing.pu * @Date 2024/11/21 9:46 */ public interface AppUserMapper extends BaseMapper<AppUser> { } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/IAppUserService.java
New file @@ -0,0 +1,11 @@ package com.ruoyi.account.service; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.account.api.model.AppUser; /** * @author zhibing.pu * @Date 2024/11/21 9:46 */ public interface IAppUserService extends IService<AppUser> { } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
New file @@ -0,0 +1,15 @@ package com.ruoyi.account.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.account.mapper.AppUserMapper; import com.ruoyi.account.service.IAppUserService; import org.springframework.stereotype.Service; /** * @author zhibing.pu * @Date 2024/11/21 9:46 */ @Service public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, AppUser> implements IAppUserService { } ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/filter/AuthFilter.java
@@ -2,7 +2,7 @@ import com.alibaba.fastjson.JSON; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.common.core.constant.TokenConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; @@ -11,7 +11,6 @@ import org.apache.logging.log4j.core.config.Order; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; @@ -69,8 +68,8 @@ } //小程序用户 if ("applet".equals(userType)) { TAppUser appUser = appUserClient.getUserById(Long.valueOf(userid)).getData(); if(null == appUser || appUser.getDelFlag() || 3 == appUser.getStatus()){ AppUser appUser = appUserClient.getAppUserById(Long.valueOf(userid)); if(null == appUser || appUser.getDelFlag() == 1 || 3 == appUser.getStatus()){ log.error("[账户异常处理]请求账户id:{}", userid); unauthorizedResponse(response,"无效的账户"); return; ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/vo/ChargingOrderListInfoVO.java
@@ -1,8 +1,6 @@ package com.ruoyi.order.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -81,8 +79,4 @@ private BigDecimal sharingAmount; @ApiModelProperty(value = "费用明细-手续费") private BigDecimal commissionAmount; @ApiModelProperty(value = "充电信息") List<UploadRealTimeMonitoringData> list; @ApiModelProperty(value = "费用明细-费用列表") List<TChargingOrderAccountingStrategy> list1; } ruoyi-service/ruoyi-order/src/test/java/com/ruoyi/order/RuoYiOrderApplicationTests.java
@@ -1,146 +1,12 @@ package com.ruoyi.order; import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.account.api.feignClient.*; import com.ruoyi.account.api.model.TAppUserCar; import com.ruoyi.chargingPile.api.feignClient.*; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.integration.api.feignClient.*; import com.ruoyi.integration.api.model.ChargingHandshake; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; import com.ruoyi.order.api.feignClient.AccountingStrategyDetailOrderClient; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy; import com.ruoyi.order.api.vo.AccountingStrategyDetailOrderVo; import com.ruoyi.order.api.vo.ChargingOrderInfoVO; import com.ruoyi.order.api.vo.TransactionRecordMessageVO; import com.ruoyi.order.dto.ChargingDetails; import com.ruoyi.order.dto.MyChargingOrderInfo; import com.ruoyi.order.mapper.TSettlementConfirmMapper; import com.ruoyi.order.service.*; import com.ruoyi.order.vo.EndOfChargePageInfo; import com.ruoyi.other.api.feignClient.IntegralRuleClient; import com.ruoyi.other.api.feignClient.UserTagClient; import com.ruoyi.other.api.feignClient.VipClient; import com.ruoyi.payment.api.feignClient.AliPaymentClient; import com.ruoyi.payment.api.feignClient.WxPaymentClient; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import javax.annotation.Resource; import java.io.PrintWriter; import java.math.BigDecimal; import java.util.*; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = RuoYiOrderApplication.class) public class RuoYiOrderApplicationTests { @Resource private TChargingOrderService chargingOrderService; @Resource private ChargingGunClient chargingGunClient; @Resource private TSettlementConfirmMapper tSettlementConfirmMapper; @Resource private SiteClient siteClient; @Resource private AppUserCarClient appUserCarClient; @Resource private AppUserClient appUserClient; @Resource private ChargingPileClient chargingPileClient; @Resource private TChargingOrderAccountingStrategyService chargingOrderAccountingStrategyService; @Resource private TokenService tokenService; @Resource private WxPaymentClient wxPaymentClient; @Resource private AliPaymentClient aliPaymentClient; @Resource private AppCouponClient appCouponClient; @Resource private AppUserVipDetailClient appUserVipDetailClient; @Resource private RedisService redisService; @Resource private UploadRealTimeMonitoringDataClient uploadRealTimeMonitoringDataClient; @Resource private ChargingHandshakeClient chargingHandshakeClient; @Resource private SendMessageClient sendMessageClient; @Resource private TOrderEvaluateService orderEvaluateService; @Resource private AccountingStrategyDetailClient accountingStrategyDetailClient; @Resource private AccountingStrategyDetailOrderClient accountingStrategyDetailOrderClient; @Resource private AccountingStrategyClient accountingStrategyClient; @Resource private PlatformStartChargingReplyClient platformStartChargingReplyClient; @Resource private TChargingOrderRefundService chargingOrderRefundService; @Resource private PlatformStopChargingReplyClient platformStopChargingReplyClient; @Resource private AccountingStrategyOrderService accountingStrategyOrderService; @Resource private AccountingStrategyDetailOrderService accountingStrategyDetailOrderService; @Resource private InviteUserClient inviteUserClient; @Resource private AppUserIntegralChangeClient appUserIntegralChangeClient; @Resource private IntegralRuleClient integralRuleClient; @Resource private VipClient vipClient; @Resource private UserTagClient userTagClient; @Resource private AppUserTagClient appUserTagClient; @Resource private SecurityDetectionClient securityDetectionClient; @Test public void test(){ MyChargingOrderInfo myChargingOrderInfo = chargingOrderService.getMyChargingOrderInfo("1852288949187297282"); } } ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/RuoYiOtherApplication.java
@@ -3,7 +3,6 @@ import com.ruoyi.common.security.annotation.EnableCustomConfig; import com.ruoyi.common.security.annotation.EnableRyFeignClients; import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2; import com.ruoyi.other.webSocket.NettyServer; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -26,7 +25,6 @@ public class RuoYiOtherApplication { public static void main(String[] args) { SpringApplication.run(RuoYiOtherApplication.class, args); new NettyServer().bind(); System.out.println("(♥◠‿◠)ノ゙ 基础模块启动成功 ლ(´ڡ`ლ)゙ \n" + " .-------. ____ __ \n" + " | _ _ \\ \\ \\ / / \n" + ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/filter/AuthFilter.java
@@ -2,7 +2,7 @@ import com.alibaba.fastjson.JSON; import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.account.api.model.AppUser; import com.ruoyi.common.core.constant.TokenConstants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.StringUtils; @@ -11,10 +11,8 @@ import org.apache.logging.log4j.core.config.Order; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.stereotype.Component; @@ -70,8 +68,8 @@ } //小程序用户 if ("applet".equals(userType)) { TAppUser appUser = appUserClient.getUserById(Long.valueOf(userid)).getData(); if(null == appUser || appUser.getDelFlag() || 3 == appUser.getStatus()){ AppUser appUser = appUserClient.getAppUserById(Long.valueOf(userid)); if(null == appUser || 1 == appUser.getDelFlag() || 3 == appUser.getStatus()){ log.error("[账户异常处理]请求账户id:{}", userid); unauthorizedResponse(response,"无效的账户"); return;