935090232@qq.com
2021-03-21 799622ea4d37aa6bb9fee457967532aa93d18594
扣除用户积分
13 files modified
494 ■■■■ changed files
zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java 10 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipInfo.java 142 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/score/dao/ScoreVipDetailDao.java 20 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/score/entity/ScoreVipDetail.java 21 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/score/service/ScoreVipDetailService.java 73 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxCommonAction.java 9 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopScoreAction.java 85 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java 45 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopOrder.java 12 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/score/ScoreVipDetailDao.xml 54 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDao.xml 12 ●●●●● patch | view | raw | blame | history
zq-erp/src/test/java/com/matrix/JyyTests.java 9 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java
@@ -172,10 +172,6 @@
    private Integer  userType;
    /**
     * 用户总积分
     */
    private Integer totalScore;
    /**
@@ -475,13 +471,7 @@
        this.endTime = endTime;
    }
    public Integer getTotalScore() {
        return totalScore;
    }
    public void setTotalScore(Integer totalScore) {
        this.totalScore = totalScore;
    }
    public Integer getCurrentScore() {
        return currentScore;
zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipInfo.java
@@ -230,77 +230,6 @@
    private SysOrder sysOrder;
    public String getProvince() {
        return province;
    }
    public void setProvince(String province) {
        this.province = province;
    }
    public String getCity() {
        return city;
    }
    public void setCity(String city) {
        this.city = city;
    }
    public String getArea() {
        return area;
    }
    public void setArea(String area) {
        this.area = area;
    }
    public Long getRecommendId() {
        return recommendId;
    }
    public void setRecommendId(Long recommendId) {
        this.recommendId = recommendId;
    }
    public SysOrder getSysOrder() {
        return sysOrder;
    }
    public void setSysOrder(SysOrder sysOrder) {
        this.sysOrder = sysOrder;
    }
    public Integer getIsDeal() {
        return isDeal;
    }
    public void setIsDeal(Integer isDeal) {
        this.isDeal = isDeal;
    }
    public Long getParentId() {
        return parentId;
    }
    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }
    public Date getCreateDistributionTime() {
        return createDistributionTime;
    }
    public void setCreateDistributionTime(Date createDistributionTime) {
        this.createDistributionTime = createDistributionTime;
    }
    public Date getHandleTime() {
        return handleTime;
    }
    public void setHandleTime(Date handleTime) {
        this.handleTime = handleTime;
    }
    /** 扩展信息 **/
@@ -452,6 +381,77 @@
        this.openId = openId;
    }
    public String getProvince() {
        return province;
    }
    public void setProvince(String province) {
        this.province = province;
    }
    public String getCity() {
        return city;
    }
    public void setCity(String city) {
        this.city = city;
    }
    public String getArea() {
        return area;
    }
    public void setArea(String area) {
        this.area = area;
    }
    public Long getRecommendId() {
        return recommendId;
    }
    public void setRecommendId(Long recommendId) {
        this.recommendId = recommendId;
    }
    public SysOrder getSysOrder() {
        return sysOrder;
    }
    public void setSysOrder(SysOrder sysOrder) {
        this.sysOrder = sysOrder;
    }
    public Integer getIsDeal() {
        return isDeal;
    }
    public void setIsDeal(Integer isDeal) {
        this.isDeal = isDeal;
    }
    public Long getParentId() {
        return parentId;
    }
    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }
    public Date getCreateDistributionTime() {
        return createDistributionTime;
    }
    public void setCreateDistributionTime(Date createDistributionTime) {
        this.createDistributionTime = createDistributionTime;
    }
    public Date getHandleTime() {
        return handleTime;
    }
    public void setHandleTime(Date handleTime) {
        this.handleTime = handleTime;
    }
    public String getPayTotal() {
        return payTotal;
    }
zq-erp/src/main/java/com/matrix/system/score/dao/ScoreVipDetailDao.java
@@ -1,11 +1,9 @@
package com.matrix.system.score.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
import com.matrix.core.pojo.PaginationVO;
import com.matrix.system.score.entity.ScoreVipDetail;
import java.util.List;
/**
 * @description 客户积分余额
@@ -14,4 +12,18 @@
 */
public interface ScoreVipDetailDao extends BaseMapper<ScoreVipDetail> {
    /**
     * 查询用户总积分
     * @param openId
     * @param vipId
     * @return
     */
    int selectUserTotalScore(String openId, Long vipId);
    /**
     * 查询用户有效的积分,按时间顺序排
     * @param userId
     * @return
     */
    List<ScoreVipDetail> selectEffectiveScore(String openId);
}
zq-erp/src/main/java/com/matrix/system/score/entity/ScoreVipDetail.java
@@ -16,10 +16,27 @@
@TableName("score_vip_detail")
public class ScoreVipDetail  extends BaseEntity{
    @Extend
    private static final long serialVersionUID = 1L;
    private static final long serialVersionUID = 1L;
    /**
     * 获取类型(1:现金消费)
     */
    public static final int SCORE_VIP_TYPE_CASH=1;
    /**
     * 获取类型(2:赠送等)
     */
    public static final int SCORE_VIP_TYPE_CONSUME=2;
    /**
     * 用户openId
     */
    private String openId;
    /**
     * erp用户Id
     */
    private String vipId;
    
    /**
zq-erp/src/main/java/com/matrix/system/score/service/ScoreVipDetailService.java
@@ -1,20 +1,81 @@
package com.matrix.system.score.service;
import com.matrix.system.score.dao.ScoreVipDetailDao;
import com.matrix.system.score.entity.ScoreVipDetail;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.dao.BizUserDao;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.system.score.dao.ScoreUseRecordDao;
import com.matrix.system.score.dao.ScoreVipDetailDao;
import com.matrix.system.score.entity.ScoreUseRecord;
import com.matrix.system.score.entity.ScoreVipDetail;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * @description 客户积分余额
 * @author jyy
 * @description 客户积分余额
 * @date 2021-02-26 15:26
 */
@Service
public class ScoreVipDetailService  extends ServiceImpl<ScoreVipDetailDao, ScoreVipDetail>{
public class ScoreVipDetailService extends ServiceImpl<ScoreVipDetailDao, ScoreVipDetail> {
    @Autowired
    ScoreVipDetailDao scoreVipDetailDao;
    @Autowired
    ScoreUseRecordDao scoreUseRecordDao;
    @Autowired
    BizUserDao bizUserDao;
    /**
     * 扣除用户积分
     *
     * @param openId
     * @param score
     * @param businessId
     * @param type
     */
    public void deductionScore(String openId, Integer score, Long businessId, int type) {
        BizUser user = bizUserDao.findByOpenId(openId);
        List<ScoreVipDetail> effectiveScoreList = scoreVipDetailDao.selectEffectiveScore(openId);
        for (ScoreVipDetail scoreVipDetail : effectiveScoreList) {
            ScoreUseRecord scoreUseRecord = new ScoreUseRecord();
            scoreUseRecord.setPreScore(scoreVipDetail.getRemainScore());
            int surplus = scoreVipDetail.getRemainScore() - score;
            int currentDedution = 0;
            if (surplus > 0 || surplus == 0) {
                //余额充足
                currentDedution = score;
                scoreVipDetail.setRemainScore(surplus);
                scoreVipDetailDao.updateById(scoreVipDetail);
                break;
            } else {
                currentDedution = scoreVipDetail.getRemainScore();
                scoreVipDetail.setRemainScore(0);
                scoreVipDetailDao.updateById(scoreVipDetail);
                score=Math.abs(surplus);
            }
            //新增扣除记录
            scoreUseRecord.setCreateBy(MatrixConstance.SYSTEM_USER);
            scoreUseRecord.setUpdateBy(MatrixConstance.SYSTEM_USER);
            scoreUseRecord.setCreateTime(DateTime.now());
            scoreUseRecord.setUpdateTime(DateTime.now());
            scoreUseRecord.setNowScore(scoreVipDetail.getRemainScore());
            scoreUseRecord.setCompanyId(user.getCompanyId());
            scoreUseRecord.setScoreVipDetailId(scoreVipDetail.getId());
            scoreUseRecord.setBusinessId(businessId);
            scoreUseRecord.setRecNum(currentDedution);
            scoreUseRecord.setRecType(type);
            scoreUseRecordDao.insert(scoreUseRecord);
        }
    }
}
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxCommonAction.java
@@ -12,6 +12,8 @@
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.hive.bean.SysVipInfo;
import com.matrix.system.hive.dao.SysVipInfoDao;
import com.matrix.system.score.entity.ScoreVipDetail;
import com.matrix.system.score.service.ScoreVipDetailService;
import com.matrix.system.shopXcx.bean.ShopActivitiesGroupJoin;
import com.matrix.system.shopXcx.bean.ShopActivitiesGroupJoinUser;
import com.matrix.system.shopXcx.bean.ShopOrder;
@@ -78,6 +80,9 @@
    @Autowired
    BusParameterSettingsDao busParameterSettingsDao;
    @Autowired
    ScoreVipDetailService scoreVipDetailService;
@@ -195,6 +200,10 @@
                            // 根据订单类型创建不同的处理任务
                            rabiitMqTemplate.sendTopicMsg(RabbitMqConfig.MQ_EXCHANGE_TOPIC +evn, MQTaskRouting.CREATE_ORDER+evn, orderId);
                            //扣除积分
                            if(order.getScorePay()!=null){
                                scoreVipDetailService.deductionScore(order.getUserId(),order.getScorePay(),Long.parseLong(order.getId()+""), ScoreVipDetail.SCORE_VIP_TYPE_CASH);
                            }
                            threadResult.putInMap("status", "success");
                            resXml = AppConstance.RESULT_XML_SUCCESS;
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopScoreAction.java
@@ -1,23 +1,8 @@
package com.matrix.system.shopXcx.api.action;
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.service.BizUserService;
import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.PaginationVO;
import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.system.shopXcx.bean.ShopScoreExchange;
import com.matrix.system.shopXcx.bean.ShopScoreRecord;
import com.matrix.system.shopXcx.dao.ShopScoreExchangeDao;
import com.matrix.system.shopXcx.dao.ShopScoreRecordDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/**
 * @description 用户积分控制器
@@ -29,76 +14,6 @@
@CrossOrigin(origins = "*", maxAge = 3600)
public class WxShopScoreAction {
    @Autowired
    private ShopScoreRecordDao shopScoreRecordDao;
    @Autowired
    private ShopScoreExchangeDao shopScoreExchangeDao;
    @Autowired
    private RedisUserLoginUtils redisUserLoginUtils;
    @Autowired
    private BizUserService bizUserService;
    /**
     * 查询我的获得积分列表
     * @return
     */
    @RequestMapping(value = "/getRecordList")
    @ResponseBody
    public AjaxResult getRecordList(@RequestBody PaginationVO pageVo) {
        pageVo.setSort("create_time");
        pageVo.setOrder("desc");
        BizUser loginBizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
        ShopScoreRecord params = new ShopScoreRecord();
        params.setBeneficiaryId(loginBizUser.getOpenId());
        List<ShopScoreRecord> dataList = shopScoreRecordDao.selectInPage(params, pageVo);
        int total = shopScoreRecordDao.selectTotalRecord(params);
        AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList, total);
        //查询用户总积分
        BizUser user = bizUserService.findById(loginBizUser.getUserId());
        Integer totalScore = 0;
        if (user != null && user.getTotalScore() != null) {
            totalScore = user.getTotalScore();
        }
        result.putInMap("totalScore", totalScore);
        //查询下级总人数
        BizUser peopleSumParams = new BizUser();
        peopleSumParams.setParentOpenId(loginBizUser.getOpenId());
        int peopleSum = bizUserService.findTotal(peopleSumParams);
        result.putInMap("peopleSum", peopleSum);
        return result;
    }
    /**
     * 查询我的积分兑换列表
     * @return
     */
    @RequestMapping(value = "/getChangeRecordList")
    @ResponseBody
    public AjaxResult getChangeRecordList(@RequestBody PaginationVO pageVo) {
        //不分页
        pageVo.setOffset(null);
        pageVo.setLimit(null);
        //按生成时间倒序排列
        pageVo.setSort("create_time");
        pageVo.setOrder("desc");
        BizUser loginBizUser = redisUserLoginUtils.getLoginUser(BizUser.class);
        ShopScoreExchange params = new ShopScoreExchange();
        params.setUserId(loginBizUser.getOpenId());
        List<ShopScoreExchange> dataList = shopScoreExchangeDao.selectInPage(params, pageVo);
        int total = shopScoreExchangeDao.selectTotalRecord(params);
        AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList, total);
        //查询用户当前积分
        BizUser user = bizUserService.findById(loginBizUser.getUserId());
        Integer currentScore = 0;
        if (user != null && user.getCurrentScore() != null) {
            currentScore = user.getCurrentScore();
        }
        result.putInMap("currentScore", currentScore);
        return result;
    }
  
}
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
@@ -175,6 +175,8 @@
        return new AjaxResult(AjaxResult.STATUS_SUCCESS, Collections.singletonList(bizUser));
    }
    void checkNeedToBeSalesman(BizUser bizUser, BizUser loginUser) {
        //查询是否需要自动成为分销员
        if ((loginUser.getIsSales() == null || loginUser.getIsSales() == 2)
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
@@ -18,6 +18,7 @@
import com.matrix.system.common.dao.CustomerDataDictionaryDao;
import com.matrix.system.common.interceptor.HostInterceptor;
import com.matrix.system.hive.dao.ShoppingGoodsDao;
import com.matrix.system.score.dao.ScoreVipDetailDao;
import com.matrix.system.shopXcx.api.action.PayThreadPool;
import com.matrix.system.shopXcx.api.pojo.OrderCouponGroup;
import com.matrix.system.shopXcx.api.pojo.OrderInfoQueryPOJO;
@@ -100,6 +101,9 @@
    @Autowired
    private BusParameterSettingsDao busParameterSettingsDao;
    @Autowired
    private ScoreVipDetailDao scoreVipDetailDao;
    @Override
    public BigDecimal calculationPostage(BigDecimal payPrice, Long companyId) {
        BigDecimal postage = BigDecimal.ZERO;
@@ -133,19 +137,17 @@
            return new AjaxResult(AjaxResult.STATUS_FAIL, "请选择正确的收获地址");
        }
        AjaxResult caculateResult= buildDiscountExplain(shopOrderDto);
        //计算订单优惠信息
        AjaxResult caculateResult= buildDiscountExplain(shopOrderDto);
        DiscountExplain discountExplain= (DiscountExplain) caculateResult.getMapInfo().get("discountExplain");
        //取出购物车中选中的产品
        List<ShopShoppingCart> buyCart = new ArrayList<>();
        //取出购物车中没有参加店铺活动的产品,和参加了店铺活动但是活动没有达到标准的产品,用来计算是否可以使用优惠券
        List<ShopShoppingCart> notCouponuyCart = new ArrayList<>();
        if(discountExplain.getScorePay()!=null){
            //校验用户积分是否够用
            int score=scoreVipDetailDao.selectUserTotalScore(bizUser.getOpenId(),null);
            if(score<discountExplain.getScorePay()){
                return  AjaxResult.buildFailInstance("积分不足");
            }
        }
        ShopOrder shopOrder = new ShopOrder();
        shopOrder.setCompanyId(bizUser.getCompanyId());
@@ -154,7 +156,7 @@
        shopOrder.setOrderType(ShopOrder.ORDER_TYPE_GOODS);
        List<ShopOrderDetails> details = new ArrayList<>();
        Integer cartCount = 0;
        Integer orderCount = 0;
        for (OrderItemDto orderItemDto : shopOrderDto.getOrderItemList()) {
            ShopOrderDetails shopOrderDetails = new ShopOrderDetails();
            shopOrderDetails.setCreateBy(AppConstance.SYSTEM_USER);
@@ -178,7 +180,12 @@
            shopOrderDetails.setDiscountAmount(BigDecimal.ZERO);
            details.add(shopOrderDetails);
            cartCount += shopOrderDetails.getCount();
            orderCount += shopOrderDetails.getCount();
            if(orderItemDto.getCartId()!=null){
                //删除用户购物车选中的产品
                shoppingCartDao.deleteById(orderItemDto.getCartId());
            }
        }
        //校验商品是否限购
@@ -190,7 +197,7 @@
        shopOrder.setCreateBy("微信小程序生成");
        shopOrder.setUpdateBy("微信小程序生成");
        shopOrder.setCommodityPrice(discountExplain.getBillPrice());
        shopOrder.setPurchaseQuantity(cartCount);
        shopOrder.setPurchaseQuantity(orderCount);
        shopOrder.setOrderType(ShopOrder.ORDER_TYPE_GOODS);
        //购买方式
        shopOrder.setShippingMethod(shopOrderDto.getDeliverySelect());
@@ -219,6 +226,7 @@
        //获取邮费
        shopOrder.setPostage(discountExplain.getPostage());
        shopOrder.setOrderMoney(discountExplain.getPayPrice());
        shopOrder.setScorePay(discountExplain.getScorePay());
        Gson g = new GsonBuilder().create();
        shopOrder.setDiscountExplain(g.toJson(discountExplain));
        shopOrder.setDiscountAmount(discountExplain.getActivityPrice().add(discountExplain.getCouponPrice()));
@@ -242,8 +250,6 @@
            shopCouponRecordDao.updateByModel(record);
        }
        //删除用户购物车选中的产品
        shoppingCartDao.deleteUserSelectCart(bizUser.getOpenId());
        BrandWCPayRequestData payData = startPayment(shopOrder);
@@ -388,6 +394,15 @@
        if (!shopOrder.getPayResult().equals(ShopOrder.ORDER_PAY_STATUS_WAIT)) {
            throw new GlobleException("该订单不是待支付状态!");
        }
        if(shopOrder.getScorePay()!=null){
            //校验用户积分是否够用
            int score=scoreVipDetailDao.selectUserTotalScore(shopOrder.getUserId(),null);
            if(score<shopOrder.getScorePay()){
                return  AjaxResult.buildFailInstance("积分不足");
            }
        }
        BrandWCPayRequestData payData = startPayment(shopOrder);
        AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, Arrays.asList(payData));
        result.putInMap("orderId", shopOrder.getId());
zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopOrder.java
@@ -141,7 +141,10 @@
     * 用户ID
     */
    private String userId;
    /**
     * 支付积分
     */
    private Integer scorePay;
    /**
     * 下单时间
@@ -336,6 +339,13 @@
        return orderNo;
    }
    public Integer getScorePay() {
        return scorePay;
    }
    public void setScorePay(Integer scorePay) {
        this.scorePay = scorePay;
    }
    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
zq-erp/src/main/resources/mybatis/mapper/score/ScoreVipDetailDao.xml
@@ -3,41 +3,23 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.matrix.system.score.dao.ScoreVipDetailDao">
    <!-- 定义ScoreVipDetail 的复杂关联map -->
    <resultMap type="com.matrix.system.score.entity.ScoreVipDetail" id="ScoreVipDetailMap">
        <id property="id" column="id" />
        <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="type" column="type" />
            <result property="allScore" column="all_score" />
            <result property="usedScore" column="used_score" />
            <result property="remainScore" column="remain_score" />
            <result property="gainTime" column="gain_time" />
            <result property="validiteTime" column="validite_time" />
            <result property="state" column="state" />
            <result property="businessId" column="business_id" />
            <result property="companyId" column="company_id" />
    </resultMap>
    <!-- 定义ScoreVipDetail 的简单map  ,本map不添加其他的关联属性 -->
    <resultMap type="com.matrix.system.score.entity.ScoreVipDetail" id="ScoreVipDetailSimpleMap">
        <id property="id" column="id" />
        <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="type" column="type" />
            <result property="allScore" column="all_score" />
            <result property="usedScore" column="used_score" />
            <result property="remainScore" column="remain_score" />
            <result property="gainTime" column="gain_time" />
            <result property="validiteTime" column="validite_time" />
            <result property="state" column="state" />
            <result property="businessId" column="business_id" />
            <result property="companyId" column="company_id" />
    </resultMap>
    <select id="selectUserTotalScore" resultType="java.lang.Integer">
        select IFNULL(sum(IFNULL( remain_score, 0 )),0) from score_vip_detail
        <where>
        and state=1
            <if test="openId !=null">
                and open_id=#{openId}
            </if>
            <if test="vipId !=null">
                and vip_id=#{vipId}
            </if>
        </where>
    </select>
    <select id="selectEffectiveScore" resultType="com.matrix.system.score.entity.ScoreVipDetail">
        select  *  from score_vip_detail where open_id=#{openId} and  state=1 order by create_time
    </select>
</mapper>
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDao.xml
@@ -33,6 +33,7 @@
            <result property="storeName" column="shop_name" />
            <result property="orderType" column="order_type" />
            <result property="applyStatus" column="apply_status" />
            <result property="scorePay" column="score_pay" />
            <result property="companyId" column="company_id" />
    </resultMap>
@@ -66,6 +67,7 @@
            <result property="postage" column="postage" />
            <result property="orderType" column="order_type" />
            <result property="storeName" column="shop_name" />
        <result property="scorePay" column="score_pay" />
            <result property="companyId" column="company_id" />
        <result property="activityType" column="activity_type" />
        <!--支付时间-->
@@ -127,6 +129,7 @@
            postage,
            order_type,
            activity_type,
score_pay,
            company_id
    </sql>
    
@@ -159,6 +162,7 @@
            #{item.postage},
            #{item.orderType},
            #{item.activityType},
            #{item.scorePay},
            #{item.companyId}
    </sql>
    
@@ -337,6 +341,9 @@
            <if test="_parameter.containsKey('orderType')">
                order_type  = #{orderType},
            </if>
            <if test="_parameter.containsKey('scorePay')">
                score_pay  = #{scorePay},
            </if>
        </set>
        WHERE id=#{id} 
    </update> 
@@ -405,6 +412,9 @@
            </if>
            <if test="record.postage != null and record.postage != '' ">
                postage  = #{record.postage},
            </if>
            <if test="record.scorePay != null and record.scorePay != '' ">
                score_pay  = #{record.scorePay},
            </if>
            <if test="true">
                update_time  = now(),
@@ -558,6 +568,7 @@
        o.postage,
        s.shop_name,
        o.order_type,
        o.score_pay,
        o.apply_status
        from shop_order o
        INNER JOIN sys_shop_info s on o.store_id = s.ID
@@ -629,6 +640,7 @@
        o.pay_result,
        o.postage,
        s.store_name,
        s.score_pay,
        o.order_type
        from shop_order o
        LEFT JOIN shop_store s on o.store_id = s.store_id
zq-erp/src/test/java/com/matrix/JyyTests.java
@@ -1,5 +1,6 @@
package com.matrix;
import com.matrix.system.score.dao.ScoreVipDetailDao;
import com.matrix.system.shopXcx.dao.ShopOrderV2Dao;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -22,12 +23,18 @@
    @Autowired
    private ShopOrderV2Dao shopOrderV2Dao;
    @Autowired
    ScoreVipDetailDao scoreVipDetailDao;
    /**
     *
     */
    @Test
    public void scoreVipDetailDao() throws InterruptedException {
        System.out.println( scoreVipDetailDao.selectUserTotalScore("oJkRK4yelehsY4S7I6Ee1ydWtQMI",null));
    }
    @Test
    public void testSelectReceivedOrderCount() throws InterruptedException {
        System.out.println( shopOrderV2Dao.selectReceivedOrderCount("oJkRK4yelehsY4S7I6Ee1ydWtQMI"));
    }