From 9434605b2a844d3efa511415b15a43c44f21755b Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 15 Apr 2021 19:41:28 +0800
Subject: [PATCH] Merge branch 'score_shop' of http://120.27.238.55:7000/r/beauty-erp into score_shop
---
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java | 130 ++++++++++++++++++++++++++++++++++++++----
1 files changed, 116 insertions(+), 14 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java
index 5149a5b..d3d9bf5 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java
@@ -5,32 +5,36 @@
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.StringUtils;
import com.matrix.system.activity.dao.ActivitySignAwardSetDao;
import com.matrix.system.activity.dao.ActivitySignReceiveRecordDao;
import com.matrix.system.activity.dao.ActivitySignRecordDao;
+import com.matrix.system.activity.dao.ActivitySignWriteoffDao;
import com.matrix.system.activity.entity.ActivitySignAwardSet;
import com.matrix.system.activity.entity.ActivitySignReceiveRecord;
import com.matrix.system.activity.entity.ActivitySignRecord;
+import com.matrix.system.activity.entity.ActivitySignWriteoff;
import com.matrix.system.hive.bean.SysVipInfo;
import com.matrix.system.shopXcx.api.dto.ClickSignDTO;
-import com.matrix.system.shopXcx.api.vo.ActivitySignAwardSetVo;
-import com.matrix.system.shopXcx.api.vo.SignBasicInfoJsonVo;
-import com.matrix.system.shopXcx.api.vo.SignBasicInfoVo;
-import com.matrix.system.shopXcx.api.vo.SignSuccessVo;
+import com.matrix.system.shopXcx.api.dto.SeeAwardTextDto;
+import com.matrix.system.shopXcx.api.dto.SignAwardDto;
+import com.matrix.system.shopXcx.api.vo.*;
import com.matrix.system.shopXcx.bean.ShopActivities;
import com.matrix.system.shopXcx.dao.ShopActivitiesDao;
+import com.matrix.system.shopXcx.vo.SalesOrderVo;
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.transaction.annotation.Transactional;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
-import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@@ -52,6 +56,9 @@
private ActivitySignReceiveRecordDao activitySignReceiveRecordDao;
@Autowired
+ private ActivitySignWriteoffDao activitySignWriteoffDao;
+
+ @Autowired
private ActivitySignRecordDao activitySignRecordDao;
@ApiOperation(value = "获取签到基本信息", notes = "")
@@ -66,7 +73,14 @@
Long userId = loginUser.getId();
//获取签到活动的信息
SignBasicInfoVo signBasicInfoVo = new SignBasicInfoVo();
+ AjaxResult ajaxResult = new AjaxResult();
+
ShopActivities shopActivities = shopActivitiesDao.selectOneByCompanyIdAndActTypeAndActStatus(companyId,ShopActivities.ACTIVITIES_TYPE_SIGN,ShopActivities.ACTSTATUS_STATUS_ING);
+ if(ObjectUtil.isEmpty(shopActivities)){
+ ajaxResult = AjaxResult.buildFailInstance("活动还没有开始");
+ ajaxResult.setData(signBasicInfoVo);
+ return ajaxResult;
+ }
Long actId = shopActivities.getId();
signBasicInfoVo.setActName(shopActivities.getActName());
signBasicInfoVo.setActCode(shopActivities.getActCode());
@@ -74,19 +88,19 @@
String actContent = shopActivities.getActContent();
SignBasicInfoJsonVo signBasicInfoJsonVo = JSON.parseObject(actContent, SignBasicInfoJsonVo.class);
signBasicInfoVo.setSignBasicInfoJsonVo(signBasicInfoJsonVo);
-
- List<ActivitySignAwardSetVo> activitySignAwardSetVos = activitySignAwardSetDao
- .selectListByActIDAndCompanyId(actId,companyId,ActivitySignAwardSet.AWARDSTATE_WORK);
- signBasicInfoVo.setActivitySignAwardSetVos(activitySignAwardSetVos);
- //今日是否已经参与
+ List<ActivitySignAwardSetVo> activitySignAwardSetVos = activitySignAwardSetDao
+ .selectListByActIDAndCompanyId(actId,companyId,ActivitySignAwardSet.AWARDSTATE_WORK);
+ signBasicInfoVo.setActivitySignAwardSetVos(activitySignAwardSetVos);
+
+ //今日是否已经参与
ActivitySignRecord activitySignRecord = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,new Date());
if(ObjectUtil.isNotEmpty(activitySignRecord)) {
- signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_SIGN);
+ signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_SIGN);
}else {
- signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_NOTSIGN);
+ signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_NOTSIGN);
}
- AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("");
+ ajaxResult = AjaxResult.buildSuccessInstance("");
ajaxResult.setData(signBasicInfoVo);
return ajaxResult;
}
@@ -115,6 +129,7 @@
* 是否已领取
* 查询是否有签到奖品
* 日常奖励和自定义奖品
+ * 生成核销记录
*/
//活动是否存在
ShopActivities shopActivities = shopActivitiesDao.selectById(actId);
@@ -182,7 +197,7 @@
signSuccessVo.setNormalAwardImg(activitySignAwardSetNormal.getIntroduceImg());
}
//获取当前累计天数
- int cumulativeDay = getCumulativeDay(actId, userId, date, 1);
+ int cumulativeDay = getCumulativeDay(actId, userId, date, 0);
//自定义奖励
QueryWrapper<ActivitySignAwardSet> queryWrapperCumulativeDay = new QueryWrapper<>();
queryWrapperCumulativeDay.eq("award_rule",ActivitySignAwardSet.AWARDRULE_CUMULATIVEDAY);
@@ -262,6 +277,31 @@
signSuccessVo.setCouponName(activitySignAwardSetCumulativeDay.getCouponName());
}
activitySignReceiveRecordDao.insert(activitySignReceiveRecord);
+ //生成核销记录
+ if(ActivitySignAwardSet.AWARDTYPE_CUSTOMIZE == activitySignAwardSetCumulativeDay.getAwardType()) {
+ ActivitySignWriteoff activitySignWriteoff = new ActivitySignWriteoff();
+ //线下兑换和客服兑换
+ if(ActivitySignAwardSet.AWARDWAY_ONE == activitySignAwardSetCumulativeDay.getAwardWay()
+ || ActivitySignAwardSet.AWARDWAY_THREE == activitySignAwardSetCumulativeDay.getAwardWay()) {
+ activitySignWriteoff.setWriteoffCode(activitySignReceiveRecord.getWriteOffCode());
+ }
+ activitySignWriteoff.setActId(actId);
+ activitySignWriteoff.setAwardId(activitySignAwardSetCumulativeDay.getId());
+ activitySignWriteoff.setWinTime(date);
+ if(ActivitySignAwardSet.AWARDWAY_TWO == activitySignAwardSetCumulativeDay.getAwardWay()) {
+ activitySignWriteoff.setState(ActivitySignWriteoff.STATE_TWO);
+ }else {
+ activitySignWriteoff.setState(ActivitySignWriteoff.STATE_ONE);
+ }
+ activitySignWriteoff.setUserId(userId);
+ activitySignWriteoff.setCompanyId(companyId);
+ activitySignWriteoff.setReceiveId(activitySignReceiveRecord.getId());
+ activitySignWriteoff.setCreateBy(user.getName());
+ activitySignWriteoff.setCreateTime(new Date());
+ activitySignWriteoff.setUpdateBy(user.getName());
+ activitySignWriteoff.setUpdateTime(new Date());
+ activitySignWriteoffDao.insert(activitySignWriteoff);
+ }
}
AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("签到成功");
@@ -285,6 +325,68 @@
return getCumulativeDay(actId,userId,offsetDay,i);
}
+ /**
+ * 获取累计的签到奖品
+ *
+ * @return
+ */
+ @ApiOperation(value = "获取累计的签到奖品", notes = "")
+ @PostMapping(value = "/getSignAwardList")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SignAwardListVo.class)
+ })
+ public AjaxResult getSignAwardList(@RequestBody @Validated SignAwardDto signAwardDto) {
+ SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
+ Page<SalesOrderVo> page=new Page<>(signAwardDto.getPageNum(),signAwardDto.getPageSize());
+ if(StringUtils.isBlank(signAwardDto.getSort())){
+ signAwardDto.setSort("create_time");
+ signAwardDto.setOrder("desc");
+ }
+ signAwardDto.setUserId(loginUser.getId());
+ signAwardDto.setCompanyId(loginUser.getCompanyId());
+ IPage<SignAwardListVo> signAwardListVos = activitySignReceiveRecordDao.selectSignAwardList(page,signAwardDto);
+ AjaxResult result=AjaxResult.buildSuccessInstance(signAwardListVos.getRecords());
+ return result;
+ }
+
+ /**
+ * 查看劵码
+ *
+ * @return
+ */
+ @ApiOperation(value = "查看劵码", notes = "")
+ @PostMapping(value = "/seeAwardText")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SeeAwardTextVo.class)
+ })
+ public AjaxResult seeAwardText(@RequestBody @Validated SeeAwardTextDto seeAwardTextDto) {
+ SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
+ seeAwardTextDto.setUserId(loginUser.getId());
+ seeAwardTextDto.setCompanyId(loginUser.getCompanyId());
+ SeeAwardTextVo seeAwardTextVO = activitySignReceiveRecordDao.selectSeeAwardTextVOById(seeAwardTextDto);
+ AjaxResult result=AjaxResult.buildSuccessInstance(seeAwardTextVO);
+ return result;
+ }
+
+ /**
+ * 物流配送确认
+ *
+ * @return
+ */
+ @ApiOperation(value = "查看劵码", notes = "")
+ @PostMapping(value = "/logisticsInsure")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SeeAwardTextVo.class)
+ })
+ public AjaxResult logisticsInsure(@RequestBody @Validated SeeAwardTextDto seeAwardTextDto) {
+ SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
+ seeAwardTextDto.setUserId(loginUser.getId());
+ seeAwardTextDto.setCompanyId(loginUser.getCompanyId());
+ SeeAwardTextVo seeAwardTextVO = activitySignReceiveRecordDao.selectSeeAwardTextVOById(seeAwardTextDto);
+ AjaxResult result=AjaxResult.buildSuccessInstance(seeAwardTextVO);
+ return result;
+ }
+
--
Gitblit v1.9.1