记得上下班打卡 | git大法好,push需谨慎

Commit fd4bd91e authored by jiangxiulong's avatar jiangxiulong

完善 减积分 增积分 type 发放

parent c3dfa3bf
...@@ -56,7 +56,7 @@ public class IntegralActivityDrawVo implements Serializable, Cloneable { ...@@ -56,7 +56,7 @@ public class IntegralActivityDrawVo implements Serializable, Cloneable {
@ApiModelProperty(value = "adam收货人完整地址 空格隔离省市区详细地址") @ApiModelProperty(value = "adam收货人完整地址 空格隔离省市区详细地址")
private String receivingAddress; private String receivingAddress;
@ApiModelProperty(value = "发放状态 1未发放 2已发放") @ApiModelProperty(value = "发放状态 1未发放 2已发放 3无需发放")
private Integer receivingStatus; private Integer receivingStatus;
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
......
...@@ -33,10 +33,11 @@ ...@@ -33,10 +33,11 @@
</li> </li>
<li> <li>
<label>发放状态:</label> <label>发放状态:</label>
<select name="receivingStatus"> <select name="receivingStatus"
th:with="type=${@dict.getType('zhengzai_sweet_draw_receiving_status')}">
<option value="">全部</option> <option value="">全部</option>
<option value="1">未发放</option> <option th:each="dict : ${type}" th:text="${dict.dictLabel}"
<option value="2">已发放</option> th:value="${dict.dictValue}"></option>
</select> </select>
</li> </li>
<li> <li>
...@@ -65,6 +66,8 @@ ...@@ -65,6 +66,8 @@
</div> </div>
<th:block th:include="include :: footer"/> <th:block th:include="include :: footer"/>
<script th:inline="javascript"> <script th:inline="javascript">
var receivingStatus = [[${@dict.getType('zhengzai_sweet_draw_receiving_status')}]];
var receivingStatusFlag = [[${@permission.hasPermi('sweet:IntegralActivityDraw:receivingStatus')}]]; var receivingStatusFlag = [[${@permission.hasPermi('sweet:IntegralActivityDraw:receivingStatus')}]];
var prefix = ctx + "sweet/IntegralActivityDraw"; var prefix = ctx + "sweet/IntegralActivityDraw";
...@@ -115,13 +118,7 @@ ...@@ -115,13 +118,7 @@
field: 'receivingStatus', field: 'receivingStatus',
title: '发放状态', title: '发放状态',
formatter: function (value, row) { formatter: function (value, row) {
var receivingStatus = row.receivingStatus; return $.table.selectDictLabel(receivingStatus, value);
if (row.receivingStatus == 1) {
receivingStatus = "未发放";
} else {
receivingStatus = "已发放";
}
return receivingStatus;
} }
}, },
{ {
...@@ -142,13 +139,14 @@ ...@@ -142,13 +139,14 @@
$.table.init(options); $.table.init(options);
}); });
function openModal(id) { function openModal(id) {
$.modal.confirm(`确定要发放吗?`, function() { $.modal.confirm(`确定要发放吗?`, function () {
$.ajax({ $.ajax({
type: 'put', type: 'put',
url: '/sweet/IntegralActivityDraw/receivingStatus', url: '/sweet/IntegralActivityDraw/receivingStatus',
data: {drawId: id}, data: {drawId: id},
success:function(e) { success: function (e) {
console.log(e) console.log(e)
if (e.code == 0) { if (e.code == 0) {
layer.msg('发放成功!') layer.msg('发放成功!')
......
...@@ -83,7 +83,7 @@ public class SweetActivityDrawListDao implements Serializable { ...@@ -83,7 +83,7 @@ public class SweetActivityDrawListDao implements Serializable {
private String receivingAddress; private String receivingAddress;
/** /**
* 发放状态 1未发放 2已发放 * 发放状态 1未发放 2已发放 3无需发放
*/ */
private Integer receivingStatus; private Integer receivingStatus;
......
...@@ -98,7 +98,7 @@ public class SweetIntegralActivityDraw implements Serializable, Cloneable { ...@@ -98,7 +98,7 @@ public class SweetIntegralActivityDraw implements Serializable, Cloneable {
private String receivingAddress; private String receivingAddress;
/** /**
* 发放状态 1未发放 2已发放 * 发放状态 1未发放 2已发放 3无需发放
*/ */
private Integer receivingStatus; private Integer receivingStatus;
......
...@@ -6,6 +6,8 @@ import feign.hystrix.FallbackFactory; ...@@ -6,6 +6,8 @@ import feign.hystrix.FallbackFactory;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
/** /**
* <p> * <p>
...@@ -25,7 +27,24 @@ import org.springframework.web.bind.annotation.GetMapping; ...@@ -25,7 +27,24 @@ import org.springframework.web.bind.annotation.GetMapping;
) )
public interface FeignStoneIntegralClient { public interface FeignStoneIntegralClient {
// 用户积分数据
@GetMapping("user/info") @GetMapping("user/info")
ResponseDto<StoneScoreListDto> stoneUserInfo(); ResponseDto<StoneScoreListDto> stoneUserInfo();
// 增加积分
@PostMapping("user/logs/in2111")
ResponseDto<StoneScoreListDto> in2111(
@RequestParam(value = "uid") String uid,
@RequestParam(value = "score") Integer score,
@RequestParam(value = "content") String content
);
// 减少积分
@PostMapping("user/logs/de2111")
ResponseDto<StoneScoreListDto> de2111(
@RequestParam(value = "uid") String uid,
@RequestParam(value = "score") Integer score,
@RequestParam(value = "content") String content
);
} }
...@@ -73,7 +73,7 @@ CREATE TABLE `sweet_integral_activity_draw` ...@@ -73,7 +73,7 @@ CREATE TABLE `sweet_integral_activity_draw`
`receiving_name` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人姓名', `receiving_name` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人姓名',
`receiving_phone` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人手机号', `receiving_phone` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人手机号',
`receiving_address` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人完整地址 空格隔离省市区详细地址', `receiving_address` varchar(255) NOT NULL DEFAULT '' COMMENT 'adam收货人完整地址 空格隔离省市区详细地址',
`receiving_status` smallint NOT NULL DEFAULT 1 COMMENT '发放状态 1未发放 2已发放', `receiving_status` smallint NOT NULL DEFAULT 1 COMMENT '发放状态 1未发放 2已发放 3无需发放',
`created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `created_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', `updated_at` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`mid`), PRIMARY KEY (`mid`),
......
...@@ -116,12 +116,15 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg ...@@ -116,12 +116,15 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
SweetIntegralActivityPrizeVo sweetIntegralActivityPrizeVo = SweetIntegralActivityPrizeVo.getNew().copy(sweetIntegralActivityPrize); SweetIntegralActivityPrizeVo sweetIntegralActivityPrizeVo = SweetIntegralActivityPrizeVo.getNew().copy(sweetIntegralActivityPrize);
// 记录 // 减库存 顺便判断库存是否够 todo 这块可能不能这么判断 后台增加库存的时候如果是-1会丢库存 实际-1这个并没有发出
long activityPrizeNum = redisDataUtils.setIntegralActivityPrizeNum(integralActivityId, sweetIntegralActivityPrizeVo.getPrizeId(), 1); long activityPrizeNum = redisDataUtils.setIntegralActivityPrizeNum(integralActivityId, sweetIntegralActivityPrizeVo.getPrizeId(), 1);
long activityPrizeWinnersNum = redisDataUtils.setIntegralActivityPrizeWinnersNum(integralActivityId, sweetIntegralActivityPrizeVo.getPrizeId(), 1); long activityPrizeWinnersNum = redisDataUtils.setIntegralActivityPrizeWinnersNum(integralActivityId, sweetIntegralActivityPrizeVo.getPrizeId(), 1);
if (activityPrizeNum < 0 || activityPrizeWinnersNum < 0) {// 库存不够了 if (activityPrizeNum < 0 || activityPrizeWinnersNum < 0) {// 库存不够了
return ResponseDto.failure("活动太火爆了,奖品已经没有库存啦!"); return ResponseDto.failure("活动太火爆了,奖品已经没有库存啦!");
} }
// 减积分
feignStoneIntegralClient.de2111(userId, integralActivity.getActivityNum(), integralActivity.getActivityTitle());
// 抽奖入库
String drawId = IDGenerator.nextSnowId(); String drawId = IDGenerator.nextSnowId();
IntegralActivityDrawVo integralActivityDrawVo = IntegralActivityDrawVo.getNew(); IntegralActivityDrawVo integralActivityDrawVo = IntegralActivityDrawVo.getNew();
integralActivityDrawVo.setDrawId(drawId); integralActivityDrawVo.setDrawId(drawId);
...@@ -136,6 +139,18 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg ...@@ -136,6 +139,18 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
integralActivityDrawVo.setNickname(nickname); integralActivityDrawVo.setNickname(nickname);
LocalDateTime nowTime = LocalDateTime.now(); LocalDateTime nowTime = LocalDateTime.now();
integralActivityDrawVo.setCreatedAt(nowTime); integralActivityDrawVo.setCreatedAt(nowTime);
Integer receivingStatus = 1;
Integer prizeType = sweetIntegralActivityPrize.getPrizeType();
if (prizeType == 2) {// 中奖积分
// 增加积分
feignStoneIntegralClient.in2111(userId, sweetIntegralActivityPrize.getPrizeTypeNum(), integralActivity.getActivityTitle());
// 发放状态
receivingStatus = 2;
}
if (prizeType == 1) { // 谢谢惠顾
receivingStatus = 3;
}
integralActivityDrawVo.setReceivingStatus(receivingStatus);
// redis // redis
redisDataUtils.setIntegralActivityDraw(integralActivityDrawVo); redisDataUtils.setIntegralActivityDraw(integralActivityDrawVo);
// mongo // mongo
...@@ -149,7 +164,8 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg ...@@ -149,7 +164,8 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
drawId, integralActivityId, integralActivity.getActivityNum(), drawId, integralActivityId, integralActivity.getActivityNum(),
sweetIntegralActivityPrize.getPrizeId(), sweetIntegralActivityPrize.getPrizeTitle(), sweetIntegralActivityPrize.getPrizeType(), sweetIntegralActivityPrize.getPrizeId(), sweetIntegralActivityPrize.getPrizeTitle(), sweetIntegralActivityPrize.getPrizeType(),
sweetIntegralActivityPrize.getPrizeTypeNum(), sweetIntegralActivityPrize.getRelationId(), sweetIntegralActivityPrize.getPrizeTypeNum(), sweetIntegralActivityPrize.getRelationId(),
userId, nickname userId, nickname,
receivingStatus
}); });
queueUtils.sendMsgByRedis(MQConst.SweetQueue.SWEET_INTEGRAL_ACTIVITY_DRAW.getKey(), queueUtils.sendMsgByRedis(MQConst.SweetQueue.SWEET_INTEGRAL_ACTIVITY_DRAW.getKey(),
SqlMapping.gets(sqls, sqlsDataA)); SqlMapping.gets(sqls, sqlsDataA));
......
...@@ -50,5 +50,5 @@ sweet_city_vote_stat.update=UPDATE sweet_city_vote_stat SET vote_num = IFNULL(vo ...@@ -50,5 +50,5 @@ sweet_city_vote_stat.update=UPDATE sweet_city_vote_stat SET vote_num = IFNULL(vo
# --------------------------防疫答题-------------------------- # --------------------------防疫答题--------------------------
sweet_antigenic_question.insert=INSERT INTO sweet_antigenic_question (question_id,type,openId,unionId,nickname,address,phone,urgent_phone,keyword1,keyword11,keyword2,keyword3,keyword4,keyword5,keyword6,keyword7) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) sweet_antigenic_question.insert=INSERT INTO sweet_antigenic_question (question_id,type,openId,unionId,nickname,address,phone,urgent_phone,keyword1,keyword11,keyword2,keyword3,keyword4,keyword5,keyword6,keyword7) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
# ------------------------积分抽奖---------------------------- # ------------------------积分抽奖----------------------------
integral_activity_draw.insert=INSERT INTO sweet_integral_activity_draw (draw_id,integral_activity_id,activity_num,prize_id,prize_title,prize_type,prize_type_num,relation_id,user_id,nickname) VALUES (?,?,?,?,?,?,?,?,?,?) integral_activity_draw.insert=INSERT INTO sweet_integral_activity_draw (draw_id,integral_activity_id,activity_num,prize_id,prize_title,prize_type,prize_type_num,relation_id,user_id,nickname,receiving_status) VALUES (?,?,?,?,?,?,?,?,?,?,?)
integral_activity_draw.update=UPDATE sweet_integral_activity_draw SET receiving_addresses_id = ?, receiving_name = ?, receiving_phone = ?, receiving_address = ?, updated_at = ? WHERE draw_id = ? integral_activity_draw.update=UPDATE sweet_integral_activity_draw SET receiving_addresses_id = ?, receiving_name = ?, receiving_phone = ?, receiving_address = ?, updated_at = ? WHERE draw_id = ?
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment