From d7e5ffa191b23610b4e6526c399a1eefb6c18e47 Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Fri, 28 Feb 2025 18:02:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E5=8F=8A=E7=94=9F=E7=89=A9=E8=AF=86=E5=88=AB=E7=89=B9?= =?UTF-8?q?=E5=BE=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/common/base/BaseController.java | 23 +++ .../business/CustInfoBurialPointBusiness.java | 5 + .../controller/CustInfoController.java | 23 ++- .../core/customer/dto/CustPageParam.java | 34 ++++ .../core/customer/mapper/CustInfoMapper.java | 9 + .../customer/service/CustInfoService.java | 2 + .../service/impl/CustInfoServiceImpl.java | 45 ++++- .../mapper/customer/CustInfoMapper.xml | 158 ++++++++++++++++++ 8 files changed, 291 insertions(+), 8 deletions(-) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/dto/CustPageParam.java diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/common/base/BaseController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/common/base/BaseController.java index 82091291..4c58f07c 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/common/base/BaseController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/common/base/BaseController.java @@ -2,9 +2,11 @@ package com.bonus.core.common.base; import cn.hutool.core.text.CharSequenceUtil; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.bonus.common.core.web.page.TableDataInfo; import com.bonus.core.common.converter.GsonLocalDateAdapter; import com.bonus.core.common.converter.GsonLocalDateTimeAdapter; import com.bonus.core.common.utils.HeaderFetchUtil; +import com.github.pagehelper.PageInfo; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import org.slf4j.Logger; @@ -13,6 +15,7 @@ import org.slf4j.LoggerFactory; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.Iterator; +import java.util.List; import java.util.Map; public class BaseController { @@ -84,4 +87,24 @@ public class BaseController { String value = HeaderFetchUtil.getValueFromHeadersIgnoreCase(headers, "applet-type"); return CharSequenceUtil.isNotBlank(value) ? Integer.valueOf(value) : null; } + + protected TableDataInfo getDataTable(List list) { + TableDataInfo rspData = new TableDataInfo(); + rspData.setCode(200); + rspData.setRows(list); + rspData.setMsg("查询成功"); + rspData.setTotal((new PageInfo(list)).getTotal()); + return rspData; + } + + protected TableDataInfo getDataTableError(List list) { + TableDataInfo rspData = new TableDataInfo(); + rspData.setCode(500); + rspData.setRows(list); + rspData.setMsg("系统错误,请联系管理员"); + rspData.setTotal((new PageInfo(list)).getTotal()); + return rspData; + } + + } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/business/CustInfoBurialPointBusiness.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/business/CustInfoBurialPointBusiness.java index 30840d4c..952ea27b 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/business/CustInfoBurialPointBusiness.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/business/CustInfoBurialPointBusiness.java @@ -3,6 +3,8 @@ package com.bonus.core.customer.business; import cn.hutool.core.collection.CollUtil; import com.bonus.core.common.constant.LeMqConstant; import com.bonus.core.customer.dto.CustInfoModel; +import com.bonus.core.customer.dto.CustInfoParam; +import com.bonus.core.customer.vo.PageCustInfoPhotoVO; import org.springframework.stereotype.Service; import java.util.List; @@ -24,4 +26,7 @@ public class CustInfoBurialPointBusiness implements CustomBusiness { public void didNotifyOtherModules(Long custId, LeMqConstant.DataChangeType dataChangeType) { } + + public void willQueryCustInfoByPage(CustInfoParam infoParam, List result) { + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/controller/CustInfoController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/controller/CustInfoController.java index bf22d801..31976334 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/controller/CustInfoController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/controller/CustInfoController.java @@ -1,24 +1,24 @@ package com.bonus.core.customer.controller; +import com.bonus.common.core.web.page.TableDataInfo; import com.bonus.core.common.base.BaseController; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.constant.SourceTypeEnum; -import com.bonus.core.customer.dto.CustBindMobileDTO; -import com.bonus.core.customer.dto.CustQueryDTO; +import com.bonus.core.customer.dto.*; import com.bonus.core.customer.model.CustInfo; import com.bonus.core.customer.vo.CustInfoVo; +import com.bonus.core.customer.vo.PageCustInfoPhotoVO; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import com.bonus.core.customer.dto.CustChangePasswordDTO; -import com.bonus.core.customer.dto.CustForgetPasswordDTO; import com.bonus.core.customer.service.CustInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; - +import java.util.List; import java.util.Map; import java.util.Objects; +import static com.bonus.common.core.utils.PageUtils.startPage; import static com.bonus.common.core.web.domain.AjaxResult.success; import static com.bonus.core.common.encrypt.SM4EncryptUtils.sm4Decrypt; @@ -30,6 +30,19 @@ public class CustInfoController extends BaseController { @Autowired CustInfoService custInfoService; + @ApiOperation("分页查询人员及生物识别特征") + @GetMapping({"/pageCustInfoPhoto"}) + public TableDataInfo pageCustInfoPhoto(@RequestBody CustInfoParam dto) { + try { + startPage(); + List list = this.custInfoService.pageCustInfoPhoto(dto); + return getDataTable(list); + } catch (Exception e) { + log.error(e.toString(), e); + return getDataTable(null); + } + } + @ApiOperation("小程序修改密码") @PostMapping({"/change/password"}) public AjaxResult changePassword(@Validated @RequestBody CustChangePasswordDTO content) { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/dto/CustPageParam.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/dto/CustPageParam.java new file mode 100644 index 00000000..d6521463 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/dto/CustPageParam.java @@ -0,0 +1,34 @@ +package com.bonus.core.customer.dto; + +import com.bonus.core.common.page.PageDTO; +import java.util.List; + +public class CustPageParam { + private PageDTO page; + private CustInfoParam custInfoParam; + private List exportCols; + + public PageDTO getPage() { + return this.page; + } + + public CustInfoParam getCustInfoParam() { + return this.custInfoParam; + } + + public List getExportCols() { + return this.exportCols; + } + + public void setPage(final PageDTO page) { + this.page = page; + } + + public void setCustInfoParam(final CustInfoParam custInfoParam) { + this.custInfoParam = custInfoParam; + } + + public void setExportCols(final List exportCols) { + this.exportCols = exportCols; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/mapper/CustInfoMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/mapper/CustInfoMapper.java index e63245d4..997f00dc 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/mapper/CustInfoMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/mapper/CustInfoMapper.java @@ -1,12 +1,16 @@ package com.bonus.core.customer.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bonus.core.autth.config.LeNiuDataPermission; +import com.bonus.core.autth.enums.DataPermissionTypeEnum; import com.bonus.core.customer.dto.CustInfoDTO; +import com.bonus.core.customer.dto.CustInfoParam; import com.bonus.core.customer.dto.CustPayDTO; import com.bonus.core.customer.model.CustInfo; import com.bonus.core.customer.vo.CustInfoForRechargeVO; import com.bonus.core.customer.vo.CustInfoVo; import com.bonus.core.customer.vo.CustPayVO; +import com.bonus.core.customer.vo.PageCustInfoPhotoVO; import com.bonus.core.order.vo.MacOrdCurrWriteOffVO; import com.bonus.domain.CustCasual; import org.apache.ibatis.annotations.Mapper; @@ -18,6 +22,11 @@ import java.util.List; @Mapper public interface CustInfoMapper extends BaseMapper { + @LeNiuDataPermission( + alias = "ci", + permissionType = DataPermissionTypeEnum.PERMISSION_ORG + ) + List pageCustInfoPhoto(@Param("infoParam") CustInfoParam infoParam); CustInfo selectOne(CustInfo custInfo); int updateById(CustInfo custInfo); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/CustInfoService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/CustInfoService.java index eba5759d..6acfb583 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/CustInfoService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/CustInfoService.java @@ -18,6 +18,8 @@ import java.util.*; public interface CustInfoService extends IService { + List pageCustInfoPhoto(CustInfoParam infoParam); + CustInfoVo queryCustInfoDetail(CustInfo custInfo, Integer sourceType); AjaxResult custChangePassword(CustChangePasswordDTO content); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/impl/CustInfoServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/impl/CustInfoServiceImpl.java index 5622bb26..8e15e80b 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/impl/CustInfoServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/core/customer/service/impl/CustInfoServiceImpl.java @@ -25,9 +25,7 @@ import com.bonus.core.common.encrypt.SM4EncryptUtils; import com.bonus.core.common.utils.LogUtil; import com.bonus.core.customer.api.CustCasualApi; import com.bonus.core.customer.business.CustInfoBurialPointBusiness; -import com.bonus.core.customer.constants.CustAgeEnum; -import com.bonus.core.customer.constants.CustConstant; -import com.bonus.core.customer.constants.PersonalStatusEnum; +import com.bonus.core.customer.constants.*; import com.bonus.core.customer.dto.*; import com.bonus.core.customer.mapper.CustInfoMapper; import com.bonus.core.customer.model.CustAccTemp; @@ -43,6 +41,7 @@ import com.bonus.core.customer.utils.DelFlagEnum; import com.bonus.core.customer.vo.CustInfoVo; import com.bonus.core.customer.vo.CustNoticeInfoVO; import com.bonus.core.customer.vo.CustPayVO; +import com.bonus.core.customer.vo.PageCustInfoPhotoVO; import com.bonus.core.device.door.api.DcPushUserDataServiceApi; import com.bonus.core.order.mq.MqUtil; import com.bonus.domain.CustCasual; @@ -117,6 +116,46 @@ public class CustInfoServiceImpl extends ServiceImpl i // @Value("${customer.h5-login-default-pwd}") // private String h5LoginPwd; + + public List pageCustInfoPhoto(CustInfoParam infoParam) { + this.convertQueryParam(infoParam); + List pageCustInfoPhotoVoPage = ((CustInfoMapper)this.baseMapper).pageCustInfoPhoto(infoParam); + this.processCustomerPageReturnData(pageCustInfoPhotoVoPage); + this.custInfoBurialPointBusiness.willQueryCustInfoByPage(infoParam, pageCustInfoPhotoVoPage); + return pageCustInfoPhotoVoPage; + } + + protected void convertQueryParam(CustInfoParam infoParam) { + if (CharSequenceUtil.isNotBlank(infoParam.getShape())) { + infoParam.setShape(LeBeanUtil.fieldLikeHandle(infoParam.getShape())); + } + + if (CharSequenceUtil.isNotBlank(infoParam.getChronicIds())) { + infoParam.setChronicIds(LeBeanUtil.fieldLikeHandle(infoParam.getChronicIds())); + } + + infoParam.setPhotoType(PhotoTypeEnum.PHOTO.getKey()); + infoParam.setCustState(PersonalStatusEnum.NORMAL.getKey()); + } + + @Nullable + protected List processCustomerPageReturnData(List custInfoVo) { + if (CollUtil.isEmpty(custInfoVo)) { + return custInfoVo; + } else { + Iterator var2 = custInfoVo.iterator(); + + while(var2.hasNext()) { + PageCustInfoPhotoVO custInfoPhotoVO = (PageCustInfoPhotoVO)var2.next(); + if (ObjectUtil.isNull(custInfoPhotoVO.getFeaturesBuildStatus())) { + custInfoPhotoVO.setFeaturesBuildStatus(FeaturesBuildStatusEnum.UN_CREATE.getKey()); + } + } + + return custInfoVo; + } + } + @Override public CustInfoVo queryCustInfoDetail(CustInfo custInfo, Integer sourceType) { CustInfoVo result = this.getNormalCustInfoDetail(custInfo, sourceType); diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/customer/CustInfoMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/customer/CustInfoMapper.xml index 76c45716..6f725067 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/customer/CustInfoMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/customer/CustInfoMapper.xml @@ -245,6 +245,164 @@ set openid = #{openid}, mobile = #{mobile} where casual_id = #{casualId} + +