2 files added
15 files modified
| | |
| | | .version("1.0") |
| | | .build(); |
| | | } |
| | | |
| | | |
| | | @Bean |
| | | public Docket ERPApi(){ |
| | | // 添加请求参数,我们这里把token作为请求头部参数传入后端 |
| | | ParameterBuilder parameterBuilder = new ParameterBuilder(); |
| | | List<Parameter> parameters = new ArrayList<Parameter>(); |
| | | parameterBuilder.name("token").description("令牌").modelRef(new ModelRef("string")).parameterType("header") |
| | | .required(true).build(); |
| | | parameters.add(parameterBuilder.build()); |
| | | |
| | | |
| | | return new Docket(DocumentationType.SWAGGER_2).apiInfo(ERPApiInfo()).enable(swaggerEnable).select().apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) |
| | | .paths(PathSelectors.ant("/admin/**")).build().globalOperationParameters(parameters).groupName("ERP接口"); |
| | | } |
| | | |
| | | private ApiInfo ERPApiInfo(){ |
| | | return new ApiInfoBuilder() |
| | | .title("Hive ERP") |
| | | .description("This is a restful api document of Hive ERP.") |
| | | .version("1.0") |
| | | .build(); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | public class BasePageQueryDto { |
| | | |
| | | |
| | | @NotNull(message = "参数不能为空") |
| | | @NotNull(message = "pageNum参数不能为空") |
| | | @ApiModelProperty(value = "第几页", example = "1") |
| | | private Integer pageNum; |
| | | |
| | | @NotNull(message = "参数不能为空") |
| | | @NotNull(message = "pageSize参数不能为空") |
| | | @ApiModelProperty(value ="数量", example = "10") |
| | | private Integer pageSize; |
| | | |
New file |
| | |
| | | package com.matrix.system.hive.action; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.matrix.core.constance.MatrixConstance; |
| | | import com.matrix.core.pojo.AjaxResult; |
| | | import com.matrix.core.tools.WebUtil; |
| | | import com.matrix.system.common.bean.SysUsers; |
| | | import com.matrix.system.hive.bean.SysVipInfo; |
| | | import com.matrix.system.hive.dao.SysVipInfoDao; |
| | | import com.matrix.system.hive.dto.ScoreChangeDto; |
| | | import com.matrix.system.score.dao.ScoreUseRecordDao; |
| | | import com.matrix.system.score.dao.ScoreVipDetailDao; |
| | | import com.matrix.system.score.entity.ScoreVipDetail; |
| | | import com.matrix.system.score.service.ScoreVipDetailService; |
| | | import com.matrix.system.shopXcx.api.dto.ScoreFlowDto; |
| | | import com.matrix.system.shopXcx.api.vo.ScoreUseRecordVo; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiResponse; |
| | | import io.swagger.annotations.ApiResponses; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | /** |
| | | * @author jyy |
| | | * @date 2021-03-22 15:10 |
| | | */ |
| | | @Api(tags = "用户积分接口类") |
| | | @RestController |
| | | @RequestMapping(value = "/admin/score") |
| | | public class ErpShopScoreAction { |
| | | |
| | | |
| | | |
| | | @Autowired |
| | | ScoreUseRecordDao scoreUseRecordDao; |
| | | |
| | | @Autowired |
| | | ScoreVipDetailDao scoreVipDetailDao; |
| | | |
| | | @Autowired |
| | | ScoreVipDetailService scoreVipDetailService; |
| | | |
| | | @Autowired |
| | | SysVipInfoDao sysVipInfoDao; |
| | | |
| | | @ApiOperation(value = "获取积分流水", notes = "") |
| | | @PostMapping(value = "/getFlowList") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "ok", response = ScoreUseRecordVo.class) |
| | | }) |
| | | AjaxResult getFlowList(@RequestBody ScoreFlowDto scoreFlowDto) { |
| | | SysVipInfo vipInfo = sysVipInfoDao.selectById(scoreFlowDto.getVipId()); |
| | | scoreFlowDto.setUserId(vipInfo.getOpenId()); |
| | | Page<ScoreUseRecordVo> page=new Page<>(scoreFlowDto.getPageNum(),scoreFlowDto.getPageSize()); |
| | | IPage<ScoreUseRecordVo> shopScoreRecord = scoreUseRecordDao.selectFlowList(page,scoreFlowDto); |
| | | AjaxResult result=AjaxResult.buildSuccessInstance(shopScoreRecord.getRecords(),shopScoreRecord.getTotal()); |
| | | return result; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @ApiOperation(value = "调整用户积分", notes = "") |
| | | @PostMapping(value = "/changeUserScore") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "ok", response = AjaxResult.class) |
| | | }) |
| | | AjaxResult changeUserScore(@RequestBody @Validated ScoreChangeDto scoreChangeDto) { |
| | | SysVipInfo vipInfo = sysVipInfoDao.selectById(scoreChangeDto.getVipId()); |
| | | SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); |
| | | |
| | | if(scoreChangeDto.getAmount()>0){ |
| | | scoreVipDetailService.addScore(null,vipInfo.getId(),sysUsers.getSuId(),sysUsers.getShopId(),scoreChangeDto.getAmount(),0L, ScoreVipDetail.SCORE_VIP_TYPE_USERCHANGE,scoreChangeDto.getRemarks()); |
| | | }else if (scoreChangeDto.getAmount()<0){ |
| | | scoreVipDetailService.deductionScore(null,vipInfo.getId(),sysUsers.getSuId(),sysUsers.getShopId(),Math.abs(scoreChangeDto.getAmount()),0L,ScoreVipDetail.SCORE_VIP_TYPE_USERCHANGE,scoreChangeDto.getRemarks()); |
| | | } |
| | | AjaxResult result=AjaxResult.buildSuccessInstance("调整成功"); |
| | | return result; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @ApiOperation(value = "获取用户积分", notes = "") |
| | | @PostMapping(value = "/getUserScore/{vipId}") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "ok", response = AjaxResult.class) |
| | | }) |
| | | AjaxResult getUserScore(@PathVariable Long vipId) { |
| | | AjaxResult result=AjaxResult.buildSuccessInstance(scoreVipDetailDao.selectUserTotalScore(null,vipId)); |
| | | return result; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | import com.matrix.core.tools.excl.ExcelSheetPO; |
| | | import com.matrix.core.tools.excl.ExcelUtil; |
| | | import com.matrix.core.tools.excl.ExcelVersion; |
| | | import com.matrix.system.common.bean.CustomerDataDictionary; |
| | | import com.matrix.system.common.bean.SystemDictionary; |
| | | import com.matrix.system.common.bean.SysUsers; |
| | | import com.matrix.system.common.bean.SystemDictionary; |
| | | import com.matrix.system.common.constance.AppConstance; |
| | | import com.matrix.system.common.dao.CustomerDataDictionaryDao; |
| | | import com.matrix.system.common.service.SystemDictionaryService; |
| | | import com.matrix.system.common.service.SysUsersService; |
| | | import com.matrix.system.common.service.SystemDictionaryService; |
| | | import com.matrix.system.common.tools.ResponseHeadUtil; |
| | | import com.matrix.system.constance.Dictionary; |
| | | import com.matrix.system.constance.SystemConstance; |
| | | import com.matrix.system.hive.action.util.QueryUtil; |
| | | import com.matrix.system.hive.bean.*; |
| | | import com.matrix.system.hive.bean.Question; |
| | | import com.matrix.system.hive.bean.SysVipInfo; |
| | | import com.matrix.system.hive.bean.SysVipLevel; |
| | | import com.matrix.system.hive.bean.VipAnswer; |
| | | import com.matrix.system.hive.dao.MoneyCardUseDao; |
| | | import com.matrix.system.hive.dao.SysVipLabelDao; |
| | | import com.matrix.system.hive.dao.VipAnswerDao; |
| | | import com.matrix.core.tools.DateUtil; |
| | | import com.matrix.system.hive.pojo.RegisterInfo; |
| | | import com.matrix.system.hive.service.*; |
| | | import com.matrix.system.score.dao.ScoreVipDetailDao; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.ModelMap; |
| | |
| | | @Resource |
| | | private SysOrderService sysOrderService; |
| | | |
| | | @Autowired |
| | | private ScoreVipDetailDao scoreVipDetailDao; |
| | | |
| | | |
| | | @RequestMapping(value = "/showVipLevel") |
| | | public @ResponseBody |
| | |
| | | @RequestMapping(value = "/showVipInfo") |
| | | public @ResponseBody |
| | | AjaxResult findByModel(String keyWord) { |
| | | LinkedList<SysVipInfo> userList = null; |
| | | // 获取最近查询客户 |
| | | if (WebUtil.getSession().getAttribute(SystemConstance.HISTORY_CUSTOMER) == null) { |
| | | userList = new LinkedList<SysVipInfo>(); |
| | | WebUtil.getSession().setAttribute(SystemConstance.HISTORY_CUSTOMER, userList); |
| | | } else { |
| | | userList = (LinkedList<SysVipInfo>) WebUtil.getSession().getAttribute(SystemConstance.HISTORY_CUSTOMER); |
| | | } |
| | | |
| | | List<SysVipInfo> vips = vipInfoService.findByVipNoOrTel(keyWord); |
| | | if (vips.size() > 0) { |
| | | // 在session存放当前查询的客户 |
| | | vips.get(0).setPointAll(scoreVipDetailDao.selectUserTotalScore(null,vips.get(0).getId())); |
| | | vips.get(0).setSysOrder(sysOrderService.findSysOrderTjByVipId(vips.get(0).getId())); |
| | | vips.get(0).setLevelCard(cardUseService.findByVipId(vips.get(0).getId())); |
| | | WebUtil.getSession().setAttribute(SystemConstance.CURRENT_CUSTOMER, vips.get(0)); |
| | | // 满20后删除一个 |
| | | if (userList.size() == 20) { |
| | | userList.poll(); |
| | | } |
| | | // 去重标志 |
| | | boolean isNoRepeat = true; |
| | | for (SysVipInfo sysVipInfo : userList) { |
| | | if (vips.get(0).getPhone().equals(sysVipInfo.getPhone())) { |
| | | isNoRepeat = false; |
| | | } |
| | | } |
| | | if (isNoRepeat) { |
| | | userList.add(vips.get(0)); |
| | | } |
| | | vips.get(0).setLabels(sysVipLabelDao.selectByVipId(vips.get(0).getId())); |
| | | vips.get(0).setAge(DateUtil.getAgeForBirthDay(vips.get(0).getBirthday1())); |
| | | vips.get(0).setBalance(moneyCardUseDao.selectVipCardTotalMoney(vips.get(0).getId())); |
New file |
| | |
| | | package com.matrix.system.hive.dto; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import javax.validation.constraints.NotEmpty; |
| | | import javax.validation.constraints.NotNull; |
| | | |
| | | @Data |
| | | @ApiModel(value = "ScoreChangeDto", description = "积分修改参数接收类") |
| | | public class ScoreChangeDto { |
| | | |
| | | @NotNull |
| | | @ApiModelProperty(value = "会员id", example = "1") |
| | | private Long vipId; |
| | | |
| | | @NotNull(message = "调整数量不能为空") |
| | | @ApiModelProperty(value = "调整数量", example = "1") |
| | | private Integer amount; |
| | | |
| | | @NotEmpty(message = "调整说明不能为空") |
| | | @ApiModelProperty(value = "调整说明", example = "线下兑换") |
| | | private String remarks; |
| | | |
| | | } |
| | |
| | | import com.matrix.system.app.vo.OrderDetailItemVo; |
| | | import com.matrix.system.app.vo.OrderDetailVo; |
| | | import com.matrix.system.app.vo.RankingVo; |
| | | import com.matrix.system.common.bean.BusParameterSettings; |
| | | import com.matrix.system.common.bean.SysUsers; |
| | | import com.matrix.system.common.dao.BusParameterSettingsDao; |
| | | import com.matrix.system.common.dao.SysUsersDao; |
| | |
| | | import com.matrix.system.hive.pojo.ShoppingCarItem; |
| | | import com.matrix.system.hive.pojo.ShoppingCarItemsVo; |
| | | import com.matrix.system.hive.service.*; |
| | | import com.matrix.system.score.constant.ScoreSettingConstant; |
| | | import com.matrix.system.score.entity.ScoreVipDetail; |
| | | import com.matrix.system.score.service.ScoreVipDetailService; |
| | | import com.matrix.system.shopXcx.mqTask.MQTaskRouting; |
| | | import com.matrix.system.wechart.templateMsg.UniformMsgParam; |
| | | import org.springframework.beans.BeanUtils; |
| | |
| | | |
| | | import javax.servlet.http.HttpSession; |
| | | import javax.validation.constraints.NotEmpty; |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | |
| | | @Autowired |
| | | MoneyCardUseFlowDao moneyCardUseFlowDao; |
| | | |
| | | @Autowired |
| | | ScoreVipDetailService scoreVipDetailService; |
| | | |
| | | @Autowired |
| | | BusParameterSettingsDao busParameterSettingsDao; |
| | | @Autowired |
| | | SysVipLevelDao sysVipLevelDao; |
| | | |
| | |
| | | // 删除收款记录 |
| | | sysOrderFlowDao.deleteByOrderId(id); |
| | | |
| | | //删除积分 |
| | | scoreVipDetailService.removeByBusinessId(null,order.getVipId(), order.getId()); |
| | | |
| | | // 取消订单 |
| | | order.setStatu(Dictionary.ORDER_STATU_YQX); |
| | | return sysOrderDao.update(order); |
| | |
| | | |
| | | setShopSelCount(pageOrder); |
| | | |
| | | //设置会员积分 |
| | | addVipScore(pageOrder); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 设置会员消费积分 |
| | | * @param pageOrder |
| | | */ |
| | | private void addVipScore(SysOrder pageOrder) { |
| | | |
| | | SysVipInfo vipInfo=sysVipInfoDao.selectById(pageOrder.getVipId()); |
| | | |
| | | List<SysOrderFlow> flows = pageOrder.getFlows(); |
| | | int [] cashScore={0,0,0}; |
| | | //现金支付金额 |
| | | BigDecimal cashPayAmount=flows.stream() |
| | | .filter(item->(!item.getPayMethod().equals("储值卡"))&&(!item.getPayMethod().equals("欠款"))) |
| | | .map(SysOrderFlow::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add); |
| | | BusParameterSettings cashConsumption = busParameterSettingsDao.selectCompanyParamByCode(ScoreSettingConstant.CASH_CONSUMPTION, vipInfo.getCompanyId()); |
| | | if(cashPayAmount!=null |
| | | &&cashPayAmount.compareTo(BigDecimal.ZERO)>0 |
| | | &&StringUtils.isNotBlank(cashConsumption.getParamValue())){ |
| | | |
| | | BigDecimal scoreSetting0 = new BigDecimal(cashConsumption.getParamValue()); |
| | | cashScore[0]= cashPayAmount.divide(scoreSetting0).intValue(); |
| | | |
| | | if(StringUtils.isNotBlank(cashConsumption.getParamValue1())){ |
| | | BigDecimal scoreSetting1 = new BigDecimal(cashConsumption.getParamValue1()); |
| | | cashScore[1]= cashPayAmount.divide(scoreSetting1).intValue(); |
| | | } |
| | | |
| | | if(StringUtils.isNotBlank(cashConsumption.getParamValue2())){ |
| | | BigDecimal scoreSetting2 = new BigDecimal(cashConsumption.getParamValue2()); |
| | | cashScore[2]= cashPayAmount.divide(scoreSetting2).intValue(); |
| | | } |
| | | } |
| | | |
| | | int [] cardScore={0,0,0}; |
| | | //储值卡本金支付金额 |
| | | BigDecimal cardPayAmount=flows.stream() |
| | | .filter(item->item.getPayMethod().equals("储值卡")&&item.getIsGift().equals("N")) |
| | | .map(SysOrderFlow::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add); |
| | | |
| | | BusParameterSettings principalBalanceConsumption = busParameterSettingsDao.selectCompanyParamByCode(ScoreSettingConstant.PRINCIPAL_BALANCE_CONSUMPTION, vipInfo.getCompanyId()); |
| | | if(cardPayAmount!=null |
| | | &&cardPayAmount.compareTo(BigDecimal.ZERO)>0 |
| | | &&StringUtils.isNotBlank(principalBalanceConsumption.getParamValue())){ |
| | | |
| | | BigDecimal scoreSetting0 = new BigDecimal(principalBalanceConsumption.getParamValue()); |
| | | cardScore[0]= cardPayAmount.divide(scoreSetting0).intValue(); |
| | | |
| | | if(StringUtils.isNotBlank(principalBalanceConsumption.getParamValue1())){ |
| | | BigDecimal scoreSetting1 = new BigDecimal(principalBalanceConsumption.getParamValue1()); |
| | | cardScore[1]= cardPayAmount.divide(scoreSetting1).intValue(); |
| | | } |
| | | |
| | | if(StringUtils.isNotBlank(principalBalanceConsumption.getParamValue2())){ |
| | | BigDecimal scoreSetting2 = new BigDecimal(principalBalanceConsumption.getParamValue2()); |
| | | cardScore[2]= cardPayAmount.divide(scoreSetting2).intValue(); |
| | | } |
| | | } |
| | | |
| | | int [] giftScore={0,0,0}; |
| | | //储值卡本赠送付金额 |
| | | BigDecimal giftPayAmount=flows.stream() |
| | | .filter(item->item.getPayMethod().equals("储值卡")&&item.getIsGift().equals("Y")) |
| | | .map(SysOrderFlow::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add); |
| | | BusParameterSettings bonusBalanceConsumption = busParameterSettingsDao.selectCompanyParamByCode(ScoreSettingConstant.BONUS_BALANCE_CONSUMPTION, vipInfo.getCompanyId()); |
| | | if(giftPayAmount!=null |
| | | &&giftPayAmount.compareTo(BigDecimal.ZERO)>0 |
| | | &&StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue())){ |
| | | |
| | | BigDecimal scoreSetting0 = new BigDecimal(bonusBalanceConsumption.getParamValue()); |
| | | giftScore[0]= giftPayAmount.divide(scoreSetting0).intValue(); |
| | | |
| | | if(StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue1())){ |
| | | BigDecimal scoreSetting1 = new BigDecimal(bonusBalanceConsumption.getParamValue1()); |
| | | giftScore[1]= giftPayAmount.divide(scoreSetting1).intValue(); |
| | | } |
| | | |
| | | if(StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue2())){ |
| | | BigDecimal scoreSetting2 = new BigDecimal(bonusBalanceConsumption.getParamValue2()); |
| | | giftScore[2]= giftPayAmount.divide(scoreSetting2).intValue(); |
| | | } |
| | | } |
| | | |
| | | int selfScore=cashScore[0]+cardScore[0]+giftScore[0]; |
| | | int parentScore=cashScore[1]+cardScore[1]+giftScore[1]; |
| | | int topParentScore=cashScore[2]+cardScore[2]+giftScore[2]; |
| | | |
| | | |
| | | //添加自己的积分 |
| | | if(selfScore>0){ |
| | | scoreVipDetailService.addScore(null, |
| | | vipInfo.getId(), |
| | | pageOrder.getStaffId(), |
| | | pageOrder.getShopId(), |
| | | selfScore, |
| | | pageOrder.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "消费奖励" |
| | | ); |
| | | } |
| | | |
| | | if(vipInfo.getRecommendId()!=null){ |
| | | //推荐注册老带新积分奖励 |
| | | SysVipInfo referrerVip = sysVipInfoDao.selectById(vipInfo.getRecommendId()); |
| | | if(parentScore>0){ |
| | | scoreVipDetailService.addScore(null, |
| | | referrerVip.getId(), |
| | | pageOrder.getStaffId(), |
| | | pageOrder.getShopId(), |
| | | parentScore, |
| | | pageOrder.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "推荐消费奖励" |
| | | ); |
| | | } |
| | | //推荐注册二级带新积分奖励 |
| | | if(referrerVip.getRecommendId()!=null){ |
| | | SysVipInfo topVipInfo = sysVipInfoDao.selectById(referrerVip.getRecommendId()); |
| | | if(topParentScore>0){ |
| | | scoreVipDetailService.addScore(null, |
| | | topVipInfo.getId(), |
| | | pageOrder.getStaffId(), |
| | | pageOrder.getShopId(), |
| | | topParentScore, |
| | | pageOrder.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "推荐消费奖励" |
| | | ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | |
| | | sourceOrder.setIsHasRefund(SysOrder.IS_HAS_REFUND_Y); |
| | | // sourceOrder.setStatu(Dictionary.ORDER_STATU_TK); |
| | | sysOrderDao.update(sourceOrder); |
| | | SysOrder oldOrder=sysOrderDao.selectById( sysOrder.getOldOrderId()); |
| | | |
| | | sysOrder.setId(null); |
| | | sysOrder.setStaffId(user.getSuId()); |
| | |
| | | addOrderFlow(sysOrder); |
| | | //退款退套餐退项目 |
| | | refundProjUse(sysOrder); |
| | | //删除积分 |
| | | scoreVipDetailService.removeByBusinessId(null,oldOrder.getVipId(), oldOrder.getId()); |
| | | |
| | | // 设置业绩 |
| | | achieveNewService.addAchaeveByOrder(sysOrder); |
| | |
| | | import com.matrix.core.tools.WebUtil; |
| | | import com.matrix.system.app.dto.ServiceOrderListDto; |
| | | import com.matrix.system.app.vo.ServiceOrderListVo; |
| | | import com.matrix.system.common.bean.BusParameterSettings; |
| | | import com.matrix.system.common.bean.SysUsers; |
| | | import com.matrix.system.common.dao.BusParameterSettingsDao; |
| | | import com.matrix.system.common.dao.SysUsersDao; |
| | | import com.matrix.system.constance.Dictionary; |
| | | import com.matrix.system.hive.bean.*; |
| | | import com.matrix.system.hive.dao.*; |
| | | import com.matrix.system.hive.plugin.util.MoneyUtil; |
| | | import com.matrix.system.hive.service.*; |
| | | import com.matrix.system.score.constant.ScoreSettingConstant; |
| | | import com.matrix.system.score.entity.ScoreVipDetail; |
| | | import com.matrix.system.score.service.ScoreVipDetailService; |
| | | import com.matrix.system.shopXcx.mqTask.MQTaskRouting; |
| | | import com.matrix.system.wechart.templateMsg.UniformMsgParam; |
| | | import org.apache.commons.collections.CollectionUtils; |
| | |
| | | |
| | | @Autowired |
| | | private RabiitMqTemplate rabiitMqTemplate; |
| | | |
| | | |
| | | @Autowired |
| | | BusParameterSettingsDao busParameterSettingsDao; |
| | | |
| | | @Autowired |
| | | ScoreVipDetailService scoreVipDetailService; |
| | | |
| | | @Autowired |
| | | SysVipInfoDao sysVipInfoDao; |
| | | |
| | | @Value("${evn}") |
| | | private String evn; |
| | |
| | | sysOutStoreDao.deleteById(sysOutStore.getId()); |
| | | sysOutStoreItemDao.deleteByOrderId(sysOutStore.getId()); |
| | | } |
| | | //删除积分 |
| | | scoreVipDetailService.removeByBusinessId(null,checkProjServices.getVipId(), checkProjServices.getId()); |
| | | |
| | | //更新服务单状态 |
| | | return sysProjServicesDao.update(checkProjServices); |
| | | } |
| | |
| | | int result=sysProjServicesDao.update(projServices); |
| | | achieveNewService.addAchieveByServiceOrder(projServices); |
| | | |
| | | //设置会员积分 |
| | | addVipScore(projServices); |
| | | |
| | | //发送微信公众号提醒 |
| | | UniformMsgParam uniformMsgParam=new UniformMsgParam(projServices.getCompanyId(),UniformMsgParam.GZH_FWWC); |
| | | uniformMsgParam.put("serviceId",projServices.getId()); |
| | | rabiitMqTemplate.sendMsg(MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG+evn,uniformMsgParam.toJSONString()); |
| | | |
| | | |
| | | |
| | | |
| | | return result; |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 设置会员消费积分 |
| | | */ |
| | | private void addVipScore(SysProjServices projServices) { |
| | | |
| | | SysVipInfo vipInfo =sysVipInfoDao.selectById(projServices.getVipId()); |
| | | |
| | | List<SysBeauticianState> sysBeauticianStates = beauticianStateDao.selectBySerIds(projServices.getId()); |
| | | |
| | | |
| | | double principalPrice = 0D; |
| | | double giftPrice = 0D; |
| | | for (SysBeauticianState sysBeauticianState : sysBeauticianStates) { |
| | | SysProjUse projUse = sysBeauticianState.getProjUse(); |
| | | if (projUse.getSource().equals(Dictionary.TAOCAN_SOURCE_ZS)) { |
| | | giftPrice += projUse.getPrice(); |
| | | } else { |
| | | principalPrice += projUse.getPrice(); |
| | | } |
| | | } |
| | | |
| | | int[] principalConsumScore = {0, 0, 0}; |
| | | BusParameterSettings principalConsumption = busParameterSettingsDao.selectCompanyParamByCode(ScoreSettingConstant.PRINCIPAL_CONSUMPTION, vipInfo.getCompanyId()); |
| | | //本金消耗 |
| | | if (principalPrice > 0 |
| | | && StringUtils.isNotBlank(principalConsumption.getParamValue())) { |
| | | |
| | | principalConsumScore[0] = (int) (principalPrice / Double.parseDouble(principalConsumption.getParamValue())); |
| | | |
| | | if (StringUtils.isNotBlank(principalConsumption.getParamValue1())) { |
| | | principalConsumScore[1] = (int) (principalPrice / Double.parseDouble(principalConsumption.getParamValue1())); |
| | | } |
| | | |
| | | if (StringUtils.isNotBlank(principalConsumption.getParamValue2())) { |
| | | principalConsumScore[2] = (int) (principalPrice / Double.parseDouble(principalConsumption.getParamValue2())); |
| | | } |
| | | } |
| | | |
| | | int[] giveConsumScore = {0, 0, 0}; |
| | | BusParameterSettings giveConsumption = busParameterSettingsDao.selectCompanyParamByCode(ScoreSettingConstant.GIVE_CONSUMPTION, vipInfo.getCompanyId()); |
| | | //本金消耗 |
| | | if (giftPrice > 0 |
| | | && StringUtils.isNotBlank(giveConsumption.getParamValue())) { |
| | | |
| | | giveConsumScore[0] = (int) (giftPrice / Double.parseDouble(giveConsumption.getParamValue())); |
| | | |
| | | if (StringUtils.isNotBlank(giveConsumption.getParamValue1())) { |
| | | giveConsumScore[1] = (int) (giftPrice / Double.parseDouble(giveConsumption.getParamValue1())); |
| | | } |
| | | |
| | | if (StringUtils.isNotBlank(giveConsumption.getParamValue2())) { |
| | | giveConsumScore[2] = (int) (giftPrice / Double.parseDouble(giveConsumption.getParamValue2())); |
| | | } |
| | | } |
| | | |
| | | int selfScore =principalConsumScore[0]+giveConsumScore[0]; |
| | | int parentScore =principalConsumScore[1]+giveConsumScore[1]; |
| | | int topParentScore =principalConsumScore[2]+giveConsumScore[2]; |
| | | |
| | | //添加自己的积分 |
| | | if (selfScore > 0) { |
| | | scoreVipDetailService.addScore(null, |
| | | vipInfo.getId(), |
| | | projServices.getCreateStaffId(), |
| | | projServices.getShopId(), |
| | | selfScore, |
| | | projServices.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "消耗奖励" |
| | | ); |
| | | } |
| | | |
| | | if (vipInfo.getRecommendId() != null) { |
| | | //推荐注册老带新积分奖励 |
| | | SysVipInfo referrerVip = sysVipInfoDao.selectById(vipInfo.getRecommendId()); |
| | | if (parentScore > 0) { |
| | | scoreVipDetailService.addScore(null, |
| | | referrerVip.getId(), |
| | | projServices.getCreateStaffId(), |
| | | projServices.getShopId(), |
| | | parentScore, |
| | | projServices.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "推荐消耗奖励" |
| | | ); |
| | | } |
| | | //推荐注册二级带新积分奖励 |
| | | if (referrerVip.getRecommendId() != null) { |
| | | SysVipInfo topVipInfo = sysVipInfoDao.selectById(referrerVip.getRecommendId()); |
| | | if (topParentScore > 0) { |
| | | scoreVipDetailService.addScore(null, |
| | | topVipInfo.getId(), |
| | | projServices.getCreateStaffId(), |
| | | projServices.getShopId(), |
| | | topParentScore, |
| | | projServices.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_CASH, |
| | | "推荐消耗奖励" |
| | | ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | // 派单 jyy |
| | |
| | | |
| | | /** |
| | | * 服务单收费需要生成出库记录 |
| | | * |
| | | * @param projServicesVo |
| | | * @return |
| | | */ |
| | |
| | | Integer.parseInt(referrerScoreSetting.getParamValue1()), |
| | | vipInfo.getId(), |
| | | ScoreVipDetail.SCORE_VIP_TYPE_REFERRER, |
| | | "推荐人"+topVipInfo.getVipName()+"推荐会员" |
| | | "间接推荐会员" |
| | | ); |
| | | } |
| | | } |
| | |
| | | * 获取类型(3推荐客户) |
| | | */ |
| | | public static final int SCORE_VIP_TYPE_REFERRER=3; |
| | | /** |
| | | * 获取类型(4人工调整) |
| | | */ |
| | | public static final int SCORE_VIP_TYPE_USERCHANGE=4; |
| | | |
| | | /** 有效*/ |
| | | public static final int SCORE_STATUS_YX=1; |
| | |
| | | * 扣除用户积分 |
| | | */ |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void deductionScore(String openId, Long vipId,Long shopId, Integer score, Long businessId, int type,String remark) { |
| | | public void deductionScore(String openId, Long vipId,Long oprationUserId,Long shopId, Integer score, Long businessId, int type,String remark) { |
| | | Long companyId=null; |
| | | if(openId!=null){ |
| | | companyId= bizUserDao.findByOpenId(openId).getCompanyId(); |
| | |
| | | }else{ |
| | | throw new IllegalArgumentException("vipId,openId必须有一个"); |
| | | } |
| | | String createBy=MatrixConstance.SYSTEM_USER; |
| | | if(oprationUserId!=null){ |
| | | createBy=sysUsersDao.selectById(oprationUserId).getSuName(); |
| | | } |
| | | |
| | | List<ScoreVipDetail> effectiveScoreList = scoreVipDetailDao.selectEffectiveScore(openId,null); |
| | | List<ScoreVipDetail> effectiveScoreList = scoreVipDetailDao.selectEffectiveScore(openId,vipId); |
| | | |
| | | for (ScoreVipDetail scoreVipDetail : effectiveScoreList) { |
| | | |
| | |
| | | scoreVipDetailDao.updateById(scoreVipDetail); |
| | | score=Math.abs(surplus); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | //新增扣除记录 |
| | | scoreUseRecord.setCreateBy(MatrixConstance.SYSTEM_USER); |
| | | scoreUseRecord.setUpdateBy(MatrixConstance.SYSTEM_USER); |
| | | scoreUseRecord.setCreateBy(createBy); |
| | | scoreUseRecord.setUpdateBy(createBy); |
| | | scoreUseRecord.setCreateTime(DateTime.now()); |
| | | scoreUseRecord.setUpdateTime(DateTime.now()); |
| | | scoreUseRecord.setNowScore(scoreVipDetail.getRemainScore()); |
| | |
| | | scoreUseRecord.setOpenId(openId); |
| | | scoreUseRecord.setVipId(vipId); |
| | | scoreUseRecord.setRemarks(remark); |
| | | scoreUseRecord.setOprationUserId(oprationUserId); |
| | | scoreUseRecordDao.insert(scoreUseRecord); |
| | | |
| | | if(surplus > 0 || surplus == 0){ |
| | |
| | | }); |
| | | } |
| | | |
| | | public void removeByBusinessId(String openId, Long vipId, Long oldBusinessId, int type){ |
| | | public void removeByBusinessId(String openId, Long vipId, Long oldBusinessId){ |
| | | Long companyId=null; |
| | | if(openId!=null){ |
| | | companyId= bizUserDao.findByOpenId(openId).getCompanyId(); |
| | |
| | | QueryWrapper queryWrapper=new QueryWrapper(); |
| | | queryWrapper.eq("business_id",oldBusinessId); |
| | | queryWrapper.eq("company_id",companyId); |
| | | queryWrapper.eq("type",type); |
| | | scoreVipDetailDao.delete(queryWrapper); |
| | | scoreUseRecordDao.delete(queryWrapper); |
| | | } |
| | |
| | | package com.matrix.system.shopXcx.api.dto; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.matrix.core.pojo.BasePageQueryDto; |
| | | import com.matrix.core.tools.DateUtil; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | import org.springframework.format.annotation.DateTimeFormat; |
| | | |
| | | import javax.validation.constraints.NotNull; |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | @ApiModel(value = "ScoreFlowDto", description = "积分流水查询参数接收类") |
| | | public class ScoreFlowDto extends BasePageQueryDto { |
| | | |
| | | @NotNull(message = "查询月份不能为空") |
| | | |
| | | @ApiModelProperty(value = "查询月份",example = "2021-03") |
| | | private String queryTime; |
| | | |
| | | @DateTimeFormat(pattern = DateUtil.DATE_FORMAT_DD) |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8") |
| | | private Date beginTime; |
| | | |
| | | @DateTimeFormat(pattern = DateUtil.DATE_FORMAT_DD) |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8") |
| | | private Date endTime; |
| | | |
| | | |
| | | @ApiModelProperty(value = "收支类型 不传全部,1,收入,2支出", example = "1") |
| | |
| | | @ApiModelProperty(hidden = true) |
| | | private String userId; |
| | | |
| | | @ApiModelProperty(value = "会员id", example = "1") |
| | | private Long vipId; |
| | | |
| | | @ApiModelProperty(value = "备注", example = "1") |
| | | private String remarks; |
| | | |
| | | |
| | | } |
| | |
| | | } |
| | | |
| | | //消费获得积分返还,如果本订单获得了积分则要扣除获得积分 |
| | | scoreVipDetailService.removeByBusinessId(order.getUserId(),null,Long.parseLong(order.getId()+""), ScoreVipDetail.SCORE_VIP_TYPE_CASH); |
| | | scoreVipDetailService.removeByBusinessId(order.getUserId(),null,Long.parseLong(order.getId()+"")); |
| | | |
| | | |
| | | } |
| | |
| | | order.setDetails(orderDetails); |
| | | //扣除积分 |
| | | if(order.getScorePay()!=null&&order.getScorePay()>0){ |
| | | scoreVipDetailService.deductionScore(order.getUserId(),null,Long.parseLong(order.getStoreId()+""),order.getScorePay(),Long.parseLong(order.getId()+""), ScoreVipDetail.SCORE_VIP_TYPE_CASH,"商城积分抵扣"); |
| | | scoreVipDetailService.deductionScore(order.getUserId(),null,null,Long.parseLong(order.getStoreId()+""),order.getScorePay(),Long.parseLong(order.getId()+""), ScoreVipDetail.SCORE_VIP_TYPE_CASH,"商城积分抵扣"); |
| | | }else{ |
| | | //消费获得积分 |
| | | int addScore=0; |
| | |
| | | d.SURPLUS_COUNT as pu_SURPLUS_COUNT, |
| | | d.ASSEMBLE_ID as pu_ASSEMBLE_ID, |
| | | d.price as pu_price, |
| | | d.taocan_id as pu_taocan_id |
| | | |
| | | |
| | | d.taocan_id as pu_taocan_id, |
| | | d.source as pu_source |
| | | from sys_beautician_state a |
| | | left join sys_users b on a.staff_id= b.su_id |
| | | left join shopping_goods c on a.proj_id=c.id |
| | |
| | | from score_use_record a |
| | | left join sys_shop_info b on a.shop_id=b.id |
| | | left join sys_users c on a.opration_user_id=c.su_id |
| | | where a.open_id=#{record.userId} |
| | | <where> |
| | | |
| | | <if test="(record.userId!=null and record.userId!='') and (record.vipId!=null and record.vipId!='')"> |
| | | and (a.open_id=#{record.userId} or a.vip_id=#{record.vipId}) |
| | | </if> |
| | | |
| | | <if test="(record.userId!=null and record.userId!='') and record.vipId==null"> |
| | | and a.open_id=#{record.userId} |
| | | </if> |
| | | |
| | | <if test="(record.vipId!=null and record.vipId!='') and record.userId==null"> |
| | | and a.vip_id=#{record.vipId} |
| | | </if> |
| | | |
| | | <if test="record.remarks!=null and record.remarks!=''"> |
| | | and a.remarks like concat('%',#{record.remarks},'%') |
| | | </if> |
| | | |
| | | <if test="record.queryTime!=null and record.queryTime!=''"> |
| | | and DATE_FORMAT(a.create_time,'%Y-%m')=#{record.queryTime} |
| | | </if> |
| | | |
| | | <if test="record.beginTime != null and record.endTime!=null"> |
| | | and (date(a.create_time) between #{record.beginTime} and #{record.endTime}) |
| | | </if> |
| | | |
| | | <if test="record.revenueType==1"> |
| | | and a.rec_num>0 |
| | | </if> |
| | | <if test="record.revenueType==2"> |
| | | <![CDATA[ and a.rec_num<0 ]]> |
| | | </if> |
| | | </where> |
| | | order by a.create_time desc |
| | | |
| | | </select> |
| | | |
| | | |
| | | |
| | | </mapper> |
| | |
| | | </if> |
| | | <if test="vipId !=null"> |
| | | and vip_id=#{vipId} |
| | | </if> order by create_time |
| | | </if> |
| | | order by create_time |
| | | |
| | | </select> |
| | | |
| | |
| | | </el-pagination> |
| | | </el-row> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="积分记录" name="scoreTab"> |
| | | <el-row style="line-height: 40px;"> |
| | | <el-col :span="8"> |
| | | <el-date-picker v-model="scoreTab.selectTime" |
| | | type="daterange" |
| | | range-separator="至" |
| | | format="yyyy-MM-dd" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期"> |
| | | </el-date-picker> |
| | | </el-col> |
| | | <el-col :span="8"> <el-input v-model="scoreTab.remarks" placeholder="请输入备注查询" ></el-input></el-col> |
| | | <el-col :span="6" style="margin-left: 5px;"> |
| | | <el-button type="primary" @click="scoreCheckQuery">查询</el-button> |
| | | <el-button type="primary" @click="changeScore">调整</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row class="table-style"> |
| | | <el-table :data="scoreTab.scoreTableDate" |
| | | style="width: 100%;"> |
| | | <el-table-column |
| | | type="index" |
| | | width="50"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="createTime" |
| | | label="时间"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="optionName" |
| | | label="操作人员"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="shopName" |
| | | label="门店"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="recNum" |
| | | label="修改数量"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="nowScore" |
| | | label="余额"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="remarks" |
| | | label="备注"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <el-row> |
| | | <el-pagination |
| | | background |
| | | @size-change="scoreCheckSizeChange" |
| | | @current-change="scoreCheckCurrentChange" |
| | | :current-page="scoreTab.page.currentPage" |
| | | :page-sizes="[10, 20, 30, 50]" |
| | | :page-size="scoreTab.page.pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="scoreTab.page.total"> |
| | | </el-pagination> |
| | | </el-row> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="皮肤检测" name="skinCheck"> |
| | | <el-row style="line-height: 40px;"> |
| | | <el-col :span="11"> |
| | |
| | | </el-pagination> |
| | | </el-row> |
| | | </el-tab-pane> |
| | | |
| | | |
| | | </el-tabs> |
| | | </el-main> |
| | | </el-container> |
| | | </el-container> |
| | | |
| | | <el-dialog title="积分调整" :visible.sync="scoreTab.showChangePaln"> |
| | | <el-form :model="scoreTab.form"> |
| | | <h3>可用积分:{{vipInfo.pointAll}}</h3> |
| | | <el-form-item label="调整数量" > |
| | | <el-input v-model="scoreTab.form.amount" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="调整备注" > |
| | | <el-input v-model="scoreTab.form.remarks" autocomplete="off"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="scoreTab.showChangePaln = false">取 消</el-button> |
| | | <el-button type="primary" @click="submitChangeScore" >确 定</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | |
| | | |
| | | </div> |
| | | </body> |
| | | <script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script> |
| | |
| | | total : 0 |
| | | } |
| | | }, |
| | | //用户积分tab |
| | | scoreTab : { |
| | | scoreTableDate : [], |
| | | selectTime : '', |
| | | remarks:'', |
| | | showChangePaln:false, |
| | | page : { |
| | | currentPage : 1, |
| | | pageSize : 10, |
| | | total : 0 |
| | | }, |
| | | form:{ |
| | | amount:'', |
| | | remarks:'', |
| | | } |
| | | |
| | | }, |
| | | // 皮肤检测tab |
| | | skinTab : { |
| | | skinTableDate : [], |
| | |
| | | }, |
| | | handleSelect(row) { |
| | | this.vipInfoFn(row.key); |
| | | this.searchValue=row.key; |
| | | }, |
| | | // 请求会员信息 |
| | | vipInfoFn(key) { |
| | |
| | | }, |
| | | // 取消 |
| | | cancelServiceOrder(index, row) { |
| | | MTools.handleItem(basePath + "/admin/projService/cancelOrder?id=" + row.row, "确定取消订单吗?", this.serviceOrderQuery); |
| | | MTools.handleItem(basePath + "/admin/projService/cancelOrder?id=" + row.id, "确定取消订单吗?", this.serviceOrderQuery); |
| | | }, |
| | | // 修改时间 |
| | | modifyTime(index, row) { |
| | |
| | | }, |
| | | /********* 订单Tab end ***********/ |
| | | |
| | | /************** 积分tab start **************/ |
| | | submitChangeScore(){ |
| | | let _this=this; |
| | | |
| | | var params={ |
| | | amount:this.scoreTab.form.amount, |
| | | remarks:this.scoreTab.form.remarks, |
| | | vipId:this.vipInfo.id |
| | | }; |
| | | |
| | | |
| | | |
| | | $.AjaxProxy({ |
| | | p:params, |
| | | json:"json" |
| | | }).invoke(basePath + "/admin/score/changeUserScore", function (loj) { |
| | | _this.$message.success('调整成功'); |
| | | _this.scoreTab.showChangePaln=false; |
| | | _this.scoreTab.form={ |
| | | amount:'', |
| | | remarks:'' |
| | | } |
| | | _this.vipInfoFn(_this.searchValue); |
| | | _this.scoreCheckQuery(); |
| | | |
| | | }); |
| | | |
| | | }, |
| | | changeScore(){ |
| | | if (!this.vipInfo.id) { |
| | | this.$message.error('请选择用户'); |
| | | return; |
| | | }else { |
| | | this.scoreTab.showChangePaln=true; |
| | | } |
| | | |
| | | }, |
| | | |
| | | scoreCheckQuery() { |
| | | this.scoreCheckTableDataQueryFn(); |
| | | }, |
| | | scoreCheckTableDataQueryFn() { |
| | | let _this = this; |
| | | let scoreTab = _this.scoreTab; |
| | | let page = scoreTab.page; |
| | | var params = {}; |
| | | |
| | | if (!_this.vipInfo.id) { |
| | | return; |
| | | } |
| | | |
| | | params.pageSize = page.pageSize; |
| | | params.pageNum =page.currentPage ; |
| | | params.vipId = _this.vipInfo.id; |
| | | params.remarks = scoreTab.remarks; |
| | | if (scoreTab.selectTime) { |
| | | params.beginTime = scoreTab.selectTime?moment(scoreTab.selectTime[0]).format("YYYY-MM-DD"):''; |
| | | params.endTime = scoreTab.selectTime?moment(scoreTab.selectTime[1]).format("YYYY-MM-DD"):''; |
| | | } |
| | | $.AjaxProxy({ |
| | | p:params, |
| | | json:"json" |
| | | }).invoke(basePath + "/admin/score/getFlowList", function (loj) { |
| | | scoreTab.page.total = loj.getResult().total; |
| | | scoreTab.scoreTableDate = loj.getValue("rows"); |
| | | }); |
| | | }, |
| | | scoreCheckSizeChange(val) { |
| | | this.scoreTab.page.pageSize = val; |
| | | this.scoreCheckTableDataQueryFn() |
| | | }, |
| | | scoreCheckCurrentChange(val) { |
| | | this.scoreTab.page.currentPage = val; |
| | | this.scoreCheckTableDataQueryFn() |
| | | }, |
| | | /************** 积分tab end **************/ |
| | | |
| | | |
| | | |
| | | /************** 皮肤检测tab start **************/ |
| | | skinCheckQuery() { |
| | | this.skinCheckTableDataQueryFn(); |
| | |
| | | this.skinCheckTableDataQueryFn(); |
| | | } |
| | | } |
| | | if (tab.name === "scoreTab") { |
| | | if (_this.scoreTab.scoreTableDate.length <= 0) { |
| | | this.scoreCheckTableDataQueryFn(); |
| | | } |
| | | } |
| | | }, |
| | | |
| | | /********** 标签代码 start ************/ |