1
0
Quellcode durchsuchen

修改 Eccs 电商库存界面,新增查询 SQL

lvjian vor 2 Jahren
Ursprung
Commit
5cba9a30fb

+ 6 - 3
eccs-biz/src/main/java/com/emato/biz/controller/mall/MallInveMngController.java

@@ -2,6 +2,7 @@ package com.emato.biz.controller.mall;
 
 import java.util.List;
 
+import com.emato.biz.domain.mall.MallGoodsVO;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -42,7 +43,8 @@ public class MallInveMngController extends BaseController
     public TableDataInfo list(MallInveMng mallInveMng)
     {
         startPage();
-        List<MallInveMng> list = mallInveMngService.selectMallInveMngList(mallInveMng);
+        //List<MallInveMng> list = mallInveMngService.selectMallInveMngList(mallInveMng);
+        List<MallGoodsVO> list = mallInveMngService.getMalGoodsVOList(mallInveMng);
         return getDataTable(list);
     }
 
@@ -54,8 +56,9 @@ public class MallInveMngController extends BaseController
     @GetMapping("/export")
     public AjaxResult export(MallInveMng mallInveMng)
     {
-        List<MallInveMng> list = mallInveMngService.selectMallInveMngList(mallInveMng);
-        ExcelUtil<MallInveMng> util = new ExcelUtil<MallInveMng>(MallInveMng.class);
+        //List<MallInveMng> list = mallInveMngService.selectMallInveMngList(mallInveMng);
+        List<MallGoodsVO> list = mallInveMngService.getMalGoodsVOList(mallInveMng);
+        ExcelUtil<MallGoodsVO> util = new ExcelUtil<MallGoodsVO>(MallGoodsVO.class);
         return util.exportExcel(list, "mallinvemng");
     }
 

+ 138 - 0
eccs-biz/src/main/java/com/emato/biz/domain/mall/MallGoodsVO.java

@@ -0,0 +1,138 @@
+package com.emato.biz.domain.mall;
+
+import com.emato.common.annotation.Excel;
+
+/**
+ * Mall 商品信息 VO
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/4/14 10:19
+ */
+public class MallGoodsVO {
+    /** 商户编号 */
+    @Excel(name = "商户编号")
+    private String merchSn;
+
+    /** 商户名称 */
+    @Excel(name = "商户名称")
+    private String merchName;
+
+    /** SKU */
+    @Excel(name = "SKU")
+    private String sku;
+
+    /** PLU */
+    @Excel(name = "PLU")
+    private String plu;
+
+    @Excel(name = "mychemId")
+    private String mychemId;
+
+    @Excel(name ="商品名称")
+    private String goodsName;
+
+    /** 商品英文名称 */
+    @Excel(name = "商品英文名称")
+    private String englishName;
+
+    /** 品牌 */
+    @Excel(name = "品牌")
+    private String brand;
+
+    /** 库存数 */
+    @Excel(name = "库存数")
+    private Long inveNum;
+
+    /** 可用数 */
+    /*@Excel(name = "可用数")
+    private Long validNum;*/
+
+    @Override
+    public String toString() {
+        return "MallInveVO{" +
+                "merchSn='" + merchSn + '\'' +
+                ", merchName='" + merchName + '\'' +
+                ", sku='" + sku + '\'' +
+                ", plu='" + plu + '\'' +
+                ", mychemId='" + mychemId + '\'' +
+                ", goodsName='" + goodsName + '\'' +
+                ", englishName='" + englishName + '\'' +
+                ", brand='" + brand + '\'' +
+                ", inveNum=" + inveNum +
+                '}';
+    }
+
+    public String getMerchSn() {
+        return merchSn;
+    }
+
+    public void setMerchSn(String merchSn) {
+        this.merchSn = merchSn;
+    }
+
+    public String getMerchName() {
+        return merchName;
+    }
+
+    public void setMerchName(String merchName) {
+        this.merchName = merchName;
+    }
+
+    public String getSku() {
+        return sku;
+    }
+
+    public void setSku(String sku) {
+        this.sku = sku;
+    }
+
+    public String getPlu() {
+        return plu;
+    }
+
+    public void setPlu(String plu) {
+        this.plu = plu;
+    }
+
+    public String getMychemId() {
+        return mychemId;
+    }
+
+    public void setMychemId(String mychemId) {
+        this.mychemId = mychemId;
+    }
+
+    public String getGoodsName() {
+        return goodsName;
+    }
+
+    public void setGoodsName(String goodsName) {
+        this.goodsName = goodsName;
+    }
+
+
+    public String getEnglishName() {
+        return englishName;
+    }
+
+    public void setEnglishName(String englishName) {
+        this.englishName = englishName;
+    }
+
+    public String getBrand() {
+        return brand;
+    }
+
+    public void setBrand(String brand) {
+        this.brand = brand;
+    }
+
+    public Long getInveNum() {
+        return inveNum;
+    }
+
+    public void setInveNum(Long inveNum) {
+        this.inveNum = inveNum;
+    }
+}

+ 25 - 0
eccs-biz/src/main/java/com/emato/biz/mapper/mall/MallGoodsMapper.java

@@ -0,0 +1,25 @@
+package com.emato.biz.mapper.mall;
+
+import com.emato.biz.domain.mall.MallGoodsVO;
+import com.emato.biz.domain.mall.MallInveMng;
+
+import java.util.List;
+
+/**
+ * 商品信息 Mapper
+ *
+ * @author frankeleyn
+ * @email lvjian@qhdswl.com
+ * @date 2023/4/14 10:40
+ */
+public interface MallGoodsMapper {
+
+    /**
+     * 查询商品信息 VO 列表
+     *
+     * @param mallInveMng
+     * @return
+     */
+    List<MallGoodsVO> selectMallGoodsList(MallInveMng mallInveMng);
+
+}

+ 23 - 2
eccs-biz/src/main/java/com/emato/biz/service/impl/MallInveMngServiceImpl.java

@@ -8,10 +8,14 @@ import java.util.Map;
 
 import com.alibaba.fastjson.JSONArray;
 import com.emato.biz.config.KmallConfig;
+import com.emato.biz.domain.mall.MallGoodsVO;
+import com.emato.biz.mapper.mall.MallGoodsMapper;
 import com.emato.common.utils.DateUtils;
 import com.emato.common.utils.oms.OkHttpUtils;
 import okhttp3.Request;
 import okhttp3.RequestBody;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.emato.biz.mapper.mall.MallInveMngMapper;
@@ -19,6 +23,8 @@ import com.emato.biz.domain.mall.MallInveMng;
 import com.emato.biz.service.mall.IMallInveMngService;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
+
 /**
  * 库存管理,wms入库回传时,增加库存数Service业务层处理
  *
@@ -28,9 +34,25 @@ import org.springframework.transaction.annotation.Transactional;
 @Service
 public class MallInveMngServiceImpl implements IMallInveMngService
 {
+    Logger log = LoggerFactory.getLogger(MallInveMngServiceImpl.class);
+
     @Autowired
     private MallInveMngMapper mallInveMngMapper;
 
+    @Resource
+    private MallGoodsMapper mallGoodsMapper;
+
+    /**
+     * 查询商品信息
+     *
+     * @param mallInveMng
+     * @return
+     */
+    @Override
+    public List<MallGoodsVO> getMalGoodsVOList(MallInveMng mallInveMng) {
+        return mallGoodsMapper.selectMallGoodsList(mallInveMng);
+    }
+
     /**
      * 查询库存管理,wms入库回传时,增加库存数
      *
@@ -153,8 +175,7 @@ public class MallInveMngServiceImpl implements IMallInveMngService
                 mallInveMngMapper.saveOrUpdate(mallInveMng);
             }
         } catch (Exception e) {
-            e.printStackTrace();
-
+            log.error("拉取 Kmall 电商库存异常 => ", e);
             return 0;
         }
         return 1;

+ 10 - 0
eccs-biz/src/main/java/com/emato/biz/service/mall/IMallInveMngService.java

@@ -1,6 +1,8 @@
 package com.emato.biz.service.mall;
 
 import java.util.List;
+
+import com.emato.biz.domain.mall.MallGoodsVO;
 import com.emato.biz.domain.mall.MallInveMng;
 
 /**
@@ -12,6 +14,14 @@ import com.emato.biz.domain.mall.MallInveMng;
 public interface IMallInveMngService
 {
     /**
+     * 查询商品信息
+     *
+     * @param mallInveMng
+     * @return
+     */
+    List<MallGoodsVO> getMalGoodsVOList(MallInveMng mallInveMng);
+
+    /**
      * 查询库存管理,wms入库回传时,增加库存数
      *
      * @param inveSn 库存管理,wms入库回传时,增加库存数ID

+ 47 - 0
eccs-biz/src/main/resources/mapper/biz/mall/MallGoodsMapper.xml

@@ -0,0 +1,47 @@
+<?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.emato.biz.mapper.mall.MallGoodsMapper">
+
+    <resultMap id="MallGoodsVO" type="com.emato.biz.domain.mall.MallGoodsVO">
+        <result property="merchSn" column="merch_sn" />
+        <result property="merchName" column="merch_name" />
+        <result property="sku" column="sku" />
+        <result property="plu" column="plu" />
+        <result property="mychemId" column="mychem_id" />
+        <result property="goodsName" column="name" />
+        <result property="englishName" column="english_name" />
+        <result property="brand" column="brand" />
+        <result property="inveNum" column="goods_number" />
+    </resultMap>
+
+    <!-- 查询商品信息的字段 -->
+    <sql id="selectMallGoodsVOColumns">
+        t1.merch_sn,
+        t1.sku,
+        t1.plu,
+        t1.mychem_id,
+        t1.name,
+        t1.english_name,
+        t1.brand,
+        t1.goods_number
+    </sql>
+
+    <!-- 查询商品信息 VO 列表 -->
+    <select id="selectMallGoodsList" resultMap="MallGoodsVO">
+        SELECT
+            <include refid="selectMallGoodsVOColumns" />,
+            t2.merch_name
+        FROM
+            mall_goods t1
+            LEFT JOIN merchant_base t2 ON t1.merch_sn = t2.merch_sn
+        <where>
+            <if test="merchSn != null  and merchSn != ''"> and t1.merch_sn = #{merchSn}</if>
+            <if test="sku != null  and sku != ''"> and t1.sku = #{sku}</if>
+            <if test="plu != null  and plu != ''"> and t1.PLU = #{plu}</if>
+            <if test="goodsName != null  and goodsName != ''"> and t1.name like concat('%', #{goodsName}, '%')</if>
+        </where>
+    </select>
+
+</mapper>

+ 9 - 8
eccs-ui/src/views/mall/mallinvemng/index.vue

@@ -19,7 +19,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="PLU" prop="plu">
+      <!-- <el-form-item label="PLU" prop="plu">
         <el-input
           v-model="queryParams.plu"
           placeholder="请输入PLU"
@@ -27,7 +27,7 @@
           size="small"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item label="商品名称" prop="goodsName">
         <el-input
           v-model="queryParams.goodsName"
@@ -106,8 +106,8 @@
           v-hasPermi="['biz:mallinvemng:export']"
         >导出</el-button>
       </el-col>
-
-      <el-col :span="1.5">
+      
+      <!-- <el-col :span="1.5">
         <el-button
           type="warning"
           icon="el-icon-download"
@@ -115,17 +115,18 @@
           @click="handlePull"
           v-hasPermi="['biz:shopinvemng:pull']"
         >拉取</el-button>
-      </el-col>
+      </el-col> -->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="mallinvemngList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="库存编号" align="center" prop="inveSn" />
+      <!-- <el-table-column label="库存编号" align="center" prop="inveSn" /> -->
       <el-table-column label="商户编号" align="center" prop="merchSn" />
       <el-table-column label="商户名称" align="center" prop="merchName" />
       <el-table-column label="SKU" align="center" prop="sku" />
       <el-table-column label="PLU" align="center" prop="plu" />
+      <el-table-column label="MychemID" align="center" prop="mychemId" />
       <el-table-column label="商品名称" align="center" prop="goodsName" />
       <el-table-column label="商品英文名称" align="center" prop="englishName" />
       <el-table-column label="品牌" align="center" prop="brand" />
@@ -137,8 +138,8 @@
       <el-table-column label="库存状态" align="center" prop="inveStatus" />
       <el-table-column label="海关代码" align="center" prop="cusCode" />-->
       <el-table-column label="库存数" align="center" prop="inveNum" />
-      <el-table-column label="可用数" align="center" prop="validNum" />
-      <el-table-column label="下单冻结数" align="center" prop="freezeNum" />
+      <!-- <el-table-column label="可用数" align="center" prop="validNum" />
+      <el-table-column label="下单冻结数" align="center" prop="freezeNum" /> -->
       <!--<el-table-column label="进货数" align="center" prop="imWareNum" />
       <el-table-column label="退货数" align="center" prop="returnNum" />
       <el-table-column label="过期数" align="center" prop="expireNum" />