From 1f81840839e868b5a0c9689e78767ff97b683e4e Mon Sep 17 00:00:00 2001 From: maven <2163098428@qq.com> Date: 星期二, 08 七月 2025 11:07:58 +0800 Subject: [PATCH] yys 1.新增入库查询 2.新增入库 3.入库分页查询 4.编辑 --- src/main/java/com/ruoyi/procurementrecord/dto/ProcurementDto.java | 89 ++++++++ src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java | 123 +++++++++++ src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java | 62 +++++ src/main/resources/application-druid.yml | 2 src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java | 26 ++ src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java | 28 ++ src/main/java/com/ruoyi/procurementrecord/pojo/ProcurementRecord.java | 60 +++++ src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml | 56 +++++ src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java | 98 ++++++++ src/main/java/com/ruoyi/procurementrecord/dto/ProcurementAddDto.java | 18 + src/main/java/com/ruoyi/procurementrecord/dto/ProcurementUpdateDto.java | 18 + src/main/resources/application.yml | 2 src/main/java/com/ruoyi/procurementrecord/dto/Details.java | 24 ++ 13 files changed, 604 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java new file mode 100644 index 0000000..b522be4 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/controller/ProcurementRecordController.java @@ -0,0 +1,62 @@ +package com.ruoyi.procurementrecord.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +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.framework.web.page.TableDataInfo; +import com.ruoyi.procurementrecord.dto.ProcurementAddDto; +import com.ruoyi.procurementrecord.dto.ProcurementDto; +import com.ruoyi.procurementrecord.dto.ProcurementPageDto; +import com.ruoyi.procurementrecord.dto.ProcurementUpdateDto; +import com.ruoyi.procurementrecord.service.ProcurementRecordService; +import com.ruoyi.purchase.dto.InvoicePurchaseReportDto; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author :yys + * @date : 2025/7/7 14:32 + */ +@RestController +@Api(tags = "閲囪喘鍏ュ簱") +@RequestMapping("/stockin") +public class ProcurementRecordController extends BaseController { + + + @Autowired + private ProcurementRecordService procurementRecordService; + + @GetMapping("/productlist") + @Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-鏂板鍏ュ簱鏌ヨ", businessType = BusinessType.OTHER) + public AjaxResult list(ProcurementDto procurementDto) { + List<ProcurementDto> result =procurementRecordService.listProcurementBySalesLedgerId(procurementDto); + return AjaxResult.success(result); + } + + @PostMapping("/add") + @Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-鏂板鍏ュ簱", businessType = BusinessType.INSERT) + public AjaxResult add(@RequestBody ProcurementAddDto procurementDto) { + return AjaxResult.success(procurementRecordService.add(procurementDto)); + } + + @PostMapping("/update") + @Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-淇敼鍏ュ簱", businessType = BusinessType.UPDATE) + public AjaxResult updatePro(@RequestBody ProcurementUpdateDto procurementDto) { + return AjaxResult.success(procurementRecordService.updatePro(procurementDto)); + } + + @GetMapping("/listPage") + @Log(title = "閲囪喘鍏ュ簱-鍏ュ簱绠$悊-鍏ュ簱鏌ヨ", businessType = BusinessType.OTHER) + public AjaxResult listPage(Page page, ProcurementPageDto procurementDto) { + IPage<ProcurementPageDto> result =procurementRecordService.listPage(page, procurementDto); + return AjaxResult.success(result); + } + + +} diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/Details.java b/src/main/java/com/ruoyi/procurementrecord/dto/Details.java new file mode 100644 index 0000000..510b62d --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/dto/Details.java @@ -0,0 +1,24 @@ +package com.ruoyi.procurementrecord.dto; + +import java.math.BigDecimal; + +/** + * @author :yys + * @date : 2025/7/7 16:17 + */ +public class Details { + private Integer id; + private BigDecimal inboundQuantity; + public Integer getId() { + return id; + } + public void setId(Integer id) { + this.id = id; + } + public BigDecimal getInboundQuantity() { + return inboundQuantity; + } + public void setInboundQuantity(BigDecimal inboundQuantity) { + this.inboundQuantity = inboundQuantity; + } +} diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementAddDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementAddDto.java new file mode 100644 index 0000000..73d9895 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementAddDto.java @@ -0,0 +1,18 @@ +package com.ruoyi.procurementrecord.dto; + +import lombok.Data; + +import java.util.List; + +/** + * @author :yys + * @date : 2025/7/7 16:07 + */ +@Data +public class ProcurementAddDto { + + private List<Details> details; + + private String nickName; + +} diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementDto.java new file mode 100644 index 0000000..63ce258 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementDto.java @@ -0,0 +1,89 @@ +package com.ruoyi.procurementrecord.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.framework.aspectj.lang.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * @author :yys + * @date : 2025/7/7 14:46 + */ +@Data +public class ProcurementDto { + + private String purchaseContractNumber; + + private Integer id; + + private Integer recordId; + + /** + * 鍏ュ簱鏁伴噺 + */ + private Integer quantityStock; + + /** + * 渚涘簲鍟嗗悕绉� + */ + @Excel(name = "渚涘簲鍟嗗悕绉�") + private String supplierName; + + + /** + * 浜у搧澶х被 + */ + @Excel(name = "浜у搧澶х被") + private String productCategory; + + /** + * 瑙勬牸鍨嬪彿 + */ + @Excel(name = "瑙勬牸鍨嬪彿") + private String specificationModel; + + /** + * 鍗曚綅 + */ + @Excel(name = "鍗曚綅") + private String unit; + + /** + * 鏁伴噺 + */ + @Excel(name = "鏁伴噺") + private BigDecimal quantity; + + /** + * 寰呭叆搴撴暟閲� + */ + @Excel(name = "寰呭叆搴撴暟閲�") + private BigDecimal quantity0; + + /** + * 绋庣巼 + */ + @Excel(name = "绋庣巼") + private BigDecimal taxRate; + + /** + * 鍚◣鍗曚环 + */ + @Excel(name = "鍚◣鍗曚环") + private BigDecimal taxInclusiveUnitPrice; + + /** + * 鍚◣鎬讳环 + */ + @Excel(name = "鍚◣鎬讳环") + private BigDecimal taxInclusiveTotalPrice; + + /** + * 涓嶅惈绋庢�讳环 + */ + @Excel(name = "涓嶅惈绋庢�讳环") + private BigDecimal taxExclusiveTotalPrice; + +} diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java new file mode 100644 index 0000000..cfa078b --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementPageDto.java @@ -0,0 +1,98 @@ +package com.ruoyi.procurementrecord.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.framework.aspectj.lang.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * @author :yys + * @date : 2025/7/7 17:00 + */ +@Data +public class ProcurementPageDto { + + private Integer id; + + /** + * 鍏ュ簱鎵规 + */ + @Excel(name = "鍏ュ簱鎵规") + private String inboundBatches; + + /** + * 鍚堝悓鍙� + */ + private String purchaseContractNumber; + + /** + * 鍑哄叆搴撴暟閲� + */ + @Excel(name = "鍑哄叆搴撴暟閲�") + private BigDecimal inboundNum; + + /** + * 鍑哄叆搴撴椂闂� + */ + @Excel(name = "鍑哄叆搴撴椂闂�") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime createDate; + + /** + * 鍑哄叆搴撶敤鎴� + */ + @Excel(name = "鍑哄叆搴撶敤鎴�") + private String createBy; + + /** + * 渚涘簲鍟嗗悕绉� + */ + @Excel(name = "渚涘簲鍟嗗悕绉�") + private String supplierName; + + + /** + * 浜у搧澶х被 + */ + @Excel(name = "浜у搧澶х被") + private String productCategory; + + /** + * 瑙勬牸鍨嬪彿 + */ + @Excel(name = "瑙勬牸鍨嬪彿") + private String specificationModel; + + /** + * 鍗曚綅 + */ + @Excel(name = "鍗曚綅") + private String unit; + + /** + * 绋庣巼 + */ + @Excel(name = "绋庣巼") + private BigDecimal taxRate; + + /** + * 鍚◣鍗曚环 + */ + @Excel(name = "鍚◣鍗曚环") + private BigDecimal taxInclusiveUnitPrice; + + /** + * 鍚◣鎬讳环 + */ + @Excel(name = "鍚◣鎬讳环") + private BigDecimal taxInclusiveTotalPrice; + + /** + * 涓嶅惈绋庢�讳环 + */ + @Excel(name = "涓嶅惈绋庢�讳环") + private BigDecimal taxExclusiveTotalPrice; + +} diff --git a/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementUpdateDto.java b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementUpdateDto.java new file mode 100644 index 0000000..2e122b9 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/dto/ProcurementUpdateDto.java @@ -0,0 +1,18 @@ +package com.ruoyi.procurementrecord.dto; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author :yys + * @date : 2025/7/8 10:40 + */ +@Data +public class ProcurementUpdateDto { + + private Integer id; + + private BigDecimal quantityStock; + +} diff --git a/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java b/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java new file mode 100644 index 0000000..e1c7f28 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/mapper/ProcurementRecordMapper.java @@ -0,0 +1,28 @@ +package com.ruoyi.procurementrecord.mapper; + +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; +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.procurementrecord.dto.ProcurementDto; +import com.ruoyi.procurementrecord.dto.ProcurementPageDto; +import com.ruoyi.procurementrecord.pojo.ProcurementRecord; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author :yys + * @date : 2025/7/7 14:30 + */ +public interface ProcurementRecordMapper extends BaseMapper<ProcurementRecord> { + /** + * 鏍规嵁閲囪喘鍙拌处id鏌ヨ閲囪喘鍏ュ簱淇℃伅 + * + * @param procurementDto + * @return + */ + List<ProcurementDto> listProcurementBySalesLedgerId(@Param("req") ProcurementDto procurementDto); + + IPage<ProcurementPageDto> listPage(Page page,@Param("req") ProcurementPageDto procurementDto); +} diff --git a/src/main/java/com/ruoyi/procurementrecord/pojo/ProcurementRecord.java b/src/main/java/com/ruoyi/procurementrecord/pojo/ProcurementRecord.java new file mode 100644 index 0000000..05b6e33 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/pojo/ProcurementRecord.java @@ -0,0 +1,60 @@ +package com.ruoyi.procurementrecord.pojo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Builder; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * @author :yys + * @date : 2025/7/7 14:25 + */ +@TableName("procurement_record") +@Data +@Builder +public class ProcurementRecord { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + /** + * 浜у搧淇℃伅琛╥d + */ + private Integer salesLedgerProductId; + + /** + * 閲囪喘鍒嗙被锛�1-鍏ュ簱 2-鍑哄簱锛� + */ + private Integer procurementCategory; + + /** + * 鍏ュ簱鎵规 + */ + private String inboundBatches; + + /** + * 鍑哄叆搴撴暟閲� + */ + private BigDecimal inboundNum; + + /** + * 鍑哄叆搴撴椂闂� + */ + private LocalDateTime createDate; + + /** + * 鍑哄叆搴撶敤鎴� + */ + private String createBy; + + /** + * 绉熸埛ID + */ + private Long tenantId; +} diff --git a/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java b/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java new file mode 100644 index 0000000..7343054 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/service/ProcurementRecordService.java @@ -0,0 +1,26 @@ +package com.ruoyi.procurementrecord.service; + +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.procurementrecord.dto.ProcurementAddDto; +import com.ruoyi.procurementrecord.dto.ProcurementDto; +import com.ruoyi.procurementrecord.dto.ProcurementPageDto; +import com.ruoyi.procurementrecord.dto.ProcurementUpdateDto; +import com.ruoyi.procurementrecord.pojo.ProcurementRecord; + +import java.util.List; + +/** + * @author :yys + * @date : 2025/7/7 14:36 + */ +public interface ProcurementRecordService extends IService<ProcurementRecord> { + List<ProcurementDto> listProcurementBySalesLedgerId(ProcurementDto procurementDto); + + int add(ProcurementAddDto procurementDto); + + IPage<ProcurementPageDto> listPage(Page page, ProcurementPageDto procurementDto); + + int updatePro(ProcurementUpdateDto procurementDto); +} diff --git a/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java new file mode 100644 index 0000000..112e168 --- /dev/null +++ b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java @@ -0,0 +1,123 @@ +package com.ruoyi.procurementrecord.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +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.utils.SecurityUtils; +import com.ruoyi.framework.security.LoginUser; +import com.ruoyi.procurementrecord.dto.*; +import com.ruoyi.procurementrecord.mapper.ProcurementRecordMapper; +import com.ruoyi.procurementrecord.pojo.ProcurementRecord; +import com.ruoyi.procurementrecord.service.ProcurementRecordService; +import com.ruoyi.sales.mapper.SalesLedgerProductMapper; +import com.ruoyi.sales.pojo.SalesLedgerProduct; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author :yys + * @date : 2025/7/7 14:38 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class ProcurementRecordServiceImpl extends ServiceImpl<ProcurementRecordMapper, ProcurementRecord> implements ProcurementRecordService { + + private final ProcurementRecordMapper procurementRecordMapper; + + private final SalesLedgerProductMapper salesLedgerProductMapper; + + @Override + public List<ProcurementDto> listProcurementBySalesLedgerId(ProcurementDto procurementDto) { + List<ProcurementDto> procurementDtos = procurementRecordMapper.listProcurementBySalesLedgerId(procurementDto); + // 璁$畻寰呭叆搴撴暟閲� + // 鏌ヨ閲囪喘璁板綍宸插叆搴撴暟閲� + List<Integer> collect = procurementDtos.stream().map(ProcurementDto::getId).collect(Collectors.toList()); + if(CollectionUtils.isEmpty( collect)){ + return procurementDtos; + } + LambdaQueryWrapper<ProcurementRecord> procurementRecordLambdaQueryWrapper = new LambdaQueryWrapper<>(); + procurementRecordLambdaQueryWrapper.in(ProcurementRecord::getSalesLedgerProductId, collect); + List<ProcurementRecord> procurementRecords = procurementRecordMapper.selectList(procurementRecordLambdaQueryWrapper); + if(CollectionUtils.isEmpty( procurementRecords)){ + return procurementDtos; + } + for (ProcurementDto dto : procurementDtos) { + // 鏍规嵁閲囪喘鍙拌处ID绛涢�夊搴旂殑鍏ュ簱璁板綍 + List<ProcurementRecord> collect1 = procurementRecords.stream() + .filter(procurementRecord -> procurementRecord.getSalesLedgerProductId().equals(dto.getId())) + .collect(Collectors.toList()); + + // 濡傛灉娌℃湁鐩稿叧鐨勫叆搴撹褰曪紝璺宠繃璇ユ潯鏁版嵁 + if(CollectionUtils.isEmpty(collect1)){ + continue; + } + + // 璁$畻宸插叆搴撴暟閲忔�诲拰锛屽苟璁剧疆寰呭叆搴撴暟閲� + BigDecimal totalInboundNum = collect1.stream() + .map(ProcurementRecord::getInboundNum) + .reduce(BigDecimal.ZERO, BigDecimal::add); + + // 寰呭叆搴撴暟閲� = 鎬绘暟閲� - 宸插叆搴撴暟閲� + dto.setQuantity0(dto.getQuantity().subtract(totalInboundNum)); + } + return procurementDtos; + } + + @Override + public int updatePro(ProcurementUpdateDto procurementDto) { + ProcurementRecord procurementRecord = procurementRecordMapper.selectById(procurementDto.getId()); + if(procurementRecord == null) { + throw new RuntimeException("鏈壘鍒拌閲囪喘鍏ュ簱璁板綍"); + } + procurementRecord.setInboundNum(procurementDto.getQuantityStock()); + return procurementRecordMapper.updateById(procurementRecord); + } + + @Override + public int add(ProcurementAddDto procurementDto) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + // 鎵归噺鏂板 + for (Details detail : procurementDto.getDetails()) { + // 鏌ヨ閲囪喘鍏ュ簱鏁伴噺 + LambdaQueryWrapper<ProcurementRecord> procurementRecordLambdaQueryWrapper = new LambdaQueryWrapper<>(); + procurementRecordLambdaQueryWrapper.eq(ProcurementRecord::getSalesLedgerProductId, detail.getId()) + .eq(ProcurementRecord::getProcurementCategory, 1); + Long aLong = procurementRecordMapper.selectCount(procurementRecordLambdaQueryWrapper); + + ProcurementRecord.ProcurementRecordBuilder procurementRecordBuilder = ProcurementRecord.builder() + .salesLedgerProductId(detail.getId()) + .procurementCategory(1) + .inboundBatches(aLong.equals(0L) ? "绗�1鎵规" : "绗�"+ (aLong + 1) + "鎵规") + .inboundNum(detail.getInboundQuantity()) + .createDate(LocalDateTime.now()) + .tenantId(loginUser.getTenantId()) + .createBy(procurementDto.getNickName()); + this.save(procurementRecordBuilder.build()); + // 鍏ュ簱鎴愬姛鍑忔帀閲囪喘鏁伴噺 + LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductLambdaQueryWrapper = new LambdaQueryWrapper<>(); + salesLedgerProductLambdaQueryWrapper.eq(SalesLedgerProduct::getId, detail.getId()); + SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectOne(salesLedgerProductLambdaQueryWrapper); + if(salesLedgerProduct == null){ + throw new RuntimeException("鏈壘鍒拌鍟嗗搧"); + } + salesLedgerProduct.setQuantity(salesLedgerProduct.getQuantity().subtract(detail.getInboundQuantity())); + salesLedgerProductMapper.updateById(salesLedgerProduct); + } + return 1; + } + + @Override + public IPage<ProcurementPageDto> listPage(Page page, ProcurementPageDto procurementDto) { + return procurementRecordMapper.listPage(page,procurementDto); + } + +} diff --git a/src/main/resources/application-druid.yml b/src/main/resources/application-druid.yml index 1869049..70ab54a 100644 --- a/src/main/resources/application-druid.yml +++ b/src/main/resources/application-druid.yml @@ -7,7 +7,7 @@ # 涓诲簱鏁版嵁婧� master: # url: jdbc:mysql://localhost:3306/product-inventory-management?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - url: jdbc:mysql://114.132.189.42:9004/product-inventory-management-copy?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + url: jdbc:mysql://114.132.189.42:9004/product-inventory-management?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root password: 123456 # 浠庡簱鏁版嵁婧� diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index e1ac4d3..6699d22 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -75,7 +75,7 @@ # 鏁版嵁搴撶储寮� database: 0 # 瀵嗙爜 - password: root2022! + password: # password: 123456 # 杩炴帴瓒呮椂鏃堕棿 diff --git a/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml new file mode 100644 index 0000000..0af090e --- /dev/null +++ b/src/main/resources/mapper/procurementrecord/ProcurementRecordMapper.xml @@ -0,0 +1,56 @@ +<?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.procurementrecord.mapper.ProcurementRecordMapper"> + + <select id="listProcurementBySalesLedgerId" resultType="com.ruoyi.procurementrecord.dto.ProcurementDto"> + select + t1.supplier_name, + t2.product_category, + t2.id, + t3.id as recordId, + t2.specification_model, + t2.unit, + t2.quantity, + t2.tax_rate, + t2.tax_inclusive_unit_price, + t2.tax_inclusive_total_price, + t2.tax_exclusive_total_price, + t3.inbound_num as quantityStock + from purchase_ledger t1 + left join sales_ledger_product t2 on t1.id = t2.sales_ledger_id + left join procurement_record t3 on t2.id = t3.sales_ledger_product_id + where t1.purchase_contract_number = #{req.purchaseContractNumber} + <if test="req.id != null and req.id != ''"> + and t3.id = #{req.id} + </if> + group by t2.id + </select> + <select id="listPage" resultType="com.ruoyi.procurementrecord.dto.ProcurementPageDto"> + select + t3.supplier_name, + t3.purchase_contract_number, + t2.product_category, + t1.id, + t2.specification_model, + t2.unit, + t2.quantity, + t2.quantity as quantity0, + t2.tax_rate, + t2.tax_inclusive_unit_price, + t2.tax_inclusive_total_price, + t2.tax_exclusive_total_price, + t1.inbound_batches, + t1.inbound_num, + t1.create_date, + t1.create_by + from procurement_record t1 + left join sales_ledger_product t2 on t2.id = t1.sales_ledger_product_id + left join purchase_ledger t3 on t3.id = t2.sales_ledger_id + <where> + 1 = 1 + <if test="req.supplierName != null and req.supplierName != ''"> + and t3.supplier_name like concat('%',#{req.supplierName},'%') + </if> + </where> + </select> +</mapper> \ No newline at end of file -- Gitblit v1.9.3