Bladeren bron

多店铺-推荐店铺

chenguo 1 week geleden
bovenliggende
commit
ddb605ad05

+ 45 - 0
fs-service/src/main/java/com/fs/hisStore/domain/FsStoreRecommendScrm.java

@@ -0,0 +1,45 @@
+package com.fs.hisStore.domain;
+
+import com.fs.common.core.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 店铺推荐对象 fs_store_recommend_scrm
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class FsStoreRecommendScrm extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 主键ID */
+    private Long id;
+
+    /** 店铺ID */
+    private Long storeId;
+
+    /** 店铺名称 */
+    private String storeName;
+
+    /** 排序值,数值越小越靠前 */
+    private Integer sortOrder;
+
+    /** 推荐类型(HOT热门,NEW新品,GENERAL普通推荐) */
+    private String recommendType;
+
+    /** 状态(0禁用,1启用) */
+    private Integer status;
+
+    /** 权重值,用于综合排序 */
+    private Integer weight;
+
+    /** 推荐理由 */
+    private String recommendReason;
+
+}

+ 61 - 2
fs-service/src/main/java/com/fs/hisStore/domain/FsStoreScrm.java

@@ -93,46 +93,105 @@ public class FsStoreScrm extends BaseEntity
     private String shippingType;
 
 
+    /** 佣金类型 */
     private Integer brokerageType;
 
+    /** 佣金比例 */
     private Integer brokerageRate;
 
-
+    /** 店铺全称 */
     private String fullName;
 
-
+    /** 退货联系电话 */
     private String refundPhone;
+
+    /** 退货地址 */
     private String refundAddress;
+
+    /** 退货联系人 */
     private String refundConsignee;
 
+    /** 配送方式 */
     private Integer deliveryType;
 
+    /** 发货联系电话 */
     private String sendPhone;
 
+    /** 企业注册地址 */
     private String enterpriseAddress;
+
+    /** 法人代表姓名 */
     private String legalPersonName;
+
+    /** 统一社会信用代码 */
     private String unifiedSocialCreditCode;
+    /** 统一社会信用代码失效日期 */
+    private String unifiedSocialCreditCodeExpireEnd;
+
+    /** 经营范围 */
     private String businessScope;
+
+    /** 营业执照图片 */
     private String businessLicense;
+
+    /** 营业执照有效期开始 */
     private LocalDate businessLicenseExpireStart;
+
+    /** 营业执照有效期结束 */
     private LocalDate businessLicenseExpireEnd;
+
+    /** 药品经营许可证 */
     private String drugLicense;
+
+    /** 药品经营许可证有效期开始 */
     private LocalDate drugLicenseExpiryStart;
+
+    /** 药品经营许可证有效期结束 */
     private LocalDate drugLicenseExpiryEnd;
+
+    /** 1类器械生产备案 */
     private String medicalDevice1;
+
+    /** 1类器械生产备案有效期开始 */
     private LocalDate medicalDevice1ExpiryStart;
+
+    /** 1类器械生产备案有效期结束 */
     private LocalDate medicalDevice1ExpiryEnd;
+
+    /** 2类医疗器械备案 */
     private String medicalDevice2;
+
+    /** 2类医疗器械备案有效期开始 */
     private LocalDate medicalDevice2ExpiryStart;
+
+    /** 2类医疗器械备案有效期结束 */
     private LocalDate medicalDevice2ExpiryEnd;
+
+    /** 3类器械经营许可证 */
     private String medicalDevice3;
+
+    /** 3类器械经营许可证有效期开始 */
     private LocalDate medicalDevice3ExpiryStart;
+
+    /** 3类器械经营许可证有效期结束 */
     private LocalDate medicalDevice3ExpiryEnd;
+
+    /** 食品经营许可证 */
     private String foodLicense;
+
+    /** 食品经营许可证有效期开始 */
     private LocalDate foodLicenseExpiryStart;
+
+    /** 食品经营许可证有效期结束 */
     private LocalDate foodLicenseExpiryEnd;
+
+    /** 医疗机构执业许可证 */
     private String medicalLicense;
+
+    /** 医疗机构执业许可证有效期开始 */
     private LocalDate medicalLicenseExpiryStart;
+
+    /** 医疗机构执业许可证有效期结束 */
     private LocalDate medicalLicenseExpiryEnd;
 
 }

+ 69 - 0
fs-service/src/main/java/com/fs/hisStore/mapper/FsStoreRecommendScrmMapper.java

@@ -0,0 +1,69 @@
+package com.fs.hisStore.mapper;
+
+import com.fs.hisStore.domain.FsStoreRecommendScrm;
+import java.util.List;
+
+/**
+ * 店铺推荐Mapper接口
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+public interface FsStoreRecommendScrmMapper
+{
+    /**
+     * 查询店铺推荐
+     *
+     * @param id 店铺推荐主键
+     * @return 店铺推荐
+     */
+    public FsStoreRecommendScrm selectFsStoreRecommendScrmById(Long id);
+
+    /**
+     * 查询店铺推荐列表
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐集合
+     */
+    public List<FsStoreRecommendScrm> selectFsStoreRecommendScrmList(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 查询有效的推荐店铺列表(根据时间、状态等条件)
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐集合
+     */
+    public List<FsStoreRecommendScrm> selectValidRecommendList(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 新增店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    public int insertFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 修改店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    public int updateFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 删除店铺推荐
+     *
+     * @param id 店铺推荐主键
+     * @return 结果
+     */
+    public int deleteFsStoreRecommendScrmById(Long id);
+
+    /**
+     * 批量删除店铺推荐
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteFsStoreRecommendScrmByIds(Long[] ids);
+}

+ 2 - 0
fs-service/src/main/java/com/fs/hisStore/param/FsStoreProductQueryParam.java

@@ -28,4 +28,6 @@ public class FsStoreProductQueryParam extends BaseQueryParam implements Serializ
     private String token;
     // 用户企业ID
     private Long companyId;
+    //是否药品(0否 1是)
+    private Integer isDrug;
 }

+ 69 - 0
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreRecommendScrmService.java

@@ -0,0 +1,69 @@
+package com.fs.hisStore.service;
+
+import com.fs.hisStore.domain.FsStoreRecommendScrm;
+import java.util.List;
+
+/**
+ * 店铺推荐Service接口
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+public interface IFsStoreRecommendScrmService
+{
+    /**
+     * 查询店铺推荐
+     *
+     * @param id 店铺推荐主键
+     * @return 店铺推荐
+     */
+    public FsStoreRecommendScrm selectFsStoreRecommendScrmById(Long id);
+
+    /**
+     * 查询店铺推荐列表
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐集合
+     */
+    public List<FsStoreRecommendScrm> selectFsStoreRecommendScrmList(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 查询有效的推荐店铺列表(根据时间、状态等条件)
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐集合
+     */
+    public List<FsStoreRecommendScrm> selectValidRecommendList(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 新增店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    public int insertFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 修改店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    public int updateFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm);
+
+    /**
+     * 批量删除店铺推荐
+     *
+     * @param ids 需要删除的店铺推荐主键集合
+     * @return 结果
+     */
+    public int deleteFsStoreRecommendScrmByIds(Long[] ids);
+
+    /**
+     * 删除店铺推荐信息
+     *
+     * @param id 店铺推荐主键
+     * @return 结果
+     */
+    public int deleteFsStoreRecommendScrmById(Long id);
+}

+ 3 - 0
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductScrmServiceImpl.java

@@ -187,6 +187,9 @@ public class FsStoreProductScrmServiceImpl implements IFsStoreProductScrmService
                 }
                 item.setCompanyName(String.join(",",companyNameList));
             }
+            //店铺名称
+            if(StringUtils.isNotEmpty(item.getStoreId()))
+                item.setStoreName(fsStoreScrmService.selectFsStoreByStoreId(Long.parseLong(item.getStoreId())).getStoreName());
         }
         return fsStoreProductListVOS;
     }

+ 2 - 2
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreScrmServiceImpl.java

@@ -91,7 +91,7 @@ public class FsStoreScrmServiceImpl implements IFsStoreScrmService
         fsStore.setUpdateTime(DateUtils.getNowDate());
         storeAuditLogUtil.addOperLog(fsStore.getStoreId());
         //更新,信息,时间等,后台重新审核,驳回的店铺,重新审核
-        if(1 != fsStore.getIsAudit()){
+        if(1 == fsStore.getIsAudit()){
             fsStore.setIsAudit(0);
         }
         return fsStoreMapper.updateFsStore(fsStore);
@@ -173,4 +173,4 @@ public class FsStoreScrmServiceImpl implements IFsStoreScrmService
         return fsStoreMapper.batchUpdateStatusByIds(ids, status);
     }
 
-}
+}

+ 104 - 0
fs-service/src/main/java/com/fs/hisStore/service/impl/IFsStoreRecommendScrmServiceImpl.java

@@ -0,0 +1,104 @@
+package com.fs.hisStore.service.impl;
+
+import com.fs.common.core.domain.BaseEntity;
+import com.fs.common.utils.DateUtils;
+import com.fs.hisStore.domain.FsStoreRecommendScrm;
+import com.fs.hisStore.mapper.FsStoreRecommendScrmMapper;
+import com.fs.hisStore.service.IFsStoreRecommendScrmService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 店铺推荐Service业务层处理
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+@Service
+public class IFsStoreRecommendScrmServiceImpl implements IFsStoreRecommendScrmService {
+
+    @Autowired
+    private FsStoreRecommendScrmMapper fsStoreRecommendScrmMapper;
+
+    /**
+     * 查询店铺推荐
+     *
+     * @param id 店铺推荐主键
+     * @return 店铺推荐
+     */
+    @Override
+    public FsStoreRecommendScrm selectFsStoreRecommendScrmById(Long id) {
+        return fsStoreRecommendScrmMapper.selectFsStoreRecommendScrmById(id);
+    }
+
+    /**
+     * 查询店铺推荐列表
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐
+     */
+    @Override
+    public List<FsStoreRecommendScrm> selectFsStoreRecommendScrmList(FsStoreRecommendScrm fsStoreRecommendScrm) {
+        return fsStoreRecommendScrmMapper.selectFsStoreRecommendScrmList(fsStoreRecommendScrm);
+    }
+
+    /**
+     * 查询有效的推荐店铺列表
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 店铺推荐集合
+     */
+    @Override
+    public List<FsStoreRecommendScrm> selectValidRecommendList(FsStoreRecommendScrm fsStoreRecommendScrm) {
+        return fsStoreRecommendScrmMapper.selectValidRecommendList(fsStoreRecommendScrm);
+    }
+
+    /**
+     * 新增店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    @Override
+    public int insertFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm) {
+        fsStoreRecommendScrm.setCreateTime(DateUtils.getNowDate());
+        return fsStoreRecommendScrmMapper.insertFsStoreRecommendScrm(fsStoreRecommendScrm);
+    }
+
+    /**
+     * 修改店铺推荐
+     *
+     * @param fsStoreRecommendScrm 店铺推荐
+     * @return 结果
+     */
+    @Override
+    public int updateFsStoreRecommendScrm(FsStoreRecommendScrm fsStoreRecommendScrm) {
+        fsStoreRecommendScrm.setUpdateTime(DateUtils.getNowDate());
+        return fsStoreRecommendScrmMapper.updateFsStoreRecommendScrm(fsStoreRecommendScrm);
+    }
+
+    /**
+     * 批量删除店铺推荐
+     *
+     * @param ids 需要删除的店铺推荐主键
+     * @return 结果
+     */
+    @Override
+    public int deleteFsStoreRecommendScrmByIds(Long[] ids) {
+        return fsStoreRecommendScrmMapper.deleteFsStoreRecommendScrmByIds(ids);
+    }
+
+    /**
+     * 删除店铺推荐信息
+     *
+     * @param id 店铺推荐主键
+     * @return 结果
+     */
+    @Override
+    public int deleteFsStoreRecommendScrmById(Long id) {
+        return fsStoreRecommendScrmMapper.deleteFsStoreRecommendScrmById(id);
+    }
+}

+ 1 - 0
fs-service/src/main/java/com/fs/hisStore/vo/FsStoreProductListVO.java

@@ -115,4 +115,5 @@ public class FsStoreProductListVO  implements Serializable
     private String isAudit;
 
     private String storeId;
+    private String storeName;
 }

+ 55 - 0
fs-service/src/main/resources/mapper/hisStore/FsStoreRecommendScrmMapper.xml

@@ -0,0 +1,55 @@
+<?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.fs.hisStore.mapper.FsStoreRecommendScrmMapper">
+
+    <resultMap type="FsStoreRecommendScrm" id="FsStoreRecommendScrmResult">
+        <result property="id" column="id"/>
+        <result property="storeId" column="store_id"/>
+        <result property="storeName" column="store_name"/>
+        <result property="sortOrder" column="sort_order"/>
+        <result property="beginTime" column="begin_time"/>
+        <result property="endTime" column="end_time"/>
+        <result property="recommendType" column="recommend_type"/>
+        <result property="status" column="status"/>
+        <result property="weight" column="weight"/>
+        <result property="recommendReason" column="recommend_reason"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="remark" column="remark"/>
+    </resultMap>
+
+    <sql id="selectFsStoreRecommendScrmVo">
+        select id, store_id, store_name, sort_order, begin_time, end_time, recommend_type, status, weight, recommend_reason, create_by, create_time, update_by, update_time, remark from fs_store_recommend_scrm
+    </sql>
+
+    <select id="selectFsStoreRecommendScrmList" parameterType="FsStoreRecommendScrm" resultMap="FsStoreRecommendScrmResult">
+        <include refid="selectFsStoreRecommendScrmVo"/>
+        <where>
+            <if test="storeId != null "> and store_id = #{storeId}</if>
+            <if test="storeName != null  and storeName != ''"> and store_name like concat('%', #{storeName}, '%')</if>
+            <if test="sortOrder != null "> and sort_order = #{sortOrder}</if>
+            <if test="beginTime != null "> and begin_time &gt;= #{beginTime}</if>
+            <if test="endTime != null "> and end_time &lt;= #{endTime}</if>
+            <if test="recommendType != null  and recommendType != ''"> and recommend_type = #{recommendType}</if>
+            <if test="status != null "> and status = #{status}</if>
+            <if test="weight != null "> and weight = #{weight}</if>
+        </where>
+        order by sort_order asc, weight desc, create_time desc
+    </select>
+
+    <select id="selectValidRecommendList" parameterType="FsStoreRecommendScrm" resultMap="FsStoreRecommendScrmResult">
+        <include refid="selectFsStoreRecommendScrmVo"/>
+        <where>
+            status = 1
+            and (begin_time is null or begin_time &lt;= now())
+            and (end_time is null or end_time &gt;= now())
+            <if test="recommendType != null  and recommendType != ''"> and recommend_type = #{recommendType}</if>
+        </where>
+        order by sort_order asc, weight desc, create_time desc
+    </select>
+
+</mapper>

+ 91 - 0
fs-user-app/src/main/java/com/fs/app/controller/store/FsUserComplaintController.java

@@ -0,0 +1,91 @@
+package com.fs.app.controller.store;
+
+import com.fs.common.annotation.Log;
+import com.fs.common.core.controller.BaseController;
+import com.fs.common.core.domain.AjaxResult;
+import com.fs.common.core.page.TableDataInfo;
+import com.fs.common.enums.BusinessType;
+import com.fs.common.utils.poi.ExcelUtil;
+import com.fs.user.domain.FsUserComplaint;
+import com.fs.user.service.IFsUserComplaintService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 用户投诉Controller
+ *
+ * @author fs
+ * @date 2025-08-27
+ */
+@RestController
+@RequestMapping("/store/app/user/complaint")
+public class FsUserComplaintController extends BaseController
+{
+    @Autowired
+    private IFsUserComplaintService fsUserComplaintService;
+
+    /**
+     * 查询用户投诉列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(FsUserComplaint fsUserComplaint)
+    {
+        startPage();
+        List<FsUserComplaint> list = fsUserComplaintService.selectFsUserComplaintList(fsUserComplaint);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出用户投诉列表
+     */
+    @Log(title = "用户投诉", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult export(FsUserComplaint fsUserComplaint)
+    {
+        List<FsUserComplaint> list = fsUserComplaintService.selectFsUserComplaintList(fsUserComplaint);
+        ExcelUtil<FsUserComplaint> util = new ExcelUtil<FsUserComplaint>(FsUserComplaint.class);
+        return util.exportExcel(list, "用户投诉数据");
+    }
+
+    /**
+     * 获取用户投诉详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return AjaxResult.success(fsUserComplaintService.selectFsUserComplaintById(id));
+    }
+
+    /**
+     * 新增用户投诉
+     */
+    @Log(title = "用户投诉", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody FsUserComplaint fsUserComplaint)
+    {
+        return toAjax(fsUserComplaintService.insertFsUserComplaint(fsUserComplaint));
+    }
+
+    /**
+     * 修改用户投诉
+     */
+    @Log(title = "用户投诉", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody FsUserComplaint fsUserComplaint)
+    {
+        return toAjax(fsUserComplaintService.updateFsUserComplaint(fsUserComplaint));
+    }
+
+    /**
+     * 删除用户投诉
+     */
+    @Log(title = "用户投诉", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(fsUserComplaintService.deleteFsUserComplaintByIds(ids));
+    }
+}

+ 94 - 0
fs-user-app/src/main/java/com/fs/app/controller/store/StoreRecommendScrmController.java

@@ -0,0 +1,94 @@
+package com.fs.app.controller.store;
+
+import com.fs.common.core.controller.BaseController;
+import com.fs.common.core.domain.AjaxResult;
+import com.fs.common.core.page.TableDataInfo;
+import com.fs.common.annotation.Log;
+import com.fs.common.enums.BusinessType;
+import com.fs.hisStore.domain.FsStoreRecommendScrm;
+import com.fs.hisStore.service.IFsStoreRecommendScrmService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 店铺推荐Controller
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+@RestController
+@RequestMapping("/store/app/recommend")
+public class StoreRecommendScrmController extends BaseController
+{
+    @Autowired
+    private IFsStoreRecommendScrmService fsStoreRecommendService;
+
+    /**
+     * 查询店铺推荐列表
+     */
+    @PreAuthorize("@ss.hasPermi('store:recommend:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(FsStoreRecommendScrm fsStoreRecommendScrm)
+    {
+        startPage();
+        List<FsStoreRecommendScrm> list = fsStoreRecommendService.selectFsStoreRecommendScrmList(fsStoreRecommendScrm);
+        return getDataTable(list);
+    }
+
+    /**
+     * 获取店铺推荐详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('store:recommend:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return AjaxResult.success(fsStoreRecommendService.selectFsStoreRecommendScrmById(id));
+    }
+
+    /**
+     * 新增店铺推荐
+     */
+    @PreAuthorize("@ss.hasPermi('store:recommend:add')")
+    @Log(title = "店铺推荐", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody FsStoreRecommendScrm fsStoreRecommendScrm)
+    {
+        return toAjax(fsStoreRecommendService.insertFsStoreRecommendScrm(fsStoreRecommendScrm));
+    }
+
+    /**
+     * 修改店铺推荐
+     */
+    @PreAuthorize("@ss.hasPermi('store:recommend:edit')")
+    @Log(title = "店铺推荐", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody FsStoreRecommendScrm fsStoreRecommendScrm)
+    {
+        return toAjax(fsStoreRecommendService.updateFsStoreRecommendScrm(fsStoreRecommendScrm));
+    }
+
+    /**
+     * 删除店铺推荐
+     */
+    @PreAuthorize("@ss.hasPermi('store:recommend:remove')")
+    @Log(title = "店铺推荐", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(fsStoreRecommendService.deleteFsStoreRecommendScrmByIds(ids));
+    }
+
+    /**
+     * 查询有效的推荐店铺列表(用于前端展示)
+     */
+    @GetMapping("/validList")
+    public TableDataInfo validList(FsStoreRecommendScrm fsStoreRecommendScrm)
+    {
+        startPage();
+        List<FsStoreRecommendScrm> list = fsStoreRecommendService.selectValidRecommendList(fsStoreRecommendScrm);
+        return getDataTable(list);
+    }
+}

+ 115 - 0
fs-user-app/src/main/java/com/fs/app/controller/store/StoreScrmController.java

@@ -0,0 +1,115 @@
+package com.fs.app.controller.store;
+
+import com.fs.app.annotation.Login;
+import com.fs.common.annotation.Log;
+import com.fs.common.core.controller.BaseController;
+import com.fs.common.core.domain.AjaxResult;
+import com.fs.common.core.domain.R;
+import com.fs.common.core.page.TableDataInfo;
+import com.fs.common.enums.BusinessType;
+import com.fs.common.utils.ParseUtils;
+import com.fs.common.utils.poi.ExcelUtil;
+import com.fs.his.param.FsStoreAuditParam;
+import com.fs.hisStore.domain.FsStoreScrm;
+import com.fs.hisStore.service.IFsStoreScrmService;
+import com.fs.hisStore.utils.StoreAuditLogUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 店铺管理Controller
+ *
+ * @author fs
+ * @date 2023-06-15
+ */
+@RestController
+@RequestMapping("/store/app/store")
+public class StoreScrmController extends BaseController
+{
+    @Autowired
+    private IFsStoreScrmService fsStoreService;
+
+    @Autowired
+    private StoreAuditLogUtil storeAuditLogUtil;
+
+
+    /**
+     * 查询店铺管理列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(FsStoreScrm fsStore)
+    {
+        startPage();
+        List<FsStoreScrm> list = fsStoreService.selectFsStoreList(fsStore);
+        for (FsStoreScrm store : list) {
+            store.setPhone(ParseUtils.parsePhone(store.getPhone()));
+        }
+        return getDataTable(list);
+    }
+
+    /**
+     * 获取店铺管理详细信息
+     */
+    //@Login
+    @GetMapping(value = "/{storeId}")
+    public AjaxResult getInfo(@PathVariable("storeId") Long storeId)
+    {
+        FsStoreScrm fsStore = fsStoreService.selectFsStoreByStoreId(storeId);
+        fsStore.setPhone(ParseUtils.parsePhone(fsStore.getPhone()));
+        return AjaxResult.success(fsStore);
+    }
+
+    /**
+     * 新增店铺管理
+     */
+    //@Login
+    @Log(title = "店铺管理", businessType = BusinessType.INSERT,logParam = {"店铺","新增店铺信息"},isStoreLog = true)
+    @PostMapping
+    public AjaxResult add(@RequestBody FsStoreScrm fsStore)
+    {
+        storeAuditLogUtil.addOperLog(fsStoreService.insertFsStore(fsStore));
+        return AjaxResult.success();
+    }
+
+    /**
+     * 修改店铺管理
+     */
+    //@Login
+    @Log(title = "店铺管理", businessType = BusinessType.UPDATE,logParam = {"店铺","修改店铺信息"},isStoreLog = true)
+    @PutMapping
+    public AjaxResult edit(@RequestBody FsStoreScrm fsStore)
+    {
+
+        if (fsStore.getPhone()!=null&&fsStore.getPhone().contains("*")){
+            fsStore.setPhone(null);
+        }
+        return toAjax(fsStoreService.updateFsStore(fsStore));
+    }
+
+    /**
+     * 删除店铺管理
+     */
+    //@Login
+    @Log(title = "店铺管理", businessType = BusinessType.DELETE,logParam = {"店铺","删除店铺信息"},isStoreLog = true)
+	@DeleteMapping("/{storeIds}")
+    public AjaxResult remove(@PathVariable Long[] storeIds)
+    {
+        return toAjax(fsStoreService.deleteFsStoreByStoreIds(storeIds));
+    }
+
+    /**
+     * 重置店铺密码
+     * */
+    //@Login
+    @Log(title = "店铺管理", businessType = BusinessType.UPDATE,logParam = {"店铺","重置店铺密码"},isStoreLog = true)
+    @PutMapping("/refresh/{storeId}")
+    public AjaxResult refresh(Long storeId)
+    {
+        return toAjax(fsStoreService.refreshFsStore(storeId));
+    }
+
+
+}