master:调优;

pull/1121/head
liujiang 2025-08-08 21:32:25 +08:00
parent 17dd3923ce
commit bb12bf2ce8
9 changed files with 77 additions and 37 deletions

View File

@ -25,10 +25,10 @@ public class StoreResVO {
private String storeName;
@ApiModelProperty(value = "档口负责人ID")
private Long userId;
@ApiModelProperty(value = "档口logo")
private SFileVO storeLogo;
@ApiModelProperty(value = "档口负责人ID")
private String userName;
@ApiModelProperty(value = "品牌名称")
private String brandName;
@ApiModelProperty(value = "联系人")
private String contactName;
@ApiModelProperty(value = "联系电话")
@ -61,4 +61,17 @@ public class StoreResVO {
@ApiModelProperty(value = "档口模板ID")
private Integer templateNum;
@Data
public static class SFileVO {
@ApiModelProperty(value = "文件名称")
private String fileName;
@ApiModelProperty(value = "文件路径")
private String fileUrl;
@ApiModelProperty(value = "文件类型4 人脸照片 5 国徽照片 6档口营业执照")
private Integer fileType;
@ApiModelProperty(value = "文件大小")
private BigDecimal fileSize;
}
}

View File

@ -25,9 +25,6 @@ public class StoreUpdateVO {
@ApiModelProperty(value = "档口名称", required = true)
@NotBlank(message = "档口名称不能为空")
private String storeName;
@ApiModelProperty(value = "品牌名称", required = true)
@NotBlank(message = "品牌名称不能为空")
private String brandName;
@ApiModelProperty(value = "联系人", required = true)
@NotBlank(message = "联系人不能为空")
private String contactName;

View File

@ -3119,7 +3119,6 @@ CREATE TABLE `store`
`contact_back_phone` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备选联系电话',
`wechat_account` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '微信账号',
`qq_account` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'QQ账号',
`alipay_account` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付宝账号',
`operate_years` int UNSIGNED NULL DEFAULT NULL COMMENT '经营年限',
`store_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '档口地址',
`fac_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工厂地址',

View File

@ -75,12 +75,6 @@ public class Store extends XktBaseEntity {
@Excel(name = "QQ账号")
private String qqAccount;
/**
*
*/
@Excel(name = "支付宝账号")
private String alipayAccount;
/**
*
*/

View File

@ -4,6 +4,7 @@ import com.ruoyi.xkt.dto.storeCertificate.StoreCertResDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* @author liujiang
@ -12,6 +13,7 @@ import lombok.Data;
*/
@ApiModel("档口基本信息")
@Data
@Accessors(chain = true)
public class StoreApproveResDTO {
@ApiModelProperty(value = "档口基本信息")

View File

@ -27,10 +27,10 @@ public class StoreResDTO {
private String storeName;
@ApiModelProperty(value = "档口负责人ID")
private Long userId;
@ApiModelProperty(value = "档口logo")
private SFileDTO storeLogo;
@ApiModelProperty(value = "档口负责人ID")
private String userName;
@ApiModelProperty(value = "品牌名称")
private String brandName;
@ApiModelProperty(value = "联系人")
private String contactName;
@ApiModelProperty(value = "联系电话")
@ -63,4 +63,17 @@ public class StoreResDTO {
@ApiModelProperty(value = "档口模板ID")
private Integer templateNum;
@Data
@Accessors(chain = true)
public static class SFileDTO {
@ApiModelProperty(value = "文件名称")
private String fileName;
@ApiModelProperty(value = "文件路径")
private String fileUrl;
@ApiModelProperty(value = "文件类型")
private Integer fileType;
@ApiModelProperty(value = "文件大小")
private BigDecimal fileSize;
}
}

View File

@ -19,8 +19,6 @@ public class StoreUpdateDTO {
private Long storeId;
@ApiModelProperty(value = "档口名称", required = true)
private String storeName;
@ApiModelProperty(value = "品牌名称", required = true)
private String brandName;
@ApiModelProperty(value = "联系人", required = true)
private String contactName;
@ApiModelProperty(value = "联系电话", required = true)

View File

@ -168,9 +168,15 @@ public class StoreCertificateServiceImpl implements IStoreCertificateService {
(Objects.equals(x.getId(), storeCert.getIdCardEmblemFileId())
? FileType.ID_CARD_EMBLEM.getValue() : FileType.BUSINESS_LICENSE.getValue())))
.collect(Collectors.toList());
return new StoreCertStepResDTO().setStoreCert(BeanUtil.toBean(storeCert, StoreCertStepResDTO.SCSStoreCertDTO.class)
.setStoreCertId(storeCert.getId()).setFileList(fileDTOList))
StoreCertStepResDTO certStepDTO = new StoreCertStepResDTO()
.setStoreCert(BeanUtil.toBean(storeCert, StoreCertStepResDTO.SCSStoreCertDTO.class).setStoreCertId(storeCert.getId()).setFileList(fileDTOList))
.setStoreBasic(BeanUtil.toBean(store, StoreCertStepResDTO.SCSStoreBasicDTO.class));
// 设置档口LOGO
if (ObjectUtils.isNotEmpty(store.getStoreLogoId())) {
SysFile storeLogo = this.fileMapper.selectById(store.getStoreLogoId());
certStepDTO.getStoreBasic().setStoreLogo(BeanUtil.toBean(storeLogo, StoreCertStepResDTO.SCStoreFileDTO.class));
}
return certStepDTO;
}
@ -210,6 +216,10 @@ public class StoreCertificateServiceImpl implements IStoreCertificateService {
store.setUserId(SecurityUtils.getUserId());
// 默认档口状态为:待审核
store.setStoreStatus(StoreStatus.UN_AUDITED.getValue());
// 设置已使用空间为0
store.setStorageUsage(BigDecimal.ZERO);
// 默认使用第一个模板
store.setTemplateNum(1);
// 当前时间往后推1年为试用期时间
Date oneYearAfter = Date.from(LocalDate.now().plusYears(1).atStartOfDay(ZoneId.systemDefault()).toInstant());
store.setTrialEndTime(oneYearAfter);

View File

@ -26,6 +26,7 @@ import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.xkt.domain.*;
import com.ruoyi.xkt.dto.store.*;
import com.ruoyi.xkt.dto.storeCertificate.StoreCertResDTO;
import com.ruoyi.xkt.enums.FileType;
import com.ruoyi.xkt.enums.StoreStatus;
import com.ruoyi.xkt.mapper.*;
import com.ruoyi.xkt.service.IAssetService;
@ -174,6 +175,10 @@ public class StoreServiceImpl implements IStoreService {
.eq(Store::getId, storeId))).orElseThrow(() -> new ServiceException("档口不存在!", HttpStatus.ERROR));
StoreResDTO resDTO = BeanUtil.toBean(store, StoreResDTO.class);
resDTO.setStoreId(storeId);
if (ObjectUtils.isNotEmpty(store.getStoreLogoId())) {
SysFile file = this.fileMapper.selectById(store.getStoreLogoId());
resDTO.setStoreLogo(BeanUtil.toBean(file, StoreResDTO.SFileDTO.class));
}
// 获取用户登录账号
SysUser user = this.userMapper.selectOne(new LambdaQueryWrapper<SysUser>()
.eq(SysUser::getUserId, store.getUserId()).eq(SysUser::getDelFlag, Constants.UNDELETED));
@ -189,27 +194,13 @@ public class StoreServiceImpl implements IStoreService {
@Override
@Transactional(readOnly = true)
public StoreApproveResDTO getApproveInfo(Long storeId) {
StoreApproveResDTO approveResDTO = new StoreApproveResDTO();
approveResDTO.setBasic(this.getInfo(storeId));
approveResDTO.setCertificate(this.getStoreCertificateInfo(storeId));
return approveResDTO;
return new StoreApproveResDTO()
// 档口基本信息
.setBasic(this.getInfo(storeId))
// 档口认证信息
.setCertificate(this.getStoreCertificateInfo(storeId));
}
private StoreCertResDTO getStoreCertificateInfo(Long storeId) {
StoreCertificate storeCert = this.storeCertMapper.selectOne(new LambdaQueryWrapper<StoreCertificate>()
.eq(StoreCertificate::getStoreId, storeId).eq(StoreCertificate::getDelFlag, Constants.UNDELETED));
if (ObjectUtils.isEmpty(storeCert)) {
return new StoreCertResDTO();
}
List<SysFile> fileList = Optional.ofNullable(this.fileMapper.selectList(new LambdaQueryWrapper<SysFile>()
.in(SysFile::getId, Arrays.asList(storeCert.getIdCardFaceFileId(), storeCert.getIdCardEmblemFileId(), storeCert.getLicenseFileId()))
.eq(SysFile::getDelFlag, Constants.UNDELETED))).orElseThrow(() -> new ServiceException("文件不存在!", HttpStatus.ERROR));
List<StoreCertResDTO.StoreCertFileDTO> fileDTOList = fileList.stream().map(x -> BeanUtil.toBean(x, StoreCertResDTO.StoreCertFileDTO.class)
.setFileType(Objects.equals(x.getId(), storeCert.getIdCardFaceFileId()) ? 4 :
(Objects.equals(x.getId(), storeCert.getIdCardEmblemFileId()) ? 5 : 6))).collect(Collectors.toList());
return BeanUtil.toBean(storeCert, StoreCertResDTO.class).setStoreCertId(storeCert.getId()).setFileList(fileDTOList);
}
/**
* APP
@ -541,5 +532,28 @@ public class StoreServiceImpl implements IStoreService {
return count;
}
/**
*
*
* @param storeId ID
* @return StoreCertResDTO
*/
private StoreCertResDTO getStoreCertificateInfo(Long storeId) {
StoreCertificate storeCert = this.storeCertMapper.selectOne(new LambdaQueryWrapper<StoreCertificate>()
.eq(StoreCertificate::getStoreId, storeId).eq(StoreCertificate::getDelFlag, Constants.UNDELETED));
if (ObjectUtils.isEmpty(storeCert)) {
return new StoreCertResDTO();
}
List<SysFile> fileList = Optional.ofNullable(this.fileMapper.selectList(new LambdaQueryWrapper<SysFile>()
.in(SysFile::getId, Arrays.asList(storeCert.getIdCardFaceFileId(), storeCert.getIdCardEmblemFileId(), storeCert.getLicenseFileId()))
.eq(SysFile::getDelFlag, Constants.UNDELETED))).orElseThrow(() -> new ServiceException("文件不存在!", HttpStatus.ERROR));
List<StoreCertResDTO.StoreCertFileDTO> fileDTOList = fileList.stream().map(x -> BeanUtil.toBean(x, StoreCertResDTO.StoreCertFileDTO.class)
.setFileType(Objects.equals(x.getId(), storeCert.getIdCardFaceFileId()) ? FileType.ID_CARD_FACE.getValue() :
(Objects.equals(x.getId(), storeCert.getIdCardEmblemFileId())
? FileType.ID_CARD_EMBLEM.getValue() : FileType.BUSINESS_LICENSE.getValue())))
.collect(Collectors.toList());
return BeanUtil.toBean(storeCert, StoreCertResDTO.class).setStoreCertId(storeCert.getId()).setFileList(fileDTOList);
}
}