瀏覽代碼

商品管理

xgb 1 周之前
父節點
當前提交
85bc686779

+ 7 - 7
fs-admin/src/main/java/com/fs/admin/controller/audit/ProductAdminController.java

@@ -39,7 +39,7 @@ public class ProductAdminController extends BaseController {
     @PreAuthorize("@ss.hasPermi('admin:product:list')")
     @GetMapping("/export")
     public AjaxResult export(@RequestParam(required = false) String productName,
-                             @RequestParam(required = false) Integer status) {
+                             @RequestParam(required = false) String status) {
         List<Map<String, Object>> allList = adminProductService.selectProductListForExport(productName, status);
         List<ProductExportVO> voList = new ArrayList<>();
         for (Map<String, Object> m : allList) {
@@ -49,7 +49,7 @@ public class ProductAdminController extends BaseController {
             vo.setCategoryName(str(m.get("categoryName")));
             vo.setPrice(str(m.get("price")));
             vo.setStock(str(m.get("stock")));
-            vo.setStatus(statusText((String) m.get("status")));
+            vo.setStatus(statusText(str(m.get("status"))));
             vo.setCreateTime(str(m.get("createTime")));
             voList.add(vo);
         }
@@ -60,7 +60,7 @@ public class ProductAdminController extends BaseController {
     @PreAuthorize("@ss.hasPermi('admin:product:list')")
     @GetMapping("/list")
     public TableDataInfo list(@RequestParam(required = false) String productName,
-                              @RequestParam(required = false) Integer status) {
+                              @RequestParam(required = false) String status) {
         List<Map<String, Object>> allList = adminProductService.selectProductList(productName, status);
         return getDataTable(allList);
     }
@@ -83,7 +83,7 @@ public class ProductAdminController extends BaseController {
     @PreAuthorize("@ss.hasPermi('admin:product:audit')")
     @PutMapping("/audit/{productId}")
     public AjaxResult audit(@PathVariable Long productId,
-                            @RequestParam Integer status,
+                            @RequestParam String status,
                             @RequestParam(required = false) String auditRemark) {
         int rows = adminProductService.auditProduct(productId, status);
         return rows > 0 ? AjaxResult.success("操作成功") : AjaxResult.error("操作失败");
@@ -102,11 +102,11 @@ public class ProductAdminController extends BaseController {
     }
 
     private String statusText(String status) {
-        if (status == null) return "";
+        if (status == null || status.isEmpty()) return "";
         switch (status) {
             case "0": return "待审核";
-            case "1": return "已上架";
-            case "2": return "已拒绝";
+            case "1": return "审核通过";
+            case "2": return "审核退回";
             default: return status;
         }
     }

+ 2 - 2
fs-service/src/main/java/com/fs/admin/mapper/AdminProductMapper.java

@@ -10,10 +10,10 @@ public interface AdminProductMapper {
     List<AdminProductVO> selectProductList(@Param("productName") String productName);
 
     List<AdminProductVO> selectProductListByStatus(@Param("productName") String productName,
-                                                    @Param("status") Integer status);
+                                                    @Param("status") String status);
 
     AdminProductVO selectProductById(@Param("productId") Long productId);
 
     int updateAuditStatus(@Param("productId") Long productId,
-                          @Param("status") Integer status);
+                          @Param("status") String status);
 }

+ 3 - 3
fs-service/src/main/java/com/fs/admin/service/IAdminProductService.java

@@ -5,9 +5,9 @@ import java.util.Map;
 
 public interface IAdminProductService {
 
-    List<Map<String, Object>> selectProductList(String productName, Integer status);
+    List<Map<String, Object>> selectProductList(String productName, String status);
 
-    List<Map<String, Object>> selectProductListForExport(String productName, Integer status);
+    List<Map<String, Object>> selectProductListForExport(String productName, String status);
 
     List<Map<String, Object>> selectProductPendingList();
 
@@ -15,5 +15,5 @@ public interface IAdminProductService {
 
     Map<String, Object> selectProductById(Long productId);
 
-    int auditProduct(Long productId, Integer status);
+    int auditProduct(Long productId, String status);
 }

+ 9 - 7
fs-service/src/main/java/com/fs/admin/service/impl/AdminProductServiceImpl.java

@@ -17,18 +17,18 @@ public class AdminProductServiceImpl implements IAdminProductService {
     private AdminProductMapper adminProductMapper;
 
     @Override
-    public List<Map<String, Object>> selectProductList(String productName, Integer status) {
+    public List<Map<String, Object>> selectProductList(String productName, String status) {
         return toMapList(adminProductMapper.selectProductListByStatus(productName, status));
     }
 
     @Override
-    public List<Map<String, Object>> selectProductListForExport(String productName, Integer status) {
+    public List<Map<String, Object>> selectProductListForExport(String productName, String status) {
         return toMapList(adminProductMapper.selectProductListByStatus(productName, status));
     }
 
     @Override
     public List<Map<String, Object>> selectProductPendingList() {
-        return toMapList(adminProductMapper.selectProductListByStatus(null, 0));
+        return toMapList(adminProductMapper.selectProductListByStatus(null, "0"));
     }
 
     @Override
@@ -44,7 +44,7 @@ public class AdminProductServiceImpl implements IAdminProductService {
     }
 
     @Override
-    public int auditProduct(Long productId, Integer status) {
+    public int auditProduct(Long productId, String status) {
         return adminProductMapper.updateAuditStatus(productId, status);
     }
 
@@ -52,12 +52,14 @@ public class AdminProductServiceImpl implements IAdminProductService {
         Map<String, Object> map = new HashMap<>();
         map.put("productId", vo.getProductId());
         map.put("productName", vo.getProductName());
-        map.put("productImage", vo.getImgUrl());
-        map.put("imgUrl", vo.getImgUrl());
+        map.put("productImage", vo.getImage());
+        map.put("image", vo.getImage());
         map.put("price", vo.getPrice());
         map.put("stock", vo.getStock());
         map.put("isShow", vo.getIsShow());
-        map.put("status", String.valueOf(vo.getIsShow()));
+        map.put("isAudit", vo.getIsAudit());
+        map.put("status", vo.getIsAudit());
+        map.put("description", vo.getDescription());
         map.put("createTime", vo.getCreateTime());
         map.put("sales", vo.getSales());
         map.put("cateId", vo.getCateId());

+ 41 - 13
fs-service/src/main/java/com/fs/admin/vo/AdminProductVO.java

@@ -7,17 +7,19 @@ import java.math.BigDecimal;
 public class AdminProductVO {
 
     private Long productId;
-    private Long storeId;
-    private String imgUrl;
-    private String images;
-    private String videoUrl;
+    private String video;
+    private String image;
+    private String sliderImage;
     private String productName;
-    private String productIntroduce;
+    private String productInfo;
     private String keyword;
     private String barCode;
     private Long cateId;
     private BigDecimal price;
+    private BigDecimal vipPrice;
     private BigDecimal otPrice;
+    private BigDecimal agentPrice;
+    private BigDecimal postage;
     private String unitName;
     private Integer sort;
     private Integer sales;
@@ -27,29 +29,55 @@ public class AdminProductVO {
     private Integer isBenefit;
     private Integer isBest;
     private Integer isNew;
-    private String desc;
+    private String description;
     private String createTime;
     private String updateTime;
     private Integer isPostage;
     private Integer isDel;
     private BigDecimal giveIntegral;
+    private BigDecimal cost;
     private Integer isGood;
-    private BigDecimal costPrice;
-    private Integer views;
-    private String codeUrl;
+    private Integer browse;
+    private String codePath;
+    private Integer tempId;
     private Integer specType;
+    private Integer isIntegral;
+    private Integer integral;
     private Integer productType;
     private String prescribeCode;
     private String prescribeSpec;
     private String prescribeFactory;
     private String prescribeName;
     private Integer isDisplay;
-    private Integer tempId;
-    private BigDecimal doctorBrokerage;
-    private Integer isPrescribe;
-    private Integer isDrug;
+    private Integer tuiCateId;
     private String companyIds;
+    private Long storeId;
+    private String isDrug;
+    private String drugImage;
+    private String drugRegCertNo;
+    private String commonName;
+    private String dosageForm;
+    private String unitPrice;
+    private String batchNumber;
+    private String mah;
+    private String mahAddress;
+    private String manufacturer;
+    private String manufacturerAddress;
+    private String indications;
+    private String dosage;
+    private String adverseReactions;
+    private String contraindications;
+    private String precautions;
+    private String isAudit;
+    private String returnAddress;
     private String brand;
+    private String foodProductionLicenseCode;
+    private String originPlace;
+    private String netContent;
+    private String shelfLife;
+    private Integer domesticImported;
+    private String appIds;
+    private Long purchaseLimit;
 
     private String companyName;
     private String tenantCode;

+ 95 - 57
fs-service/src/main/resources/mapper/admin/AdminProductMapper.xml

@@ -5,65 +5,103 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 <mapper namespace="com.fs.admin.mapper.AdminProductMapper">
 
     <resultMap type="com.fs.admin.vo.AdminProductVO" id="AdminProductVOResult">
-        <id     property="productId"       column="product_id"        />
-        <result property="storeId"         column="store_id"          />
-        <result property="imgUrl"          column="img_url"           />
-        <result property="images"          column="images"            />
-        <result property="videoUrl"        column="video_url"         />
-        <result property="productName"     column="product_name"      />
-        <result property="productIntroduce" column="product_introduce"/>
-        <result property="keyword"         column="keyword"           />
-        <result property="barCode"         column="bar_code"          />
-        <result property="cateId"          column="cate_id"           />
-        <result property="price"           column="price"             />
-        <result property="otPrice"         column="ot_price"          />
-        <result property="unitName"        column="unit_name"         />
-        <result property="sort"            column="sort"              />
-        <result property="sales"           column="sales"             />
-        <result property="stock"           column="stock"             />
-        <result property="isShow"          column="is_show"           />
-        <result property="isHot"           column="is_hot"            />
-        <result property="isBenefit"       column="is_benefit"        />
-        <result property="isBest"          column="is_best"           />
-        <result property="isNew"           column="is_new"            />
-        <result property="desc"            column="desc"              />
-        <result property="createTime"      column="create_time"       />
-        <result property="updateTime"      column="update_time"       />
-        <result property="isPostage"       column="is_postage"        />
-        <result property="isDel"           column="is_del"            />
-        <result property="giveIntegral"    column="give_integral"     />
-        <result property="isGood"          column="is_good"           />
-        <result property="costPrice"       column="cost_price"        />
-        <result property="views"           column="views"             />
-        <result property="codeUrl"         column="code_url"          />
-        <result property="specType"        column="spec_type"         />
-        <result property="productType"     column="product_type"      />
-        <result property="prescribeCode"   column="prescribe_code"    />
-        <result property="prescribeSpec"   column="prescribe_spec"    />
-        <result property="prescribeFactory" column="prescribe_factory"/>
-        <result property="prescribeName"   column="prescribe_name"    />
-        <result property="isDisplay"       column="is_display"        />
-        <result property="tempId"          column="temp_id"           />
-        <result property="doctorBrokerage" column="doctor_brokerage"  />
-        <result property="isPrescribe"     column="is_prescribe"      />
-        <result property="isDrug"          column="is_drug"           />
-        <result property="companyIds"      column="company_ids"       />
-        <result property="brand"           column="brand"             />
+        <id     property="productId"              column="product_id"              />
+        <result property="video"                  column="video"                   />
+        <result property="image"                  column="image"                   />
+        <result property="sliderImage"            column="slider_image"            />
+        <result property="productName"            column="product_name"            />
+        <result property="productInfo"            column="product_info"            />
+        <result property="keyword"                column="keyword"                 />
+        <result property="barCode"                column="bar_code"                />
+        <result property="cateId"                 column="cate_id"                 />
+        <result property="price"                  column="price"                   />
+        <result property="vipPrice"               column="vip_price"               />
+        <result property="otPrice"                column="ot_price"                />
+        <result property="agentPrice"             column="agent_price"             />
+        <result property="postage"                column="postage"                 />
+        <result property="unitName"               column="unit_name"               />
+        <result property="sort"                   column="sort"                    />
+        <result property="sales"                  column="sales"                   />
+        <result property="stock"                  column="stock"                   />
+        <result property="isShow"                 column="is_show"                 />
+        <result property="isHot"                  column="is_hot"                  />
+        <result property="isBenefit"              column="is_benefit"              />
+        <result property="isBest"                 column="is_best"                 />
+        <result property="isNew"                  column="is_new"                  />
+        <result property="description"            column="description"             />
+        <result property="createTime"             column="create_time"             />
+        <result property="updateTime"             column="update_time"             />
+        <result property="isPostage"              column="is_postage"              />
+        <result property="isDel"                  column="is_del"                  />
+        <result property="giveIntegral"           column="give_integral"           />
+        <result property="cost"                   column="cost"                    />
+        <result property="isGood"                 column="is_good"                 />
+        <result property="browse"                 column="browse"                  />
+        <result property="codePath"               column="code_path"               />
+        <result property="tempId"                 column="temp_id"                 />
+        <result property="specType"               column="spec_type"               />
+        <result property="isIntegral"             column="is_integral"             />
+        <result property="integral"               column="integral"                />
+        <result property="productType"            column="product_type"            />
+        <result property="prescribeCode"          column="prescribe_code"          />
+        <result property="prescribeSpec"          column="prescribe_spec"          />
+        <result property="prescribeFactory"       column="prescribe_factory"       />
+        <result property="prescribeName"          column="prescribe_name"          />
+        <result property="isDisplay"              column="is_display"              />
+        <result property="tuiCateId"              column="tui_cate_id"             />
+        <result property="companyIds"             column="company_ids"             />
+        <result property="storeId"                column="store_id"                />
+        <result property="isDrug"                 column="is_drug"                 />
+        <result property="drugImage"              column="drug_image"              />
+        <result property="drugRegCertNo"          column="drug_reg_cert_no"        />
+        <result property="commonName"             column="common_name"             />
+        <result property="dosageForm"             column="dosage_form"             />
+        <result property="unitPrice"              column="unit_price"              />
+        <result property="batchNumber"            column="batch_number"            />
+        <result property="mah"                    column="mah"                     />
+        <result property="mahAddress"             column="mah_address"             />
+        <result property="manufacturer"           column="manufacturer"            />
+        <result property="manufacturerAddress"    column="manufacturer_address"    />
+        <result property="indications"            column="indications"             />
+        <result property="dosage"                 column="dosage"                  />
+        <result property="adverseReactions"       column="adverse_reactions"       />
+        <result property="contraindications"      column="contraindications"       />
+        <result property="precautions"            column="precautions"             />
+        <result property="isAudit"                column="is_audit"                />
+        <result property="returnAddress"          column="return_address"          />
+        <result property="brand"                  column="brand"                   />
+        <result property="foodProductionLicenseCode" column="food_production_license_code"/>
+        <result property="originPlace"            column="origin_place"            />
+        <result property="netContent"             column="net_content"             />
+        <result property="shelfLife"              column="shelf_life"              />
+        <result property="domesticImported"       column="domestic_imported"       />
+        <result property="appIds"                 column="app_ids"                 />
+        <result property="purchaseLimit"          column="purchase_limit"          />
     </resultMap>
 
     <sql id="selectAdminProductVo">
-        SELECT p.product_id, p.store_id, p.img_url, p.images, p.video_url,
-               p.product_name, p.product_introduce, p.keyword, p.bar_code,
-               p.cate_id, p.price, p.ot_price, p.unit_name, p.sort,
+        SELECT p.product_id, p.video, p.image, p.slider_image,
+               p.product_name, p.product_info, p.keyword, p.bar_code,
+               p.cate_id, p.price, p.vip_price, p.ot_price,
+               p.agent_price, p.postage, p.unit_name, p.sort,
                p.sales, p.stock, p.is_show, p.is_hot, p.is_benefit,
-               p.is_best, p.is_new, p.desc, p.create_time, p.update_time,
-               p.is_postage, p.is_del, p.give_integral, p.is_good,
-               p.cost_price, p.views, p.code_url, p.spec_type,
+               p.is_best, p.is_new, p.description, p.create_time,
+               p.update_time, p.is_postage, p.is_del, p.give_integral,
+               p.cost, p.is_good, p.browse, p.code_path,
+               p.temp_id, p.spec_type, p.is_integral, p.integral,
                p.product_type, p.prescribe_code, p.prescribe_spec,
                p.prescribe_factory, p.prescribe_name, p.is_display,
-               p.temp_id, p.doctor_brokerage, p.is_prescribe, p.is_drug,
-               p.company_ids, p.brand
-        FROM fs_store_product p
+               p.tui_cate_id, p.company_ids, p.store_id, p.is_drug,
+               p.drug_image, p.drug_reg_cert_no, p.common_name,
+               p.dosage_form, p.unit_price, p.batch_number,
+               p.mah, p.mah_address, p.manufacturer,
+               p.manufacturer_address, p.indications, p.dosage,
+               p.adverse_reactions, p.contraindications, p.precautions,
+               p.is_audit, p.return_address, p.brand,
+               p.food_production_license_code, p.origin_place,
+               p.net_content, p.shelf_life, p.domestic_imported,
+               p.app_ids, p.purchase_limit
+        FROM fs_store_product_scrm p
     </sql>
 
     <select id="selectProductList" resultMap="AdminProductVOResult">
@@ -82,8 +120,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="productName != null and productName != ''">
                 AND p.product_name LIKE CONCAT('%', #{productName}, '%')
             </if>
-            <if test="status != null">
-                AND p.is_show = #{status}
+            <if test="status != null and status != ''">
+                AND p.is_audit = #{status}
             </if>
         </where>
         ORDER BY p.create_time DESC
@@ -95,8 +133,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <update id="updateAuditStatus">
-        UPDATE fs_store_product
-        SET is_show = #{status}, update_time = NOW()
+        UPDATE fs_store_product_scrm
+        SET is_audit = #{status}, update_time = NOW()
         WHERE product_id = #{productId}
     </update>