LIVE_YE 1 жил өмнө
parent
commit
135d78d3eb

+ 0 - 5
ruoyi-admin/src/main/java/com/ruoyi/web/controller/doumu/DoumuProductInfoController.java

@@ -39,7 +39,6 @@ public class DoumuProductInfoController extends BaseController
     /**
     /**
      * 查询痘姆古陶信息列表
      * 查询痘姆古陶信息列表
      */
      */
-    @PreAuthorize("@ss.hasPermi('system:info:list')")
     @GetMapping("/list")
     @GetMapping("/list")
     public TableDataInfo list(DoumuProductInfo doumuProductInfo)
     public TableDataInfo list(DoumuProductInfo doumuProductInfo)
     {
     {
@@ -51,7 +50,6 @@ public class DoumuProductInfoController extends BaseController
     /**
     /**
      * 导出痘姆古陶信息列表
      * 导出痘姆古陶信息列表
      */
      */
-    @PreAuthorize("@ss.hasPermi('system:info:export')")
     @Log(title = "痘姆古陶信息", businessType = BusinessType.EXPORT)
     @Log(title = "痘姆古陶信息", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     @PostMapping("/export")
     public void export(HttpServletResponse response, DoumuProductInfo doumuProductInfo)
     public void export(HttpServletResponse response, DoumuProductInfo doumuProductInfo)
@@ -64,7 +62,6 @@ public class DoumuProductInfoController extends BaseController
     /**
     /**
      * 获取痘姆古陶信息详细信息
      * 获取痘姆古陶信息详细信息
      */
      */
-    @PreAuthorize("@ss.hasPermi('system:info:query')")
     @GetMapping(value = "/{productId}")
     @GetMapping(value = "/{productId}")
     public AjaxResult getInfo(@PathVariable("productId") Long productId)
     public AjaxResult getInfo(@PathVariable("productId") Long productId)
     {
     {
@@ -74,7 +71,6 @@ public class DoumuProductInfoController extends BaseController
     /**
     /**
      * 新增痘姆古陶信息
      * 新增痘姆古陶信息
      */
      */
-    @PreAuthorize("@ss.hasPermi('system:info:add')")
     @Log(title = "痘姆古陶信息", businessType = BusinessType.INSERT)
     @Log(title = "痘姆古陶信息", businessType = BusinessType.INSERT)
     @PostMapping
     @PostMapping
     public AjaxResult add(@RequestBody DoumuProductInfo doumuProductInfo)
     public AjaxResult add(@RequestBody DoumuProductInfo doumuProductInfo)
@@ -85,7 +81,6 @@ public class DoumuProductInfoController extends BaseController
     /**
     /**
      * 修改痘姆古陶信息
      * 修改痘姆古陶信息
      */
      */
-    @PreAuthorize("@ss.hasPermi('system:info:edit')")
     @Log(title = "痘姆古陶信息", businessType = BusinessType.UPDATE)
     @Log(title = "痘姆古陶信息", businessType = BusinessType.UPDATE)
     @PostMapping("/put")
     @PostMapping("/put")
     public AjaxResult edit(@RequestBody DoumuProductInfo doumuProductInfo)
     public AjaxResult edit(@RequestBody DoumuProductInfo doumuProductInfo)

+ 20 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/doumu/StatisticsController.java

@@ -45,4 +45,24 @@ public class StatisticsController {
     {
     {
         return doumuProductInfoService.numAmount();
         return doumuProductInfoService.numAmount();
     }
     }
+
+    /**
+     * pc首页本周关注目标
+     */
+    @PreAuthorize("@ss.hasPermi('system:statistics:weekFollow')")
+    @GetMapping(value = "/weekFollow")
+    public AjaxResult weekFollow()
+    {
+        return doumuProductInfoService.weekFollow();
+    }
+
+    /**
+     * pc首页订单评价统计
+     */
+    @PreAuthorize("@ss.hasPermi('system:statistics:evaluate')")
+    @GetMapping(value = "/evaluate")
+    public AjaxResult evaluate()
+    {
+        return doumuProductInfoService.evaluate();
+    }
 }
 }

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java

@@ -112,7 +112,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
                 .authorizeRequests()
                 .authorizeRequests()
                 // 对于登录login 注册register 验证码captchaImage 允许匿名访问
                 // 对于登录login 注册register 验证码captchaImage 允许匿名访问
                 .antMatchers("/login", "/register", "/captchaImage").permitAll()
                 .antMatchers("/login", "/register", "/captchaImage").permitAll()
-                .antMatchers("/new/news/**", "/wx/pay/**", "/ali/pay/**","/sf/**","/china/area/fractionation/**","/common/upload","/system/info").permitAll()
+                .antMatchers("/new/news/**", "/wx/pay/**", "/ali/pay/**","/sf/**","/china/area/fractionation/**","/common/upload","/system/info/**").permitAll()
                 // 静态资源,可匿名访问
                 // 静态资源,可匿名访问
                 .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
                 .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
                 .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
                 .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()

+ 25 - 4
ruoyi-system/src/main/java/com/ruoyi/system/domain/DoumuEvaluate.java

@@ -28,22 +28,27 @@ public class DoumuEvaluate extends BaseEntity
     @Excel(name = "订单号")
     @Excel(name = "订单号")
     private String orderNumber;
     private String orderNumber;
 
 
-    /** 1:差评,2:中评,3:好评 */
+    /** 综合评价 1:差评,2:中评,3:好评 */
     @Excel(name = "1:差评,2:中评,3:好评")
     @Excel(name = "1:差评,2:中评,3:好评")
     private String synthesisEvaluate;
     private String synthesisEvaluate;
 
 
-    /** 1:1星,2:2星,3:3星,4:4星,5:5星 */
+    /** 商品评价 1:1星,2:2星,3:3星,4:4星,5:5星 */
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     private String productEvaluate;
     private String productEvaluate;
 
 
-    /** 1:1星,2:2星,3:3星,4:4星,5:5星 */
+    /** 服务态度 1:1星,2:2星,3:3星,4:4星,5:5星 */
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     private String serviceEvaluate;
     private String serviceEvaluate;
 
 
-    /** 1:1星,2:2星,3:3星,4:4星,5:5星 */
+    /** 物流服务 1:1星,2:2星,3:3星,4:4星,5:5星 */
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     @Excel(name = "1:1星,2:2星,3:3星,4:4星,5:5星")
     private String flowEvaluate;
     private String flowEvaluate;
 
 
+
+    private String beginTime;
+    private String endTime;
+
+
     private List<DoumuProductFj> fjList;
     private List<DoumuProductFj> fjList;
 
 
 
 
@@ -119,6 +124,22 @@ public class DoumuEvaluate extends BaseEntity
         return flowEvaluate;
         return flowEvaluate;
     }
     }
 
 
+    public String getBeginTime() {
+        return beginTime;
+    }
+
+    public void setBeginTime(String beginTime) {
+        this.beginTime = beginTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
     @Override
     @Override
     public String toString() {
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

+ 12 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/DoumuProductInfo.java

@@ -41,6 +41,10 @@ public class DoumuProductInfo extends BaseEntity
     @Excel(name = "手机号码")
     @Excel(name = "手机号码")
     private String phonenumber;
     private String phonenumber;
 
 
+    /** 联系电话 */
+    @Excel(name = "联系电话")
+    private String contactNumber;
+
     /** 数量 */
     /** 数量 */
     @Excel(name = "数量")
     @Excel(name = "数量")
     private String quantity;
     private String quantity;
@@ -322,6 +326,14 @@ public class DoumuProductInfo extends BaseEntity
         this.totalPrice = totalPrice;
         this.totalPrice = totalPrice;
     }
     }
 
 
+    public String getContactNumber() {
+        return contactNumber;
+    }
+
+    public void setContactNumber(String contactNumber) {
+        this.contactNumber = contactNumber;
+    }
+
     @Override
     @Override
     public String toString() {
     public String toString() {
         return "DoumuProductInfo{" +
         return "DoumuProductInfo{" +

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/DoumuProductInfoMapper.java

@@ -62,4 +62,6 @@ public interface DoumuProductInfoMapper
     public int deleteDoumuProductInfoByProductIds(Long[] productIds);
     public int deleteDoumuProductInfoByProductIds(Long[] productIds);
 
 
     int updateDoumuProductInfoFlowList(@Param("productIdList") List<Long> productIdList, @Param("flowType") String flowType);
     int updateDoumuProductInfoFlowList(@Param("productIdList") List<Long> productIdList, @Param("flowType") String flowType);
+
+    List<DoumuProductInfo> selectDoumuProductInfoByProductIdList(@Param("productIdList")List<Long> productIdList);
 }
 }

+ 4 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/IDoumuProductInfoService.java

@@ -69,4 +69,8 @@ public interface IDoumuProductInfoService
     AjaxResult monthLink();
     AjaxResult monthLink();
 
 
     AjaxResult numAmount();
     AjaxResult numAmount();
+
+    AjaxResult weekFollow();
+
+    AjaxResult evaluate();
 }
 }

+ 84 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/DoumuProductInfoServiceImpl.java

@@ -6,6 +6,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 
 import com.ruoyi.common.constant.HttpStatus;
 import com.ruoyi.common.constant.HttpStatus;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -348,4 +349,87 @@ public class DoumuProductInfoServiceImpl implements IDoumuProductInfoService
         map.put("y3",listy3);
         map.put("y3",listy3);
         return AjaxResult.success(map);
         return AjaxResult.success(map);
     }
     }
+
+    @Override
+    public AjaxResult weekFollow() {
+        Map<String,Object> map = new HashMap<>();
+        String startTime = DateUtils.getTime("2");
+        String endTime = DateUtils.getTime("1");
+        //时间内的订单
+        DoumuEvaluate doumuEvaluate = new DoumuEvaluate();
+        doumuEvaluate.setBeginTime(startTime);
+        doumuEvaluate.setEndTime(endTime);
+        List<DoumuEvaluate> doumuEvaluateList = doumuEvaluateMapper.selectDoumuEvaluateList(doumuEvaluate);
+        //销售总金额
+        Double xszje = 0D;
+        //订单总数量
+        int ddzs = 0;
+        //订单好评数(非常好)
+        int fch = 0;
+        //订单好评数(好)
+        int h = 0;
+        if(doumuEvaluateList!=null && doumuEvaluateList.size()>0){
+            ddzs = doumuEvaluateList.size();
+            List<Long> productIdList = doumuEvaluateList.stream().map(DoumuEvaluate::getProductId).collect(Collectors.toList());
+            for (DoumuEvaluate evaluate : doumuEvaluateList) {
+                if("3".equals(evaluate.getSynthesisEvaluate())){
+                    fch++;
+                }
+                if("2".equals(evaluate.getSynthesisEvaluate())){
+                    h++;
+                }
+            }
+            List<DoumuProductInfo> doumuProductInfoList = doumuProductInfoMapper.selectDoumuProductInfoByProductIdList(productIdList);
+            for (DoumuProductInfo doumuProductInfo : doumuProductInfoList) {
+                //金额
+                BigDecimal num1 = new BigDecimal(xszje);
+                BigDecimal num2 = new BigDecimal(doumuProductInfo.getTotalPrice());
+                BigDecimal subNum1 = num1.add(num2);
+                xszje = subNum1.doubleValue();
+            }
+
+        }
+        map.put("xszje",xszje);
+        map.put("ddzs",ddzs);
+        map.put("fch",fch);
+        map.put("h",h);
+        return AjaxResult.success(map);
+    }
+
+    @Override
+    public AjaxResult evaluate() {
+        Map<String,Object> map = new HashMap<>();
+        List<DoumuEvaluate> doumuEvaluateList = doumuEvaluateMapper.selectDoumuEvaluateList(new DoumuEvaluate());
+        //非常好
+        int fch = 0;
+        //好
+        int h = 0;
+        //一般
+        int yb = 0;
+        //差
+        int c = 0;
+        //很差
+        int hc = 0;
+        if(doumuEvaluateList!=null && doumuEvaluateList.size()>0){
+            for (DoumuEvaluate evaluate : doumuEvaluateList) {
+                if("5".equals(evaluate.getProductEvaluate())){
+                    fch++;
+                }else if("4".equals(evaluate.getProductEvaluate())){
+                    h++;
+                }else if("3".equals(evaluate.getProductEvaluate())){
+                    yb++;
+                }else if("2".equals(evaluate.getProductEvaluate())){
+                    c++;
+                }else if("1".equals(evaluate.getProductEvaluate())){
+                    hc++;
+                }
+            }
+        }
+        map.put("fch",fch);
+        map.put("h",h);
+        map.put("yb",yb);
+        map.put("c",c);
+        map.put("hc",hc);
+        return AjaxResult.success(map);
+    }
 }
 }

+ 10 - 0
ruoyi-system/src/main/resources/mapper/system/DoumuEvaluateMapper.xml

@@ -17,6 +17,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="updateBy"    column="update_by"    />
         <result property="updateBy"    column="update_by"    />
         <result property="updateTime"    column="update_time"    />
         <result property="updateTime"    column="update_time"    />
         <result property="remark"    column="remark"    />
         <result property="remark"    column="remark"    />
+
+
+        <result property="beginTime"    column="beginTime"    />
+        <result property="endTime"    column="endTime"    />
     </resultMap>
     </resultMap>
 
 
     <sql id="selectDoumuEvaluateVo">
     <sql id="selectDoumuEvaluateVo">
@@ -32,6 +36,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="productEvaluate != null  and productEvaluate != ''"> and product_evaluate = #{productEvaluate}</if>
             <if test="productEvaluate != null  and productEvaluate != ''"> and product_evaluate = #{productEvaluate}</if>
             <if test="serviceEvaluate != null  and serviceEvaluate != ''"> and service_evaluate = #{serviceEvaluate}</if>
             <if test="serviceEvaluate != null  and serviceEvaluate != ''"> and service_evaluate = #{serviceEvaluate}</if>
             <if test="flowEvaluate != null  and flowEvaluate != ''"> and flow_evaluate = #{flowEvaluate}</if>
             <if test="flowEvaluate != null  and flowEvaluate != ''"> and flow_evaluate = #{flowEvaluate}</if>
+            <if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
+                AND date_format(create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+            </if>
+            <if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
+                AND date_format(create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+            </if>
         </where>
         </where>
     </select>
     </select>
     
     

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

@@ -12,6 +12,7 @@
         <result property="name"    column="name"    />
         <result property="name"    column="name"    />
         <result property="deliveryType"    column="delivery_type"    />
         <result property="deliveryType"    column="delivery_type"    />
         <result property="phonenumber"    column="phonenumber"    />
         <result property="phonenumber"    column="phonenumber"    />
+        <result property="contactNumber"    column="contact_number"    />
         <result property="quantity"    column="quantity"    />
         <result property="quantity"    column="quantity"    />
         <result property="provinceId"    column="province_id"    />
         <result property="provinceId"    column="province_id"    />
         <result property="province"    column="province"    />
         <result property="province"    column="province"    />
@@ -38,7 +39,7 @@
     </resultMap>
     </resultMap>
 
 
     <sql id="selectDoumuProductInfoVo">
     <sql id="selectDoumuProductInfoVo">
-        select product_id,openid,order_number, name, delivery_type, phonenumber,quantity,province_id,province,city_id,city,county_id,county,lon,lat,status, address,
+        select product_id,openid,order_number, name, delivery_type, phonenumber,contact_number,quantity,province_id,province,city_id,city,county_id,county,lon,lat,status, address,
                flow_type,goods_name,total_price, mail_no, create_by, create_time, update_by, update_time, remark from doumu_product_info
                flow_type,goods_name,total_price, mail_no, create_by, create_time, update_by, update_time, remark from doumu_product_info
     </sql>
     </sql>
 
 
@@ -68,6 +69,14 @@
         where product_id = #{productId}
         where product_id = #{productId}
     </select>
     </select>
 
 
+    <select id="selectDoumuProductInfoByProductIdList" resultMap="DoumuProductInfoResult">
+        <include refid="selectDoumuProductInfoVo"/>
+        where product_id in
+        <foreach collection="productIdList" index="index" item="productId" open="(" separator="," close=")">
+            #{productId}
+        </foreach>
+    </select>
+
     <insert id="insertDoumuProductInfo" parameterType="DoumuProductInfo" useGeneratedKeys="true" keyProperty="productId">
     <insert id="insertDoumuProductInfo" parameterType="DoumuProductInfo" useGeneratedKeys="true" keyProperty="productId">
         insert into doumu_product_info
         insert into doumu_product_info
         <trim prefix="(" suffix=")" suffixOverrides=",">
         <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -76,6 +85,7 @@
             <if test="name != null and name != ''">name,</if>
             <if test="name != null and name != ''">name,</if>
             <if test="deliveryType != null">delivery_type,</if>
             <if test="deliveryType != null">delivery_type,</if>
             <if test="phonenumber != null">phonenumber,</if>
             <if test="phonenumber != null">phonenumber,</if>
+            <if test="contactNumber != null">contact_number,</if>
             <if test="quantity != null">quantity,</if>
             <if test="quantity != null">quantity,</if>
             <if test="provinceId != null">province_id,</if>
             <if test="provinceId != null">province_id,</if>
             <if test="province != null">province,</if>
             <if test="province != null">province,</if>
@@ -103,6 +113,7 @@
             <if test="name != null and name != ''">#{name},</if>
             <if test="name != null and name != ''">#{name},</if>
             <if test="deliveryType != null">#{deliveryType},</if>
             <if test="deliveryType != null">#{deliveryType},</if>
             <if test="phonenumber != null">#{phonenumber},</if>
             <if test="phonenumber != null">#{phonenumber},</if>
+            <if test="contactNumber != null">#{contactNumber},</if>
             <if test="quantity != null">#{quantity},</if>
             <if test="quantity != null">#{quantity},</if>
             <if test="provinceId != null">#{provinceId},</if>
             <if test="provinceId != null">#{provinceId},</if>
             <if test="province != null">#{province},</if>
             <if test="province != null">#{province},</if>
@@ -134,6 +145,7 @@
             <if test="name != null and name != ''">name = #{name},</if>
             <if test="name != null and name != ''">name = #{name},</if>
             <if test="deliveryType != null">delivery_type = #{deliveryType},</if>
             <if test="deliveryType != null">delivery_type = #{deliveryType},</if>
             <if test="phonenumber != null">phonenumber = #{phonenumber},</if>
             <if test="phonenumber != null">phonenumber = #{phonenumber},</if>
+            <if test="contactNumber != null">contact_number = #{contactNumber},</if>
             <if test="quantity != null">quantity = #{quantity},</if>
             <if test="quantity != null">quantity = #{quantity},</if>
             <if test="provinceId != null">province_id = #{provinceId},</if>
             <if test="provinceId != null">province_id = #{provinceId},</if>
             <if test="province != null">province = #{province},</if>
             <if test="province != null">province = #{province},</if>