Ver código fonte

修改相关内容

码头薯片 6 meses atrás
pai
commit
b9c910fdd8

+ 1 - 0
.gitignore

@@ -48,3 +48,4 @@ nbdist/
 
 # upload
 /recovery-hd/*/*
+/recovery/*

+ 1 - 1
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/WxUser.java

@@ -193,7 +193,7 @@ public class WxUser extends BaseEntity
     {
         return avatar;
     }
-    public void setWxOpenid(String weixinOpenid)
+    public void setWxOpenid(String wxOpenid)
     {
         this.wxOpenid = wxOpenid;
     }

+ 33 - 22
ruoyi-framework/src/main/java/com/ruoyi/framework/recovery/domain/RecSaleInfo.java

@@ -15,7 +15,7 @@ import com.ruoyi.common.core.domain.BaseEntity;
  */
 public class RecSaleInfo extends BaseEntity
 {
-    private static final long serialVersionUID = 1L;
+    private static final long serialVersionUID = -4342946968322908738L;
 
     /** 发售信息id */
     private Long id;
@@ -32,9 +32,12 @@ public class RecSaleInfo extends BaseEntity
     @Excel(name = "市场价格")
     private String market;
 
-    /** 商品id */
-    @Excel(name = "商品id")
-    private String commodityId;
+    /** 门店id */
+    @Excel(name = "门店id")
+    private String storeId;
+
+    @Excel(name = "货号")
+    private String catalog;
 
     /** 创建时间 */
     @JsonFormat(pattern = "yyyy-MM-dd")
@@ -82,16 +85,16 @@ public class RecSaleInfo extends BaseEntity
     {
         return market;
     }
-    public void setCommodityId(String commodityId) 
-    {
-        this.commodityId = commodityId;
+
+    public String getStoreId() {
+        return storeId;
     }
 
-    public String getCommodityId() 
-    {
-        return commodityId;
+    public void setStoreId(String storeId) {
+        this.storeId = storeId;
     }
-    public void setCreateDate(Date createDate) 
+
+    public void setCreateDate(Date createDate)
     {
         this.createDate = createDate;
     }
@@ -110,18 +113,26 @@ public class RecSaleInfo extends BaseEntity
         return updateDate;
     }
 
+    public String getCatalog() {
+        return catalog;
+    }
+
+    public void setCatalog(String catalog) {
+        this.catalog = catalog;
+    }
+
     @Override
     public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("id", getId())
-            .append("saleName", getSaleName())
-            .append("salePrice", getSalePrice())
-            .append("market", getMarket())
-            .append("commodityId", getCommodityId())
-            .append("createBy", getCreateBy())
-            .append("createDate", getCreateDate())
-            .append("updateBy", getUpdateBy())
-            .append("updateDate", getUpdateDate())
-            .toString();
+        final StringBuffer sb = new StringBuffer("RecSaleInfo{");
+        sb.append("id=").append(id);
+        sb.append(", saleName='").append(saleName).append('\'');
+        sb.append(", salePrice='").append(salePrice).append('\'');
+        sb.append(", market='").append(market).append('\'');
+        sb.append(", storeId='").append(storeId).append('\'');
+        sb.append(", catalog='").append(catalog).append('\'');
+        sb.append(", createDate=").append(createDate);
+        sb.append(", updateDate=").append(updateDate);
+        sb.append('}');
+        return sb.toString();
     }
 }

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/WxLoginService.java

@@ -38,7 +38,7 @@ public class WxLoginService {
         //1根据code执行小程序登录获取 openId
         String url = "https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code";
         String replaceUrl = url.replace("{0}", appid).replace("{1}", secret).replace("{2}", code);
-        System.out.println(replaceUrl);
+        log.info("微信调用:{}", replaceUrl);
         JSONObject jsonObject = JSONObject.parseObject(HttpUtils.sendGet(replaceUrl));
         if (jsonObject.get("errcode") != null) {
             throw new ServiceException(String.format("获取微信授权信息失败,错误编码:%s,错误信息:%s", String.valueOf(jsonObject.get("errcode")), (String) jsonObject.get("errmsg")));

+ 11 - 6
ruoyi-system/src/main/resources/mapper/system/RecSaleInfoMapper.xml

@@ -9,15 +9,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="saleName"    column="sale_name"    />
         <result property="salePrice"    column="sale_price"    />
         <result property="market"    column="market"    />
-        <result property="commodityId"    column="commodity_id"    />
+        <result property="storeId"    column="store_id"    />
         <result property="createBy"    column="create_by"    />
         <result property="createDate"    column="create_date"    />
         <result property="updateBy"    column="update_by"    />
         <result property="updateDate"    column="update_date"    />
+        <result property="catalog"    column="catalog"    />
     </resultMap>
 
     <sql id="selectRecSaleInfoVo">
-        select id, sale_name, sale_price, market, commodity_id, create_by, create_date, update_by, update_date from rec_sale_info
+        select id, sale_name,catalog, sale_price, market, store_id, create_by, create_date, update_by, update_date from rec_sale_info
     </sql>
 
     <select id="selectRecSaleInfoList" parameterType="RecSaleInfo" resultMap="RecSaleInfoResult">
@@ -26,9 +27,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="saleName != null  and saleName != ''"> and sale_name like concat('%', #{saleName}, '%')</if>
             <if test="salePrice != null  and salePrice != ''"> and sale_price = #{salePrice}</if>
             <if test="market != null  and market != ''"> and market = #{market}</if>
-            <if test="commodityId != null  and commodityId != ''"> and commodity_id = #{commodityId}</if>
+            <if test="storeId != null  and storeId != ''"> and store_id = #{storeId}</if>
             <if test="createDate != null "> and create_date = #{createDate}</if>
             <if test="updateDate != null "> and update_date = #{updateDate}</if>
+            <if test="catalog != null "> and catalog = #{catalog}</if>
         </where>
     </select>
     
@@ -44,22 +46,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="saleName != null">sale_name,</if>
             <if test="salePrice != null">sale_price,</if>
             <if test="market != null">market,</if>
-            <if test="commodityId != null">commodity_id,</if>
+            <if test="storeId != null">store_id,</if>
             <if test="createBy != null">create_by,</if>
             <if test="createDate != null">create_date,</if>
             <if test="updateBy != null">update_by,</if>
             <if test="updateDate != null">update_date,</if>
+            <if test="catalog != null">catalog,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
             <if test="saleName != null">#{saleName},</if>
             <if test="salePrice != null">#{salePrice},</if>
             <if test="market != null">#{market},</if>
-            <if test="commodityId != null">#{commodityId},</if>
+            <if test="storeId != null">#{storeId},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="createDate != null">#{createDate},</if>
             <if test="updateBy != null">#{updateBy},</if>
             <if test="updateDate != null">#{updateDate},</if>
+            <if test="catalog != null">#{catalog},</if>
          </trim>
     </insert>
 
@@ -69,11 +73,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="saleName != null">sale_name = #{saleName},</if>
             <if test="salePrice != null">sale_price = #{salePrice},</if>
             <if test="market != null">market = #{market},</if>
-            <if test="commodityId != null">commodity_id = #{commodityId},</if>
+            <if test="storeId != null">store_id = #{storeId},</if>
             <if test="createBy != null">create_by = #{createBy},</if>
             <if test="createDate != null">create_date = #{createDate},</if>
             <if test="updateBy != null">update_by = #{updateBy},</if>
             <if test="updateDate != null">update_date = #{updateDate},</if>
+            <if test="catalog != null">update_date = #{catalog},</if>
         </trim>
         where id = #{id}
     </update>

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/WxUserMapper.xml

@@ -57,7 +57,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectWxUserVo"/>
         where id = #{id}
     </select>
-    <select id="selectWxUserByOpenid" resultType="com.ruoyi.common.core.domain.entity.WxUser">
+    <select id="selectWxUserByOpenid" resultMap="WxUserResult">
         <include refid="selectWxUserVo" />
             where wx_openid = #{openid} and status = 0
     </select>

+ 10 - 0
ruoyi-wx/src/main/java/com/ruoyi/wx/web/controller/WxHomeController.java

@@ -44,4 +44,14 @@ public class WxHomeController {
             return AjaxResult.error(ExceptionUtil.getExceptionMessage(e));
         }
     }
+
+    @GetMapping("/sale/calendar")
+    public AjaxResult saleCalendar() {
+        try {
+            List<SaleInfoVo> infoList = wxHomeService.getSaleCalendar();
+            return AjaxResult.success(infoList);
+        } catch (Exception e) {
+            return AjaxResult.error(ExceptionUtil.getExceptionMessage(e));
+        }
+    }
 }

+ 37 - 19
ruoyi-wx/src/main/java/com/ruoyi/wx/web/domain/vo/SaleInfoVo.java

@@ -1,19 +1,23 @@
 package com.ruoyi.wx.web.domain.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+
+import java.io.Serializable;
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 
 //@ApiModel(value = "发售信息详情内容")
-public class SaleInfoVo {
+public class SaleInfoVo implements Serializable {
+    private static final long serialVersionUID = -1L;
     /**
      * 商品id
      */
     private Long id;
 
-    /**
-     * 型号
-     */
-    private String model;
+    /** 发售名称 */
+    private String saleName;
 
     /**
      * 货号
@@ -23,12 +27,17 @@ public class SaleInfoVo {
     /**
      * 发售价
      */
-    private BigDecimal sale;
+    private String salePrice;
 
     /**
      * 市场价
      */
-    private BigDecimal market;
+    private String market;
+
+    /** 更新时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date updateDate;
 
     /**
      * 门店信息
@@ -43,12 +52,12 @@ public class SaleInfoVo {
         this.id = id;
     }
 
-    public String getModel() {
-        return model;
+    public String getSaleName() {
+        return saleName;
     }
 
-    public void setModel(String model) {
-        this.model = model;
+    public void setSaleName(String saleName) {
+        this.saleName = saleName;
     }
 
     public String getCatalog() {
@@ -59,19 +68,19 @@ public class SaleInfoVo {
         this.catalog = catalog;
     }
 
-    public BigDecimal getSale() {
-        return sale;
+    public String getSalePrice() {
+        return salePrice;
     }
 
-    public void setSale(BigDecimal sale) {
-        this.sale = sale;
+    public void setSalePrice(String salePrice) {
+        this.salePrice = salePrice;
     }
 
-    public BigDecimal getMarket() {
+    public String getMarket() {
         return market;
     }
 
-    public void setMarket(BigDecimal market) {
+    public void setMarket(String market) {
         this.market = market;
     }
 
@@ -83,14 +92,23 @@ public class SaleInfoVo {
         this.stores = stores;
     }
 
+    public Date getUpdateDate() {
+        return updateDate;
+    }
+
+    public void setUpdateDate(Date updateDate) {
+        this.updateDate = updateDate;
+    }
+
     @Override
     public String toString() {
         final StringBuffer sb = new StringBuffer("SaleInfoVo{");
         sb.append("id=").append(id);
-        sb.append(", model='").append(model).append('\'');
+        sb.append(", saleName='").append(saleName).append('\'');
         sb.append(", catalog='").append(catalog).append('\'');
-        sb.append(", sale=").append(sale);
+        sb.append(", salePrice=").append(salePrice);
         sb.append(", market=").append(market);
+        sb.append(", updateDate=").append(updateDate);
         sb.append(", stores=").append(stores);
         sb.append('}');
         return sb.toString();

+ 7 - 0
ruoyi-wx/src/main/java/com/ruoyi/wx/web/service/IWxHomeService.java

@@ -21,4 +21,11 @@ public interface IWxHomeService {
      * @return 详情内容
      */
     List<SaleInfoVo> getSaleInfo(Long id);
+
+    /**
+     * 获取所有发售信息
+     *
+     * @return 结果集
+     */
+    List<SaleInfoVo> getSaleCalendar();
 }

+ 27 - 32
ruoyi-wx/src/main/java/com/ruoyi/wx/web/service/impl/WxHomeServiceImpl.java

@@ -14,6 +14,7 @@ import com.ruoyi.wx.web.domain.vo.SaleInfoVo;
 import com.ruoyi.wx.web.mapper.WxHomeMapper;
 import com.ruoyi.wx.web.service.IWxHomeService;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -66,40 +67,34 @@ public class WxHomeServiceImpl implements IWxHomeService {
     public List<SaleInfoVo> getSaleInfo(Long id) {
         RecSaleInfo saleInfo = saleInfoMapper.selectRecSaleInfoById(id);
         // 获取到商品id,并将商品id转换为Integer到数据库中查询
-        List<String> ids = Arrays.asList(saleInfo.getCommodityId().split(","));
-        List<Integer> comIds = ids.stream().map(Integer::parseInt).toList();
-
-        // 获取所有商品内容
-        List<SaleInfoVo> infoVos = wxHomeMapper.selectRecCommodityByIds(comIds);
+        List<String> ids = Arrays.asList(saleInfo.getStoreId().split(","));
         // 根据商品获取所有门店信息
         List<RecStores> stores = wxHomeMapper.selectRecStoresByCommondityIds(ids);
-        Map<Long, List<RecStores>> storesMap = new ConcurrentHashMap<>();
-        // 根据根据商品id筛选出相应的门店
-        for (SaleInfoVo infoVo : infoVos) {
-            List<RecStores> recStores = new ArrayList<>();
-            for (RecStores store : stores) {
-                if (store.getCommondityId().contains(String.valueOf(infoVo.getId()))) {
-                    recStores.add(store);
-                }
-            }
-            storesMap.put(infoVo.getId(), recStores);
-        }
-        // 拼接门店信息和商品信息
-        for (SaleInfoVo infoVo : infoVos) {
-            for (Map.Entry<Long, List<RecStores>> entry : storesMap.entrySet()) {
-                if (Objects.equals(entry.getKey(), infoVo.getId())) {
-                    Map<String, List<RecStores>> cityMap = entry.getValue().stream().filter(vo -> StringUtils.isNotEmpty(vo.getCity())).collect(Collectors.groupingBy(RecStores::getCity));
-                    List<RecStoresVo> storesVos = new ArrayList<>();
-                    cityMap.forEach((key, value) -> {
-                        RecStoresVo recStoresVo = new RecStoresVo();
-                        recStoresVo.setCity(key);
-                        recStoresVo.setStores(value);
-                        storesVos.add(recStoresVo);
-                    });
-                    infoVo.setStores(storesVos);
-                }
-            }
+        Map<String, List<RecStores>> cityMap = stores.stream().filter(vo -> StringUtils.isNotEmpty(vo.getCity())).collect(Collectors.groupingBy(RecStores::getCity));
+        List<SaleInfoVo> result = new ArrayList<>();
+        SaleInfoVo saleInfoVo = new SaleInfoVo();
+        List<RecStoresVo> cityList = new ArrayList<>();
+        BeanUtils.copyProperties(saleInfo, saleInfoVo);
+        // 插入门店详情
+        cityMap.forEach((key, value) -> {
+            RecStoresVo storesVo = new RecStoresVo();
+            storesVo.setCity(key);
+            storesVo.setStores(value);
+            cityList.add(storesVo);
+        });
+        saleInfoVo.setStores(cityList);
+        return result;
+    }
+
+    @Override
+    public List<SaleInfoVo> getSaleCalendar() {
+        List<RecSaleInfo> recSaleInfos = saleInfoMapper.selectRecSaleInfoList(new RecSaleInfo());
+        List<SaleInfoVo> result = new ArrayList<>();
+        for (RecSaleInfo info : recSaleInfos) {
+            SaleInfoVo vo = new SaleInfoVo();
+            BeanUtils.copyProperties(info, vo);
+            result.add(vo);
         }
-        return infoVos;
+        return result;
     }
 }