Helius
2021-01-16 e30c7bf3c662667ad20fe8eb850c8dd6ca149965
modify
11 files modified
133 ■■■■ changed files
zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java 30 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/vo/UserAchieveVo.java 6 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/bean/AchieveNew.java 10 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/SysOrderService.java 1 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml 41 ●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml 31 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml 3 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java
@@ -45,15 +45,11 @@
    })
    @PostMapping(value = "/findStaffAchieveRanking")
    public AjaxResult findStaffAchieveRanking(@RequestBody RankingDto rankingDto) {
        SysOrder sysOrder = new SysOrder();
        if (DataAuthUtil.hasAllShopAuth()) {
            QueryUtil.setQueryLimitCom(sysOrder);
        } else {
            QueryUtil.setQueryLimit(sysOrder);
        }
        sysOrder.setOrderTime(new Date());
        sysOrder.setType(rankingDto.getType());
        return AjaxResult.buildSuccessInstance(sysOrderService.findStaffSaleAchieveRanking(sysOrder));
        AchieveNew achieveNew = new AchieveNew();
        QueryUtil.setQueryLimitCom(achieveNew);
        achieveNew.setType(rankingDto.getType());
        achieveNew.setDatatime(new Date());
        return AjaxResult.buildSuccessInstance(achieveNewDao.selectStaffSaleAchieveRanking(achieveNew));
    }
    @ApiOperation(value = "门店业绩排行榜", notes = "门店业绩排行榜")
@@ -64,11 +60,11 @@
    public AjaxResult findShopAchieveRanking(@RequestBody RankingDto rankingDto) {
        AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("");
        if (RankingDto.SALE.equals(rankingDto.getDataType())) {
            SysOrder sysOrder = new SysOrder();
            QueryUtil.setQueryLimitCom(sysOrder);
            sysOrder.setType(rankingDto.getType());
            sysOrder.setOrderTime(new Date());
            List<RankingVo> list = sysOrderService.findApiShopAchieveRanking(sysOrder);
            AchieveNew achieveNew = new AchieveNew();
            QueryUtil.setQueryLimitCom(achieveNew);
            achieveNew.setType(rankingDto.getType());
            achieveNew.setDatatime(new Date());
            List<RankingVo> list = achieveNewDao.selectStaffSaleAchieveRanking(achieveNew);
            ajaxResult.setRows(list);
        } else {
            AchieveNew achieveNew = new AchieveNew();
@@ -88,11 +84,7 @@
    @PostMapping(value = "/findBeauticianAchieveRanking")
    public AjaxResult findBeauticianAchieveRanking(@RequestBody RankingDto rankingDto) {
        AchieveNew achieveNew = new AchieveNew();
        if (DataAuthUtil.hasAllShopAuth()) {
            QueryUtil.setQueryLimitCom(achieveNew);
        } else {
            QueryUtil.setQueryLimit(achieveNew);
        }
        QueryUtil.setQueryLimitCom(achieveNew);
        achieveNew.setDatatime(new Date());
        achieveNew.setT1(rankingDto.getType());
        return AjaxResult.buildSuccessInstance(achieveNewDao.selectBeauticianConsumeAchieveRanking(achieveNew));
zq-erp/src/main/java/com/matrix/system/app/vo/UserAchieveVo.java
@@ -15,13 +15,13 @@
    @ApiModelProperty(value = "用户ID")
    private Long id;
    @ApiModelProperty(value = "订单业绩")
    @ApiModelProperty(value = "现金业绩")
    private BigDecimal orderCash;
    @ApiModelProperty(value = "现金业绩")
    @ApiModelProperty(value = "划扣业绩")
    private BigDecimal cash;
    @ApiModelProperty(value = "划扣业绩")
    @ApiModelProperty(value = "业绩提成")
    private BigDecimal cardUse;
    @ApiModelProperty(value = "本金消耗")
zq-erp/src/main/java/com/matrix/system/hive/bean/AchieveNew.java
@@ -261,6 +261,16 @@
    private String goodsName;
    private String type;
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getGoodsNo() {
        return goodsNo;
    }
zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java
@@ -69,4 +69,6 @@
    List<RankingVo> selectBeauticianConsumeAchieveRanking(@Param("record") AchieveNew achieveNew);
    List<AchieveNew> selectOrderItemAchieveByOrderId(Long orderId);
    List<RankingVo> selectStaffSaleAchieveRanking(@Param("record") AchieveNew achieveNew);
}
zq-erp/src/main/java/com/matrix/system/hive/dao/SysOrderDao.java
@@ -46,6 +46,4 @@
    OrderDetailVo selectApiOrderDetailById(@Param("orderId") Long orderId);
    List<RankingVo> selectShopAchieveRanking(@Param("record") SysOrder sysOrder);
    List<RankingVo> selectStaffSaleAchieveRanking(@Param("record") SysOrder sysOrder);
}
zq-erp/src/main/java/com/matrix/system/hive/service/SysOrderService.java
@@ -142,5 +142,4 @@
    List<RankingVo> findApiShopAchieveRanking(SysOrder sysOrder);
    List<RankingVo> findStaffSaleAchieveRanking(SysOrder sysOrder);
}
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1253,11 +1253,6 @@
        return sysOrderDao.selectShopAchieveRanking(sysOrder);
    }
    @Override
    public List<RankingVo> findStaffSaleAchieveRanking(SysOrder sysOrder) {
        return sysOrderDao.selectStaffSaleAchieveRanking(sysOrder);
    }
    @Transactional(rollbackFor = Exception.class)
    @Override
    public void refundOrderMoney(SysOrder pageOrder) {
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysVipInfoServiceImpl.java
@@ -17,6 +17,7 @@
import com.matrix.system.common.tools.ServiceUtil;
import com.matrix.system.constance.Dictionary;
import com.matrix.system.constance.TableMapping;
import com.matrix.system.hive.action.util.QueryUtil;
import com.matrix.system.hive.bean.*;
import com.matrix.system.hive.dao.*;
import com.matrix.system.hive.plugin.util.CollectionUtils;
@@ -425,6 +426,7 @@
        if (!DataAuthUtil.hasAllShopAuth()) {
            vipInfoListDto.setShopId(sysUsers.getShopId());
        }
        QueryUtil.setQueryLimitCom(sysUsers.getCompanyId());
        return sysVipInfoDao.selectVipAddressBookByList(vipInfoListDto);
    }
zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml
@@ -940,15 +940,15 @@
    <select id="selectUserAchieveByTime" resultType="com.matrix.system.app.vo.UserAchieveVo">
        select
            sale_id id,
            sum(IFNULL(proj_cash,0) + IFNULL(goods_cash,0) + IFNULL(card_cash,0) + IFNULL(consume, 0) + IFNULL(b.arrears, 0)) orderCash,
            sum(IFNULL(proj_cash,0) + IFNULL(goods_cash,0) + IFNULL(card_cash,0) + IFNULL(b.arrears, 0)) cash,
            sum(IFNULL(consume, 0)) cardUse,
            sum(case t3 when '现金业绩' then card_cash else 0 end) orderCash,
            sum(case t3 when '划扣业绩' then card_cash else 0 end) cash,
            sum(IFNULL(proj_percentage, 0)) cardUse,
            sum(IFNULL(his_consume, 0)) hisConsume,
            sum(IFNULL(free_consume, 0)) freeConsume,
            sum(IFNULL(proj_percentage, 0)) projCommission
        from achieve_new a
        left join sys_order b on a.sale_id=b.STAFF_ID and (date_format(b.ORDER_TIME, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(b.ORDER_TIME, '%Y-%m-%d'))
        where sale_id=#{userId}
        left join sys_order b on a.beault_id=b.STAFF_ID and (date_format(b.ORDER_TIME, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(b.ORDER_TIME, '%Y-%m-%d'))
        where a.beault_id=#{userId}
        and (date_format(datatime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(datatime, '%Y-%m-%d'))
    </select>
@@ -1030,4 +1030,35 @@
        left join sys_order_item d on a.order_item_id=d.id
        where a.order_id=#{orderId}
    </select>
    <select id="selectStaffSaleAchieveRanking" resultType="com.matrix.system.app.vo.RankingVo">
        select
        b.su_name name,
        b.su_id id,
        b.su_photo photo,
        sum(ifnull(card_cash,0)) amount,
        c.shop_short_name shopName
        from achieve_new a
        inner join sys_users b on a.beault_id=b.su_id
        inner join sys_shop_info c on a.SHOP_ID=c.ID
        <where>
            <if test="record.companyId != null">
                and b.company_id=#{record.companyId}
            </if>
            <if test="record.shopId != null">
                and b.shop_id=#{record.shopId}
            </if>
            <if test='record.type == "1" and record.datatime != null'>
                and date_format(datatime, '%Y-%m-%d') = date_format(#{record.datatime}, '%Y-%m-%d')
            </if>
            <if test='record.type == "2" and record.datatime != null'>
                and date_format(datatime, '%Y-%m') = date_format(#{record.datatime}, '%Y-%m')
            </if>
            <if test='record.type == "3" and record.datatime != null'>
                and date_format(datatime, '%Y') = date_format(#{record.datatime}, '%Y')
            </if>
        </where>
        group by b.su_id
        order by amount desc, b.su_id
    </select>
</mapper>
zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
@@ -580,35 +580,4 @@
        order by amount desc, a.shop_id
    </select>
    <select id="selectStaffSaleAchieveRanking" resultType="com.matrix.system.app.vo.RankingVo">
        select
               b.su_name name,
               b.su_id id,
               b.su_photo photo,
               sum(ZK_TOTAL) amount,
               c.shop_short_name shopName
        from sys_order a
        left join sys_users b on a.STAFF_ID=b.su_id
        left join sys_shop_info c on a.SHOP_ID=c.ID
        <where>
            a.statu in ('已付款', '欠款') and b.su_id is not null
            <if test="record.companyId != null">
                and a.company_id=#{record.companyId}
            </if>
            <if test="record.shopId != null">
                and a.shop_id=#{record.shopId}
            </if>
            <if test='record.type == "1" and record.orderTime != null'>
                and date_format(order_time, '%Y-%m-%d') = date_format(#{record.orderTime}, '%Y-%m-%d')
            </if>
            <if test='record.type == "2" and record.orderTime != null'>
                and date_format(order_time, '%Y-%m') = date_format(#{record.orderTime}, '%Y-%m')
            </if>
            <if test='record.type == "3" and record.orderTime != null'>
                and date_format(order_time, '%Y') = date_format(#{record.orderTime}, '%Y')
            </if>
        </where>
        group by b.su_id
        order by amount desc, b.su_id
    </select>
</mapper>
zq-erp/src/main/resources/mybatis/mapper/hive/SysVipInfoDao.xml
@@ -1320,6 +1320,9 @@
        <if test="record.shopId != null">
            and a.shop_id=#{record.shopId}
        </if>
        <if test="record.companyId != null">
            and a.company_id=#{record.companyId}
        </if>
        <if test='record.birthType=="1"'>
            and a.BIRTHDAY1 between curdate() and DATE_ADD(CURDATE(), INTERVAL 3 DAY)
        </if>