提交 f9238cb1 作者: zhenjie

作业服务相关接口

上级 f7d4bef0
......@@ -210,8 +210,8 @@ public enum ResultEnum implements BaseErrorInfoInterface {
ACCOUNT_ALREADY_DELETED("10001", "此账号已经被删除"),
ACCOUNT_ALREADY_STOP("10002", "此账号已经被停用,不能登录此小程序,详情请联系管理员"),
INDUSTRY_NAME_CREATE_ERROR("20001", "行业名称请勿重复,请重新输入"),
INSPECTION_NAME_CREATE_ERROR("20002", "服务名称请勿重复,请重新输入"),
INDUSTRY_NAME_CREATE_ERROR("20001", "行业名称重复,请重新输入"),
INSPECTION_NAME_CREATE_ERROR("20002", "服务名称重复,请重新输入"),
INSPECTION_REPEAT("20003", "绑定服务重复"),
INDUSTRY_REPEAT("20004", "绑定行业重复"),
......@@ -410,7 +410,8 @@ public enum ResultEnum implements BaseErrorInfoInterface {
DEFAULT_DIRECTORY("3001", "默认目录不可删除或修改名称!"),
THE_NAME_OF_A_CLASS_MUST_BE_UNIQUE("3002", "一级分类名称重复"),
THE_CURRENT_CATEGORY_IS_ASSOCIATED_WITH_GOODS("3004", "当前分类已经关联商品请先删除商品"),
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE("3003", "同一级分类下面二级分类不能重复");
THE_NAME_OF_THE_SECONDARY_CLASS_MUST_BE_UNIQUE("3003", "同一级分类下面二级分类不能重复"),
NAME_DUPLICATION_ERROR("3005", "名称重复");
/**
* 错误码
*
......
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.Page;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.controller.BaseController;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import com.mmc.pms.service.inspection.CompanyInspectionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/**
* @author: zj
* @Date: 2023/8/4 16:26
*/
@Api(tags = {"团队服务"})
@RestController
@RequestMapping("/company-inspection/")
public class CompanyInspectionController extends BaseController {
@Autowired
private CompanyInspectionService companyInspectionService;
@ApiOperation(value = "新增单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody CompanyInspectionVO companyInspectionVO){
return companyInspectionService.insert(companyInspectionVO);
}
@ApiOperation(value = "修改单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody CompanyInspectionVO companyInspectionVO){
return companyInspectionService.update(companyInspectionVO);
}
@ApiOperation(value = "删除单位服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return companyInspectionService.remove(id);
}
@ApiOperation(value = "单位服务详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@GetMapping("getCompanyInspectionById")
public ResultBody<CompanyInspectionDTO> getCompanyInspectionById(@RequestParam Integer id, HttpServletRequest request){
return companyInspectionService.getCompanyInspectionById(id, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "pc-单位服务列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@PostMapping("listCompanyInspectionPage")
public ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(@Validated(value = {Page.class})
@RequestBody CompanyInspectionQO companyInspectionQO,
HttpServletRequest request){
return companyInspectionService.listCompanyInspectionPage(companyInspectionQO, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "修改备注")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("updateRemark")
public ResultBody updateRemark(@RequestParam Integer id, @RequestParam(required = false) String remark){
return companyInspectionService.updateRemark(id, remark);
}
@ApiOperation(value = "价格单位列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("listInspectionPriceUnit")
public ResultBody listInspectionPriceUnit(){
return companyInspectionService.listInspectionPriceUnit();
}
@ApiOperation(value = "单位服务列表-小程序展示")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInspectionDTO.class)})
@PostMapping("listAPPCompanyInspectionPage")
public ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(@Validated(value = {Page.class})
@RequestBody CompanyInspectionQO companyInspectionQO, HttpServletRequest request){
return companyInspectionService.listAPPCompanyInspectionPage(companyInspectionQO, this.getUserLoginInfoFromRedis(request));
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.Page;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import com.mmc.pms.service.inspection.IndustryTypeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/3 17:58
*/
@Api(tags = {"行业类型"})
@RestController
@RequestMapping("/industry/")
public class IndustryTypeController {
@Autowired
private IndustryTypeService industryTypeService;
@ApiOperation(value = "新增行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody IndustryTypeVO industryTypeVO){
return industryTypeService.insert(industryTypeVO);
}
@ApiOperation(value = "修改行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody IndustryTypeVO industryTypeVO){
return industryTypeService.update(industryTypeVO);
}
@ApiOperation(value = "删除行业")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return industryTypeService.remove(id);
}
@ApiOperation(value = "一级行业列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("listPages")
public ResultBody<IndustryTypeDTO> listPages(@Validated(value = {Page.class}) @RequestBody IndustryTypeQO industryTypeQO){
return industryTypeService.listPages(industryTypeQO);
}
@ApiOperation(value = "根据一级行业id查询二级服务列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = IndustryTypeDTO.class)})
@GetMapping("listInspectionsByIndustryTypeId")
public ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(@RequestParam Integer id){
return industryTypeService.listInspectionsByIndustryTypeId(id);
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import com.mmc.pms.service.inspection.InspectionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/4 15:32
*/
@Api(tags = {"服务"})
@RestController
@RequestMapping("/inspection/")
public class InspectionController {
@Autowired
private InspectionService inspectionService;
@ApiOperation(value = "新增服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody InspectionVO inspectionVO){
return inspectionService.insert(inspectionVO);
}
@ApiOperation(value = "修改服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody InspectionVO inspectionVO){
return inspectionService.update(inspectionVO);
}
@ApiOperation(value = "删除服务")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("remove")
public ResultBody remove(@RequestParam Integer id){
return inspectionService.remove(id);
}
}
package com.mmc.pms.controller.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import com.mmc.pms.service.inspection.InspectionTagService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author: zj
* @Date: 2023/8/4 15:33
*/
@Api(tags = {"服务标签"})
@RestController
@RequestMapping("/inspection-tag/")
public class InspectionTagController {
@Autowired
private InspectionTagService inspectionTagService;
@ApiOperation(value = "新增服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insert")
public ResultBody insert(@RequestBody InspectionTagVO inspectionTagVO){
return inspectionTagService.insert(inspectionTagVO);
}
@ApiOperation(value = "修改服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("update")
public ResultBody update(@RequestBody InspectionTagVO inspectionTagVO){
return inspectionTagService.update(inspectionTagVO);
}
@ApiOperation(value = "删除服务标签")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("delete")
public ResultBody delete(@RequestParam Integer id){
return inspectionTagService.delete(id);
}
@ApiOperation(value = "根据服务id查询标签列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("listByInspectionId")
public ResultBody<InspectionTagDTO> listByInspectionId(@RequestParam Integer id){
return inspectionTagService.listByInspectionId(id);
}
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.CompanyInspectionDO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionFileVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
@Mapper
public interface CompanyInspectionDao {
void insert(CompanyInspectionDO companyInspectionDO);
void update(CompanyInspectionDO companyInspectionDO);
void remove(Integer id);
CompanyInspectionDO getCompanyInspectionById(Integer id);
int countListCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
List<CompanyInspectionDO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
void batchInsertCompanyInspectionFile(List<CompanyInspectionFileVO> companyInspectionFiles);
void updateRemark(Integer id, String remark);
int countListAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
List<CompanyInspectionDO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.IndustryTypeDO;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/3 17:59
*/
@Mapper
public interface IndustryTypeDao {
int countSameName(Integer id, String typeName);
void insert(IndustryTypeDO industryTypeDO);
void update(IndustryTypeDO industryTypeDO);
void remove(Integer id);
int countListPages(IndustryTypeQO industryTypeQO);
List<IndustryTypeDO> listPages(IndustryTypeQO industryTypeQO);
List<InspectionDO> listInspectionsByIndustryTypeIdId(Integer industryTypeId);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.InspectionDO;
import org.apache.ibatis.annotations.Mapper;
/**
* @author: zj
* @Date: 2023/8/4 15:34
*/
@Mapper
public interface InspectionDao {
int countSameName(Integer id, String inspectionName);
void insert(InspectionDO inspectionDO);
void update(InspectionDO inspectionDO);
void remove(Integer id);
}
package com.mmc.pms.dao.inspection;
import com.mmc.pms.entity.inspection.InspectionTagDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/5 14:53
*/
@Mapper
public interface InspectionTagDao {
int countSameName(String tagName);
void insert(InspectionTagDO inspectionTagDO);
void update(InspectionTagDO inspectionTagDO);
void delete(Integer id);
List<InspectionTagDO> listByInspectionId(Integer id);
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 16:51
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionDO implements Serializable {
private static final long serialVersionUID = 7878853810484957829L;
private Integer id;
/**
* 单位id
*/
private Integer companyInfoId;
/**
* 服务范围
*/
private String serviceArea;
/**
* 服务id
*/
private Integer inspectionId;
/**
* 服务标签
*/
private Integer inspectionTagId;
/**
* 报价
*/
private BigDecimal price;
/**
* 报价说明
*/
private String priceRemark;
/**
* 价格单位
*/
private Integer inspectionPriceUnitId;
/**
* 详情页
*/
private String detailPage;
/**
* 销售状态,0停售,1在售
*/
private Integer saleState;
/**
* 备注
*/
private String remark;
private Date createTime;
IndustryTypeDO industryTypeDO;
InspectionDO inspectionDO;
InspectionTagDO inspectionTagDO;
List<CompanyInspectionFileDO> inspectionFileDOS;
public CompanyInspectionDTO buildCompanyInspectionDTO(){
return CompanyInspectionDTO.builder().id(this.id).companyInfoId(this.companyInfoId).serviceArea(this.serviceArea)
.inspectionId(this.inspectionId).inspectionTagId(this.inspectionTagId).price(this.price).priceRemark(this.priceRemark)
.inspectionPriceUnitId(this.inspectionPriceUnitId).detailPage(this.detailPage).saleState(this.getSaleState())
.remark(this.remark)
.industryTypeDTO(this.industryTypeDO == null ? null : this.industryTypeDO.buildIndustryTypeDTO())
.inspectionDTO(this.inspectionDO == null ? null : this.inspectionDO.buildInspectionDTO())
.inspectionTagDTO(this.inspectionTagDO == null ? null : this.inspectionTagDO.buildInspectionTagDTO())
.inspectionFirstImg(CollectionUtils.isEmpty(this.inspectionFileDOS) ? null :
this.inspectionFileDOS.stream().filter(i -> i.getFileType().equals(0) && i.getFirst().equals(1))
.findFirst().get().getFileUrl())
.inspectionFileDTOS(CollectionUtils.isEmpty(this.inspectionFileDOS) ? null :
this.inspectionFileDOS.stream().map(CompanyInspectionFileDO :: buildCompanyInspectionFileDTO)
.collect(Collectors.toList()))
.build();
}
public CompanyInspectionDO(CompanyInspectionVO companyInspectionVO) {
this.id = companyInspectionVO.getId();
this.companyInfoId = companyInspectionVO.getCompanyInfoId();
this.serviceArea = companyInspectionVO.getServiceArea();
this.inspectionId = companyInspectionVO.getInspectionId();
this.inspectionTagId = companyInspectionVO.getInspectionTagId();
this.price = companyInspectionVO.getPrice();
this.priceRemark = companyInspectionVO.getPriceRemark();
this.inspectionPriceUnitId = companyInspectionVO.getInspectionPriceUnitId();
this.detailPage = companyInspectionVO.getDetailPage();
this.saleState = companyInspectionVO.getSaleState();
this.remark = companyInspectionVO.getRemark();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.CompanyInspectionFileDTO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 16:59
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileDO implements Serializable {
private static final long serialVersionUID = -1708946698144647874L;
private Integer id;
private Integer fileType;
private Integer first;
private Integer companyInspectionId;
private String fileUrl;
public CompanyInspectionFileDTO buildCompanyInspectionFileDTO(){
return CompanyInspectionFileDTO.builder().id(id).fileType(fileType).first(first)
.companyInspectionId(companyInspectionId).fileUrl(fileUrl).build();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 16:23
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeDO implements Serializable {
private static final long serialVersionUID = -3416853218669751905L;
private Integer id;
/**
* 行业类型名称
*/
private String typeName;
/**
* 行业图标
*/
private String typeImg;
/**
* 行业描述
*/
private String description;
/**
* 售卖状态,0停售,1在售
*/
private Integer saleState;
/**
* 创建时间
*/
private Date createTime;
/**
* 服务列表
*/
private List<InspectionDO> inspectionDOS;
public IndustryTypeDO(IndustryTypeVO industryTypeVO) {
this.id = industryTypeVO.getId();
this.typeName = industryTypeVO.getTypeName();
this.typeImg = industryTypeVO.getTypeImg();
this.description = industryTypeVO.getDescription();
this.saleState = industryTypeVO.getSaleState();
}
public IndustryTypeDTO buildIndustryTypeDTO(){
return IndustryTypeDTO.builder().id(this.id).typeName(this.typeName).typeImg(this.typeImg)
.description(this.description).saleState(this.saleState).createTime(this.createTime)
.inspectionDTOS(CollectionUtils.isNotEmpty(this.inspectionDOS) ?
this.inspectionDOS.stream().map(InspectionDO::buildInspectionDTO).collect(Collectors.toList()) : null)
.build();
}
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @author: zj
* @Date: 2023/8/3 16:36
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionDO implements Serializable {
private static final long serialVersionUID = -6888618752080050167L;
private Integer id;
/**
* 服务编号
*/
private String inspectionNo;
/**
* 服务名称
*/
private String inspectionName;
/**
* 行业类型id
*/
private Integer industryTypeId;
/**
* 服务图标
*/
private String inspectionImg;
/**
* 服务描述
*/
private String inspectionDescription;
/**
* 销售状态,0停售,1在售
*/
private Integer saleState;
/**
* 案例图
*/
private String caseImg;
/**
* 案例视频
*/
private String caseVideo;
/**
* 生成时间
*/
private Date createTime;
public InspectionDO(InspectionVO inspectionVO){
this.id = inspectionVO.getId();
this.industryTypeId = inspectionVO.getIndustryTypeId();
this.inspectionName = inspectionVO.getInspectionName();
this.inspectionNo = inspectionVO.getInspectionNo();
this.inspectionDescription = inspectionVO.getInspectionDescription();
this.inspectionImg = inspectionVO.getInspectionImg();
this.saleState = inspectionVO.getSaleState();
this.caseImg = inspectionVO.getCaseImg();
this.caseVideo = inspectionVO.getCaseVideo();
}
public InspectionDTO buildInspectionDTO(){
return InspectionDTO.builder().id(this.id).industryTypeId(this.industryTypeId).inspectionNo(this.inspectionNo)
.inspectionName(this.inspectionName).inspectionDescription(this.inspectionDescription).inspectionImg(this.inspectionImg)
.saleState(this.saleState).caseImg(this.caseImg).caseVideo(this.caseVideo).build();
}
}
package com.mmc.pms.entity.inspection;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 17:43
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionPriceUnitDO implements Serializable {
private static final long serialVersionUID = -7713968479630413576L;
private Integer id;
private String unitName;
}
package com.mmc.pms.entity.inspection;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/3 16:43
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagDO implements Serializable {
private static final long serialVersionUID = 7161953693996458346L;
private Integer id;
/**
* 标签名称
*/
private String tagName;
/**
* 服务id
*/
private Integer inspectionId;
public InspectionTagDO(InspectionTagVO inspectionTagVO) {
this.id = inspectionTagVO.getId();
this.tagName = inspectionTagVO.getTagName();
this.inspectionId = inspectionTagVO.getInspectionId();
}
public InspectionTagDTO buildInspectionTagDTO() {
return InspectionTagDTO.builder().id(this.id).tagName(this.tagName).inspectionId(this.inspectionId).build();
}
}
package com.mmc.pms.enums;
/**
* @author: zj
* @Date: 2023/7/26 16:25
*/
public enum CompanyTypeEnums {
KBT(0, "科比特"),
FRANCHISEE(1, "加盟商");
private Integer type;
private String name;
CompanyTypeEnums(Integer type, String name) {
this.type = type;
this.name = name;
}
public Integer getType() {
return type;
}
public String getName() {
return name;
}
}
package com.mmc.pms.enums;
import org.springframework.stereotype.Component;
/**
* @author: zj
* @Date: 2023/8/8 10:41
*/
public enum InspectionPriceUnitEnums {
DAY(1, "天"),
TIMES(2, "次"),
MILES(3, "公里"),
ACRE(4, "亩")
;
InspectionPriceUnitEnums(Integer id, String unitName) {
this.id = id;
this.unitName = unitName;
}
public Integer getId() {
return id;
}
public String getUnitName() {
return unitName;
}
private Integer id;
private String unitName;
}
......@@ -6,6 +6,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO;
import com.mmc.pms.auth.dto.CompanyInfoDTO;
import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.UserAccountSimpleDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.feign.hystrix.UserAppApiHystrix;
import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.UserAccountQO;
......@@ -79,8 +80,11 @@ public interface UserAppApi {
* @return
*/
@GetMapping("/userapp/company/getCompanyInfoById")
String getCompanyInfoById(@ApiParam(value = "单位", required = true) @RequestParam Integer id, @RequestHeader("token") String token);
ResultBody<CompanyInfoVO> getCompanyInfoById(@ApiParam(value = "单位", required = true) @RequestParam Integer id, @RequestHeader("token") String token);
@PostMapping("/userapp/company/listCompanyPageBack")
List<CompanyInfoVO> listCompanyPage(@ApiParam(value = "单位查询QO", required = true) @RequestBody CompanyInfoQO companyInfoQO, @RequestHeader("token") String token);
@PostMapping("/userapp/company/listCompanyInfoByIds")
List<CompanyInfoVO> feignListCompanyInfoByIds(@RequestBody List<Integer> ids, @RequestHeader("token") String token);
}
......@@ -4,6 +4,7 @@ import com.mmc.pms.auth.dto.BUserAccountQO;
import com.mmc.pms.auth.dto.CompanyInfoDTO;
import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.UserAccountSimpleDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.UserAccountQO;
......@@ -42,7 +43,7 @@ public class UserAppApiHystrix implements UserAppApi {
}
@Override
public String getCompanyInfoById(Integer id, String token) {
public ResultBody<CompanyInfoVO> getCompanyInfoById(Integer id, String token) {
log.error("熔断:feignListAppUserAccount:{}", id);
return null;
}
......@@ -52,4 +53,10 @@ public class UserAppApiHystrix implements UserAppApi {
log.error("熔断:feignListAppUserAccount:{}", companyInfoQO);
return null;
}
@Override
public List<CompanyInfoVO> feignListCompanyInfoByIds(List<Integer> ids, String token) {
log.error("熔断:feignListCompanyInfoByIds:{}", ids);
return null;
}
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:41
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionDTO implements Serializable {
private static final long serialVersionUID = -7994243059824987869L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "单位id")
private Integer companyInfoId;
@ApiModelProperty(value = "服务范围")
private String serviceArea;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "服务标签")
private Integer inspectionTagId;
@ApiModelProperty(value = "报价")
private BigDecimal price;
@ApiModelProperty(value = "报价说明")
private String priceRemark;
@ApiModelProperty(value = "价格单位")
private Integer inspectionPriceUnitId;
@ApiModelProperty(value = "详情页")
private String detailPage;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "服务主图")
private String inspectionFirstImg;
@ApiModelProperty(value = "作业团队")
private String CompanyName;
@ApiModelProperty(value = "行业")
private IndustryTypeDTO industryTypeDTO;
@ApiModelProperty(value = "服务")
private InspectionDTO inspectionDTO;
@ApiModelProperty(value = "团队服务标签")
private InspectionTagDTO inspectionTagDTO;
@ApiModelProperty(value = "团队服务图片/视频")
private List<CompanyInspectionFileDTO> inspectionFileDTOS;
}
package com.mmc.pms.model.inspection.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 16:14
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileDTO implements Serializable {
private static final long serialVersionUID = -542881175952018418L;
private Integer id;
private Integer fileType;
private Integer first;
private Integer companyInspectionId;
private String fileUrl;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/4 14:54
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeDTO implements Serializable {
private static final long serialVersionUID = -5832618357203415274L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "行业图标")
private String typeImg;
@ApiModelProperty(value = "行业描述")
private String description;
@ApiModelProperty(value = "售卖状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "服务列表")
private List<InspectionDTO> inspectionDTOS;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/4 16:43
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionDTO implements Serializable {
private static final long serialVersionUID = 8316723266007785996L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "服务编号")
private String inspectionNo;
@ApiModelProperty(value = "服务名称")
private String inspectionName;
@ApiModelProperty(value = "行业类型id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务图标")
private String inspectionImg;
@ApiModelProperty(value = "服务描述")
private String inspectionDescription;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "案例图")
private String caseImg;
@ApiModelProperty(value = "案例视频")
private String caseVideo;
@ApiModelProperty(value = "团队服务列表")
List<CompanyInspectionDTO> companyInspectionDTOS;
}
package com.mmc.pms.model.inspection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/5 14:47
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagDTO implements Serializable {
private static final long serialVersionUID = -2590417413375903686L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "标签名称")
private String tagName;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 14:20
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionFileVO implements Serializable {
private static final long serialVersionUID = 2047984452706881958L;
private Integer id;
@ApiModelProperty(value = "文件类型,0图片,1视频")
private Integer fileType;
@ApiModelProperty(value = "是否第一张主图,0非主图,1主图")
private Integer first;
@ApiModelProperty(value = "团队服务id")
private Integer companyInspectionId;
@ApiModelProperty(value = "地址")
private String fileUrl;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* @author: zj
* @Date: 2023/8/7 14:19
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionVO implements Serializable {
private static final long serialVersionUID = 6831143000193727239L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "单位id")
private Integer companyInfoId;
@ApiModelProperty(value = "服务范围")
private String serviceArea;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "服务标签")
private Integer inspectionTagId;
@ApiModelProperty(value = "报价")
private BigDecimal price;
@ApiModelProperty(value = "报价说明")
private String priceRemark;
@ApiModelProperty(value = "价格单位")
private Integer inspectionPriceUnitId;
@ApiModelProperty(value = "详情页")
private String detailPage;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "图片/视频")
private List<CompanyInspectionFileVO> companyInspectionFiles;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 11:04
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class IndustryTypeVO implements Serializable {
private static final long serialVersionUID = 5109540128305323107L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "行业图标")
private String typeImg;
@ApiModelProperty(value = "行业描述")
private String description;
@ApiModelProperty(value = "售卖状态,0停售,1在售")
private Integer saleState;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/5 14:49
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionTagVO implements Serializable {
private static final long serialVersionUID = -725386990782995459L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "标签名称")
private String tagName;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
}
package com.mmc.pms.model.inspection.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 16:37
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InspectionVO implements Serializable {
private static final long serialVersionUID = 3417959015512957324L;
@ApiModelProperty(value = "id")
private Integer id;
@ApiModelProperty(value = "服务编号")
private String inspectionNo;
@ApiModelProperty(value = "服务名称")
private String inspectionName;
@ApiModelProperty(value = "行业类型id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务图标")
private String inspectionImg;
@ApiModelProperty(value = "服务描述")
private String inspectionDescription;
@ApiModelProperty(value = "销售状态,0停售,1在售")
private Integer saleState;
@ApiModelProperty(value = "案例图")
private String caseImg;
@ApiModelProperty(value = "案例视频")
private String caseVideo;
}
package com.mmc.pms.model.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/7 14:44
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompanyInspectionQO implements Serializable {
private static final long serialVersionUID = -5974353165131012551L;
@ApiModelProperty(value = "关键字")
private String keyword;
@ApiModelProperty(value = "行业id")
private Integer industryTypeId;
@ApiModelProperty(value = "服务id")
private Integer inspectionId;
@ApiModelProperty(value = "作业团队id")
private Integer companyInfoId;
@ApiModelProperty(value = "页码", required = true)
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(message = "每页显示数不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.pms.model.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/8/4 14:28
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class IndustryTypeQO implements Serializable {
private static final long serialVersionUID = 1983281419136483277L;
@ApiModelProperty(value = "行业类型名称")
private String typeName;
@ApiModelProperty(value = "页码", required = true)
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(message = "每页显示数不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
......@@ -15,6 +15,7 @@ import com.mmc.pms.entity.Categories;
import com.mmc.pms.entity.InspComtDO;
import com.mmc.pms.entity.ServiceDO;
import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.qo.CompanyInfoQO;
import com.mmc.pms.model.qo.ServiceQO;
import com.mmc.pms.model.work.dto.ServiceDTO;
......@@ -84,13 +85,17 @@ public class BackstageTaskServiceImpl implements BackstageTaskService {
@Override
public ResultBody<ServiceDTO> queryById(Integer id, HttpServletRequest request) {
ServiceDO serviceDO = backstageTaskServiceDao.queryById(id);
String token =
userAppApi.getCompanyInfoById(serviceDO.getCompanyId(), request.getHeader("token"));
JSONObject jsonObject = JSONObject.parseObject(token);
CompanyInfoDTO companyInfoDTO =
JSON.parseObject(
String.valueOf((JSONObject) jsonObject.get("result")), CompanyInfoDTO.class);
String companyName = companyInfoDTO.getCompanyName();
// String token =
// userAppApi.getCompanyInfoById(serviceDO.getCompanyId(), request.getHeader("token"));
// JSONObject jsonObject = JSONObject.parseObject(token);
// CompanyInfoDTO companyInfoDTO =
// JSON.parseObject(
// String.valueOf((JSONObject) jsonObject.get("result")), CompanyInfoDTO.class);
String companyName = null;
ResultBody<CompanyInfoVO> res = userAppApi.getCompanyInfoById(id, request.getHeader("token"));
if (res.getResult() != null) {
companyName = res.getResult().getCompanyName();
}
ServiceDTO serviceDTO = new ServiceDTO(serviceDO, companyName);
Map<Integer, String> categoriesNameMap =
getCategoriesNameByIds(
......
package com.mmc.pms.service.inspection;
import com.mmc.pms.auth.dto.LoginSuccessDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
public interface CompanyInspectionService {
ResultBody insert(CompanyInspectionVO companyInspectionVO);
ResultBody update(CompanyInspectionVO companyInspectionVO);
ResultBody remove(Integer id);
ResultBody<CompanyInspectionDTO> getCompanyInspectionById(Integer id, LoginSuccessDTO loginSuccessDTO);
ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO);
ResultBody updateRemark(Integer id, String remark);
ResultBody listInspectionPriceUnit();
ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
/**
* @author: zj
* @Date: 2023/8/3 18:00
*/
public interface IndustryTypeService {
ResultBody insert(IndustryTypeVO industryTypeVO);
ResultBody update(IndustryTypeVO industryTypeVO);
ResultBody remove(Integer id);
ResultBody listPages(IndustryTypeQO industryTypeQO);
ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(Integer id);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.vo.InspectionVO;
/**
* @author: zj
* @Date: 2023/8/4 16:31
*/
public interface InspectionService {
ResultBody insert(InspectionVO inspectionVO);
ResultBody update(InspectionVO inspectionVO);
ResultBody remove(Integer id);
}
package com.mmc.pms.service.inspection;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
/**
* @author: zj
* @Date: 2023/8/5 14:54
*/
public interface InspectionTagService {
ResultBody insert(InspectionTagVO inspectionTagVO);
ResultBody update(InspectionTagVO inspectionTagVO);
ResultBody delete(Integer id);
ResultBody<InspectionTagDTO> listByInspectionId(Integer id);
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.auth.dto.CompanyInfoVO;
import com.mmc.pms.auth.dto.LoginSuccessDTO;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.dao.inspection.CompanyInspectionDao;
import com.mmc.pms.entity.inspection.CompanyInspectionDO;
import com.mmc.pms.enums.CompanyTypeEnums;
import com.mmc.pms.enums.InspectionPriceUnitEnums;
import com.mmc.pms.feign.UserAppApi;
import com.mmc.pms.model.inspection.dto.CompanyInspectionDTO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.vo.CompanyInspectionVO;
import com.mmc.pms.model.qo.CompanyInspectionQO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.inspection.CompanyInspectionService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/7 14:31
*/
@Service
public class CompanyInspectionServiceImpl implements CompanyInspectionService {
@Autowired
private CompanyInspectionDao companyInspectionDao;
@Autowired
private UserAppApi userAppApi;
@Override
public ResultBody insert(CompanyInspectionVO companyInspectionVO) {
CompanyInspectionDO companyInspectionDO = new CompanyInspectionDO(companyInspectionVO);
companyInspectionDao.insert(companyInspectionDO);
// 插入图片、视频
if (CollectionUtils.isNotEmpty(companyInspectionVO.getCompanyInspectionFiles())) {
companyInspectionVO.getCompanyInspectionFiles().stream().forEach(i -> i.setCompanyInspectionId(companyInspectionDO.getId()));
companyInspectionDao.batchInsertCompanyInspectionFile(companyInspectionVO.getCompanyInspectionFiles());
}
return ResultBody.success();
}
@Override
public ResultBody update(CompanyInspectionVO companyInspectionVO) {
CompanyInspectionDO companyInspectionDO = new CompanyInspectionDO(companyInspectionVO);
companyInspectionDao.update(companyInspectionDO);
// 修改插入图片、视频
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
companyInspectionDao.remove(id);
return ResultBody.success();
}
@Override
public ResultBody<CompanyInspectionDTO> getCompanyInspectionById(Integer id, LoginSuccessDTO loginSuccessDTO) {
CompanyInspectionDO companyInspectionDO = companyInspectionDao.getCompanyInspectionById(id);
if (companyInspectionDO != null) {
CompanyInspectionDTO companyInspectionDTO = companyInspectionDO.buildCompanyInspectionDTO();
ResultBody<CompanyInfoVO> res = userAppApi.getCompanyInfoById(companyInspectionDO.getCompanyInfoId(), loginSuccessDTO.getToken());
if (res.getResult() != null) {
companyInspectionDTO.setCompanyName(res.getResult().getCompanyName());
}
return ResultBody.success(companyInspectionDTO);
}
return ResultBody.success();
}
@Override
public ResultBody<CompanyInspectionDTO> listCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO) {
if (loginSuccessDTO.getCompanyInfoVO().getCompanyType().equals(CompanyTypeEnums.FRANCHISEE.getType())) {
companyInspectionQO.setCompanyInfoId(loginSuccessDTO.getCompanyInfoVO().getId());
}
int count = companyInspectionDao.countListCompanyInspectionPage(companyInspectionQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(companyInspectionQO.getPageNo(), companyInspectionQO.getPageSize(), count));
}
int pageNo = companyInspectionQO.getPageNo();
companyInspectionQO.buildCurrentPage();
List<CompanyInspectionDO> companyInspectionDOS = companyInspectionDao.listCompanyInspectionPage(companyInspectionQO);
List<CompanyInspectionDTO> companyInspectionDTOS = companyInspectionDOS.stream().map(CompanyInspectionDO::buildCompanyInspectionDTO).collect(Collectors.toList());
// 设置单位名称
setCompanyName(companyInspectionDTOS, loginSuccessDTO.getToken());
return ResultBody.success(PageResult.buildPage(pageNo, companyInspectionQO.getPageSize(), count, companyInspectionDTOS));
}
@Override
public ResultBody updateRemark(Integer id, String remark) {
companyInspectionDao.updateRemark(id, remark);
return ResultBody.success();
}
@Override
public ResultBody listInspectionPriceUnit() {
List<Map<String, Object>> list = new ArrayList<>();
for (InspectionPriceUnitEnums inspectionPriceUnitEnums : InspectionPriceUnitEnums.values()) {
Map<String, Object> map = new HashMap<>();
map.put("id", inspectionPriceUnitEnums.getId());
map.put("unitName", inspectionPriceUnitEnums.getUnitName());
list.add(map);
}
return ResultBody.success(list);
}
@Override
public ResultBody<IndustryTypeDTO> listAPPCompanyInspectionPage(CompanyInspectionQO companyInspectionQO, LoginSuccessDTO loginSuccessDTO) {
int count = companyInspectionDao.countListAPPCompanyInspectionPage(companyInspectionQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(companyInspectionQO.getPageNo(), companyInspectionQO.getPageSize(), count));
}
int pageNo = companyInspectionQO.getPageNo();
companyInspectionQO.buildCurrentPage();
List<CompanyInspectionDO> companyInspectionDOS = companyInspectionDao.listAPPCompanyInspectionPage(companyInspectionQO);
List<CompanyInspectionDTO> companyInspectionDTOS = companyInspectionDOS.stream().map(CompanyInspectionDO::buildCompanyInspectionDTO).collect(Collectors.toList());
setCompanyName(companyInspectionDTOS, loginSuccessDTO.getToken());
return ResultBody.success(PageResult.buildPage(pageNo, companyInspectionQO.getPageSize(), count, companyInspectionDTOS));
}
public void setCompanyName(List<CompanyInspectionDTO> companyInspectionDTOS, String token){
// 单位名称查询
List<Integer> companyInfoIds = companyInspectionDTOS.stream().map(i -> i.getCompanyInfoId()).collect(Collectors.toList());
List<CompanyInfoVO> companyInfoVOS = userAppApi.feignListCompanyInfoByIds(companyInfoIds, token);
if (CollectionUtils.isNotEmpty(companyInfoVOS)){
Map<Integer, String> collect = companyInfoVOS.stream().collect(Collectors.toMap(CompanyInfoVO::getId, CompanyInfoVO::getCompanyName));
companyInspectionDTOS.stream().forEach(i -> i.setCompanyName(collect.get(i.getCompanyInfoId())));
}
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.IndustryTypeDao;
import com.mmc.pms.entity.inspection.IndustryTypeDO;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.inspection.dto.IndustryTypeDTO;
import com.mmc.pms.model.inspection.dto.InspectionDTO;
import com.mmc.pms.model.inspection.vo.IndustryTypeVO;
import com.mmc.pms.model.qo.IndustryTypeQO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.inspection.IndustryTypeService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/3 18:01
*/
@Service
public class IndustryTypeServiceImpl implements IndustryTypeService {
@Autowired
private IndustryTypeDao industryTypeDao;
@Override
public ResultBody insert(IndustryTypeVO industryTypeVO) {
int count = industryTypeDao.countSameName(industryTypeVO.getId(), industryTypeVO.getTypeName());
if (count > 0) {
return ResultBody.error(ResultEnum.INDUSTRY_NAME_CREATE_ERROR);
}
IndustryTypeDO industryTypeDO = new IndustryTypeDO(industryTypeVO);
industryTypeDao.insert(industryTypeDO);
return ResultBody.success();
}
@Override
public ResultBody update(IndustryTypeVO industryTypeVO) {
int count = industryTypeDao.countSameName(industryTypeVO.getId(), industryTypeVO.getTypeName());
if (count > 0) {
return ResultBody.error(ResultEnum.INDUSTRY_NAME_CREATE_ERROR);
}
IndustryTypeDO industryTypeDO = new IndustryTypeDO(industryTypeVO);
industryTypeDao.update(industryTypeDO);
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
// 有绑定则不能删除
industryTypeDao.remove(id);
return ResultBody.success();
}
@Override
public ResultBody listPages(IndustryTypeQO industryTypeQO) {
int count = industryTypeDao.countListPages(industryTypeQO);
if (count == 0) {
return ResultBody.success(PageResult.buildPage(industryTypeQO.getPageNo(), industryTypeQO.getPageSize(), count));
}
int pageNo = industryTypeQO.getPageNo();
industryTypeQO.buildCurrentPage();
List<IndustryTypeDO> industryTypeDOS = industryTypeDao.listPages(industryTypeQO);
List<IndustryTypeDTO> pageList = industryTypeDOS.stream().map(IndustryTypeDO::buildIndustryTypeDTO).collect(Collectors.toList());
return ResultBody.success(PageResult.buildPage(pageNo, industryTypeQO.getPageSize(), count, pageList));
}
@Override
public ResultBody<IndustryTypeDTO> listInspectionsByIndustryTypeId(Integer id) {
List<InspectionDO> industryTypeDOS = industryTypeDao.listInspectionsByIndustryTypeIdId(id);
if (CollectionUtils.isNotEmpty(industryTypeDOS)) {
List<InspectionDTO> inspectionDTOS = industryTypeDOS.stream().map(InspectionDO::buildInspectionDTO).collect(Collectors.toList());
return ResultBody.success(inspectionDTOS);
}
return ResultBody.success();
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.InspectionDao;
import com.mmc.pms.entity.inspection.InspectionDO;
import com.mmc.pms.model.inspection.vo.InspectionVO;
import com.mmc.pms.service.inspection.InspectionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author: zj
* @Date: 2023/8/4 16:31
*/
@Service
public class InspectionServiceImpl implements InspectionService {
@Autowired
private InspectionDao inspectionDao;
@Override
public ResultBody insert(InspectionVO inspectionVO) {
InspectionDO inspectionDO = new InspectionDO(inspectionVO);
int count = inspectionDao.countSameName(inspectionVO.getId(), inspectionVO.getInspectionName());
if (count > 0) {
return ResultBody.error(ResultEnum.INSPECTION_NAME_CREATE_ERROR);
}
inspectionDao.insert(inspectionDO);
return ResultBody.success();
}
@Override
public ResultBody update(InspectionVO inspectionVO) {
InspectionDO inspectionDO = new InspectionDO(inspectionVO);
int count = inspectionDao.countSameName(inspectionVO.getId(), inspectionVO.getInspectionName());
if (count > 0) {
return ResultBody.error(ResultEnum.INSPECTION_NAME_CREATE_ERROR);
}
inspectionDao.update(inspectionDO);
return ResultBody.success();
}
@Override
public ResultBody remove(Integer id) {
inspectionDao.remove(id);
return ResultBody.success();
}
}
package com.mmc.pms.service.inspection.impl;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.dao.inspection.InspectionTagDao;
import com.mmc.pms.entity.inspection.InspectionTagDO;
import com.mmc.pms.model.inspection.dto.InspectionTagDTO;
import com.mmc.pms.model.inspection.vo.InspectionTagVO;
import com.mmc.pms.service.inspection.InspectionTagService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
* @Date: 2023/8/5 14:54
*/
@Service
public class InspectionTagServiceImpl implements InspectionTagService {
@Autowired
private InspectionTagDao inspectionTagDao;
@Override
public ResultBody insert(InspectionTagVO inspectionTagVO) {
int count = inspectionTagDao.countSameName(inspectionTagVO.getTagName());
if (count > 0) {
return ResultBody.error(ResultEnum.NAME_DUPLICATION_ERROR);
}
InspectionTagDO inspectionTagDO = new InspectionTagDO(inspectionTagVO);
inspectionTagDao.insert(inspectionTagDO);
return ResultBody.success();
}
@Override
public ResultBody update(InspectionTagVO inspectionTagVO) {
int count = inspectionTagDao.countSameName(inspectionTagVO.getTagName());
if (count > 0) {
return ResultBody.error(ResultEnum.NAME_DUPLICATION_ERROR);
}
InspectionTagDO inspectionTagDO = new InspectionTagDO(inspectionTagVO);
inspectionTagDao.update(inspectionTagDO);
return ResultBody.success();
}
@Override
public ResultBody delete(Integer id) {
inspectionTagDao.delete(id);
return ResultBody.success();
}
@Override
public ResultBody<InspectionTagDTO> listByInspectionId(Integer id) {
List<InspectionTagDO> inspectionTagDOS = inspectionTagDao.listByInspectionId(id);
if (CollectionUtils.isNotEmpty(inspectionTagDOS)){
List<InspectionTagDTO> inspectionTagDTOS = inspectionTagDOS.stream().map(InspectionTagDO::buildInspectionTagDTO).collect(Collectors.toList());
return ResultBody.success(inspectionTagDTOS);
}
return ResultBody.success();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.CompanyInspectionDao">
<resultMap id="companyInspectionResultMap" type="com.mmc.pms.entity.inspection.CompanyInspectionDO">
<id property="id" column="id"/>
<result property="companyInfoId" column="company_info_id"/>
<result property="serviceArea" column="service_area"/>
<result property="inspectionId" column="inspection_id"/>
<result property="inspectionTagId" column="inspection_tag_id"/>
<result property="price" column="price"/>
<result property="priceRemark" column="price_remark"/>
<result property="inspectionPriceUnitId" column="inspection_price_unit_id"/>
<result property="detailPage" column="detail_page"/>
<result property="saleState" column="sale_state"/>
<result property="remark" column="remark"/>
<result property="createTime" column="create_time"/>
<association property="industryTypeDO" javaType="com.mmc.pms.entity.inspection.IndustryTypeDO">
<id property="id" column="industry_type_id"/>
<result property="typeName" column="type_name"/>
</association>
<association property="inspectionDO" javaType="com.mmc.pms.entity.inspection.InspectionDO">
<id property="id" column="inspection_id"/>
<result property="inspectionNo" column="inspection_no"/>
<result property="inspectionName" column="inspection_name"/>
</association>
<association property="inspectionTagDO" javaType="com.mmc.pms.entity.inspection.InspectionTagDO">
<id property="id" column="inspection_id"/>
<result property="tagName" column="tag_name"/>
<result property="inspectionId" column="inspection_id"/>
</association>
<collection property="inspectionFileDOS" ofType="com.mmc.pms.entity.inspection.CompanyInspectionFileDO">
<id property="id" column="company_inspection_file_id"/>
<result property="fileType" column="file_type"/>
<result property="first" column="first"/>
<result property="companyInspectionId" column="id"/>
<result property="fileUrl" column="file_url"/>
</collection>
</resultMap>
<insert id="insert" keyProperty="id" useGeneratedKeys="true" parameterType="com.mmc.pms.entity.inspection.CompanyInspectionDO">
insert into company_inspection(company_info_id, service_area, inspection_id, inspection_tag_id, price, price_remark, inspection_price_unit_id,
detail_page, sale_state, remark, create_time)
values (#{companyInfoId}, #{serviceArea}, #{inspectionId}, #{inspectionTagId}, #{price}, #{priceRemark}, #{inspectionPriceUnitId},
#{detailPage}, #{saleState}, #{remark}, NOW())
</insert>
<insert id="batchInsertCompanyInspectionFile">
insert into company_inspection_file(file_type, `first`, company_inspection_id, file_url, create_time) values
<foreach collection="list" item="item" separator=",">
(#{item.fileType}, #{item.first}, #{item.companyInspectionId}, #{item.fileUrl}, NOW())
</foreach>
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.CompanyInspectionDO">
update company_inspection
<set>
<if test="companyInfoId">
company_info_id = #{companyInfoId},
</if>
<if test="serviceArea">
service_area = #{serviceArea},
</if>
<if test="inspectionId">
inspection_id = #{inspectionId},
</if>
<if test="inspectionTagId">
inspection_tag_id = #{inspectionTagId},
</if>
<if test="price">
price = #{price},
</if>
<if test="priceRemark">
price_remark = #{priceRemark},
</if>
<if test="inspectionPriceUnitId">
inspection_price_unit_id = #{inspectionPriceUnitId},
</if>
<if test="detailPage">
detail_page = #{detailPage},
</if>
<if test="saleState">
sale_state = #{saleState},
</if>
<if test="remark">
remark = #{remark}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update company_inspection set is_deleted = 1 where id = #{id}
</update>
<update id="updateRemark">
update company_inspection set remark = #{remark} where id = #{id}
</update>
<select id="getCompanyInspectionById" resultMap="companyInspectionResultMap">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.id = #{id} and cins.is_deleted = 0
</select>
<select id="countListCompanyInspectionPage" resultType="java.lang.Integer" parameterType="com.mmc.pms.model.qo.CompanyInspectionQO">
select count(*)
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
where cins.is_deleted = 0
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="listCompanyInspectionPage" resultMap="companyInspectionResultMap" parameterType="com.mmc.pms.model.qo.CompanyInspectionQO">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.is_deleted = 0
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="countListAPPCompanyInspectionPage" resultType="java.lang.Integer">
select count(*)
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
where cins.is_deleted = 0 and cins.sale_state = 1
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="inspectionId != null">
and cins.inspection_id = #{inspectionId}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
<select id="listAPPCompanyInspectionPage" resultMap="companyInspectionResultMap">
select cins.id, cins.company_info_id, cins.service_area, cins.inspection_id, cins.inspection_tag_id, cins.price,
cins.price_remark, cins.inspection_price_unit_id,cins.detail_page, cins.sale_state, cins.remark, cins.create_time,
it.id as industry_type_id, it.type_name,
ins.id as inspection_id, ins.inspection_no, ins.inspection_name,
itag.id as inspection_tag_id, itag.tag_name,
cif.id as company_inspection_file_id, cif.file_type, cif.`first`, cif.file_url
from company_inspection cins INNER JOIN inspection ins ON ins.id = cins.inspection_id
INNER JOIN industry_type it ON it.id = ins.industry_type_id
INNER JOIN inspection_tag itag ON itag.inspection_id = ins.id
INNER JOIN company_inspection_file cif ON cif.company_inspection_id = cins.id
where cins.is_deleted = 0 and cins.sale_state = 1
<if test="keyword != null">
and ins.inspection_name = #{keyword}
</if>
<if test="inspectionId != null">
and cins.inspection_id = #{inspectionId}
</if>
<if test="industryTypeId != null">
and it.id = #{industryTypeId}
</if>
<if test="companyInfoId != null">
and cins.company_info_id = #{companyInfoId}
</if>
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.IndustryTypeDao">
<resultMap id="industryTypeResMap" type="com.mmc.pms.entity.inspection.IndustryTypeDO">
<id property="id" column="id"/>
<result property="typeName" column="type_name"/>
<result property="typeImg" column="type_img"/>
<result property="description" column="description"/>
<result property="saleState" column="sale_state"/>
<result property="createTime" column="create_time"/>
<collection property="inspectionDOS" javaType="java.util.ArrayList"
select="listInspectionsByIndustryTypeIdId"
ofType="com.mmc.pms.entity.inspection.InspectionDO" column="{industryTypeId=id}">
</collection>
</resultMap>
<select id="listInspectionsByIndustryTypeIdId" resultType="com.mmc.pms.entity.inspection.InspectionDO">
select ins.id , ins.inspection_no, ins.inspection_name, ins.industry_type_id, ins.inspection_img,
ins.inspection_description, ins.sale_state as ins_sale_state, ins.case_img, ins.case_video
from inspection ins
where ins.is_deleted = 0 and ins.industry_type_id = #{industryTypeId} order by ins.id desc
</select>
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.IndustryTypeDO" keyProperty="id" useGeneratedKeys="true">
insert into industry_type(type_name, type_img, description, sale_state, create_time)
values(#{typeName}, #{typeImg}, #{description}, #{saleState}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.IndustryTypeDO" >
update industry_type
<set>
<if test="typeName != null">
type_name = #{typeName},
</if>
<if test="typeImg != null">
type_img = #{typeImg},
</if>
<if test="description != null">
description = #{description},
</if>
<if test="saleState != null">
sale_state = #{saleState}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update industry_type set is_deleted = 1 where id = #{id}
</update>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from industry_type it where it.is_deleted = 0
<if test="id != null">
and it.id != #{id}
</if>
<if test="typeName != null">
and it.type_name = #{typeName}
</if>
</select>
<select id="countListPages" resultType="java.lang.Integer"
parameterType="com.mmc.pms.model.qo.IndustryTypeQO">
select count(*) from industry_type it
where it.is_deleted = 0
<if test="typeName != null">
and it.type_name like concat('%',#{typeName},'%')
</if>
</select>
<select id="listPages" resultMap="industryTypeResMap"
parameterType="com.mmc.pms.model.qo.IndustryTypeQO">
select it.id, it.type_name, it.type_img, it.description, it.sale_state, it.is_deleted, it.create_time
from industry_type it
where it.is_deleted = 0
<if test="typeName != null">
and it.type_name like concat('%',#{typeName},'%')
</if>
order by it.id DESC
limit #{pageNo},#{pageSize}
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.InspectionDao">
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.InspectionDO" keyProperty="id" useGeneratedKeys="true">
insert into inspection(inspection_no, inspection_name, industry_type_id, inspection_img, inspection_description, sale_state, case_img, case_video, create_time)
values(#{inspectionNo}, #{inspectionName}, #{industryTypeId}, #{inspectionImg}, #{inspectionDescription}, #{saleState}, #{caseImg}, #{caseVideo}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.InspectionDO">
update inspection
<set>
<if test="inspectionNo != null">
inspection_no = #{inspectionNo},
</if>
<if test="inspectionName != null">
inspection_name = #{inspectionName},
</if>
<if test="industryTypeId != null">
industry_type_id = #{industryTypeId},
</if>
<if test="inspectionImg != null">
inspection_img = #{inspectionImg},
</if>
<if test="inspectionDescription != null">
inspection_description = #{inspectionDescription},
</if>
<if test="saleState != null">
sale_state = #{saleState},
</if>
<if test="caseImg != null">
case_img = #{caseImg},
</if>
<if test="caseVideo != null">
case_video = #{caseVideo}
</if>
</set>
where id = #{id}
</update>
<update id="remove">
update inspection set is_deleted = 1 where id = #{id}
</update>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from inspection
<where>
inspection_name = #{inspectionName} and is_deleted = 0
<if test="id != null">
and id != #{id}
</if>
</where>
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.inspection.InspectionTagDao">
<insert id="insert" parameterType="com.mmc.pms.entity.inspection.InspectionTagDO" useGeneratedKeys="true"
keyProperty="id">
insert into inspection_tag(tag_name, inspection_id, create_time)
values (#{tagName}, #{inspectionId}, NOW())
</insert>
<update id="update" parameterType="com.mmc.pms.entity.inspection.InspectionTagDO">
update inspection_tag set tag_name = #{tagName} where id = #{id}
</update>
<delete id="delete">
delete from inspection_tag where id = #{id}
</delete>
<select id="countSameName" resultType="java.lang.Integer">
select count(*) from inspection_tag
where tag_name = #{tagName}
<if test="id != null">
and id != #{id}
</if>
</select>
<select id="listByInspectionId" resultType="com.mmc.pms.entity.inspection.InspectionTagDO">
select id, tag_name, inspection_id from inspection_tag where inspection_id = #{inspectionId}
</select>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论