Browse Source

app/return/get 增加库存数返回

app/product/getShareList 模糊查询排序,越精准的越靠前
dev
qiaohui 2 years ago
parent
commit
45ae5798c0
  1. 18
      hiver-admin/test-output/test-report.html
  2. 19
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java
  3. 8
      hiver-modules/hiver-mall/src/main/resources/mapper/ProductMapper.xml

18
hiver-admin/test-output/test-report.html

@ -5,7 +5,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Hiver测试报告</title>
<title>Hiver测试报告</title>
<link rel="apple-touch-icon" href="spark/logo.png">
<link rel="shortcut icon" href="spark/logo.png">
<link rel="stylesheet" href="spark/spark-style.css">
@ -35,7 +35,7 @@
<a href="#"><span class="badge badge-primary">Hiver</span></a>
</li>
<li class="m-r-10">
<a href="#"><span class="badge badge-primary">十月 15, 2024 22:13:10</span></a>
<a href="#"><span class="badge badge-primary">十月 15, 2024 22:32:27</span></a>
</li>
</ul>
</div>
@ -84,7 +84,7 @@
<div class="test-detail">
<span class="meta text-white badge badge-sm"></span>
<p class="name">passTest</p>
<p class="text-sm"><span>22:13:11 下午</span> / <span>0.016 secs</span></p>
<p class="text-sm"><span>22:32:27 下午</span> / <span>0.012 secs</span></p>
</div>
<div class="test-contents d-none">
<div class="detail-head">
@ -92,9 +92,9 @@
<div class="info">
<div class='float-right'><span class='badge badge-default'>#test-id=1</span></div>
<h5 class="test-status text-pass">passTest</h5>
<span class='badge badge-success'>10.15.2024 22:13:11</span>
<span class='badge badge-danger'>10.15.2024 22:13:11</span>
<span class='badge badge-default'>0.016 secs</span>
<span class='badge badge-success'>10.15.2024 22:32:27</span>
<span class='badge badge-danger'>10.15.2024 22:32:27</span>
<span class='badge badge-default'>0.012 secs</span>
</div>
<div class="m-t-10 m-l-5"></div>
</div>
@ -104,7 +104,7 @@
<tbody>
<tr class="event-row">
<td><span class="badge log pass-bg">Pass</span></td>
<td>22:13:11</td>
<td>22:32:27</td>
<td>
Test passed
</td>
@ -128,13 +128,13 @@
<div class="col-md-3">
<div class="card"><div class="card-body">
<p class="m-b-0">Started</p>
<h3>十月 15, 2024 22:13:10</h3>
<h3>十月 15, 2024 22:32:27</h3>
</div></div>
</div>
<div class="col-md-3">
<div class="card"><div class="card-body">
<p class="m-b-0">Ended</p>
<h3>十月 15, 2024 22:13:11</h3>
<h3>十月 15, 2024 22:32:27</h3>
</div></div>
</div>
<div class="col-md-3">

19
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java

@ -32,9 +32,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.*;
@Slf4j
@RestController
@ -57,6 +55,9 @@ public class ReturnSaleController {
@Autowired
private SaleService saleService;
@Autowired
private StockService stockService;
@Autowired
private SaleDetailService saleDetailService;
@ -122,6 +123,14 @@ public class ReturnSaleController {
final List<ReturnDetail> saleDetailList = returnDetailService.list(queryPWrapper);
final List<SaleDetailQueryDTO> saleDetailQueryDTOS = new ArrayList<>();
final SaleDetailDTO saleDetailDTO = new SaleDetailDTO();
// 查询商品所有的库存
final List<Stock> stockList = stockService.getProductStock(productId);
final Map<String, Integer> stockMap = new HashMap<>();
for (Stock stock : stockList) {
stockMap.put(stock.getAttributeList(), stock.getStockCount());
}
for (ReturnDetail returnDetail : saleDetailList) {
saleDetailDTO.setProductId(productId);
saleDetailDTO.setProductName(returnDetail.getProductName());
@ -141,6 +150,10 @@ public class ReturnSaleController {
final SaleDetailQueryDTO saleDetailQueryDTO = new SaleDetailQueryDTO();
saleDetailQueryDTO.setAttributeList(returnDetail.getAttributeList());
saleDetailQueryDTO.setProductCount(returnDetail.getProductCount());
saleDetailQueryDTO.setStockCount(stockMap.getOrDefault(saleDetailQueryDTO.getAttributeList(), null));
saleDetailQueryDTOS.add(saleDetailQueryDTO);
}
saleDetailDTO.setStockLogList1(saleDetailQueryDTOS);

8
hiver-modules/hiver-mall/src/main/resources/mapper/ProductMapper.xml

@ -658,6 +658,14 @@
</if>
</where>
ORDER BY
<if test="queryParams.searchStr != null and queryParams.searchStr != ''">
LENGTH(product_sn),
CASE
WHEN product_sn LIKE CONCAT(#{queryParams.searchStr}, '%') THEN 1
WHEN product_sn LIKE CONCAT('%',#{queryParams.searchStr}) THEN 2
ELSE 3
END,
</if>
<!--销量排序-->
<if test='queryParams.startDate !=null and queryParams.startDate.trim() neq "" and queryParams.endDate !=null and queryParams.endDate.trim() neq ""'>
<if test='queryParams.sortField!=null and queryParams.sortField.trim() neq "" and queryParams.sortField eq "totalSold"'>

Loading…
Cancel
Save