zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java
@@ -99,6 +99,9 @@ @ApiModelProperty(value ="兑奖方式(1:线下兑换2:物流配送3:客服兑换)") private int awardWay; public static final int AWARDWAY_ONE = 1; public static final int AWARDWAY_TWO = 2; public static final int AWARDWAY_THREE = 3; /** * 奖品是否有效(1:有效 2:无效) zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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; @@ -18,6 +19,7 @@ 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.bean.ShopActivities; import com.matrix.system.shopXcx.dao.ShopActivitiesDao; import io.swagger.annotations.Api; @@ -56,6 +58,7 @@ //获取登录人信息 SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); Long companyId = loginUser.getCompanyId(); Long userId = loginUser.getId(); //获取签到活动的信息 SignBasicInfoVo signBasicInfoVo = new SignBasicInfoVo(); ShopActivities shopActivities = shopActivitiesDao.selectOneByCompanyIdAndActTypeAndActStatus(companyId,ShopActivities.ACTIVITIES_TYPE_SIGN,ShopActivities.ACTSTATUS_STATUS_ING); @@ -71,6 +74,13 @@ .selectListByActIDAndCompanyId(actId,companyId,ActivitySignAwardSet.AWARDSTATE_WORK); signBasicInfoVo.setActivitySignAwardSetVos(activitySignAwardSetVos); //今日是否已经参与 ActivitySignRecord activitySignRecord = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,DateUtil.today()); if(ObjectUtil.isNotEmpty(activitySignRecord)) { signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_SIGN); }else { signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_NOTSIGN); } AjaxResult ajaxResult = AjaxResult.buildSuccessInstance(""); ajaxResult.setData(signBasicInfoVo); return ajaxResult; @@ -135,6 +145,7 @@ * 查询是否有签到奖品 * 日常奖励和自定义奖品 */ SignSuccessVo signSuccessVo = new SignSuccessVo(); //日常奖励,新增奖品领取记录 QueryWrapper<ActivitySignAwardSet> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("award_rule",ActivitySignAwardSet.AWARDRULE_NORMAL); @@ -150,7 +161,11 @@ activitySignReceiveRecord.setActivityId(actId); activitySignReceiveRecord.setCompanyId(companyId); activitySignReceiveRecordDao.insert(activitySignReceiveRecord); signSuccessVo.setNormalAwardName(activitySignAwardSetNormal.getAwardName()); signSuccessVo.setNormalAwardImg(activitySignAwardSetNormal.getIntroduceImg()); } //自定义奖励 QueryWrapper<ActivitySignAwardSet> queryWrapperCumulativeDay = new QueryWrapper<>(); queryWrapperCumulativeDay.eq("award_rule",ActivitySignAwardSet.AWARDRULE_CUMULATIVEDAY); @@ -159,17 +174,63 @@ queryWrapperCumulativeDay.eq("activity_id",actId); ActivitySignAwardSet activitySignAwardSetCumulativeDay = activitySignAwardSetDao.selectOne(queryWrapperCumulativeDay); if(ObjectUtil.isNotEmpty(activitySignAwardSetCumulativeDay)) { //奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品) //新增奖品领取记录 ActivitySignReceiveRecord activitySignReceiveRecord = new ActivitySignReceiveRecord(); activitySignReceiveRecord.setUserId(userId); activitySignReceiveRecord.setReceiveTime(date); activitySignReceiveRecord.setAwardId(activitySignAwardSetCumulativeDay.getId()); activitySignReceiveRecord.setActivityId(actId); activitySignReceiveRecord.setCompanyId(companyId); activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_DONE); /** * 奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品) * * todo:4:店铺商品 */ //1:自定义产品 if(ActivitySignAwardSet.AWARDTYPE_CUSTOMIZE == activitySignAwardSetCumulativeDay.getAwardType()) { activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_ING); String randomString = StringUtils.getRandomString(8); activitySignReceiveRecord.setWriteOffCode(randomString); /** * 获取对应奖品的领取方式(兑奖方式(1:线下兑换2:物流配送3:客服兑换) */ signSuccessVo.setWriteOffCode(randomString); signSuccessVo.setAwardType(activitySignAwardSetCumulativeDay.getAwardType()); signSuccessVo.setAwardName(activitySignAwardSetCumulativeDay.getAwardName()); signSuccessVo.setAwardImg(activitySignAwardSetCumulativeDay.getIntroduceImg()); signSuccessVo.setAwardWay(activitySignAwardSetCumulativeDay.getAwardWay()); signSuccessVo.setAwardState(activitySignAwardSetCumulativeDay.getAwardState()); //2:物流配送 signSuccessVo.setOperationTip(activitySignAwardSetCumulativeDay.getOperationTip()); //1:线下兑换 if(ActivitySignAwardSet.AWARDWAY_ONE == activitySignAwardSetCumulativeDay.getAwardWay()) { signSuccessVo.setIntroduceTip(activitySignAwardSetCumulativeDay.getIntroduceTip()); signSuccessVo.setPrizeAddress(activitySignAwardSetCumulativeDay.getPrizeAddress()); signSuccessVo.setPrizeStartTime(activitySignAwardSetCumulativeDay.getPrizeStartTime()); signSuccessVo.setPrizeEndTime(activitySignAwardSetCumulativeDay.getPrizeEndTime()); } //3:客服兑换 if(ActivitySignAwardSet.AWARDWAY_THREE == activitySignAwardSetCumulativeDay.getAwardWay()) { signSuccessVo.setWechatImg(activitySignAwardSetCumulativeDay.getWechatImg()); signSuccessVo.setPrizeStartTime(activitySignAwardSetCumulativeDay.getPrizeStartTime()); signSuccessVo.setPrizeEndTime(activitySignAwardSetCumulativeDay.getPrizeEndTime()); } } //获取对应奖品的领取方式(兑奖方式(1:线下兑换2:物流配送3:客服兑换) // if() { // // } //2:积分 if(ActivitySignAwardSet.AWARDTYPE_SCORE == activitySignAwardSetCumulativeDay.getAwardType()) { signSuccessVo.setScoreCnt(activitySignAwardSetCumulativeDay.getScoreCnt()); } //3:优惠券 if(ActivitySignAwardSet.AWARDTYPE_SCORE == activitySignAwardSetCumulativeDay.getAwardType()) { signSuccessVo.setCouponName(activitySignAwardSetCumulativeDay.getCouponName()); } activitySignReceiveRecordDao.insert(activitySignReceiveRecord); } return AjaxResult.buildSuccessInstance("申请成功,等待审核"); AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("签到成功"); ajaxResult.setData(signSuccessVo); return ajaxResult; } } zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoVo.java
@@ -16,6 +16,11 @@ * 主键 */ private Long id; @ApiModelProperty(value ="活动今日是否已参与 1:未参与 2:已参与") private int joinState; public static final int JOINSTATE_NOTSIGN = 1; public static final int JOINSTATE_SIGN = 2; @ApiModelProperty(value ="活动名称") private String actName; zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignSuccessVo.java
New file @@ -0,0 +1,150 @@ package com.matrix.system.shopXcx.api.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "SignSuccessVo", description = "签到活动") public class SignSuccessVo { @ApiModelProperty(value ="日常奖励名称") private String normalAwardName; @ApiModelProperty(value ="日常奖励图片") private String normalAwardImg; @ApiModelProperty(value ="累计奖励名称") private String awardName; @ApiModelProperty(value ="累计奖励图片") private String awardImg; @ApiModelProperty(value ="累计奖励核销码") private String writeOffCode; @ApiModelProperty(value ="奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品)") private int awardType; public static final int AWARDTYPE_CUSTOMIZE = 1; public static final int AWARDTYPE_SCORE = 2; public static final int AWARDTYPE_COUPON = 3; public static final int AWARDTYPE_GOODS = 4; @ApiModelProperty(value ="文字介绍") private String introduceTip; /** * 奖项库存数量 */ @ApiModelProperty(value ="奖项库存数量") private int awardInventoryCnt; /** * 已派发数量 */ @ApiModelProperty(value ="已派发数量") private int awardDistributeCnt; /** * 兑奖方式(1:线下兑换2:物流配送3:客服兑换) */ @ApiModelProperty(value ="兑奖方式(1:线下兑换2:物流配送3:客服兑换)") private int awardWay; /** * 奖品是否有效(1:有效 2:无效) */ @ApiModelProperty(value ="奖品是否有效(1:有效 2:无效)") private int awardState; public static final int AWARDSTATE_WORK = 1; public static final int AWARDSTATE_UNWORK = 2; /** * 操作提示 */ @ApiModelProperty(value ="操作提示") private String operationTip; /** * 兑奖地址 */ @ApiModelProperty(value ="兑奖地址") private String prizeAddress; /** * 兑奖期限开始日期 */ @ApiModelProperty(value ="兑奖期限开始日期") private Date prizeStartTime; /** * 兑奖期限结束日期 */ @ApiModelProperty(value ="兑奖期限结束日期") private Date prizeEndTime; /** * 客服微信 */ @ApiModelProperty(value ="客服微信") private String wechatImg; /** * 积分数量 */ @ApiModelProperty(value ="积分数量") private int scoreCnt; /** * 优惠券ID */ @ApiModelProperty(value ="优惠券") private String couponName; @ApiModelProperty(value ="优惠券ID") private String couponId; /** * 商品ID */ @ApiModelProperty(value ="商品") private String goodsName; @ApiModelProperty(value ="商品ID") private String goodsId; /** * 活动主表ID */ @ApiModelProperty(value ="活动主表ID") private Long activityId; /** * 公司ID */ @ApiModelProperty(value ="公司ID") private Long companyId; } zq-erp/src/main/resources/templates/views/admin/activity/activity-sign-update.html
@@ -297,7 +297,7 @@ </el-form-item> </el-col> <el-col> <el-button type="primary"> <el-button type="primary" @click="chooseCoupon(item.content.couponName,item.name)"> 选择优惠券 </el-button> </el-col> @@ -377,7 +377,7 @@ </el-form-item> </el-col> <el-col> <el-button type="primary"> <el-button type="primary" @click="chooseGoods(item.content.goodsName,item.name)"> 选择品项 </el-button> </el-col> @@ -579,6 +579,8 @@ imageUrlButton: '', imageUrlState: '', activeClickTab:0, //优惠券搜索弹出 drawerCoupon: false, directionCoupon: 'rtl', @@ -660,9 +662,10 @@ }, methods: { //选择优惠券 chooseCoupon(val){ chooseCoupon(val,name){ let _this = this; _this.drawerCoupon = true; _this.activeClickTab = parseInt(name); _this.formCoupon.yhjmc = val; _this.loadCouponList(); }, @@ -713,11 +716,19 @@ //选择 chooseOneCoupon(row) { let _this = this; _this.editableTabs[_this.tabIndex-1].content.couponId = row.id; _this.editableTabs[_this.tabIndex-1].content.couponName = row.cname; _this.editableTabs[_this.activeClickTab-1].content.couponId = row.id; _this.editableTabs[_this.activeClickTab-1].content.couponName = row.cname; _this.drawerCoupon = false; }, //选择品项 chooseGoods(val,name){ let _this = this; _this.drawerGoods = true; _this.activeClickTab = parseInt(name); _this.formGoods.cpmc = val; _this.loadGoodsList(); }, //--品项 loadGoodsList() { let _this = this; @@ -763,8 +774,8 @@ //选择 chooseOneGoods(row) { let _this = this; _this.editableTabs[_this.tabIndex-1].content.goodsId = row.id; _this.editableTabs[_this.tabIndex-1].content.goodsName = row.name; _this.editableTabs[_this.activeClickTab-1].content.goodsId = row.id; _this.editableTabs[_this.activeClickTab-1].content.goodsName = row.name; _this.drawerGoods = false; }, @@ -993,11 +1004,11 @@ }, //奖品设置的图片介绍 introduceImgSuccess(res, file) { this.editableTabs[this.tabIndex-1].content.introduceImg = res.path; this.editableTabs[this.activeClickTab-1].content.introduceImg = res.path; }, //奖品设置的客服微信 wechatImgSuccess(res, file) { this.editableTabs[this.tabIndex-1].content.wechatImg = res.path; this.editableTabs[this.activeClickTab-1].content.wechatImg = res.path; }, cancelSubmit() { this.closeFrame(); zq-erp/src/main/resources/templates/views/admin/activity/activity-sign.html
@@ -304,7 +304,7 @@ </el-form-item> </el-col> <el-col> <el-button type="primary" @click="chooseCoupon(item.content.couponName)"> <el-button type="primary" @click="chooseCoupon(item.content.couponName,item.name)"> 选择优惠券 </el-button> </el-col> @@ -383,7 +383,7 @@ </el-form-item> </el-col> <el-col> <el-button type="primary" @click="chooseGoods(item.content.goodsName)"> <el-button type="primary" @click="chooseGoods(item.content.goodsName,item.name)"> 选择品项 </el-button> </el-col> @@ -578,6 +578,8 @@ data: { activeName: 'first', formLabelWidth: '120px', activeClickTab:0, //优惠券搜索弹出 drawerCoupon: false, directionCoupon: 'rtl', @@ -664,9 +666,10 @@ }, methods: { //选择优惠券 chooseCoupon(val){ chooseCoupon(val,name){ let _this = this; _this.drawerCoupon = true; _this.activeClickTab = parseInt(name); _this.formCoupon.yhjmc = val; _this.loadCouponList(); }, @@ -717,15 +720,16 @@ //选择 chooseOneCoupon(row) { let _this = this; _this.editableTabs[_this.tabIndex-1].content.couponId = row.id; _this.editableTabs[_this.tabIndex-1].content.couponName = row.cname; _this.editableTabs[_this.activeClickTab-1].content.couponId = row.id; _this.editableTabs[_this.activeClickTab-1].content.couponName = row.cname; _this.drawerCoupon = false; }, //选择品项 chooseGoods(val){ chooseGoods(val,name){ let _this = this; _this.drawerGoods = true; _this.activeClickTab = parseInt(name); _this.formGoods.cpmc = val; _this.loadGoodsList(); }, @@ -774,8 +778,8 @@ //选择 chooseOneGoods(row) { let _this = this; _this.editableTabs[_this.tabIndex-1].content.goodsId = row.id; _this.editableTabs[_this.tabIndex-1].content.goodsName = row.name; _this.editableTabs[_this.activeClickTab-1].content.goodsId = row.id; _this.editableTabs[_this.activeClickTab-1].content.goodsName = row.name; _this.drawerGoods = false; }, @@ -928,12 +932,12 @@ }, //奖品设置的图片介绍 introduceImgSuccess(res, file) { this.editableTabs[this.tabIndex-1].content.introduceImg = res.path; this.editableTabs[this.activeClickTab-1].content.introduceImg = res.path; // this.prize.introduceImg = URL.createObjectURL(file.raw); }, //奖品设置的客服微信 wechatImgSuccess(res, file) { this.editableTabs[this.tabIndex-1].content.wechatImg = res.path; this.editableTabs[this.activeClickTab-1].content.wechatImg = res.path; }, cancelSubmit() { this.closeFrame();