diff --git a/db/800pjcloudx_wallet.sql b/db/800pjcloudx_wallet.sql index 094f0b09b..cf66be4da 100644 --- a/db/800pjcloudx_wallet.sql +++ b/db/800pjcloudx_wallet.sql @@ -164,9 +164,10 @@ CREATE INDEX idx_dept_id ON wallet_transaction (wallet_id); DROP TABLE IF EXISTS sys_user_face; CREATE TABLE `sys_user_face` ( - id bigint AUTO_INCREMENT NOT NULL COMMENT '编号', - user_id bigint NOT NULL COMMENT '用户ID', - face_img varchar(256) NOT NULL COMMENT '人脸图片', + id bigint NOT NULL COMMENT '编号', + auto_code varchar(1024) DEFAULT NULL COMMENT '自增code', + user_id bigint NOT NULL COMMENT '用户ID', + face_img varchar(256) NOT NULL COMMENT '人脸图片', create_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', create_time datetime DEFAULT NULL COMMENT '创建时间', update_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人', diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/android/HardAdUserVo.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/android/HardAdUserVo.java new file mode 100644 index 000000000..067b83b09 --- /dev/null +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/android/HardAdUserVo.java @@ -0,0 +1,47 @@ +package com.bsd.pjcloud.hard.api.vo.android; + +import lombok.Data; + +@Data +public class HardAdUserVo { + /** + * 用户ID + */ + private Long userId; + /** + * 用户名 + */ + private String username; + /** + * 手机号码 + */ + private String userMobile; + /** + * 用户头像 + */ + private String userAvatar; + /** + * 部门ID + */ + private Long deptId; + /** + * 钱包卡号 + */ + private String walletCardNumber; + /** + * 钱包id + */ + private Long walletId; + /** + * 钱包类型id + */ + private Long walletTypeId; + /** + * 钱包余额 + */ + private Integer walletBalance; + /** + * 是否冻结饭卡 + */ + private Boolean walletIsFreeze; +} diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardCarVo.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardCarVo.java index df93cb7b8..56925463a 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardCarVo.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardCarVo.java @@ -6,7 +6,13 @@ import lombok.Data; @Data public class HardCarVo extends HardCarEntity { - // 商品id【超市的商品存的是 sku id】 + // 商品id【超市特有】 private Long spuId; + // 商品规格【超市特有】 + private String spec; + + // 商品规格【超市特有】 + private String unit; + } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java index 900ec7cc0..2fc4ec9f4 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java @@ -1,14 +1,17 @@ package com.bsd.pjcloud.hard.controller.hard; +import cn.hutool.core.util.ObjectUtil; import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.idempotent.annotation.Idempotent; +import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; import com.bsd.pjcloud.hard.api.dto.async.SyncOfflineReqVo; import com.bsd.pjcloud.hard.api.dto.hard.HandCancelCodeDto; import com.bsd.pjcloud.hard.api.dto.hard.HardBindDto; import com.bsd.pjcloud.hard.api.dto.hard.HardCreateOrderDto; import com.bsd.pjcloud.hard.api.vo.HardInvoiceVo; import com.bsd.pjcloud.hard.api.vo.HardManagerVo; +import com.bsd.pjcloud.hard.api.vo.android.HardAdUserVo; import com.bsd.pjcloud.hard.api.vo.order.HardCarVo; import com.bsd.pjcloud.hard.api.vo.order.HardOrderVo; import com.bsd.pjcloud.hard.service.*; @@ -24,7 +27,7 @@ import java.util.List; @RestController @RequiredArgsConstructor -@RequestMapping("/hard-api") +@RequestMapping("/hard-api/ad") @Tag(description = "hard-api", name = "硬件") @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class HardApiController { @@ -34,6 +37,7 @@ public class HardApiController { private final HardCarService hardCarService; private final HardOrderService hardwareOrderService; private final HardOrderSyncService hardOrderSyncService; + private final HardApiService hardApiService; @PostMapping("/bind") @Operation(summary = "绑定服务端设备") @@ -93,4 +97,13 @@ public class HardApiController { return R.ok(hardOrderSyncService.syncOfflineOrder(dto)); } + @GetMapping("/get-user") + @Operation(summary = "获取用户和钱包") + public R getUserById(@RequestParam Long id, @RequestParam(required = false) HardTypeEnum type) { + if (ObjectUtil.isEmpty(type)) { + type = HardTypeEnum.CANTEEN; + } + return R.ok(hardApiService.getUserById(id, type)); + } + } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardApiService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardApiService.java new file mode 100644 index 000000000..18a249c79 --- /dev/null +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardApiService.java @@ -0,0 +1,13 @@ +package com.bsd.pjcloud.hard.service; + +import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; +import com.bsd.pjcloud.hard.api.vo.android.HardAdUserVo; +import jakarta.validation.Valid; + +import java.util.List; + +public interface HardApiService { + + HardAdUserVo getUserById(Long userId, HardTypeEnum type); + +} diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardApiServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardApiServiceImpl.java new file mode 100644 index 000000000..e1f194de0 --- /dev/null +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardApiServiceImpl.java @@ -0,0 +1,50 @@ +package com.bsd.pjcloud.hard.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import com.bsd.pjcloud.admin.api.dto.UserInfo; +import com.bsd.pjcloud.admin.api.entity.SysUser; +import com.bsd.pjcloud.admin.api.feign.RemoteUserService; +import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; +import com.bsd.pjcloud.hard.api.vo.android.HardAdUserVo; +import com.bsd.pjcloud.hard.service.HardApiService; +import com.bsd.pjcloud.wallet.api.constant.WalletTypeEnum; +import com.bsd.pjcloud.wallet.api.entity.WalletManageEntity; +import com.bsd.pjcloud.wallet.api.feign.RemoteWalletService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +@Validated +@Slf4j +@RequiredArgsConstructor +@Service +public class HardApiServiceImpl implements HardApiService { + + private final RemoteUserService userService; + private final RemoteWalletService remoteWalletService; + + @Override + public HardAdUserVo getUserById(Long userId, HardTypeEnum type) { + HardAdUserVo result = new HardAdUserVo(); + // 查询用户 + UserInfo user = userService.getByUserId(userId).getData(); + if (ObjectUtil.isEmpty(user)) return null; + // 查询钱包 + WalletTypeEnum walletType = ObjectUtil.equals(HardTypeEnum.CANTEEN, type) ? WalletTypeEnum.EAT : WalletTypeEnum.PAY; + WalletManageEntity wallet = remoteWalletService.getWallet(userId, walletType).getData(); + if (ObjectUtil.isEmpty(wallet)) return null; + SysUser sysUser = user.getSysUser(); + result.setUserId(sysUser.getUserId()); + result.setUsername(sysUser.getUsername()); + result.setUserAvatar(sysUser.getAvatar()); + result.setUserMobile(sysUser.getPhone()); + result.setDeptId(sysUser.getDeptId()); + result.setWalletCardNumber(wallet.getCardNumber()); + result.setWalletId(wallet.getId()); + result.setWalletTypeId(wallet.getWalletTypeId()); + result.setWalletBalance(wallet.getBalance()); + result.setWalletIsFreeze(wallet.getIsFreeze()); + return result; + } +} diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardCarServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardCarServiceImpl.java index a66260608..858e0d373 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardCarServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardCarServiceImpl.java @@ -23,6 +23,7 @@ import com.bsd.pjcloud.hard.mapper.order.HardParentCarMapper; import com.bsd.pjcloud.hard.service.HardCarService; import com.bsd.pjcloud.supermarket.api.feign.RemoteSupermarketUnitSkuService; import com.bsd.pjcloud.supermarket.vo.SupermarketUnitWithSpuVo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -74,6 +75,8 @@ public class HardCarServiceImpl extends ServiceImpl ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { v.setSpuId(spu.getSpuId()); + v.setSpec(spu.getSpec()); + v.setUnit(spu.getUnit()); }); } } @@ -141,7 +144,8 @@ public class HardCarServiceImpl extends ServiceImpl supList = supermarketUnitSkuService.getSupermarketUnits(productIds).getData(); for (HardCreateCarDto v : list) { supList.stream().filter(i -> ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { - int itemTotalPrice = v.getProductCount() * spu.getPromotionPrice(); + Integer price = getSupermarket(spu); + int itemTotalPrice = v.getProductCount() * price; supermarketTotalPrice.addAndGet(itemTotalPrice); }); } @@ -192,10 +196,11 @@ public class HardCarServiceImpl extends ServiceImpl ObjectUtil.equals(i.getId(), v.getProductId())).findFirst().ifPresent(spu -> { - int totalPrice = v.getProductCount() * spu.getPromotionPrice(); + Integer price = getSupermarket(spu); + int totalPrice = v.getProductCount() * price; item.setProductId(spu.getId()); item.setProductName(spu.getProductName()); - item.setProductPrice(spu.getPromotionPrice()); + item.setProductPrice(price); item.setProductPic(spu.getPicUrl()); item.setTotalPrice((long) totalPrice); item.setProductCount(v.getProductCount()); @@ -241,6 +246,17 @@ public class HardCarServiceImpl extends ServiceImpl userIds; + } diff --git a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysUserFaceEntity.java b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysUserFaceEntity.java index cdb9c62dd..9224f8019 100644 --- a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysUserFaceEntity.java +++ b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysUserFaceEntity.java @@ -29,6 +29,12 @@ public class SysUserFaceEntity extends Model { @Schema(description="编号") private Long id; + /** + * 自增code + */ + @Schema(description="自增code") + private String autoCode; + /** * 用户ID */ diff --git a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SysUserFaceVo.java b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SysUserFaceVo.java index a40ff55bb..f0344f8c0 100644 --- a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SysUserFaceVo.java +++ b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/vo/SysUserFaceVo.java @@ -1,11 +1,26 @@ package com.bsd.pjcloud.admin.api.vo; import com.bsd.pjcloud.admin.api.entity.SysUserFaceEntity; +import com.bsd.pjcloud.admin.api.vo.base.BaseDeptInterface; +import com.bsd.pjcloud.admin.api.vo.base.BaseUserInterface; import lombok.Data; @Data -public class SysUserFaceVo extends SysUserFaceEntity { +public class SysUserFaceVo extends SysUserFaceEntity implements BaseUserInterface, BaseDeptInterface { + /** + * 用户相关 + */ private String username; + private String userMobile; + + private String userAvatar; + + /** + * 部门相关 + */ + private Long deptId; + + private String deptName; } diff --git a/pjcloud-upms/pjcloud-upms-biz/pom.xml b/pjcloud-upms/pjcloud-upms-biz/pom.xml index 891c54655..4a0004959 100644 --- a/pjcloud-upms/pjcloud-upms-biz/pom.xml +++ b/pjcloud-upms/pjcloud-upms-biz/pom.xml @@ -195,6 +195,10 @@ 5.7.0 compile + + com.bsd + pjcloud-common-idempotent + diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserFaceController.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserFaceController.java index 7a113fc65..447815e02 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserFaceController.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysUserFaceController.java @@ -10,10 +10,10 @@ import com.bsd.pjcloud.admin.api.entity.SysUserFaceEntity; import com.bsd.pjcloud.admin.api.vo.SysUserFaceVo; import com.bsd.pjcloud.admin.service.SysUserFaceService; import com.bsd.pjcloud.common.core.util.R; +import com.bsd.pjcloud.common.idempotent.annotation.Idempotent; import com.bsd.pjcloud.common.log.annotation.SysLog; import com.bsd.pjcloud.common.security.service.PjcloudUser; import com.bsd.pjcloud.common.security.util.SecurityUtils; -import org.springframework.security.access.prepost.PreAuthorize; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import org.springdoc.core.annotations.ParameterObject; @@ -24,7 +24,6 @@ import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.Objects; /** * 人脸样本表 @@ -47,7 +46,7 @@ public class SysUserFaceController { public R> appPageJoin(@ParameterObject Page page, @ParameterObject SysUserFaceDto dto) { PjcloudUser user = SecurityUtils.getUser(); dto.setUserId(user.getId()); - return R.ok(sysUserFaceService.pageJoin(page, dto)); + return R.ok(sysUserFaceService.scopePageList(page, dto)); } @Operation(summary = "app查询人脸详情", description = "app查询人脸详情") @@ -59,6 +58,7 @@ public class SysUserFaceController { @Operation(summary = "新增人脸样本表", description = "新增人脸样本表") @SysLog("app新增人脸样本表") @PostMapping("/app") + @Idempotent(expireTime = 10, info = "正在处理中,请勿重复操作") public R appSave(@RequestBody SysUserFaceEntity dto) { PjcloudUser user = SecurityUtils.getUser(); dto.setUserId(user.getId()); @@ -82,6 +82,16 @@ public class SysUserFaceController { } /* ************************************* end app end ************************************* */ + /* ************************************* start android start ************************************* */ + @Operation(summary = "android查询人脸数据库", description = "android查询人脸数据库") + @GetMapping("/ad/find-face") + public R adFinFace(@ParameterObject Page page, @RequestParam(required = false) Long userId) { + SysUserFaceDto dto = new SysUserFaceDto(); + dto.setUserId(userId); + return R.ok(sysUserFaceService.pageJoin(page, dto).getRecords()); + } + /* ************************************* start android start ************************************* */ + @Operation(summary = "分页查询", description = "分页查询") @GetMapping("/page") // @PreAuthorize("@pms.hasPermission('userFace_sysUserFace_view')") @@ -108,6 +118,7 @@ public class SysUserFaceController { @SysLog("新增人脸样本表") @PostMapping // @PreAuthorize("@pms.hasPermission('userFace_sysUserFace_add')") + @Idempotent(expireTime = 10, info = "正在处理中,请勿重复操作") public R save(@RequestBody SysUserFaceEntity sysUserFace) { return R.ok(sysUserFaceService.create(sysUserFace)); } diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/mapper/SysUserFaceMapper.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/mapper/SysUserFaceMapper.java index f343f0d10..66de5bb86 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/mapper/SysUserFaceMapper.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/mapper/SysUserFaceMapper.java @@ -1,26 +1,27 @@ package com.bsd.pjcloud.admin.mapper; -import com.baomidou.mybatisplus.core.metadata.IPage; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bsd.pjcloud.admin.api.dto.SysUserFaceDto; +import com.bsd.pjcloud.admin.api.entity.SysDept; import com.bsd.pjcloud.admin.api.entity.SysUser; import com.bsd.pjcloud.admin.api.entity.SysUserFaceEntity; import com.bsd.pjcloud.admin.api.vo.SysUserFaceVo; +import com.bsd.pjcloud.common.core.util.BeanUtils; +import com.bsd.pjcloud.common.data.datascope.DataScope; import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper; +import com.github.yulichang.query.MPJLambdaQueryWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; @Mapper public interface SysUserFaceMapper extends PjcloudBaseMapper { - default Page pageJoin(Page page, SysUserFaceDto dto) { - MPJLambdaWrapper wrapper = new MPJLambdaWrapper() - .selectAll(SysUserFaceEntity.class) - .selectAs(SysUser::getName, SysUserFaceVo::getUsername) - .leftJoin(SysUser.class, SysUser::getUserId, SysUserFaceEntity::getUserId) - .eqIfExists(SysUserFaceEntity::getUserId, dto.getUserId()); - return selectJoinPage(page, SysUserFaceVo.class, wrapper); - } + Page scopePageList(Page page, @Param("pa") SysUserFaceDto dto, DataScope dataScope); + + Long selectAllCount(); default SysUserFaceVo join(Long id) { MPJLambdaWrapper wrapper = new MPJLambdaWrapper() @@ -30,4 +31,19 @@ public interface SysUserFaceMapper extends PjcloudBaseMapper .eq(SysUserFaceEntity::getId, id); return selectJoinOne(SysUserFaceVo.class, wrapper); } + + default Page pageJoin(Page page, SysUserFaceDto dto) { + MPJLambdaWrapper wrapper = new MPJLambdaWrapper() + .selectAll(SysUserFaceEntity.class) + .selectAs(SysUser::getName, SysUserFaceVo::getUsername) + .selectAs(SysUser::getAvatar, SysUserFaceVo::getUserAvatar) + .selectAs(SysUser::getPhone, SysUserFaceVo::getUserMobile) + .selectAs(SysDept::getName, SysUserFaceVo::getDeptName) + .selectAs(SysDept::getDeptId, SysUserFaceVo::getDeptId) + .leftJoin(SysUser.class, SysUser::getUserId, SysUserFaceEntity::getUserId) + .leftJoin(SysDept.class, SysDept::getDeptId, SysUser::getDeptId) + .eq(ObjectUtil.isNotEmpty(dto.getUserId()), SysUserFaceEntity::getUserId, dto.getUserId()) + .in(ObjectUtil.isNotEmpty(dto.getUserIds()), SysUserFaceEntity::getUserId, dto.getUserIds()); + return selectJoinPage(page, SysUserFaceVo.class, wrapper); + } } \ No newline at end of file diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserFaceService.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserFaceService.java index b952fb440..1f74c9001 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserFaceService.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysUserFaceService.java @@ -1,6 +1,5 @@ package com.bsd.pjcloud.admin.service; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.bsd.pjcloud.admin.api.dto.SysUserFaceDto; @@ -11,13 +10,14 @@ import java.util.ArrayList; public interface SysUserFaceService extends IService { - Long create(SysUserFaceEntity sysUserFace); void edit(SysUserFaceEntity sysUserFace); void delByIds(ArrayList list); + Page scopePageList(Page page, SysUserFaceDto dto); + Page pageJoin(Page page, SysUserFaceDto dto); SysUserFaceVo join(Long id); diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserFaceServiceImpl.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserFaceServiceImpl.java index 8d5782756..460ab5818 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserFaceServiceImpl.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserFaceServiceImpl.java @@ -1,19 +1,28 @@ package com.bsd.pjcloud.admin.service.impl; import cn.hutool.core.util.ObjectUtil; -import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.bsd.pjcloud.admin.api.dto.SysUserFaceDto; +import com.bsd.pjcloud.admin.api.entity.SysUser; import com.bsd.pjcloud.admin.api.entity.SysUserFaceEntity; +import com.bsd.pjcloud.admin.api.utils.DataUtil; import com.bsd.pjcloud.admin.api.vo.SysUserFaceVo; import com.bsd.pjcloud.admin.mapper.SysUserFaceMapper; import com.bsd.pjcloud.admin.service.SysUserFaceService; +import com.bsd.pjcloud.admin.service.SysUserService; +import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum; import com.bsd.pjcloud.common.core.exception.CheckedException; +import com.bsd.pjcloud.common.core.util.CollectionUtils; +import com.bsd.pjcloud.common.data.datascope.DataScope; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; import java.util.ArrayList; -import java.util.Collection; +import java.util.List; /** * 人脸样本表 @@ -21,14 +30,24 @@ import java.util.Collection; * @author pjcloud * @date 2024-12-31 11:20:04 */ +@Validated +@Slf4j +@RequiredArgsConstructor @Service public class SysUserFaceServiceImpl extends ServiceImpl implements SysUserFaceService { + private final SysUserService sysUserService; + @Override public Long create(SysUserFaceEntity sysUserFace) { // 插入 baseMapper.insert(sysUserFace); - + // 自增code + Long count = baseMapper.selectAllCount(); + SysUserFaceEntity updateObj = new SysUserFaceEntity(); + updateObj.setId(sysUserFace.getId()); + updateObj.setAutoCode(String.valueOf(count)); + baseMapper.updateById(updateObj); return sysUserFace.getId(); } @@ -50,6 +69,11 @@ public class SysUserFaceServiceImpl extends ServiceImpl scopePageList(Page page, SysUserFaceDto dto) { + return baseMapper.scopePageList(page, dto, DataScope.of()); + } + @Override public Page pageJoin(Page page, SysUserFaceDto dto) { return baseMapper.pageJoin(page, dto); diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/resources/mapper/SysUserFaceMapper.xml b/pjcloud-upms/pjcloud-upms-biz/src/main/resources/mapper/SysUserFaceMapper.xml index 3b3e8af33..98a12f845 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/resources/mapper/SysUserFaceMapper.xml +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/resources/mapper/SysUserFaceMapper.xml @@ -2,8 +2,7 @@ - - + @@ -13,5 +12,38 @@ - + + + + select a.user_id, + a.face_img, + a.create_by, + a.create_time, + a.update_time, + a.del_flag, + a.tenant_id, + + + + a.del_flag = '0' + + and a.user_id = #{pa.userId} + + + + + + \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletSettingController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletSettingController.java index 2aed7a84a..b12deaceb 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletSettingController.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletSettingController.java @@ -43,6 +43,13 @@ public class WalletSettingController { } /* ************************************* end app end ************************************* */ + /* ************************************* start android start ************************************* */ + @GetMapping("/ad/get-setting") + public R androidGet() { + return R.ok(walletSettingService.getSetting()); + } + /* ************************************* end android end ************************************* */ + @Operation(summary = "获取支付配置", description = "获取支付配置") @GetMapping("") public R getSetting() {