| src/main/java/com/ruoyi/common/enums/FileNameType.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/dto/CustomerVisitsDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/ruoyi/common/enums/FileNameType.java
@@ -18,7 +18,8 @@ INSPECTION_PRODUCTION_AFTER(11), INSPECTION(12),//å·¡æ£ ç产å APP(13), QUALITY_UQUALIFIED(14);//è´¨é ä¸åæ ¼ QUALITY_UQUALIFIED(14),//è´¨é ä¸åæ ¼ CUSTOMER_VISITS(15);//å®¢æ·æè®¿ private final int value; src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java
@@ -2,15 +2,20 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.enums.FileNameType; import com.ruoyi.compensationperformance.pojo.CompensationPerformance; import com.ruoyi.customervisits.dto.CustomerVisitsDto; import com.ruoyi.customervisits.pojo.CustomerVisits; import com.ruoyi.customervisits.service.impl.CustomerVisitsServiceImpl; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.other.service.impl.TempFileServiceImpl; import com.ruoyi.sales.service.impl.CommonFileServiceImpl; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -27,11 +32,17 @@ @Autowired private CustomerVisitsServiceImpl customerVisitsService; @Autowired private TempFileServiceImpl tempFileService; @Autowired private CommonFileServiceImpl commonFileService; @GetMapping("/listPage") @Log(title = "å®¢æ·æè®¿-å页æ¥è¯¢", businessType = BusinessType.OTHER) @ApiOperation("å®¢æ·æè®¿-å页æ¥è¯¢") public AjaxResult listPage(Page page, CustomerVisits customerVisits) { IPage<CustomerVisits> listPage = customerVisitsService.listPage(page, customerVisits); IPage<CustomerVisitsDto> listPage = customerVisitsService.listPage(page, customerVisits); return AjaxResult.success(listPage); } @@ -39,8 +50,12 @@ @ApiOperation("å®¢æ·æè®¿-æ·»å ") @PostMapping("/add") @Transactional(rollbackFor = Exception.class) public AjaxResult add(@RequestBody CustomerVisits customerVisits) { public AjaxResult add(@RequestBody CustomerVisitsDto customerVisitsDto) throws Exception{ CustomerVisits customerVisits = new CustomerVisits(); BeanUtils.copyProperties(customerVisitsDto,customerVisits); boolean save = customerVisitsService.save(customerVisits); // éä»¶ç»å® tempFileService.migrateTempFilesToFormal(customerVisits.getId().longValue(), customerVisitsDto.getTempFileIds(), FileNameType.CUSTOMER_VISITS.getValue()); if (save) { return AjaxResult.success("æ·»å æå"); } @@ -50,9 +65,13 @@ @Log(title = "å®¢æ·æè®¿-ç¼è¾", businessType = BusinessType.UPDATE) @ApiOperation("å®¢æ·æè®¿-ç¼è¾") @PostMapping("update") public AjaxResult updateCustomerVisit(@RequestBody CustomerVisits customerVisits) { public AjaxResult updateCustomerVisit(@RequestBody CustomerVisitsDto customerVisitsDto) throws Exception{ CustomerVisits customerVisits = new CustomerVisits(); BeanUtils.copyProperties(customerVisitsDto,customerVisits); boolean updateResult = customerVisitsService.updateCustomerVisit(customerVisits); if (updateResult) { // éä»¶ç»å® tempFileService.migrateTempFilesToFormal(customerVisits.getId().longValue(), customerVisitsDto.getTempFileIds(), FileNameType.CUSTOMER_VISITS.getValue()); return AjaxResult.success("ç¼è¾æå"); } return AjaxResult.error("ç¼è¾å¤±è´¥"); @@ -67,6 +86,8 @@ } boolean deleteResult = customerVisitsService.removeById(customerId); if (deleteResult) { // å é¤å¯¹åºçéä»¶ commonFileService.deleteByBusinessId(customerId.longValue(), FileNameType.CUSTOMER_VISITS.getValue()); return AjaxResult.success("å 餿å"); } return AjaxResult.error("å é¤å¤±è´¥"); src/main/java/com/ruoyi/customervisits/dto/CustomerVisitsDto.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,30 @@ package com.ruoyi.customervisits.dto; import com.baomidou.mybatisplus.annotation.*; import com.ruoyi.customervisits.pojo.CustomerVisits; import com.ruoyi.sales.pojo.CommonFile; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Builder; import lombok.Data; import java.time.LocalDateTime; import java.util.List; @Data public class CustomerVisitsDto extends CustomerVisits { /** * ä¸´æ¶æä»¶idå表 */ @TableField(exist = false) private List<String> tempFileIds; /** * æ£å¼æä»¶idå表 */ @TableField(exist = false) private List<CommonFile> commonFileList; } src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java
@@ -1,11 +1,16 @@ package com.ruoyi.customervisits.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.customervisits.dto.CustomerVisitsDto; import com.ruoyi.customervisits.pojo.CustomerVisits; import org.apache.ibatis.annotations.Param; /** * @author :yys * @date : 2025/8/29 10:24 */ public interface CustomerVisitsMapper extends BaseMapper<CustomerVisits> { IPage<CustomerVisitsDto> listPage(Page page, @Param("c") CustomerVisits customerVisits); } src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java
@@ -20,7 +20,6 @@ */ @TableName("customer_visits") @Data @Builder @ApiModel public class CustomerVisits { src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.customervisits.dto.CustomerVisitsDto; import com.ruoyi.customervisits.pojo.CustomerVisits; import com.ruoyi.framework.web.domain.AjaxResult; @@ -11,7 +12,7 @@ * @date : 2025/8/29 10:26 */ public interface CustomerVisitsService extends IService<CustomerVisits> { IPage<CustomerVisits> listPage(Page page, CustomerVisits customerVisits); IPage<CustomerVisitsDto> listPage(Page page, CustomerVisits customerVisits); boolean updateCustomerVisit(CustomerVisits customerVisits); src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java
@@ -4,14 +4,21 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.enums.FileNameType; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.customervisits.dto.CustomerVisitsDto; import com.ruoyi.customervisits.mapper.CustomerVisitsMapper; import com.ruoyi.customervisits.pojo.CustomerVisits; import com.ruoyi.customervisits.service.CustomerVisitsService; import com.ruoyi.quality.pojo.QualityUnqualified; import com.ruoyi.sales.mapper.CommonFileMapper; import com.ruoyi.sales.pojo.CommonFile; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * @author :yys @@ -24,21 +31,19 @@ @Autowired private CustomerVisitsMapper customerVisitsMapper; @Autowired private CommonFileMapper commonFileMapper; @Override public IPage<CustomerVisits> listPage(Page page, CustomerVisits customerVisits) { LambdaQueryWrapper<CustomerVisits> wrapper = new LambdaQueryWrapper<>(); if (customerVisits != null) { if (StringUtils.hasText(customerVisits.getCustomerName())) { wrapper.like(CustomerVisits::getCustomerName, customerVisits.getCustomerName()); } if (StringUtils.hasText(customerVisits.getVisitingPeople())) { wrapper.like(CustomerVisits::getVisitingPeople, customerVisits.getVisitingPeople()); } public IPage<CustomerVisitsDto> listPage(Page page, CustomerVisits customerVisits) { IPage<CustomerVisitsDto> selectPage = customerVisitsMapper.listPage(page, customerVisits); for (CustomerVisitsDto record : selectPage.getRecords()) { List<CommonFile> allFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>() .eq(CommonFile::getCommonId, record.getId()) .eq(CommonFile::getType, FileNameType.CUSTOMER_VISITS.getValue())); record.setCommonFileList(allFiles); } return customerVisitsMapper.selectPage(page, wrapper); return selectPage; } @Override src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml
@@ -1,5 +1,15 @@ <?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.ruoyi.customervisits.mapper.CustomerVisitsMapper"> </mapper> <select id="listPage" resultType="com.ruoyi.customervisits.dto.CustomerVisitsDto"> select * from customer_visits where 1=1 <if test="c.customerName != null "> AND customer_name like concat('%',#{c.customerName},'%') </if> <if test="c.visitingPeople != null "> AND visiting_people like concat('%',#{c.visitingPeople},'%') </if> </select> </mapper>