mirror of https://github.com/jeecgboot/jeecg-boot
feat: better sku listing
parent
16de117dc8
commit
b83a5cde3a
|
@ -619,8 +619,9 @@ public class SkuController {
|
|||
}
|
||||
|
||||
@GetMapping(value = "/compare")
|
||||
public Result<?> compareClientSkuWithMabang(@RequestParam(name="clientId") String clientId) {
|
||||
Map<String, Sku> clientSkus = skuService.listByClientId(clientId);
|
||||
public Result<?> compareClientSkuWithMabang(@RequestParam(name="clientId") String clientId,
|
||||
@RequestParam(name="erpStatuses[]") List<String> erpStatuses) {
|
||||
Map<String, Sku> clientSkus = skuService.listInUninvoicedOrders(clientId, erpStatuses);
|
||||
List<String> skuIds = new ArrayList<>(clientSkus.keySet());
|
||||
List<SkuDocument> clientSkuDocs = new ArrayList<>();
|
||||
for(String skuId: skuIds) {
|
||||
|
|
|
@ -76,7 +76,7 @@ public interface SkuMapper extends BaseMapper<Sku> {
|
|||
List<SkuOrderPage> getInventory(@Param("erpCodes") List<String> erpCodes, @Param("invoiceNumber") String invoiceNumber);
|
||||
|
||||
@MapKey("id")
|
||||
Map<String, Sku> listByClientId(@Param("clientId") String clientId);
|
||||
Map<String, Sku> listInUninvoicedOrders(@Param("clientId") String clientId, @Param("erpStatuses") List<String> erpStatuses);
|
||||
|
||||
List<SkuOrderPage> searchExistingSkuByKeywords(@Param("keywords") List<String> keywords);
|
||||
List<Sku> listImgUrls();
|
||||
|
|
|
@ -723,12 +723,22 @@
|
|||
#{sku.id}
|
||||
</foreach>
|
||||
</update>
|
||||
<select id="listByClientId" resultType="org.jeecg.modules.business.entity.Sku">
|
||||
SELECT *
|
||||
<select id="listInUninvoicedOrders" resultType="org.jeecg.modules.business.entity.Sku">
|
||||
SELECT DISTINCT s.*
|
||||
FROM sku s
|
||||
JOIN client_sku ON s.id = client_sku.sku_id
|
||||
JOIN platform_order_content poc ON s.id = poc.sku_id
|
||||
JOIN platform_order po ON poc.platform_order_id = po.id
|
||||
WHERE client_sku.client_id = #{clientId}
|
||||
AND s.status = 3;
|
||||
AND po.shipping_invoice_number IS NULL
|
||||
AND poc.erp_status <> 5
|
||||
AND po.erp_status IN
|
||||
<foreach collection="erpStatuses" item="erpStatus" index="index" separator="," open="(" close=")">
|
||||
#{erpStatus}
|
||||
</foreach>
|
||||
AND po.order_time >= '2024-01-01 00:00:00'
|
||||
AND s.status = 3
|
||||
;
|
||||
</select>
|
||||
<select id="searchExistingSkuByKeywords" resultType="org.jeecg.modules.business.vo.SkuOrderPage">
|
||||
SELECT
|
||||
|
|
|
@ -113,7 +113,7 @@ public interface ISkuService extends IService<Sku> {
|
|||
List<SkuOrderPage> getInventoryByInvoiceNumber(String invoiceNumber);
|
||||
List<SkuOrderPage> getInventory(List<String> erpCodes, String invoiceNumber);
|
||||
|
||||
Map<String, Sku> listByClientId(String clientId);
|
||||
Map<String, Sku> listInUninvoicedOrders(String clientId, List<String> erpStatuses);
|
||||
|
||||
List<SkuOrderPage> searchExistingSkuByKeywords(List<String> keywords);
|
||||
|
||||
|
|
|
@ -598,8 +598,8 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements ISkuS
|
|||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Sku> listByClientId(String clientId) {
|
||||
return skuMapper.listByClientId(clientId);
|
||||
public Map<String, Sku> listInUninvoicedOrders(String clientId, List<String> erpStatuses) {
|
||||
return skuMapper.listInUninvoicedOrders(clientId, erpStatuses);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue