diff --git a/agileboot-admin/src/main/java/com/agileboot/admin/controller/shop/ShopController.java b/agileboot-admin/src/main/java/com/agileboot/admin/controller/shop/ShopController.java index 200b941..558dd6d 100644 --- a/agileboot-admin/src/main/java/com/agileboot/admin/controller/shop/ShopController.java +++ b/agileboot-admin/src/main/java/com/agileboot/admin/controller/shop/ShopController.java @@ -52,6 +52,7 @@ public class ShopController extends BaseController { StatsDTO statsDTO = new StatsDTO(); statsDTO.setShopCount(shopApplicationService.countAllRecord()); statsDTO.setGoodsCount(goodsApplicationService.countAllRecord()); + statsDTO.setGoodsTotalAmount(goodsApplicationService.calculateTotalAmount()); statsDTO.setOrderCount(orderApplicationService.countAllRecord()); statsDTO.setOrderAmountSum(orderApplicationService.sumTotalAmount()); statsDTO.setCabinetCount(smartCabinetApplicationService.countAllRecord()); diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/QyUserApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/QyUserApplicationService.java index 1e95dd5..3d0bdcb 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/QyUserApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/QyUserApplicationService.java @@ -15,6 +15,8 @@ import com.agileboot.domain.qywx.user.model.QyUserModelFactory; import com.agileboot.domain.qywx.user.query.SearchQyUserQuery; import com.agileboot.domain.qywx.userQySys.db.SysUserQyUserEntity; import com.agileboot.domain.qywx.userQySys.db.SysUserQyUserService; +import com.agileboot.domain.system.role.db.SysRoleEntity; +import com.agileboot.domain.system.role.db.SysRoleService; import com.agileboot.domain.system.user.db.SysUserEntity; import com.agileboot.domain.system.user.db.SysUserService; import com.agileboot.domain.system.user.dto.UserDTO; @@ -33,6 +35,7 @@ public class QyUserApplicationService { private final QyUserModelFactory qyUserModelFactory; private final SysUserQyUserService sysUserQyUserService; private final SysUserService sysUserService; + private final SysRoleService sysRoleService; public PageDTO getUserList(SearchQyUserQuery query) { Page page = userService.getUserList(query); @@ -48,7 +51,11 @@ public class QyUserApplicationService { SysUserQyUserEntity sysUserQyUser = sysUserQyUserService.getByQyUserId(id.intValue()); if (sysUserQyUser != null) { SysUserEntity sysUser = sysUserService.getById(sysUserQyUser.getSysUserId()); - dto.setSysUser(new UserDTO(sysUser)); + if (sysUser != null && sysUser.getRoleId()!= null) { + SysRoleEntity sysRole = sysRoleService.getById(sysUser.getRoleId()); + dto.setRoleId(sysUser.getRoleId()); + dto.setRoleName(sysRole.getRoleName()); + } } return dto; } @@ -67,6 +74,15 @@ public class QyUserApplicationService { UserModel model = qyUserModelFactory.loadById(command.getId()); model.loadUpdateCommand(command); model.updateById(); + + if (command.getRoleId() == null) { + return; + } + SysUserQyUserEntity sysUserQyUser = sysUserQyUserService.getByQyUserId(command.getId()); + if (sysUserQyUser != null) { + SysUserEntity sysUser = sysUserService.getById(sysUserQyUser.getSysUserId()); + sysUser.setRoleId(command.getRoleId() > 0 ? command.getRoleId() : null); + } } public void deleteUser(BulkOperationCommand command) { diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/command/UpdateQyUserCommand.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/command/UpdateQyUserCommand.java index beb5e32..38ce2ea 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/command/UpdateQyUserCommand.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/command/UpdateQyUserCommand.java @@ -12,4 +12,7 @@ public class UpdateQyUserCommand extends AddQyUserCommand { @NotNull @PositiveOrZero private Integer id; + + + private Long roleId; } \ No newline at end of file diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/dto/QyUserDTO.java b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/dto/QyUserDTO.java index 59dd690..c23d129 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/dto/QyUserDTO.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/qywx/user/dto/QyUserDTO.java @@ -34,9 +34,6 @@ public class QyUserDTO { } } - // 系统用户 - private UserDTO sysUser; - @ExcelColumn(name = "用户ID") private Integer id; @@ -108,4 +105,10 @@ public class QyUserDTO { @ExcelColumn(name = "用户余额") private BigDecimal balance; + + @ExcelColumn(name = "角色ID") + private Long roleId; + + @ExcelColumn(name = "角色名称") + private String roleName; } \ No newline at end of file diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/GoodsApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/GoodsApplicationService.java index fb0ec22..e1dfd06 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/GoodsApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/GoodsApplicationService.java @@ -13,6 +13,8 @@ import com.agileboot.domain.shop.goods.model.GoodsModel; import com.agileboot.domain.shop.goods.model.GoodsModelFactory; import com.agileboot.domain.shop.goods.query.SearchShopGoodsQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +import java.math.BigDecimal; import java.util.List; import java.util.stream.Collectors; import lombok.RequiredArgsConstructor; @@ -73,4 +75,8 @@ public class GoodsApplicationService { public Long countAllRecord() { return shopGoodsService.countAllRecord(); } + + public BigDecimal calculateTotalAmount() { + return shopGoodsService.calculateTotalAmount(); + } } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsMapper.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsMapper.java index d2b4356..7894ded 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsMapper.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsMapper.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +import java.math.BigDecimal; import java.util.List; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -94,4 +96,11 @@ public interface ShopGoodsMapper extends BaseMapper { @Select("SELECT COUNT(1) FROM shop_goods WHERE deleted = 0") Long countAllRecord(); + + /** + * 计算所有未删除商品的总金额(price * stock) + * @return 商品总金额 + */ + @Select("SELECT SUM(price * stock) FROM shop_goods WHERE deleted = 0") + BigDecimal calculateTotalAmount(); } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsService.java index fb55b90..2c8dad3 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsService.java @@ -4,6 +4,7 @@ import com.agileboot.common.core.page.AbstractPageQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import java.math.BigDecimal; import java.util.List; /** @@ -24,4 +25,6 @@ public interface ShopGoodsService extends IService { SearchGoodsDO getGoodsInfo(Long goodsId); Long countAllRecord(); + + BigDecimal calculateTotalAmount(); } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsServiceImpl.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsServiceImpl.java index 7edad8d..37f03e7 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsServiceImpl.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/goods/db/ShopGoodsServiceImpl.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; + +import java.math.BigDecimal; import java.util.List; /** @@ -50,4 +52,9 @@ public class ShopGoodsServiceImpl extends ServiceImpl