From 482847fc97748b67fd8ab93b5b589ab3824f6d02 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 07 Apr 2021 10:28:56 +0800 Subject: [PATCH] 20210407 签到 --- zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignRecordDao.xml | 11 + zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignAwardSetDao.java | 6 zq-erp/src/main/resources/config/db/increment/签到活动.sql | 8 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoJsonVo.java | 31 +++ zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java | 1 zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopActivitiesDao.xml | 11 + zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java | 3 zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignRecordDao.java | 5 zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoVo.java | 33 +++ zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopActivitiesDao.java | 3 zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java | 41 +++ zq-erp/src/main/java/com/matrix/system/score/action/ScoreRuleSettingAction.java | 6 zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ClickSignDTO.java | 17 + zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignAwardSetDao.xml | 67 +----- zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java | 154 ++++++++++++++- zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ActivitySignAwardSetVo.java | 174 +++++++++++++++++ zq-erp/src/main/java/com/matrix/system/score/constant/ScoreSettingConstant.java | 5 zq-erp/src/main/resources/templates/views/admin/hive-erp/score/score-setting.html | 21 + 18 files changed, 508 insertions(+), 89 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignAwardSetDao.java b/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignAwardSetDao.java index 4515800..bff7cc7 100644 --- a/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignAwardSetDao.java +++ b/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignAwardSetDao.java @@ -3,6 +3,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.matrix.system.activity.entity.ActivitySignAwardSet; +import com.matrix.system.shopXcx.api.vo.ActivitySignAwardSetVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @description 奖品设置表 @@ -11,4 +15,6 @@ */ public interface ActivitySignAwardSetDao extends BaseMapper<ActivitySignAwardSet>{ + List<ActivitySignAwardSetVo> selectListByActIDAndCompanyId(@Param("actId")Long actId, @Param("companyId")Long companyId,@Param("awardState")int awardstateWork); + } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignRecordDao.java b/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignRecordDao.java index 770622a..ad74afb 100644 --- a/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignRecordDao.java +++ b/zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignRecordDao.java @@ -1,6 +1,8 @@ package com.matrix.system.activity.dao; +import org.apache.ibatis.annotations.Param; + import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.matrix.system.activity.entity.ActivitySignRecord; @@ -11,4 +13,7 @@ */ public interface ActivitySignRecordDao extends BaseMapper<ActivitySignRecord>{ + ActivitySignRecord selectOneByActIdAndUserIdLikesignTime(@Param("actId")long actId, + @Param("userId")Long userId, @Param("format")String format); + } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java b/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java index a1c7bf9..ccfea36 100644 --- a/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java +++ b/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignAwardSet.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.matrix.core.anotations.Extend; import com.matrix.system.score.entity.BaseEntity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @@ -26,35 +27,45 @@ * 奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品) */ - + @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; /** * 奖项规则(1:每日奖励(默认)2:累计签到天数) */ + @ApiModelProperty(value ="奖项规则(1:每日奖励(默认)2:累计签到天数)") private int awardRule; + + public static final int AWARDRULE_NORMAL = 1; + public static final int AWARDRULE_CUMULATIVEDAY = 2; /** * 签到累计天数 */ - + @ApiModelProperty(value ="签到累计天数") private int cumulativeDay; /** * 奖项名称 */ - + @ApiModelProperty(value ="奖项名称") private String awardName; /** * 图片介绍 */ - + @ApiModelProperty(value ="图片介绍") private String introduceImg; /** @@ -62,6 +73,7 @@ */ + @ApiModelProperty(value ="文字介绍") private String introduceTip; /** @@ -69,6 +81,7 @@ */ + @ApiModelProperty(value ="奖项库存数量") private int awardInventoryCnt; /** @@ -76,6 +89,7 @@ */ + @ApiModelProperty(value ="已派发数量") private int awardDistributeCnt; /** @@ -83,11 +97,13 @@ */ + @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; @@ -96,14 +112,14 @@ * 操作提示 */ - + @ApiModelProperty(value ="操作提示") private String operationTip; /** * 兑奖地址 */ - + @ApiModelProperty(value ="兑奖地址") private String prizeAddress; /** @@ -111,20 +127,21 @@ */ + @ApiModelProperty(value ="兑奖期限开始日期") private Date prizeStartTime; /** * 兑奖期限结束日期 */ - + @ApiModelProperty(value ="兑奖期限结束日期") private Date prizeEndTime; /** * 客服微信 */ - + @ApiModelProperty(value ="客服微信") private String wechatImg; /** @@ -132,23 +149,27 @@ */ + @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; /** @@ -156,6 +177,7 @@ */ + @ApiModelProperty(value ="活动主表ID") private Long activityId; /** @@ -163,6 +185,7 @@ */ + @ApiModelProperty(value ="公司ID") private Long companyId; diff --git a/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java b/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java index ab1b4be..4782536 100644 --- a/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java +++ b/zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java @@ -56,6 +56,9 @@ private Integer state; + + public static final int STATE_ING = 1; + public static final int STATE_DONE = 2; /** * 核销码 diff --git a/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java b/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java index 0c35449..b7f5673 100644 --- a/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java +++ b/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java @@ -37,7 +37,6 @@ ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CASH_CONSUMPTION_SHOP, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.RESERVATION_SERVICE_SHOP, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.EVALUATUIN_ORDER_SHOP, companyId)); - ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.SIGN_SHOP, companyId)); busParameterSettingsDao.batchInsert(ruleSettings); } diff --git a/zq-erp/src/main/java/com/matrix/system/score/action/ScoreRuleSettingAction.java b/zq-erp/src/main/java/com/matrix/system/score/action/ScoreRuleSettingAction.java index ef1b141..25a2ee1 100644 --- a/zq-erp/src/main/java/com/matrix/system/score/action/ScoreRuleSettingAction.java +++ b/zq-erp/src/main/java/com/matrix/system/score/action/ScoreRuleSettingAction.java @@ -90,13 +90,11 @@ String[] scjfArrayCode={ ScoreSettingConstant.CASH_CONSUMPTION_SHOP, ScoreSettingConstant.RESERVATION_SERVICE_SHOP, - ScoreSettingConstant.EVALUATUIN_ORDER_SHOP, - ScoreSettingConstant.SIGN_SHOP}; + ScoreSettingConstant.EVALUATUIN_ORDER_SHOP}; String[] scjfArrayName={ "现金消费", "预约服务", - "评价订单", - "签到"}; + "评价订单"}; List<ScoreRuleSettingsVo> scjfRuleSettingsVo =getRuleSettingsVo(scjfArrayCode,scjfArrayName,companyId); result.putInMap("scjf", scjfRuleSettingsVo); return result; diff --git a/zq-erp/src/main/java/com/matrix/system/score/constant/ScoreSettingConstant.java b/zq-erp/src/main/java/com/matrix/system/score/constant/ScoreSettingConstant.java index bddeeea..134eeae 100644 --- a/zq-erp/src/main/java/com/matrix/system/score/constant/ScoreSettingConstant.java +++ b/zq-erp/src/main/java/com/matrix/system/score/constant/ScoreSettingConstant.java @@ -62,10 +62,5 @@ */ public final static String EVALUATUIN_ORDER_SHOP = "EVALUATUIN_ORDER_SHOP"; public final static String EVALUATUIN_ORDER_SHOP_NAME = "评价订单"; - /** - * 签到 - */ - public final static String SIGN_SHOP = "SIGN_SHOP"; - public final static String SIGN_SHOP_NAME = "签到"; } 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 691b3b9..f5854d3 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 @@ -1,15 +1,34 @@ package com.matrix.system.shopXcx.api.action; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.matrix.component.redis.RedisUserLoginUtils; import com.matrix.core.pojo.AjaxResult; +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.entity.ActivitySignAwardSet; +import com.matrix.system.activity.entity.ActivitySignReceiveRecord; +import com.matrix.system.activity.entity.ActivitySignRecord; 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.bean.ShopActivities; import com.matrix.system.shopXcx.dao.ShopActivitiesDao; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; @Api(tags = "签到活动接口类") @RestController @@ -22,20 +41,135 @@ @Autowired private RedisUserLoginUtils redisUserLoginUtils; + @Autowired + private ActivitySignAwardSetDao activitySignAwardSetDao; + + @Autowired + private ActivitySignReceiveRecordDao activitySignReceiveRecordDao; + + @Autowired + private ActivitySignRecordDao activitySignRecordDao; + @ApiOperation(value = "获取签到基本信息", notes = "") @GetMapping(value = "/getSignBasicInfo") public AjaxResult getSignBasicInfo() { //获取登录人信息 SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); Long companyId = loginUser.getCompanyId(); - -// shopActivitiesDao.selectOneByCompanyIdAndActTypeAndActStatus(); - - - -// BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_PLAN, HostInterceptor.getCompanyId()); + //获取签到活动的信息 + SignBasicInfoVo signBasicInfoVo = new SignBasicInfoVo(); + ShopActivities shopActivities = shopActivitiesDao.selectOneByCompanyIdAndActTypeAndActStatus(companyId,ShopActivities.ACTIVITIES_TYPE_SIGN,ShopActivities.ACTSTATUS_STATUS_ING); + Long actId = shopActivities.getId(); + signBasicInfoVo.setActName(shopActivities.getActName()); + signBasicInfoVo.setActCode(shopActivities.getActCode()); + signBasicInfoVo.setId(shopActivities.getId()); + 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); + AjaxResult ajaxResult = AjaxResult.buildSuccessInstance(""); -// ajaxResult.setData(busParameterSettings.getParamValue3()); + ajaxResult.setData(signBasicInfoVo); return ajaxResult; } + + /** + * 点击签到 + * + */ + @ApiOperation(value = "点击签到", notes = "") + @PostMapping(value = "/clickSign") + @Transactional + public AjaxResult clickSign(@RequestBody ClickSignDTO clickSignDTO) { + SysVipInfo user = redisUserLoginUtils.getLoginUser(SysVipInfo.class); + long actId = clickSignDTO.getActId(); + Long userId = user.getId(); + Long companyId = user.getCompanyId(); + /** + * 活动是否存在 + * 活动是否已经开始 + * 今日是否已经参与 + * 新增签到记录表 + * 判断累计连续签到天数是否+1 + * 查询是否有签到奖品 + * 日常奖励和自定义奖品 + */ + //活动是否存在 + ShopActivities shopActivities = shopActivitiesDao.selectById(actId); + if (ObjectUtil.isEmpty(shopActivities)) { + return AjaxResult.buildFailInstance("活动不存在"); + } + //活动是否已经开始 + Integer actStatus = shopActivities.getActStatus(); + if(ShopActivities.ACTSTATUS_STATUS_ING != actStatus) { + return AjaxResult.buildFailInstance("活动未开始"); + } + //今日是否已经参与 + ActivitySignRecord activitySignRecord = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,DateUtil.today()); + if (ObjectUtil.isNotEmpty(activitySignRecord)) { + return AjaxResult.buildFailInstance("今日用户已经签到成功"); + } + //前一天是否签到 + Date date = new Date(); + DateTime offsetDay = DateUtil.offsetDay(date, -1); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + ActivitySignRecord activitySignRecordOld = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,sdf.format(offsetDay.getTime())); + ActivitySignRecord activitySignRecordAdd = new ActivitySignRecord(); + activitySignRecordAdd.setCompanyId(companyId); + activitySignRecordAdd.setActivityId(actId); + activitySignRecordAdd.setSignTime(date); + activitySignRecordAdd.setUserId(userId); + Integer cumulativeDay = activitySignRecordOld.getCumulativeDay(); + if(ObjectUtil.isEmpty(activitySignRecordOld)) { + //新增签到记录表,累计连续签到天数是1 + activitySignRecordAdd.setCumulativeDay(1); + }else { + //新增签到记录表,累计连续签到天数是否+1 + activitySignRecordAdd.setCumulativeDay(cumulativeDay+1); + } + activitySignRecordDao.insert(activitySignRecordAdd); + /** + * 查询是否有签到奖品 + * 日常奖励和自定义奖品 + */ + //日常奖励,新增奖品领取记录 + QueryWrapper<ActivitySignAwardSet> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("award_rule",ActivitySignAwardSet.AWARDRULE_NORMAL); + queryWrapper.eq("company_id",companyId); + queryWrapper.eq("activity_id",actId); + ActivitySignAwardSet activitySignAwardSetNormal = activitySignAwardSetDao.selectOne(queryWrapper); + if(ObjectUtil.isNotEmpty(activitySignAwardSetNormal)) { + ActivitySignReceiveRecord activitySignReceiveRecord = new ActivitySignReceiveRecord(); + activitySignReceiveRecord.setUserId(userId); + activitySignReceiveRecord.setReceiveTime(date); + activitySignReceiveRecord.setAwardId(activitySignAwardSetNormal.getId()); + activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_DONE); + activitySignReceiveRecord.setActivityId(actId); + activitySignReceiveRecord.setCompanyId(companyId); + activitySignReceiveRecordDao.insert(activitySignReceiveRecord); + } + //自定义奖励 + QueryWrapper<ActivitySignAwardSet> queryWrapperCumulativeDay = new QueryWrapper<>(); + queryWrapperCumulativeDay.eq("award_rule",ActivitySignAwardSet.AWARDRULE_CUMULATIVEDAY); + queryWrapperCumulativeDay.eq("cumulative_day",activitySignRecordAdd.getCumulativeDay()); + queryWrapperCumulativeDay.eq("company_id",companyId); + queryWrapperCumulativeDay.eq("activity_id",actId); + ActivitySignAwardSet activitySignAwardSetCumulativeDay = activitySignAwardSetDao.selectOne(queryWrapperCumulativeDay); + if(ObjectUtil.isNotEmpty(activitySignAwardSetCumulativeDay)) { + //奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品) + if(ActivitySignAwardSet.AWARDTYPE_CUSTOMIZE == activitySignAwardSetCumulativeDay.getAwardType()) { + + } + //获取对应奖品的领取方式(兑奖方式(1:线下兑换2:物流配送3:客服兑换) +// if() { +// +// } + } + + + return AjaxResult.buildSuccessInstance("申请成功,等待审核"); + } } diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ClickSignDTO.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ClickSignDTO.java new file mode 100644 index 0000000..b8a7a6b --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ClickSignDTO.java @@ -0,0 +1,17 @@ +package com.matrix.system.shopXcx.api.dto; + +import javax.validation.constraints.NotBlank; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel(value = "ClickSignDTO", description = "点击签到接收参数类") +@Data +public class ClickSignDTO { + + @NotBlank(message = "签到活动ID不能为空") + @ApiModelProperty(value = "签到活动ID", example = "1") + private long actId; + +} diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ActivitySignAwardSetVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ActivitySignAwardSetVo.java new file mode 100644 index 0000000..32b87ab --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ActivitySignAwardSetVo.java @@ -0,0 +1,174 @@ +package com.matrix.system.shopXcx.api.vo; + +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ActivitySignAwardSetVo", description = "奖品明细") +public class ActivitySignAwardSetVo{ + + private Long id; + + /** + * 奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品) + */ + + @ApiModelProperty(value ="奖项类型(1:自定义产品2:积分3:优惠券4:店铺商品)") + private int awardType; + + /** + * 奖项规则(1:每日奖励(默认)2:累计签到天数) + */ + + + @ApiModelProperty(value ="奖项规则(1:每日奖励(默认)2:累计签到天数)") + private int awardRule; + + /** + * 签到累计天数 + */ + + @ApiModelProperty(value ="签到累计天数") + private int cumulativeDay; + + /** + * 奖项名称 + */ + + @ApiModelProperty(value ="奖项名称") + private String awardName; + + /** + * 图片介绍 + */ + + @ApiModelProperty(value ="图片介绍") + private String introduceImg; + + /** + * 文字介绍 + */ + + + @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; + + + + +} diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoJsonVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoJsonVo.java new file mode 100644 index 0000000..1ca4b36 --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoJsonVo.java @@ -0,0 +1,31 @@ +package com.matrix.system.shopXcx.api.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "SignBasicInfoJsonVo", description = "签到活动") +public class SignBasicInfoJsonVo { + + @ApiModelProperty(value ="标题图片") + private String imageUrlTitle; + @ApiModelProperty(value ="头部图片") + private String imageUrlHead; + @ApiModelProperty(value ="按钮图片") + private String imageUrlButton; + @ApiModelProperty(value ="状态图片") + private String imageUrlState; + + @ApiModelProperty(value ="规则内容") + private String ruleExplain; + @ApiModelProperty(value ="字体颜色") + private String typographyColor; + @ApiModelProperty(value ="背景颜色") + private String backgroundColor; + @ApiModelProperty(value ="字体大小") + private Integer typographyNum; + @ApiModelProperty(value ="字体透明度") + private Integer typographyLight; + +} diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoVo.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoVo.java new file mode 100644 index 0000000..bdc3db8 --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignBasicInfoVo.java @@ -0,0 +1,33 @@ +package com.matrix.system.shopXcx.api.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data + +@ApiModel(value = "SignBasicInfoVo", description = "签到活动") +public class SignBasicInfoVo { + + /** + * 主键 + */ + private Long id; + + @ApiModelProperty(value ="活动名称") + private String actName; + @ApiModelProperty(value ="活动编码") + private String actCode; + @ApiModelProperty(value ="活动开始时间") + private Date beginTime; + @ApiModelProperty(value ="活动结束时间") + private Date endTime; + @ApiModelProperty(value ="活动基本参数") + private SignBasicInfoJsonVo signBasicInfoJsonVo; + @ApiModelProperty(value ="奖品信息") + private List<ActivitySignAwardSetVo> activitySignAwardSetVos; + +} diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopActivitiesDao.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopActivitiesDao.java index a72463f..d4a419b 100644 --- a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopActivitiesDao.java +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopActivitiesDao.java @@ -56,4 +56,7 @@ public List<ShopActivities> selectSalonActivityByUser(@Param("record") SalonVO salonVO); public IPage<ActivitiesListVo> findActivitiesList(Page<ActivitiesListVo> page, @Param("record")ActivitiesListDto activitiesListDto); + + public ShopActivities selectOneByCompanyIdAndActTypeAndActStatus(@Param("companyId")Long companyId, @Param("activitiesTypeSign")int activitiesTypeSign, + @Param("actstatusStatusIng")int actstatusStatusIng); } \ No newline at end of file diff --git "a/zq-erp/src/main/resources/config/db/increment/\347\255\276\345\210\260\346\264\273\345\212\250.sql" "b/zq-erp/src/main/resources/config/db/increment/\347\255\276\345\210\260\346\264\273\345\212\250.sql" index 33e3533..747c41f 100644 --- "a/zq-erp/src/main/resources/config/db/increment/\347\255\276\345\210\260\346\264\273\345\212\250.sql" +++ "b/zq-erp/src/main/resources/config/db/increment/\347\255\276\345\210\260\346\264\273\345\212\250.sql" @@ -125,6 +125,14 @@ ALTER TABLE `activity_sign_award_set` ADD COLUMN `coupon_name` varchar(200) NULL COMMENT '优惠券名' AFTER `score_cnt`; +ALTER TABLE `activity_sign_record` + CHANGE COLUMN `open_id` `user_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'openID' AFTER `id`; + +ALTER TABLE `activity_sign_receive_record` + CHANGE COLUMN `open_id` `user_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'openID' AFTER `id`; + + + diff --git a/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignAwardSetDao.xml b/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignAwardSetDao.xml index 9f60550..886a2fe 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignAwardSetDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignAwardSetDao.xml @@ -3,61 +3,16 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.matrix.system.activity.dao.ActivitySignAwardSetDao"> - <!-- 定义ActivitySignAwardSet 的复杂关联map --> - <resultMap type="com.matrix.system.activity.entity.ActivitySignAwardSet" id="ActivitySignAwardSetMap"> - <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="awardType" column="award_type" /> - <result property="awardRule" column="award_rule" /> - <result property="cumulativeDay" column="cumulative_day" /> - <result property="awardName" column="award_name" /> - <result property="introduceImg" column="introduce_img" /> - <result property="introduceTip" column="introduce_tip" /> - <result property="awardInventoryCnt" column="award_inventory_cnt" /> - <result property="awardDistributeCnt" column="award_distribute_cnt" /> - <result property="awardWay" column="award_way" /> - <result property="operationTip" column="operation_tip" /> - <result property="prizeAddress" column="prize_address" /> - <result property="prizeStartTime" column="prize_start_time" /> - <result property="prizeEndTime" column="prize_end_time" /> - <result property="wechatImg" column="wechat_img" /> - <result property="scoreCnt" column="score_cnt" /> - <result property="couponId" column="coupon_id" /> - <result property="goodsId" column="goods_id" /> - <result property="activityId" column="activity_id" /> - <result property="companyId" column="company_id" /> - </resultMap> - - - <!-- 定义ActivitySignAwardSet 的简单map ,本map不添加其他的关联属性 --> - <resultMap type="com.matrix.system.activity.entity.ActivitySignAwardSet" id="ActivitySignAwardSetSimpleMap"> - <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="awardType" column="award_type" /> - <result property="awardRule" column="award_rule" /> - <result property="cumulativeDay" column="cumulative_day" /> - <result property="awardName" column="award_name" /> - <result property="introduceImg" column="introduce_img" /> - <result property="introduceTip" column="introduce_tip" /> - <result property="awardInventoryCnt" column="award_inventory_cnt" /> - <result property="awardDistributeCnt" column="award_distribute_cnt" /> - <result property="awardType" column="award_type" /> - <result property="operationTip" column="operation_tip" /> - <result property="prizeAddress" column="prize_address" /> - <result property="prizeStartTime" column="prize_start_time" /> - <result property="prizeEndTime" column="prize_end_time" /> - <result property="wechatImg" column="wechat_img" /> - <result property="scoreCnt" column="score_cnt" /> - <result property="couponId" column="coupon_id" /> - <result property="goodsId" column="goods_id" /> - <result property="activityId" column="activity_id" /> - <result property="companyId" column="company_id" /> - </resultMap> + + <select id="selectListByActIDAndCompanyId" resultType="com.matrix.system.shopXcx.api.vo.ActivitySignAwardSetVo"> + SELECT + * + FROM + activity_sign_award_set a + where + a.activity_id = #{actId} + and a.company_id = #{companyId} + and a.award_state = #{awardState} + </select> </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignRecordDao.xml b/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignRecordDao.xml index 4b5d11a..59fe364 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignRecordDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignRecordDao.xml @@ -3,6 +3,15 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.matrix.system.activity.dao.ActivitySignRecordDao"> - + <select id="selectOneByActIdAndUserIdLikesignTime" resultType="com.matrix.system.activity.entity.ActivitySignRecord"> + SELECT + * + FROM + activity_sign_record a + where + a.actId = #{actId} + and a.open_id = #{userId} + and a.sign_time like concat('%',#{format},'%') + </select> </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopActivitiesDao.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopActivitiesDao.xml index 4c51ce9..7bc1f4c 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopActivitiesDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopActivitiesDao.xml @@ -417,4 +417,15 @@ a.${record.sort} ${record.order} </if> </select> + + <select id="selectOneByCompanyIdAndActTypeAndActStatus" resultType="com.matrix.system.shopXcx.bean.ShopActivities"> + SELECT + * + FROM + shop_activities a + where + a.company_id=#{companyId} + and a.act_type=#{activitiesTypeSign} + and a.act_status=#{actstatusStatusIng} + </select> </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/score/score-setting.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/score/score-setting.html index 1df9d0b..da44764 100644 --- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/score/score-setting.html +++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/score/score-setting.html @@ -158,15 +158,30 @@ <el-col :span="3"> <el-input v-model="paramSettingShop.paramValue" oninput ="value=value.replace(/[^0-9.]/g,'')"></el-input> </el-col> - <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + <div v-show="paramSettingShop.paramName !== '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">积分/次</el-col> + </div> + <div v-show="paramSettingShop.paramName === '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + </div> <el-col :span="3"> <el-input v-model="paramSettingShop.paramValue1" oninput ="value=value.replace(/[^0-9.]/g,'')"></el-input> </el-col> - <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + <div v-show="paramSettingShop.paramName !== '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">积分/次</el-col> + </div> + <div v-show="paramSettingShop.paramName === '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + </div> <el-col :span="3"> <el-input v-model="paramSettingShop.paramValue2" oninput ="value=value.replace(/[^0-9.]/g,'')"></el-input> </el-col> - <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + <div v-show="paramSettingShop.paramName !== '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">积分/次</el-col> + </div> + <div v-show="paramSettingShop.paramName === '现金消费'"> + <el-col class="line" :span="4" style="margin-left: 10px">元/积分</el-col> + </div> </el-form-item> </template> </el-col> -- Gitblit v1.9.1