Commit a9b447db by lijinqi

1.解决方案++行业应用+合作伙伴接口完成

2.sku新增 费用描述
3.客户企业审核模块接口完成
parent e627d768
......@@ -20,7 +20,7 @@ public class ComputilityInformationPageReqVO extends PageParam {
private Integer category;
@Schema(description = "状态:0-已隐藏,1-已显示", example = "2")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
......
......@@ -41,7 +41,7 @@ public class ComputilityInformationRespVO {
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("状态:0-已隐藏,1-已显示")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
......
......@@ -35,7 +35,7 @@ public class ComputilityInformationSaveReqVO {
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotNull(message = "状态:0-已隐藏,1-已显示不能为空")
private Boolean showStatus;
Integer showStatus;
@Schema(description = "备注", example = "随便")
private String remark;
......
......@@ -17,7 +17,7 @@ public class IndustryApplicationPageReqVO extends PageParam {
private String title;
@Schema(description = "状态:0-已隐藏,1-已显示", example = "1")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
......@@ -27,7 +27,7 @@ public class IndustryApplicationPageReqVO extends PageParam {
private String homeImage;
@Schema(description = "组件类型:0-全部", example = "1")
private Integer assemblyType;
private Integer type;
@Schema(description = "排序值")
private Integer orderNum;
......
......@@ -35,9 +35,6 @@ public class IndustryApplicationRespVO {
@ExcelProperty("描述内容")
private String description;
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("状态:0-已隐藏,1-已显示")
private Boolean showStatus;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
......@@ -49,10 +46,13 @@ public class IndustryApplicationRespVO {
@Schema(description = "组件类型:0-全部", example = "1")
@ExcelProperty("组件类型:0-全部")
private Integer assemblyType;
private Integer type;
@Schema(description = "排序值")
@ExcelProperty("排序值")
private Integer orderNum;
@Schema(description = "状态:0-已隐藏,1-已显示", example = "1")
private Integer showStatus;
}
\ No newline at end of file
......@@ -31,7 +31,7 @@ public class IndustryApplicationSaveReqVO {
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotNull(message = "状态:0-已隐藏,1-已显示不能为空")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "备注", example = "你猜")
private String remark;
......@@ -40,7 +40,7 @@ public class IndustryApplicationSaveReqVO {
private List<String> homeImages;
@Schema(description = "组件类型:0-全部", example = "1")
private Integer assemblyType;
private Integer type;
@Schema(description = "排序值")
private Integer orderNum;
......
......@@ -14,16 +14,16 @@ import static com.luhu.computility.framework.common.util.date.DateUtils.FORMAT_Y
public class InformationPageReqVO extends PageParam {
@Schema(description = "咨询类别")
private Boolean category;
private Integer category;
@Schema(description = "行业类别")
private Boolean industryCategory;
private Integer industryCategory;
@Schema(description = "标题")
private String title;
@Schema(description = "状态:0-已隐藏,1-已显示", example = "2")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
......
......@@ -17,11 +17,11 @@ public class InformationRespVO {
@Schema(description = "咨询类别", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("咨询类别")
private Boolean category;
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("行业类别")
private Boolean industryCategory;
private Integer industryCategory;
@Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("标题")
......@@ -33,7 +33,7 @@ public class InformationRespVO {
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("状态:0-已隐藏,1-已显示")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "预览图")
@ExcelProperty("预览图")
......
......@@ -14,11 +14,11 @@ public class InformationSaveReqVO {
@Schema(description = "咨询类别", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "咨询类别不能为空")
private Boolean category;
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "行业类别不能为空")
private Boolean industryCategory;
private Integer industryCategory;
@Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "标题不能为空")
......@@ -29,7 +29,7 @@ public class InformationSaveReqVO {
@Schema(description = "状态:0-已隐藏,1-已显示", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotNull(message = "状态:0-已隐藏,1-已显示不能为空")
private Boolean showStatus;
private Integer showStatus;
@Schema(description = "预览图")
private List<String> images;
......
......@@ -78,9 +78,9 @@ public class PartnerController {
// @Operation(summary = "获得合作伙伴管理")
// @Parameter(name = "id", description = "编号", required = true, example = "1024")
// @PreAuthorize("@ss.hasPermission('biz:partner:query')")
// public CommonResult<PartnerRespVO> getPartner(@RequestParam("id") Long id) {
// public CommonResult<AppPartnerRespVO> getPartner(@RequestParam("id") Long id) {
// PartnerDO partner = partnerService.getPartner(id);
// return success(BeanUtils.toBean(partner, PartnerRespVO.class));
// return success(BeanUtils.toBean(partner, AppPartnerRespVO.class));
// }
@GetMapping("/get")
......@@ -100,9 +100,9 @@ public class PartnerController {
// @GetMapping("/page")
// @Operation(summary = "获得合作伙伴管理分页")
// @PreAuthorize("@ss.hasPermission('biz:partner:query')")
// public CommonResult<PageResult<PartnerRespVO>> getPartnerPage(@Valid PartnerPageReqVO pageReqVO) {
// public CommonResult<PageResult<AppPartnerRespVO>> getPartnerPage(@Valid PartnerPageReqVO pageReqVO) {
// PageResult<PartnerDO> pageResult = partnerService.getPartnerPage(pageReqVO);
// return success(BeanUtils.toBean(pageResult, PartnerRespVO.class));
// return success(BeanUtils.toBean(pageResult, AppPartnerRespVO.class));
// }
@GetMapping("/page")
......
......@@ -13,7 +13,7 @@ public class PartnerSaveReqVO {
private Long id;
@Schema(description = "展示图地址")
private List<String> images;
private String image;
@Schema(description = "内容", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "内容不能为空")
......
......@@ -19,26 +19,32 @@ public class SolutionPageReqVO extends PageParam {
@Schema(description = "行业类别")
private Integer industryCategory;
@Schema(description = "标题(行业)")
@Schema(description = "主标题")
private String title;
@Schema(description = "简介")
private String introduction;
@Schema(description = "行业概述副标题")
private String titleIndustry;
@Schema(description = "标题(解决方案)")
@Schema(description = "解决方案副标题")
private String titleSolution;
@Schema(description = "标题(咨询)")
private String titleConsult;
@Schema(description = "行业概述")
@Schema(description = "行业概述详情")
private String industryInfo;
@Schema(description = "解决方案")
@Schema(description = "解决方案详情")
private String solutionInfo;
@Schema(description = "咨询流程")
private String consultInfo;
@Schema(description = "状态:0-已下架,1-已上架", example = "2")
private Integer groundingStatus;
private Integer showStatus;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
......
......@@ -18,39 +18,43 @@ public class SolutionRespVO {
@Schema(description = "方案类别", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("方案类别")
private Boolean category;
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("行业类别")
private Boolean industryCategory;
private Integer industryCategory;
@Schema(description = "标题(行业)", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("标题(行业)")
@Schema(description = "行业副标题", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("行业副标题")
private String titleIndustry;
@Schema(description = "标题(解决方案)", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("标题(解决方案)")
@Schema(description = "解决方案副标题", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("解决方案副标题")
private String titleSolution;
@Schema(description = "标题(咨询)", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("标题(咨询)")
private String titleConsult;
@Schema(description = "行业概述")
@ExcelProperty("行业概述")
@Schema(description = "主标题", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("主标题")
private String title;
@Schema(description = "简介", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("简介")
private String introduction;
@Schema(description = "行业概述详情")
@ExcelProperty("行业概述详情")
private String industryInfo;
@Schema(description = "解决方案")
@ExcelProperty("解决方案")
@Schema(description = "解决方案详情")
@ExcelProperty("解决方案详情")
private String solutionInfo;
@Schema(description = "咨询流程")
@ExcelProperty("咨询流程")
private String consultInfo;
@Schema(description = "状态:0-已下架,1-已上架", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("状态:0-已下架,1-已上架")
private Boolean groundingStatus;
private Integer status;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
......@@ -58,18 +62,11 @@ public class SolutionRespVO {
@Schema(description = "创建者")
@ExcelProperty("创建者")
private String createBy;
private String creator;
@Schema(description = "更新者")
@ExcelProperty("更新者")
private String updateBy;
@Schema(description = "备注", example = "随便")
@ExcelProperty("备注")
private String remark;
@Schema(description = "删除标志(0代表存在 2代表删除)")
@ExcelProperty("删除标志(0代表存在 2代表删除)")
private String delFlag;
}
\ No newline at end of file
......@@ -12,49 +12,45 @@ public class SolutionSaveReqVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "21367")
private Long id;
@Schema(description = "主标题")
@NotNull(message = "主标题不能为空")
private String title;
@Schema(description = "简介")
@NotNull(message = "简介不能为空")
private String introduction;
@Schema(description = "方案类别", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "方案类别不能为空")
private Boolean category;
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "行业类别不能为空")
private Boolean industryCategory;
private Integer industryCategory;
@Schema(description = "标题(行业)", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "标题(行业)不能为空")
@Schema(description = "行业副标题", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "行业副标题不能为空")
private String titleIndustry;
@Schema(description = "标题(解决方案)", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "标题(解决方案)不能为空")
@Schema(description = "解决方案副标题", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "解决方案副标题不能为空")
private String titleSolution;
@Schema(description = "标题(咨询)", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "标题(咨询)不能为空")
private String titleConsult;
@Schema(description = "行业概述")
@Schema(description = "行业概述详情")
private String industryInfo;
@Schema(description = "解决方案")
@Schema(description = "解决方案详情")
private String solutionInfo;
@Schema(description = "咨询流程")
private String consultInfo;
@Schema(description = "状态:0-已下架,1-已上架", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@NotNull(message = "状态:0-已下架,1-已上架不能为空")
private Boolean groundingStatus;
private Integer showStatus;
@Schema(description = "创建者")
private String createBy;
@Schema(description = "更新者")
private String updateBy;
@Schema(description = "备注", example = "随便")
private String remark;
@Schema(description = "删除标志(0代表存在 2代表删除)")
private String delFlag;
}
\ No newline at end of file
......@@ -230,10 +230,13 @@ public class ApiController {
orderService.bizOrderSubmit(skuId);
return null;
}
/*
/**
* 行业应用二级菜单
*/
/**
* 行业应用二级菜单
*//*
@GetMapping(value = "/industryMenu")
@Operation(summary = "获取解决方案多级菜单数据")
@ResponseBody
......@@ -241,7 +244,7 @@ public class ApiController {
//取所有已上架的解决方案
Integer groundingStatus = Integer.valueOf(DictUtils.getDictValue("grounding_status", "已上架"));
SolutionPageReqVO solutionPageReqVO = new SolutionPageReqVO();
solutionPageReqVO.setGroundingStatus(groundingStatus);
//solutionPageReqVO.setGroundingStatus(groundingStatus);
List<SolutionDO> solutionDOList = solutionService.selectSolutionList(solutionPageReqVO);
List<SolutionMenuRespVO> solutionVOList = solutionDOList.stream().map(solutionDO -> {
......@@ -286,9 +289,11 @@ public class ApiController {
}
/**
* 获取单个解决方案详情
*/
/**
* 获取单个解决方案详情
*//*
@GetMapping(value = "/solutionDetail")
@Operation(summary = "获取单个解决方案详情")
@ResponseBody
......@@ -318,6 +323,7 @@ public class ApiController {
}
}
*/
// *//**
// *活动咨询列表
......
......@@ -8,6 +8,7 @@ import com.luhu.computility.module.biz.service.industryapplication.IndustryAppli
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
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;
......@@ -17,16 +18,16 @@ import java.util.List;
import static com.luhu.computility.framework.common.pojo.CommonResult.success;
@Tag(name = "用户 APP - 行业应用首页管理")
@Tag(name = "用户 APP - 行业应用首页")
@RestController
@RequestMapping("/biz/assembly")
@RequestMapping("/biz/industry-application")
public class AppIndustryApplicationController {
@Resource
private IndustryApplicationService industryApplicationService;
@PermitAll
@GetMapping("/assemblyList")
@GetMapping("/list")
public CommonResult<List<IndustryApplicationRespVO>> getIndustryApplicationList() {
List<IndustryApplicationDO> list = industryApplicationService.getAllIndustryApplication(); // 新增Service方法
List<IndustryApplicationRespVO> result = BeanUtils.toBean(list, IndustryApplicationRespVO.class);
......@@ -50,4 +51,31 @@ public class AppIndustryApplicationController {
return success(result);
}
@PermitAll
@GetMapping("/homepageList")
public CommonResult<List<IndustryApplicationRespVO>> getIndustryApplicationHomepageList( @RequestParam Integer count) {
List<IndustryApplicationDO> list = industryApplicationService.selectByCount(count); // 新增Service方法
List<IndustryApplicationRespVO> result = BeanUtils.toBean(list, IndustryApplicationRespVO.class);
// 处理图片列表转换
if (result != null) {
for (int i = 0; i < result.size(); i++) {
IndustryApplicationDO original = list.get(i);
IndustryApplicationRespVO industry = result.get(i);
if (original.getImage() != null && !original.getImage().isEmpty()) {
List<String> images = Arrays.asList(original.getImage().split(","));
industry.setImages(images);
}
if (original.getHomeImage() != null && !original.getHomeImage().isEmpty()) {
List<String> homeImages = Arrays.asList(original.getHomeImage().split(","));
industry.setHomeImages(homeImages);
}
}
}
return success(result);
}
}
......@@ -5,13 +5,19 @@ import com.luhu.computility.framework.common.util.object.BeanUtils;
import com.luhu.computility.module.biz.controller.admin.bannerinfo.vo.BannerInfoRespVO;
import com.luhu.computility.module.biz.controller.admin.industryapplication.vo.IndustryApplicationRespVO;
import com.luhu.computility.module.biz.controller.admin.information.vo.InformationRespVO;
import com.luhu.computility.module.biz.controller.app.information.vo.AppInformationRespVO;
import com.luhu.computility.module.biz.controller.app.partner.vo.AppPartnerRespVO;
import com.luhu.computility.module.biz.dal.dataobject.bannerinfo.BannerInfoDO;
import com.luhu.computility.module.biz.dal.dataobject.industryapplication.IndustryApplicationDO;
import com.luhu.computility.module.biz.dal.dataobject.information.InformationDO;
import com.luhu.computility.module.biz.dal.dataobject.partner.PartnerDO;
import com.luhu.computility.module.biz.service.information.InformationService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
......@@ -47,8 +53,21 @@ public class AppInformationController {
}
}
}
return success(result);
}
/**
* 获取活动资讯详情
*/
@GetMapping(value = "/detail")
@Operation(summary = "活动资讯详情")
@PermitAll
@ResponseBody
public CommonResult<AppInformationRespVO> informationDetail(@RequestParam(value = "id") Long id){
//业务实现部分
InformationDO informationDO = informationService.getInformation(id);
return success(BeanUtils.toBean(informationDO, AppInformationRespVO.class));
}
}
package com.luhu.computility.module.biz.controller.app.information.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "用户端 - 活动资讯 Response VO")
@Data
public class AppInformationRespVO {
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
private Long id;
@Schema(description = "咨询类别", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer industryCategory;
@Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
private String title;
@Schema(description = "描述内容", example = "你猜")
private String description;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}
\ No newline at end of file
package com.luhu.computility.module.biz.controller.app.solution;
import com.luhu.computility.framework.common.pojo.CommonResult;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.util.object.BeanUtils;
import com.luhu.computility.module.biz.controller.admin.computilityinformation.vo.ComputilityInformationRespVO;
import com.luhu.computility.module.biz.controller.admin.solution.vo.SolutionPageReqVO;
import com.luhu.computility.module.biz.controller.admin.solution.vo.SolutionRespVO;
import com.luhu.computility.module.biz.controller.app.solution.vo.AppSolutionRespVO;
import com.luhu.computility.module.biz.dal.dataobject.computilityinformation.ComputilityInformationDO;
import com.luhu.computility.module.biz.dal.dataobject.solution.SolutionDO;
import com.luhu.computility.module.biz.service.computilityinformation.ComputilityInformationService;
import com.luhu.computility.module.biz.service.solution.SolutionService;
import com.luhu.computility.module.product.controller.app.spu.vo.AppProductSpuDetailRespVO;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.annotation.security.PermitAll;
import javax.validation.Valid;
import java.util.Arrays;
import java.util.List;
import static com.luhu.computility.framework.common.pojo.CommonResult.error;
import static com.luhu.computility.framework.common.pojo.CommonResult.success;
import static com.luhu.computility.module.biz.enums.ErrorCodeConstants.GET_SOLUTION_ERROR;
@Tag(name = "用户 APP - 解决方案管理")
@RestController
@RequestMapping("/biz/solution")
public class AppSolutionController {
@Resource
private SolutionService solutionService;
/**
* 获取单个解决方案详情
*/
@GetMapping(value = "/detail")
@Operation(summary = "解决方案详情")
@PermitAll
@ResponseBody
public CommonResult<AppSolutionRespVO> solutionDetail(@Param(value = "id") Long id){
//业务实现部分
SolutionDO solutionDO = solutionService.getSolution(id);
AppSolutionRespVO appSolutionRespVO = BeanUtils.toBean(solutionDO, AppSolutionRespVO.class);
return success(appSolutionRespVO);
}
@GetMapping("/all")
@Operation(summary = "获得所有解决方案")
@PermitAll
public CommonResult<List<AppSolutionRespVO>> getAllSolution() {
List<SolutionDO> solutionDOS = solutionService.getAllSolution();
return success(BeanUtils.toBean(solutionDOS, AppSolutionRespVO.class));
}
}
package com.luhu.computility.module.biz.controller.app.solution.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "app - 解决方案 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AppSolutionRespVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "21367")
private Long id;
@Schema(description = "主标题", requiredMode = Schema.RequiredMode.REQUIRED, example = "xx")
private String title;
@Schema(description = "简介", requiredMode = Schema.RequiredMode.REQUIRED, example = "xx")
private String introduction;
@Schema(description = "方案类别", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer category;
@Schema(description = "行业类别", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer industryCategory;
@Schema(description = "行业副标题", requiredMode = Schema.RequiredMode.REQUIRED)
private String titleIndustry;
@Schema(description = "解决方案副标题", requiredMode = Schema.RequiredMode.REQUIRED)
private String titleSolution;
@Schema(description = "行业概述详情")
private String industryInfo;
@Schema(description = "解决方案详情")
private String solutionInfo;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "备注", example = "随便")
@ExcelProperty("备注")
private String remark;
}
\ No newline at end of file
......@@ -62,7 +62,7 @@ public class IndustryApplicationDO extends BaseDO {
/**
* 组件类型:0-全部
*/
private Integer assemblyType;
private Integer type;
/**
* 排序值
*/
......
......@@ -30,11 +30,11 @@ public class InformationDO extends BaseDO {
/**
* 咨询类别
*/
private Boolean category;
private Integer category;
/**
* 行业类别
*/
private Boolean industryCategory;
private Integer industryCategory;
/**
* 标题
*/
......
......@@ -62,15 +62,15 @@ public class SolutionDO extends BaseDO {
/**
* 状态:0-已下架,1-已上架
*/
private Integer groundingStatus;
private Boolean status;
/**
* 创建者
* 主标题
*/
private String creator;
private String title;
/**
* 更新者
* 简介
*/
private String updater;
private String introduction;
/**
* 备注
*/
......
......@@ -23,9 +23,17 @@ public interface IndustryApplicationMapper extends BaseMapperX<IndustryApplicati
.eqIfPresent(IndustryApplicationDO::getShowStatus, reqVO.getShowStatus())
.betweenIfPresent(IndustryApplicationDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(IndustryApplicationDO::getHomeImage, reqVO.getHomeImage())
.eqIfPresent(IndustryApplicationDO::getAssemblyType, reqVO.getAssemblyType())
.eqIfPresent(IndustryApplicationDO::getType, reqVO.getType())
.eqIfPresent(IndustryApplicationDO::getOrderNum, reqVO.getOrderNum())
.orderByDesc(IndustryApplicationDO::getId));
}
default List<IndustryApplicationDO> selectByCount(Integer count) {
return selectList(new LambdaQueryWrapperX<IndustryApplicationDO>()
.eqIfPresent(IndustryApplicationDO::getShowStatus, Boolean.TRUE)
.orderByDesc(IndustryApplicationDO::getOrderNum).last("limit " + count));
}
}
\ No newline at end of file
......@@ -6,6 +6,7 @@ import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.luhu.computility.framework.mybatis.core.mapper.BaseMapperX;
import com.luhu.computility.module.biz.dal.dataobject.partner.PartnerDO;
import com.luhu.computility.module.biz.dal.dataobject.solution.SolutionDO;
import org.apache.ibatis.annotations.Mapper;
import com.luhu.computility.module.biz.controller.admin.partner.vo.*;
......@@ -30,4 +31,11 @@ public interface PartnerMapper extends BaseMapperX<PartnerDO> {
.orderByDesc(PartnerDO::getId));
}
default List<PartnerDO> selectAll() {
return selectList(new LambdaQueryWrapperX<PartnerDO>()
.eqIfPresent(PartnerDO::getShowStatus, Boolean.TRUE)
.orderByDesc(PartnerDO::getOrderNum));
}
}
\ No newline at end of file
......@@ -27,7 +27,7 @@ public interface SolutionMapper extends BaseMapperX<SolutionDO> {
.eqIfPresent(SolutionDO::getIndustryInfo, reqVO.getIndustryInfo())
.eqIfPresent(SolutionDO::getSolutionInfo, reqVO.getSolutionInfo())
.eqIfPresent(SolutionDO::getConsultInfo, reqVO.getConsultInfo())
.eqIfPresent(SolutionDO::getGroundingStatus, reqVO.getGroundingStatus())
.eqIfPresent(SolutionDO::getStatus, reqVO.getShowStatus())
.betweenIfPresent(SolutionDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(SolutionDO::getCreator, reqVO.getCreator())
.eqIfPresent(SolutionDO::getUpdater, reqVO.getUpdater())
......@@ -36,4 +36,11 @@ public interface SolutionMapper extends BaseMapperX<SolutionDO> {
}
default List<SolutionDO> selectAll() {
return selectList(new LambdaQueryWrapperX<SolutionDO>()
.eqIfPresent(SolutionDO::getStatus, Boolean.TRUE)
.orderByDesc(SolutionDO::getId));
}
}
\ No newline at end of file
......@@ -60,4 +60,6 @@ public interface IndustryApplicationService {
PageResult<IndustryApplicationDO> getIndustryApplicationPage(IndustryApplicationPageReqVO pageReqVO);
List<IndustryApplicationDO> getAllIndustryApplication();
List<IndustryApplicationDO> selectByCount(Integer count);
}
\ No newline at end of file
......@@ -104,4 +104,11 @@ public class IndustryApplicationServiceImpl implements IndustryApplicationServic
return industryApplicationMapper.selectList(null); // 查询所有数据
}
@Override
public List<IndustryApplicationDO> selectByCount(Integer count) {
return industryApplicationMapper.selectByCount(count); //
}
}
\ No newline at end of file
......@@ -6,6 +6,7 @@ import com.luhu.computility.module.biz.controller.admin.partner.vo.*;
import com.luhu.computility.module.biz.dal.dataobject.partner.PartnerDO;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.pojo.PageParam;
import com.luhu.computility.module.biz.dal.dataobject.solution.SolutionDO;
/**
* 合作伙伴管理 Service 接口
......@@ -59,4 +60,6 @@ public interface PartnerService {
*/
PageResult<PartnerDO> getPartnerPage(PartnerPageReqVO pageReqVO);
List<PartnerDO> getAllPartner();
}
\ No newline at end of file
package com.luhu.computility.module.biz.service.partner;
import cn.hutool.core.collection.CollUtil;
import com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.luhu.computility.module.biz.dal.dataobject.solution.SolutionDO;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
......@@ -36,10 +38,6 @@ public class PartnerServiceImpl implements PartnerService {
public Long createPartner(PartnerSaveReqVO createReqVO) {
// 插入
PartnerDO partner = BeanUtils.toBean(createReqVO, PartnerDO.class);
// 将图片列表转换为JSON字符串存储
if (createReqVO.getImages() != null && !createReqVO.getImages().isEmpty()) {
partner.setImage(String.join(",", createReqVO.getImages()));
}
partnerMapper.insert(partner);
// 返回
......@@ -52,10 +50,6 @@ public class PartnerServiceImpl implements PartnerService {
validatePartnerExists(updateReqVO.getId());
// 更新
PartnerDO updateObj = BeanUtils.toBean(updateReqVO, PartnerDO.class);
// 将图片列表转换为JSON字符串存储
if (updateReqVO.getImages() != null && !updateReqVO.getImages().isEmpty()) {
updateObj.setImage(String.join(",", updateReqVO.getImages()));
}
partnerMapper.updateById(updateObj);
}
......@@ -90,4 +84,10 @@ public class PartnerServiceImpl implements PartnerService {
return partnerMapper.selectPage(pageReqVO);
}
@Override
public List<PartnerDO> getAllPartner() {
List<PartnerDO> result = partnerMapper.selectAll();
return result;
}
}
\ No newline at end of file
......@@ -60,5 +60,8 @@ public interface SolutionService {
PageResult<SolutionDO> getSolutionPage(SolutionPageReqVO pageReqVO);
List<SolutionDO> selectSolutionList(SolutionPageReqVO pageReqVO);
List<SolutionDO> getAllSolution();
}
\ No newline at end of file
......@@ -87,11 +87,8 @@ public class SolutionServiceImpl implements SolutionService {
}
@Override
public List<SolutionDO> selectSolutionList(SolutionPageReqVO reqVO) {
LambdaQueryWrapperX<SolutionDO> wrapper = new LambdaQueryWrapperX<SolutionDO>()
.eqIfPresent(SolutionDO::getGroundingStatus, reqVO.getGroundingStatus())
.orderByDesc(SolutionDO::getId);
List<SolutionDO> result = solutionMapper.selectList(wrapper);
public List<SolutionDO> getAllSolution() {
List<SolutionDO> result = solutionMapper.selectAll();
return result;
}
......
......@@ -31,11 +31,14 @@ public class ProductSkuRespVO {
@Schema(description = "费用描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "元/年")
private String feeInfo;
@Schema(description = "", requiredMode = Schema.RequiredMode.REQUIRED, example = "365")
@Schema(description = "有效期", requiredMode = Schema.RequiredMode.REQUIRED, example = "365")
private Integer expDuration;
@Schema(description = "库存", requiredMode = Schema.RequiredMode.REQUIRED, example = "365")
@Schema(description = "鉴权信息", requiredMode = Schema.RequiredMode.REQUIRED, example = "admin")
private String auth;
@Schema(description = "库存", requiredMode = Schema.RequiredMode.REQUIRED, example = "4")
private Integer stock;
@Schema(description = "属性数组")
......
......@@ -43,6 +43,7 @@ public class AppProductSkuController {
@GetMapping("/page")
@Operation(summary = "获得商品 SKU 分页")
@PermitAll
public CommonResult<PageResult<ProductSkuRespVO>> getSkuPage(@Valid ProductSkuPageReqVO pageVO) {
PageResult<ProductSkuRespVO> skuList = productSkuService.getSkuList(pageVO);
return success(skuList);
......
package com.luhu.computility.module.member.controller.admin.enterprise;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.constraints.*;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.luhu.computility.framework.common.pojo.PageParam;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.pojo.CommonResult;
import com.luhu.computility.framework.common.util.object.BeanUtils;
import static com.luhu.computility.framework.common.pojo.CommonResult.success;
import com.luhu.computility.framework.excel.core.util.ExcelUtils;
import com.luhu.computility.framework.apilog.core.annotation.ApiAccessLog;
import static com.luhu.computility.framework.apilog.core.enums.OperateTypeEnum.*;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.*;
import com.luhu.computility.module.member.dal.dataobject.enterprise.EnterpriseDO;
import com.luhu.computility.module.member.service.enterprise.EnterpriseService;
@Tag(name = "管理后台 - 客户企业")
@RestController
@RequestMapping("/member/enterprise")
@Validated
public class EnterpriseController {
@Resource
private EnterpriseService enterpriseService;
@PostMapping("/create")
@Operation(summary = "创建客户企业")
@PreAuthorize("@ss.hasPermission('member:enterprise:create')")
public CommonResult<Long> createEnterprise(@Valid @RequestBody EnterpriseSaveReqVO createReqVO) {
return success(enterpriseService.createEnterprise(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新客户企业")
@PreAuthorize("@ss.hasPermission('member:enterprise:update')")
public CommonResult<Boolean> updateEnterprise(@Valid @RequestBody EnterpriseSaveReqVO updateReqVO) {
enterpriseService.updateEnterprise(updateReqVO);
return success(true);
}
@PutMapping("/check")
@Operation(summary = "更新客户企业")
public CommonResult<Boolean> checkEnterprise(@Valid @RequestBody EnterpriseCheckReqVO checkReqVO) {
enterpriseService.checkEnterprise(checkReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除客户企业")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('member:enterprise:delete')")
public CommonResult<Boolean> deleteEnterprise(@RequestParam("id") Long id) {
enterpriseService.deleteEnterprise(id);
return success(true);
}
@DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除客户企业")
@PreAuthorize("@ss.hasPermission('member:enterprise:delete')")
public CommonResult<Boolean> deleteEnterpriseList(@RequestParam("ids") List<Long> ids) {
enterpriseService.deleteEnterpriseListByIds(ids);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得客户企业")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('member:enterprise:query')")
public CommonResult<EnterpriseRespVO> getEnterprise(@RequestParam("id") Long id) {
EnterpriseDO enterprise = enterpriseService.getEnterprise(id);
return success(BeanUtils.toBean(enterprise, EnterpriseRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得客户企业分页")
@PreAuthorize("@ss.hasPermission('member:enterprise:query')")
public CommonResult<PageResult<EnterpriseRespVO>> getEnterprisePage(@Valid EnterprisePageReqVO pageReqVO) {
PageResult<EnterpriseRespVO> pageResult = enterpriseService.getEnterprisePage(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")
@Operation(summary = "导出客户企业 Excel")
@PreAuthorize("@ss.hasPermission('member:enterprise:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportEnterpriseExcel(@Valid EnterprisePageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<EnterpriseRespVO> list = enterpriseService.getEnterprisePage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "客户企业.xls", "数据", EnterpriseRespVO.class,
BeanUtils.toBean(list, EnterpriseRespVO.class));
}
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.admin.enterprise.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
@Schema(description = "管理后台 - 客户企业审核 Request VO")
@Data
public class EnterpriseCheckReqVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7191")
private Long id;
@Schema(description = "审核状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
@NotNull(message = "审核状态不能为空")
private Integer status;
@Schema(description = "备注", example = "")
private String remark;
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.admin.enterprise.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.luhu.computility.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.luhu.computility.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 客户企业分页 Request VO")
@Data
public class EnterprisePageReqVO extends PageParam {
@Schema(description = "member用户名字", example = "6648")
private String memberUserName;
@Schema(description = "企业名称", example = "XX公司")
private String name;
@Schema(description = "法人")
private String legalPerson;
@Schema(description = "联系电话")
private String mobile;
@Schema(description = "是否审核", example = "0")
private Boolean status;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.admin.enterprise.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@Schema(description = "管理后台 - 客户企业 Response VO")
@Data
@ExcelIgnoreUnannotated
public class EnterpriseRespVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7191")
@ExcelProperty("主键")
private Long id;
@Schema(description = "member用户名", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
@ExcelProperty("member用户名")
private String memberUserName;
@Schema(description = "身份证", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
@ExcelProperty("身份证")
private String identityCard;
@Schema(description = "国徽面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
@ExcelProperty("国徽面")
private String nationalEmblemFace;
@Schema(description = "人像面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
@ExcelProperty("人像面")
private String portraitFace;
@Schema(description = "企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "XX公司")
@ExcelProperty("企业名称")
private String name;
@Schema(description = "法人", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("法人")
private String legalPerson;
@Schema(description = "联系电话", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("联系电话")
private String mobile;
@Schema(description = "承诺书", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("承诺书")
private String letterOfCommitment;
@Schema(description = "是否审核", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
@ExcelProperty("是否审核")
private Long status;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.admin.enterprise.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
@Schema(description = "管理后台 - 客户企业新增/修改 Request VO")
@Data
public class EnterpriseSaveReqVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7191")
private Long id;
@Schema(description = "member用户id", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
@NotNull(message = "member用户id不能为空")
private Long memberUserId;
@Schema(description = "企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "XX公司")
@NotEmpty(message = "企业名称不能为空")
private String name;
@Schema(description = "法人", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "法人不能为空")
private String legalPerson;
@Schema(description = "联系电话", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "联系电话不能为空")
private String mobile;
@Schema(description = "承诺书", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "承诺书不能为空")
private String letterOfCommitment;
@Schema(description = "是否审核", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
@NotNull(message = "是否审核不能为空")
private Integer status;
@Schema(description = "备注", example = "你说的对")
private String remark;
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.app.enterprise;
import com.luhu.computility.framework.apilog.core.annotation.ApiAccessLog;
import com.luhu.computility.framework.common.pojo.CommonResult;
import com.luhu.computility.framework.common.pojo.PageParam;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.util.object.BeanUtils;
import com.luhu.computility.framework.excel.core.util.ExcelUtils;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.EnterprisePageReqVO;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.EnterpriseRespVO;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.EnterpriseSaveReqVO;
import com.luhu.computility.module.member.controller.app.enterprise.vo.AppEnterpriseSaveReqVO;
import com.luhu.computility.module.member.dal.dataobject.enterprise.EnterpriseDO;
import com.luhu.computility.module.member.service.enterprise.EnterpriseService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
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;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.util.List;
import static com.luhu.computility.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static com.luhu.computility.framework.common.pojo.CommonResult.success;
import static com.luhu.computility.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
@Tag(name = "用户APP - 客户企业")
@RestController
@RequestMapping("/member/enterprise")
@Validated
public class AppEnterpriseController {
@Resource
private EnterpriseService enterpriseService;
@PostMapping("/create")
@Operation(summary = "创建客户企业")
public CommonResult<Long> createEnterprise(@Valid @RequestBody AppEnterpriseSaveReqVO createReqVO) {
return success(enterpriseService.createEnterpriseByMemberUser(getLoginUserId(),createReqVO));
}
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.app.enterprise.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
@Schema(description = "用户APP - 客户企业新增/修改 Request VO")
@Data
public class AppEnterpriseSaveReqVO {
@Schema(description = "主键", example = "7191")
private Long id;
@Schema(description = "企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "XX公司")
@NotEmpty(message = "企业名称不能为空")
private String name;
@Schema(description = "法人", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "法人不能为空")
private String legalPerson;
@Schema(description = "联系电话", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "联系电话不能为空")
private String mobile;
@Schema(description = "承诺书", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "承诺书不能为空")
private String letterOfCommitment;
@Schema(description = "备注", example = "你说的对")
private String remark;
@Schema(description = "身份证", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String identityCard;
@Schema(description = "国徽面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String nationalEmblemFace;
@Schema(description = "人像面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String portraitFace;
}
\ No newline at end of file
package com.luhu.computility.module.member.controller.app.user.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.luhu.computility.framework.common.validation.InEnum;
import com.luhu.computility.module.system.enums.common.SexEnum;
import io.swagger.v3.oas.annotations.media.Schema;
......@@ -20,4 +21,15 @@ public class AppMemberUserUpdateReqVO {
@Schema(description = "性别", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
private Integer sex;
@Schema(description = "身份证", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String identityCard;
@Schema(description = "国徽面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String nationalEmblemFace;
@Schema(description = "人像面", requiredMode = Schema.RequiredMode.REQUIRED, example = "6648")
private String portraitFace;
}
package com.luhu.computility.module.member.dal.dataobject.enterprise;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.luhu.computility.framework.mybatis.core.dataobject.BaseDO;
/**
* 客户企业 DO
*
* @author ljq
*/
@TableName("member_enterprise")
@KeySequence("member_enterprise_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class EnterpriseDO extends BaseDO {
/**
* 主键
*/
@TableId
private Long id;
/**
* member用户id
*/
private Long memberUserId;
/**
* 企业名称
*/
private String name;
/**
* 法人
*/
private String legalPerson;
/**
* 联系电话
*/
private String mobile;
/**
* 承诺书
*/
private String letterOfCommitment;
/**
* 是否审核
*/
private Integer status;
/**
* 备注
*/
private String remark;
}
\ No newline at end of file
......@@ -141,5 +141,19 @@ public class MemberUserDO extends TenantBaseDO {
* 关联 {@link MemberGroupDO#getId()} 字段
*/
private Long groupId;
/**
* 身份证号
*/
private String identityCard;
/**
* 国徽面
*/
private String nationalEmblemFace;
/**
* 人像面
*/
private String portraitFace;
}
package com.luhu.computility.module.member.dal.mysql.enterprise;
import java.util.*;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.luhu.computility.framework.mybatis.core.mapper.BaseMapperX;
import com.luhu.computility.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.luhu.computility.module.member.dal.dataobject.enterprise.EnterpriseDO;
import com.luhu.computility.module.member.dal.dataobject.user.MemberUserDO;
import org.apache.ibatis.annotations.Mapper;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.*;
import org.springframework.util.StringUtils;
/**
* 客户企业 Mapper
*
* @author ljq
*/
@Mapper
public interface EnterpriseMapper extends BaseMapperX<EnterpriseDO> {
/* default PageResult<EnterpriseDO> selectPage(EnterprisePageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<EnterpriseDO>()
.likeIfPresent(EnterpriseDO::getName, reqVO.getName())
.likeIfPresent(EnterpriseDO::getLegalPerson, reqVO.getLegalPerson())
.eqIfPresent(EnterpriseDO::getStatus, reqVO.getStatus())
.betweenIfPresent(EnterpriseDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(EnterpriseDO::getId));
}*/
default PageResult<EnterpriseRespVO> selectPage(EnterprisePageReqVO reqVO) {
return selectJoinPage(reqVO, EnterpriseRespVO.class, new MPJLambdaWrapperX<EnterpriseDO>()
.selectAll(EnterpriseDO.class)
.select(MemberUserDO::getMobile)
.selectAs(MemberUserDO::getPortraitFace, EnterpriseRespVO::getPortraitFace)
.selectAs(MemberUserDO::getIdentityCard, EnterpriseRespVO::getIdentityCard)
.selectAs(MemberUserDO::getNationalEmblemFace, EnterpriseRespVO::getNationalEmblemFace)
.selectAs(MemberUserDO::getName, EnterpriseRespVO::getMemberUserName)
.leftJoin(MemberUserDO.class, MemberUserDO::getId, EnterpriseDO::getMemberUserId)
.like(!StringUtils.isEmpty(reqVO.getLegalPerson()), EnterpriseDO::getLegalPerson, reqVO.getLegalPerson())
.like(!StringUtils.isEmpty(reqVO.getName()), EnterpriseDO::getName, reqVO.getName())
.like(!StringUtils.isEmpty(reqVO.getMemberUserName()), MemberUserDO::getName, reqVO.getMemberUserName())
.between(!ArrayUtil.hasNull(reqVO.getCreateTime()), EnterpriseDO::getCreateTime, ArrayUtil.get(reqVO.getCreateTime(), 0), ArrayUtil.get(reqVO.getCreateTime(), 1))
.orderByDesc(EnterpriseDO::getId));
}
/*return selectJoinPage(queryVO, FruitRespVO.class, new MPJLambdaWrapperX<FruitDO>()
.selectAll(FruitDO.class)
.select(MemberUserDO::getMobile)
.select(MemberUserDO::getName)
.select(MemberUserDO::getNickname)
.leftJoin(MemberUserDO.class, MemberUserDO::getId, FruitDO::getUserId)
.eq(queryVO.getUserId() != null, FruitDO::getUserId, queryVO.getUserId())
.eq(queryVO.getId() != null, FruitDO::getId, queryVO.getId())
.like(StrUtil.isNotBlank(queryVO.getContent()), FruitDO::getContent, queryVO.getContent())
.between(!ArrayUtil.hasNull(queryVO.getCreateTime()), FruitDO::getCreateTime, ArrayUtil.get(queryVO.getCreateTime(), 0), ArrayUtil.get(queryVO.getCreateTime(), 1))
.orderByDesc(FruitDO::getId));*/
}
\ No newline at end of file
package com.luhu.computility.module.member.enums;
/**
* 客户企业审核状态
*/
public enum EnterpriseCheckStatus {
// 请根据实际情况改成对应的值和备注
UNCHECK(0, "待审核"),
CHECKED(1, "审核通过"),
CHECK_FAILED(2, "审核未通过");
private int value;
private String remark;
private EnterpriseCheckStatus(int value, String remark) {
this.value = value;
this.remark = remark;
}
public int getValue() {
return value;
}
public String getRemark() {
return remark;
}
public static EnterpriseCheckStatus getByValue(int value) {
for (EnterpriseCheckStatus o : EnterpriseCheckStatus.values()) {
if (o.getValue() == value) {
return o;
}
}
return null;
}
}
......@@ -54,5 +54,5 @@ public interface ErrorCodeConstants {
//========== 用户分组 1-004-012-000 ==========
ErrorCode GROUP_NOT_EXISTS = new ErrorCode(1_004_012_000, "用户分组不存在");
ErrorCode GROUP_HAS_USER = new ErrorCode(1_004_012_001, "用户分组下存在用户,无法删除");
ErrorCode ENTERPRISE_NOT_EXISTS = new ErrorCode(1_004_012_002, "客户企业不存在");
}
package com.luhu.computility.module.member.service.enterprise;
import java.util.*;
import javax.validation.*;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.*;
import com.luhu.computility.module.member.controller.app.enterprise.vo.AppEnterpriseSaveReqVO;
import com.luhu.computility.module.member.dal.dataobject.enterprise.EnterpriseDO;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.pojo.PageParam;
import org.checkerframework.checker.units.qual.A;
/**
* 客户企业 Service 接口
*
* @author ljq
*/
public interface EnterpriseService {
/**
* 创建客户企业
*
* @param createReqVO 创建信息
* @return 编号
*/
Long createEnterprise(@Valid EnterpriseSaveReqVO createReqVO);
/**
* 更新客户企业
*
* @param updateReqVO 更新信息
*/
void updateEnterprise(@Valid EnterpriseSaveReqVO updateReqVO);
/**
* 审核客户企业
*
* @param checkReqVO 审核信息
*/
void checkEnterprise(@Valid EnterpriseCheckReqVO checkReqVO);
/**
* 删除客户企业
*
* @param id 编号
*/
void deleteEnterprise(Long id);
/**
* 批量删除客户企业
*
* @param ids 编号
*/
void deleteEnterpriseListByIds(List<Long> ids);
/**
* 获得客户企业
*
* @param id 编号
* @return 客户企业
*/
EnterpriseDO getEnterprise(Long id);
/**
* 获得客户企业分页
*
* @param pageReqVO 分页查询
* @return 客户企业分页
*/
PageResult<EnterpriseRespVO> getEnterprisePage(EnterprisePageReqVO pageReqVO);
/**
* 客户提交客户企业信息
*
* @param createReqVO 创建信息
* @return 编号
*/
Long createEnterpriseByMemberUser(Long userId, AppEnterpriseSaveReqVO createReqVO);
}
\ No newline at end of file
package com.luhu.computility.module.member.service.enterprise;
import cn.hutool.core.collection.CollUtil;
import com.luhu.computility.module.member.controller.app.enterprise.vo.AppEnterpriseSaveReqVO;
import com.luhu.computility.module.member.controller.app.user.vo.AppMemberUserUpdateReqVO;
import com.luhu.computility.module.member.dal.mysql.user.MemberUserMapper;
import com.luhu.computility.module.member.enums.EnterpriseCheckStatus;
import com.luhu.computility.module.member.service.user.MemberUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import com.luhu.computility.module.member.controller.admin.enterprise.vo.*;
import com.luhu.computility.module.member.dal.dataobject.enterprise.EnterpriseDO;
import com.luhu.computility.framework.common.pojo.PageResult;
import com.luhu.computility.framework.common.pojo.PageParam;
import com.luhu.computility.framework.common.util.object.BeanUtils;
import com.luhu.computility.module.member.dal.mysql.enterprise.EnterpriseMapper;
import static com.luhu.computility.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.luhu.computility.framework.common.util.collection.CollectionUtils.convertList;
import static com.luhu.computility.framework.common.util.collection.CollectionUtils.diffList;
import static com.luhu.computility.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
import static com.luhu.computility.module.member.enums.ErrorCodeConstants.*;
/**
* 客户企业 Service 实现类
*
* @author ljq
*/
@Service
@Validated
public class EnterpriseServiceImpl implements EnterpriseService {
@Resource
private EnterpriseMapper enterpriseMapper;
@Resource
private MemberUserService memberUserService;
@Override
public Long createEnterprise(EnterpriseSaveReqVO createReqVO) {
// 插入
EnterpriseDO enterprise = BeanUtils.toBean(createReqVO, EnterpriseDO.class);
enterpriseMapper.insert(enterprise);
// 返回
return enterprise.getId();
}
@Override
public Long createEnterpriseByMemberUser(Long userId, AppEnterpriseSaveReqVO createReqVO) {
// 插入
EnterpriseDO enterprise = BeanUtils.toBean(createReqVO, EnterpriseDO.class);
enterprise.setStatus(EnterpriseCheckStatus.UNCHECK.getValue());
enterprise.setMemberUserId(userId);
enterpriseMapper.insert(enterprise);
memberUserService.updateUser(userId, new AppMemberUserUpdateReqVO()
.setIdentityCard(createReqVO.getIdentityCard())
.setNationalEmblemFace(createReqVO.getNationalEmblemFace())
.setPortraitFace(createReqVO.getPortraitFace()));
// 返回
return enterprise.getId();
}
@Override
public void updateEnterprise(EnterpriseSaveReqVO updateReqVO) {
// 校验存在
validateEnterpriseExists(updateReqVO.getId());
// 更新
EnterpriseDO updateObj = BeanUtils.toBean(updateReqVO, EnterpriseDO.class);
enterpriseMapper.updateById(updateObj);
}
@Override
public void checkEnterprise(EnterpriseCheckReqVO checkReqVO) {
// 校验存在
validateEnterpriseExists(checkReqVO.getId());
// 更新
EnterpriseDO checkObj = BeanUtils.toBean(checkReqVO, EnterpriseDO.class);
enterpriseMapper.updateById(checkObj);
}
@Override
public void deleteEnterprise(Long id) {
// 校验存在
validateEnterpriseExists(id);
// 删除
enterpriseMapper.deleteById(id);
}
@Override
public void deleteEnterpriseListByIds(List<Long> ids) {
// 删除
enterpriseMapper.deleteByIds(ids);
}
private void validateEnterpriseExists(Long id) {
if (enterpriseMapper.selectById(id) == null) {
throw exception(ENTERPRISE_NOT_EXISTS);
}
}
@Override
public EnterpriseDO getEnterprise(Long id) {
return enterpriseMapper.selectById(id);
}
@Override
public PageResult<EnterpriseRespVO> getEnterprisePage(EnterprisePageReqVO pageReqVO) {
return enterpriseMapper.selectPage(pageReqVO);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment