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

Commit 7b396a4f authored by GaoHu's avatar GaoHu

exit

parent 57a8b14a
...@@ -21,14 +21,6 @@ import java.util.List; ...@@ -21,14 +21,6 @@ import java.util.List;
@Data @Data
public class GoblinGoodsAnticipateAddParam { public class GoblinGoodsAnticipateAddParam {
/**
* 预约名称
*/
@ApiModelProperty(value = "预约名称")
@NotBlank(message = "预约名称")
private String name;
/** /**
* 预约规则 * 预约规则
*/ */
...@@ -36,24 +28,9 @@ public class GoblinGoodsAnticipateAddParam { ...@@ -36,24 +28,9 @@ public class GoblinGoodsAnticipateAddParam {
@NotBlank(message = "预约规则") @NotBlank(message = "预约规则")
private String rule; private String rule;
/**
* 预约人数
*/
@ApiModelProperty(value = "预约人数")
private Long aboutPeople;
/** @ApiModelProperty("sku信息")
* 预约开始时间 private List<GoblinGoodsAnticipateValueAddParam> list;
*/
@ApiModelProperty(value = "预约开始时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutStartDate;
/**
* 预约结束时间
*/
@ApiModelProperty(value = "预约结束时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutEndDate;
} }
package com.liquidnet.service.goblin.dto.manage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
/**
* <p>
* 预约表
* </p>
*
* @author liquidnet
* @since 2022-04-07
*/
@ApiModel(value = "GoblinGoodsAnticipateParam", description = "预约")
@Data
public class GoblinGoodsAnticipateParam{
@ApiModelProperty(position = 11, required = true, value = "当前记录起始索引", example = "1")
@Min(value = 1, message = "起始索引无效")
@NotNull(message = "起始索引无效")
private Integer pageNum;
@ApiModelProperty(position = 12, required = true, value = "每页显示记录数", example = "20")
@Max(value = 100, message = "显示记录数无效")
@NotNull(message = "显示记录数无效")
private Integer pageSize;
/**
* 预约名称
*/
@ApiModelProperty("预约名称")
private String name;
}
package com.liquidnet.service.goblin.dto.manage;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
/**
* <p>
* 预约关联sku和spu表
* </p>
*
* @author liquidnet
* @since 2022-04-08
*/
@Data
public class GoblinGoodsAnticipateValueAddParam {
private static final long serialVersionUID = 1L;
/**
* sku名称
*/
@ApiModelProperty(value = "sku名称")
@NotBlank(message = "skuName不能为空")
private String skuName;
/**
* sku_id 对应 goblin_goods_sku.sku_id
*/
@ApiModelProperty(value = "sku_id 对应 goblin_goods_sku.sku_id")
@NotBlank(message = "skuId不能为空")
private String skuId;
/**
* spu_id对应 goblin_goods_spu_id
*/
@ApiModelProperty(value = "spu_id对应 goblin_goods_spu_id")
@NotBlank(message = "spuId不能为空")
private String spuId;
/**
* 预约开始时间
*/
@ApiModelProperty(value = "预约开始时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@NotBlank(message = "预约开始时间不能为空")
private LocalDateTime aboutStartDate;
/**
* 预约结束时间
*/
@ApiModelProperty(value = "预约结束时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@NotBlank(message = "预约结束时间不能为空")
private LocalDateTime aboutEndDate;
/**
* 删除(0:未删除1:已删除)
*/
@ApiModelProperty(value = "修改传入参数 创建不传 删除(0:未删除1:已删除)")
private Integer delTag;
}
package com.liquidnet.service.goblin.dto.manage; package com.liquidnet.service.goblin.dto.manage;
import com.baomidou.mybatisplus.annotation.IdType; import io.swagger.annotations.ApiModel;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
/** /**
* <p> * <p>
* 预约关联sku和spu * 预约表
* </p> * </p>
* *
* @author liquidnet * @author liquidnet
* @since 2022-04-08 * @since 2022-04-07
*/ */
@ApiModel(value = "GoblinGoodsAnticipateValueParam", description = "预约")
@Data @Data
public class GoblinGoodsAnticipateValueParam { public class GoblinGoodsAnticipateValueParam{
private static final long serialVersionUID = 1L; @ApiModelProperty(position = 11, required = true, value = "当前记录起始索引", example = "1")
@Min(value = 1, message = "起始索引无效")
@NotNull(message = "起始索引无效")
private Integer pageNum;
@ApiModelProperty(position = 12, required = true, value = "每页显示记录数", example = "20")
@Max(value = 100, message = "显示记录数无效")
@NotNull(message = "显示记录数无效")
private Integer pageSize;
/** /**
* antId * 预约名称
*/ */
@ApiModelProperty(value = "antId") @ApiModelProperty("sku名称")
@NotBlank(message = "antId不能为空") private String name;
private String antId;
/** @ApiModelProperty(position = 18, required = false, value = "创建日期[yyyy-MM-dd]")
* sku名称 private String createdDate;
*/
@ApiModelProperty(value = "sku名称")
@NotBlank(message = "skuName不能为空")
private String skuName;
/**
* sku_id 对应 goblin_goods_sku.sku_id
*/
@ApiModelProperty(value = "sku_id 对应 goblin_goods_sku.sku_id")
@NotBlank(message = "skuId不能为空")
private String skuId;
/**
* spu_id对应 goblin_goods_spu_id
*/
@ApiModelProperty(value = "spu_id对应 goblin_goods_spu_id")
@NotBlank(message = "spuId不能为空")
private String spuId;
/**
* 预约开始时间
*/
@ApiModelProperty(value = "预约开始时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@NotBlank(message = "预约开始时间不能为空")
private LocalDateTime aboutStartDate;
/**
* 预约结束时间
*/
@ApiModelProperty(value = "预约结束时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
@NotBlank(message = "预约结束时间不能为空")
private LocalDateTime aboutEndDate;
/**
* 删除(0:未删除1:已删除)
*/
@ApiModelProperty(value = "修改传入参数 创建不传 删除(0:未删除1:已删除)")
private Integer delTag;
} }
...@@ -5,6 +5,7 @@ import com.liquidnet.commons.lang.util.DateUtil; ...@@ -5,6 +5,7 @@ import com.liquidnet.commons.lang.util.DateUtil;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigInteger;
import java.time.LocalDateTime; import java.time.LocalDateTime;
/** /**
...@@ -45,6 +46,15 @@ public class GoblinGoodsAnticipateValueVo { ...@@ -45,6 +46,15 @@ public class GoblinGoodsAnticipateValueVo {
@ApiModelProperty(value = "spu_id对应 goblin_goods_spu_id") @ApiModelProperty(value = "spu_id对应 goblin_goods_spu_id")
private String spuId; private String spuId;
@ApiModelProperty("预约人数")
private BigInteger aboutPeople;
@ApiModelProperty("实际预约人数")
private BigInteger actualPeople;
@ApiModelProperty("预约规则")
private String rule;
/** /**
* 预约开始时间 * 预约开始时间
*/ */
...@@ -59,6 +69,9 @@ public class GoblinGoodsAnticipateValueVo { ...@@ -59,6 +69,9 @@ public class GoblinGoodsAnticipateValueVo {
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR) @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutEndDate; private LocalDateTime aboutEndDate;
@ApiModelProperty("预约状态")
private Integer state;
/** /**
* 创建时间 * 创建时间
*/ */
......
...@@ -14,11 +14,12 @@ import java.io.Serializable; ...@@ -14,11 +14,12 @@ import java.io.Serializable;
*/ */
@Data @Data
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor
public class GoblinGoodAnticipateUserVo implements Serializable { public class GoblinGoodAnticipateUserVo implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public static final Integer STATE_VALID = 1; public static final Integer STATE_VALID = 0;
public static final Integer STATE_INVALID = 1; public static final Integer STATE_INVALID = 1;
...@@ -33,11 +34,4 @@ public class GoblinGoodAnticipateUserVo implements Serializable { ...@@ -33,11 +34,4 @@ public class GoblinGoodAnticipateUserVo implements Serializable {
@ApiModelProperty(value = "用户状态") @ApiModelProperty(value = "用户状态")
private Integer state; private Integer state;
public GoblinGoodAnticipateUserVo(String uid, String phone, String skuId, Integer state) {
this.uid = uid;
this.phone = phone;
this.skuId = skuId;
this.state = state;
}
} }
...@@ -37,58 +37,18 @@ public class GoblinGoodsAnticipateVo implements Serializable { ...@@ -37,58 +37,18 @@ public class GoblinGoodsAnticipateVo implements Serializable {
*/ */
private String antId; private String antId;
/**
* 预约名称
*/
@ApiModelProperty(value = "预约名称")
private String name;
/** /**
* 预约规则 * 预约规则
*/ */
@ApiModelProperty(value = "预约规则") @ApiModelProperty(value = "预约规则")
private String rule; private String rule;
/**
* 预约人数
*/
@ApiModelProperty(value = "预约人数")
private Integer aboutPeople;
/**
* 预约人数
*/
@ApiModelProperty(value = "实际预约人数")
private Integer actualPeople;
/**
* 预约开始时间
*/
@ApiModelProperty(value = "预约开始时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutStartDate;
/**
* 预约结束时间
*/
@ApiModelProperty(value = "预约结束时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime aboutEndDate;
/** /**
* 创建时间 * 创建时间
*/ */
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR) @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime createdDate; private LocalDateTime createdDate;
/**
* 修改时间
*/
@ApiModelProperty(value = "修改时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime updateDate;
/** /**
* 删除(0:未删除1:已删除) * 删除(0:未删除1:已删除)
*/ */
......
...@@ -3,11 +3,13 @@ package com.liquidnet.service.goblin.service; ...@@ -3,11 +3,13 @@ package com.liquidnet.service.goblin.service;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsAnticipateVo; import com.liquidnet.service.goblin.dto.vo.GoblinGoodsAnticipateVo;
import java.math.BigInteger;
import java.util.List; import java.util.List;
/** /**
...@@ -18,28 +20,31 @@ import java.util.List; ...@@ -18,28 +20,31 @@ import java.util.List;
* @author liquidnet * @author liquidnet
* @since 2022-04-07 * @since 2022-04-07
*/ */
public interface IGoblinGoodsAnticipateService{ public interface IGoblinGoodsAnticipateService {
/** /**
* 分页获取预约商品列表 * 查询预约
* @param goodsAnticipateParam :
* @return :List<GoblinGoodsAnticipateVo>
*/ */
ResponseDto<PageInfo<GoblinGoodsAnticipateVo>> list(GoblinGoodsAnticipateParam goodsAnticipateParam); ResponseDto<PageInfo<GoblinGoodsAnticipateValueVo>> list(GoblinGoodsAnticipateValueParam goodsAnticipateValueParam);
/**
* 新增预约
*/
ResponseDto<Object> add(GoblinGoodsAnticipateAddParam goodsAnticipateAddParam); ResponseDto<Object> add(GoblinGoodsAnticipateAddParam goodsAnticipateAddParam);
ResponseDto<Object> update(GoblinGoodsAnticipateUpdateParam goodsAnticipateUpdateParam); /**
* 修改预约人数
ResponseDto<Object> updatePeople(String antId,Long people); */
ResponseDto<Object> updatePeople(String antId, BigInteger people);
ResponseDto<Object> delete(String antId);
ResponseDto<Object> userAbout(String antId, String skuId,String uid, String phone,Integer state);
ResponseDto<Object> addAnticipateValues(List<GoblinGoodsAnticipateValueParam> list); /**
* 删除预约
*/
ResponseDto<Object> delete(String skuId);
ResponseDto<Object> updateAnticipateValues(List<GoblinGoodsAnticipateValueParam> list); /**
* 用户预约
*/
ResponseDto<Object> userAbout(String skuId, String uid, String phone, Integer state);
ResponseDto<Object> getAnticipateValues(String antId);
} }
...@@ -4,10 +4,10 @@ package com.liquidnet.service.goblin.controller.manage; ...@@ -4,10 +4,10 @@ package com.liquidnet.service.goblin.controller.manage;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodsAnticipateVo; import com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo;
import com.liquidnet.service.goblin.service.IGoblinGoodsAnticipateService; import com.liquidnet.service.goblin.service.IGoblinGoodsAnticipateService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.math.BigInteger;
import java.util.List; import java.util.List;
/** /**
...@@ -41,57 +42,30 @@ public class GoblinGoodsAnticipateController { ...@@ -41,57 +42,30 @@ public class GoblinGoodsAnticipateController {
} }
@PostMapping("/list") @PostMapping("/list")
@ApiOperation("获取预约列表") @ApiOperation("获取全部开启预约的sku")
public ResponseDto<PageInfo<GoblinGoodsAnticipateVo>> list(GoblinGoodsAnticipateParam goodsAnticipateParam) { public ResponseDto<PageInfo<GoblinGoodsAnticipateValueVo>> list(GoblinGoodsAnticipateValueParam goodsAnticipateValueParam) {
return goblinGoodsAnticipateService.list(goodsAnticipateParam); return goblinGoodsAnticipateService.list(goodsAnticipateValueParam);
} }
@ApiOperation("修改预约人数") @ApiOperation("修改预约人数")
@PostMapping("/updatePeople") @PostMapping("/updatePeople")
public ResponseDto<Object> updatePeople(@RequestParam(name = "antId", required = true) String antId, @RequestParam(name = "people", required = true) Long people) { public ResponseDto<Object> updatePeople(@RequestParam(name = "skuId", required = true) String skuId, @RequestParam(name = "people", required = true) BigInteger people) {
return goblinGoodsAnticipateService.updatePeople(antId, people); return goblinGoodsAnticipateService.updatePeople(skuId, people);
}
@ApiOperation("修改预约")
@PostMapping("/update")
public ResponseDto<Object> update(GoblinGoodsAnticipateUpdateParam goodsAnticipateUpdateParam) {
return goblinGoodsAnticipateService.update(goodsAnticipateUpdateParam);
} }
@ApiOperation("删除预约") @ApiOperation("删除预约")
@DeleteMapping("/delete") @DeleteMapping("/delete")
public ResponseDto<Object> delete(@RequestParam(name = "antId") String antId) { public ResponseDto<Object> delete(@RequestParam(name = "skuId") String skuId) {
return goblinGoodsAnticipateService.delete(antId); return goblinGoodsAnticipateService.delete(skuId);
}
@ApiOperation("创建预约关联sku")
@PostMapping("/addAnticipateValues")
public ResponseDto<Object> addAnticipateValues(@RequestBody List<GoblinGoodsAnticipateValueParam> list) {
return goblinGoodsAnticipateService.addAnticipateValues(list);
} }
@ApiOperation("修改预约关联")
@PostMapping("/updateAnticipateValues")
public ResponseDto<Object> updateAnticipateValues(@RequestBody List<GoblinGoodsAnticipateValueParam> list) {
return goblinGoodsAnticipateService.updateAnticipateValues(list);
}
@ApiOperation("用户预约(state预约标识:0为预约,1为取消预约)") @ApiOperation("用户预约(state预约标识:0为预约,1为取消预约)")
@PostMapping("/userAbout") @PostMapping("/userAbout")
public ResponseDto<Object> userAbout(@RequestParam(name = "antId", required = true) String antId, public ResponseDto<Object> userAbout(@RequestParam(name = "skuId", required = true) String skuId,
@RequestParam(name = "skuId", required = true) String skuId,
@RequestParam(name = "uid", required = true) String uid, @RequestParam(name = "uid", required = true) String uid,
@RequestParam(name = "phone", required = true) String phone, @RequestParam(name = "phone", required = true) String phone,
@RequestParam(name = "state", required = true) Integer state) { @RequestParam(name = "state", required = true) Integer state) {
return goblinGoodsAnticipateService.userAbout(antId, skuId, uid, phone, state); return goblinGoodsAnticipateService.userAbout(skuId, uid, phone, state);
}
@ApiOperation("根据预约id查询sku关联")
@PostMapping("getAnticipateValues")
public ResponseDto<Object> getAnticipateValues(@RequestParam(name = "antId", required = true) String antId){
return goblinGoodsAnticipateService.getAnticipateValues(antId);
} }
} }
...@@ -7,8 +7,8 @@ import com.liquidnet.service.base.ResponseDto; ...@@ -7,8 +7,8 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping; import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst; import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateUpdateParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueAddParam;
import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam; import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo; import com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo;
import com.liquidnet.service.goblin.dto.vo.GoblinGoodAnticipateUserVo; import com.liquidnet.service.goblin.dto.vo.GoblinGoodAnticipateUserVo;
...@@ -23,6 +23,7 @@ import org.springframework.beans.BeanUtils; ...@@ -23,6 +23,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigInteger;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.HashMap; import java.util.HashMap;
import java.util.LinkedList; import java.util.LinkedList;
...@@ -50,44 +51,13 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -50,44 +51,13 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
QueueUtils queueUtils; QueueUtils queueUtils;
@Override @Override
public ResponseDto<PageInfo<GoblinGoodsAnticipateVo>> list(GoblinGoodsAnticipateParam goodsAnticipateParam) { public ResponseDto<Object> add(GoblinGoodsAnticipateAddParam goodsAnticipateAddParam) {
PageInfo<GoblinGoodsAnticipateVo> pageInfo = new PageInfo<>(); if (StringUtils.isNotBlank(goodsAnticipateAddParam.getRule())&&goodsAnticipateAddParam.getList()!=null&&goodsAnticipateAddParam.getList().size()>0) {
HashMap<String, Object> map = goblinMongoUtils.getGoblinGoodsAnticipateVos(goodsAnticipateParam); for (GoblinGoodsAnticipateValueAddParam vo : goodsAnticipateAddParam.getList()) {
List<GoblinGoodsAnticipateVo> data = (List<GoblinGoodsAnticipateVo>) map.get("data"); if (goblinRedisUtils.getSkuId(vo.getSkuId())) {
for (GoblinGoodsAnticipateVo goblinGoodsAnticipateVo : data) { return ResponseDto.failure(vo.getSkuName().concat("该sku已存在预约"));
//预约开始时间
LocalDateTime aboutStartDate = goblinGoodsAnticipateVo.getAboutStartDate();
LocalDateTime aboutEndDate = goblinGoodsAnticipateVo.getAboutEndDate();
LocalDateTime now = LocalDateTime.now();
if (aboutStartDate.isBefore(now)) {
//未开始 0
goblinGoodsAnticipateVo.setState(0);
}
if (!aboutStartDate.isBefore(now) && aboutEndDate.isAfter(now)) {
//预约中
goblinGoodsAnticipateVo.setState(1);
}
if (aboutEndDate.isBefore(now)) {
//已结束
goblinGoodsAnticipateVo.setState(2);
}
Integer autIdPeople = goblinRedisUtils.getAutIdPeople(goblinGoodsAnticipateVo.getAntId());
//预约人数
goblinGoodsAnticipateVo.setAboutPeople(goblinGoodsAnticipateVo.getAboutPeople() + (autIdPeople != null ? autIdPeople : 0));
//获取真实预约人数
goblinGoodsAnticipateVo.setActualPeople(autIdPeople);
} }
pageInfo.setList(data);
pageInfo.setTotal((Long) map.get("total"));
return ResponseDto.success(pageInfo);
} }
@Override
public ResponseDto<Object> add(GoblinGoodsAnticipateAddParam goodsAnticipateAddParam) {
if (StringUtils.isNotBlank(goodsAnticipateAddParam.getName())
&& StringUtils.isNotBlank(goodsAnticipateAddParam.getRule())
&& StringUtils.isNotBlank(goodsAnticipateAddParam.getAboutStartDate().toString())
&& StringUtils.isNotBlank(goodsAnticipateAddParam.getAboutEndDate().toString())) {
//生成的antId //生成的antId
String antId = IDGenerator.nextTimeId2(); String antId = IDGenerator.nextTimeId2();
GoblinGoodsAnticipateVo goodsAnticipateVo = new GoblinGoodsAnticipateVo(); GoblinGoodsAnticipateVo goodsAnticipateVo = new GoblinGoodsAnticipateVo();
...@@ -96,16 +66,11 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -96,16 +66,11 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
goodsAnticipateVo.setCreatedDate(LocalDateTime.now()); goodsAnticipateVo.setCreatedDate(LocalDateTime.now());
goodsAnticipateVo.setDelTag(0); goodsAnticipateVo.setDelTag(0);
//redis消息预约消息表 //redis消息预约消息表
LinkedList<Object[]> sqlAnt = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlAnt = CollectionUtil.linkedListObjectArr();
sqlAnt.add(new Object[]{ sqlAnt.add(new Object[]{
antId, antId,
goodsAnticipateVo.getName(),
goodsAnticipateVo.getRule(), goodsAnticipateVo.getRule(),
goodsAnticipateVo.getAboutPeople(),
goodsAnticipateVo.getAboutStartDate(),
goodsAnticipateVo.getAboutEndDate(),
goodsAnticipateVo.getCreatedDate(), goodsAnticipateVo.getCreatedDate(),
goodsAnticipateVo.getDelTag() goodsAnticipateVo.getDelTag()
}); });
...@@ -113,70 +78,128 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -113,70 +78,128 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
//mongodb新增 //mongodb新增
goblinMongoUtils.setGoblinGoodsAnticipateVo(goodsAnticipateVo); goblinMongoUtils.setGoblinGoodsAnticipateVo(goodsAnticipateVo);
addAnticipateValues(antId,goodsAnticipateAddParam.getRule(),goodsAnticipateAddParam.getList());
//返回预约id //返回预约id
return ResponseDto.success(antId); return ResponseDto.success(antId);
} }
return ResponseDto.failure("参数有误"); return ResponseDto.failure("参数有误");
} }
@Override public void addAnticipateValues(String antId,String rule,List<GoblinGoodsAnticipateValueAddParam> list) {
public ResponseDto<Object> updatePeople(String antId, Long people) { if (list != null && list.size() > 0) {
//修改Mongodb list.forEach(item -> {
goblinMongoUtils.updateGoblinGoodsAnticipateVoPeople(antId, people); GoblinGoodsAnticipateValueVo goodsAnticipateValueVo = new GoblinGoodsAnticipateValueVo();
//修改mysql BeanUtils.copyProperties(item, goodsAnticipateValueVo);
goodsAnticipateValueVo.setAntId(antId);
goodsAnticipateValueVo.setRule(rule);
goodsAnticipateValueVo.setCreatedDate(LocalDateTime.now());
goodsAnticipateValueVo.setDelTag(0);
goodsAnticipateValueVo.setAboutPeople(BigInteger.valueOf(0));
goodsAnticipateValueVo.setActualPeople(BigInteger.valueOf(0));
//redis消息
//redis标识存入该sku处于预约列表
goblinRedisUtils.setSkuId(goodsAnticipateValueVo.getSkuId());
//保存mysql中间表
LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr();
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
people, goodsAnticipateValueVo.getAntId(),
antId goodsAnticipateValueVo.getSkuName(),
goodsAnticipateValueVo.getSkuId(),
goodsAnticipateValueVo.getSpuId(),
goodsAnticipateValueVo.getAboutPeople(),
goodsAnticipateValueVo.getActualPeople(),
goodsAnticipateValueVo.getRule(),
goodsAnticipateValueVo.getAboutStartDate(),
goodsAnticipateValueVo.getAboutEndDate(),
goodsAnticipateValueVo.getCreatedDate(),
goodsAnticipateValueVo.getDelTag()
}); });
sendRedis("goblin_goods_anticipate_update_proper", sqlValue); sendRedis("goblin_goods_anticipate_value", sqlValue);
return ResponseDto.success(); //存入mongodb中
goblinMongoUtils.addAnticipateValues(goodsAnticipateValueVo);
});
}
} }
@Override @Override
public ResponseDto<Object> update(GoblinGoodsAnticipateUpdateParam goodsAnticipateUpdateParam) { public ResponseDto<PageInfo<GoblinGoodsAnticipateValueVo>> list(GoblinGoodsAnticipateValueParam goodsAnticipateValueParam) {
//跟新mongodb PageInfo<GoblinGoodsAnticipateValueVo> pageInfo = new PageInfo<>();
goblinMongoUtils.updateGoblinGoodsAnticipateVo(goodsAnticipateUpdateParam);
HashMap<String, Object> map = goblinMongoUtils.getGoblinGoodsAnticipateValueVos(goodsAnticipateValueParam);
List<GoblinGoodsAnticipateValueVo> data = (List<GoblinGoodsAnticipateValueVo>) map.get("data");
for (GoblinGoodsAnticipateValueVo anticipateValueVo : data) {
//查询真实预约人数
BigInteger autIdPeople = goblinRedisUtils.getSkuIdPeople(anticipateValueVo.getSkuId());
//预约人数 设置预约数+实际预约数
anticipateValueVo.setAboutPeople(anticipateValueVo.getAboutPeople().add(autIdPeople));
//实际预约人数
anticipateValueVo.setActualPeople(autIdPeople);
//设置预约状态
//预约开始时间
LocalDateTime aboutStartDate = anticipateValueVo.getAboutStartDate();
//预约结束时间
LocalDateTime aboutEndDate = anticipateValueVo.getAboutEndDate();
LocalDateTime now = LocalDateTime.now();
if (aboutStartDate.isBefore(now)) {
//未开始 0
anticipateValueVo.setState(0);
}
if (!aboutStartDate.isBefore(now) && aboutEndDate.isAfter(now)) {
//预约中
anticipateValueVo.setState(1);
}
if (aboutEndDate.isBefore(now)) {
//已结束
anticipateValueVo.setState(2);
}
}
pageInfo.setList(data);
pageInfo.setTotal((Long) map.get("total"));
return ResponseDto.success(pageInfo);
}
@Override
public ResponseDto<Object> updatePeople(String skuId, BigInteger people) {
//修改Mongodb
goblinMongoUtils.updateGoblinGoodsAnticipateValueVoPeople(skuId, people);
//修改mysql //修改mysql
LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr();
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
goodsAnticipateUpdateParam.getName(), people,
goodsAnticipateUpdateParam.getRule(), skuId
goodsAnticipateUpdateParam.getAntId()
}); });
sendRedis("goblin_goods_anticipate_update", sqlValue); sendRedis("goblin_goods_anticipate_value_update_proper", sqlValue);
return ResponseDto.success(); return ResponseDto.success();
} }
@Override @Override
public ResponseDto<Object> delete(String antId) { public ResponseDto<Object> delete(String skuId) {
//mysql删除 //mysql删除
LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr();
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
antId skuId
}); });
//预约库删除 //预约库删除
sendRedis("goblin_goods_anticipate_delete", sqlValue); sendRedis("goblin_goods_anticipate_value_delete", sqlValue);
//预约关联库删除
sendRedis("goblin_goods_anticipate_value_delete_by_antId", sqlValue);
//删除mongodb //删除mongodb
if (goblinMongoUtils.delGoodsAnticipateVo(antId)) { goblinMongoUtils.delGoodsAnticipateValueVo(skuId);
return ResponseDto.success();
}
return ResponseDto.success(); return ResponseDto.success();
} }
@Override @Override
public ResponseDto<Object> userAbout(String antId, String skuId, String uid, String phone, Integer state) { public ResponseDto<Object> userAbout(String skuId, String uid, String phone, Integer state) {
//查询该用户是否预 //查询该用户是否预
GoblinGoodAnticipateUserVo userVo = goblinRedisUtils.getUserAboutAut(skuId, uid); GoblinGoodAnticipateUserVo userVo = goblinRedisUtils.getUserAboutAut(skuId, uid);
LinkedList<Object[]> antIdValue = CollectionUtil.linkedListObjectArr();
antIdValue.add(new Object[]{
antId
});
LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr();
if (state.equals(GoblinGoodAnticipateUserVo.STATE_VALID) && userVo == null) { if (state.equals(GoblinGoodAnticipateUserVo.STATE_VALID) && userVo == null) {
GoblinGoodAnticipateUserVo user = new GoblinGoodAnticipateUserVo(uid, skuId, phone, state);
//mongodb记录
goblinRedisUtils.setUserAboutSku(user);
//用户没有预约过 //用户没有预约过
//发送redis消息修改mysql记录用户预约 //发送redis消息修改mysql记录用户预约
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
...@@ -186,11 +209,6 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -186,11 +209,6 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
state state
}); });
sendRedis("goblin_goods_anticipate_user", sqlValue); sendRedis("goblin_goods_anticipate_user", sqlValue);
GoblinGoodAnticipateUserVo user = new GoblinGoodAnticipateUserVo(uid, skuId, phone, state);
//mongodb记录
goblinRedisUtils.setUserAboutSku(user);
//新增
sendRedis("goblin_goods_anticipate_update_actual_add_people", antIdValue);
} else { } else {
//mysql删除用户记录 //mysql删除用户记录
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
...@@ -200,49 +218,25 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -200,49 +218,25 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
sendRedis("goblin_goods_anticipate_user_update", sqlValue); sendRedis("goblin_goods_anticipate_user_update", sqlValue);
//删除缓存 redis和mongodb //删除缓存 redis和mongodb
goblinRedisUtils.delUserAboutSku(skuId, uid); goblinRedisUtils.delUserAboutSku(skuId, uid);
sendRedis("goblin_goods_anticipate_update_actual_reduce_people", antIdValue);
} }
goblinRedisUtils.setAutIdPeople(antId, state); goblinRedisUtils.setSkuIdPeople(skuId, state);
return ResponseDto.success(); return ResponseDto.success();
} }
@Override
public ResponseDto<Object> addAnticipateValues(List<GoblinGoodsAnticipateValueParam> list) {
if (list != null && list.size() > 0) {
for (GoblinGoodsAnticipateValueParam vo : list) {
if (goblinRedisUtils.getAnticipate(vo.getSkuId()))
return ResponseDto.failure("该预约已选择该sku");
}
list.forEach(item -> {
GoblinGoodsAnticipateValueVo goodsAnticipateValueVo = new GoblinGoodsAnticipateValueVo();
BeanUtils.copyProperties(item, goodsAnticipateValueVo);
goodsAnticipateValueVo.setCreatedDate(LocalDateTime.now());
goodsAnticipateValueVo.setCreatedDate(LocalDateTime.now());
goodsAnticipateValueVo.setDelTag(0);
//redis消息
//redis标识存入该sku处于预约列表
goblinRedisUtils.setAnticipateValue(goodsAnticipateValueVo.getSkuId());
//保存mysql中间表 /* @Override
public ResponseDto<Object> update(GoblinGoodsAnticipateUpdateParam goodsAnticipateUpdateParam) {
//跟新mongodb
goblinMongoUtils.updateGoblinGoodsAnticipateVo(goodsAnticipateUpdateParam);
//修改mysql
LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sqlValue = CollectionUtil.linkedListObjectArr();
sqlValue.add(new Object[]{ sqlValue.add(new Object[]{
goodsAnticipateValueVo.getAntId(), goodsAnticipateUpdateParam.getName(),
goodsAnticipateValueVo.getSkuName(), goodsAnticipateUpdateParam.getRule(),
goodsAnticipateValueVo.getSkuId(), goodsAnticipateUpdateParam.getAntId()
goodsAnticipateValueVo.getSpuId(),
goodsAnticipateValueVo.getAboutStartDate(),
goodsAnticipateValueVo.getAboutEndDate(),
goodsAnticipateValueVo.getCreatedDate(),
goodsAnticipateValueVo.getDelTag()
});
sendRedis("goblin_goods_anticipate_value", sqlValue);
//存入mongodb中
goblinMongoUtils.addAnticipateValues(goodsAnticipateValueVo);
}); });
} sendRedis("goblin_goods_anticipate_update", sqlValue);
return ResponseDto.success(); return ResponseDto.success();
} }
...@@ -287,7 +281,7 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS ...@@ -287,7 +281,7 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
@Override @Override
public ResponseDto<Object> getAnticipateValues(String antId) { public ResponseDto<Object> getAnticipateValues(String antId) {
return ResponseDto.success(goblinMongoUtils.getGoodsAnticipateValues(antId)); return ResponseDto.success(goblinMongoUtils.getGoodsAnticipateValues(antId));
} }*/
public void sendRedis(String sqlKey, LinkedList<Object[]> sqlData) { public void sendRedis(String sqlKey, LinkedList<Object[]> sqlData) {
......
...@@ -35,8 +35,8 @@ import org.springframework.stereotype.Component; ...@@ -35,8 +35,8 @@ import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.BigInteger;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -59,23 +59,40 @@ public class GoblinMongoUtils { ...@@ -59,23 +59,40 @@ public class GoblinMongoUtils {
/** /**
* 分页查询 * 分页查询
*/ */
public HashMap<String,Object> getGoblinGoodsAnticipateVos(GoblinGoodsAnticipateParam goodsAnticipateParam) { public HashMap<String,Object> getGoblinGoodsAnticipateValueVos(GoblinGoodsAnticipateValueParam goblinGoodsAnticipateValueParam) {
HashMap<String,Object> info = CollectionUtil.mapStringObject(); HashMap<String,Object> info = CollectionUtil.mapStringObject();
Pageable pageable = PageRequest.of(goodsAnticipateParam.getPageNum() - 1, goodsAnticipateParam.getPageSize(), Sort.by(Sort.Direction.DESC,"createdDate")); Pageable pageable = PageRequest.of(goblinGoodsAnticipateValueParam.getPageNum() - 1, goblinGoodsAnticipateValueParam.getPageSize(), Sort.by(Sort.Direction.DESC,"createdDate"));
Criteria criteria = Criteria.where("delTag").is(0); Criteria criteria = Criteria.where("delTag").is(0);
if (StringUtils.isNotBlank(goodsAnticipateParam.getName())) { if (StringUtils.isNotBlank(goblinGoodsAnticipateValueParam.getName())) {
criteria = criteria.and("name").is(goodsAnticipateParam.getName()); criteria = criteria.and("name").is(goblinGoodsAnticipateValueParam.getName());
}
if (StringUtils.isNotBlank(goblinGoodsAnticipateValueParam.getCreatedDate())) {
LocalDateTime createDt = DateUtil.Formatter.yyyy_MM_dd.parse(goblinGoodsAnticipateValueParam.getCreatedDate());
LocalDateTime createdAtBegin = createDt.withHour(0).withMinute(0).withSecond(0).withNano(0);
LocalDateTime createdAtEnd = createDt.withHour(23).withMinute(59).withSecond(59).withNano(999);
criteria.and("createdDate").gte(createdAtBegin).lte(createdAtEnd);
} }
Query query = Query.query(criteria); Query query = Query.query(criteria);
//查询总数 //查询总数
long count = mongoTemplate.count(query, GoblinGoodsAnticipateVo.class, GoblinGoodsAnticipateVo.class.getSimpleName()); long count = mongoTemplate.count(query, GoblinGoodsAnticipateValueVo.class, GoblinGoodsAnticipateValueVo.class.getSimpleName());
query.with(pageable); query.with(pageable);
List<GoblinGoodsAnticipateVo> voList = mongoTemplate.find(query, GoblinGoodsAnticipateVo.class, GoblinGoodsAnticipateVo.class.getSimpleName()); List<GoblinGoodsAnticipateValueVo> voList = mongoTemplate.find(query, GoblinGoodsAnticipateValueVo.class, GoblinGoodsAnticipateValueVo.class.getSimpleName());
info.put("total",count); info.put("total",count);
info.put("data",voList); info.put("data",voList);
return info; return info;
} }
/**
* 根据名称查询预约
*/
public boolean getAnticipateVoByName(String name) {
return mongoTemplate.findOne(Query.query(Criteria.where("name").is(name)),
GoblinGoodsAnticipateVo.class, GoblinGoodsAnticipateVo.class.getSimpleName()) != null;
}
/** /**
* 新增预约 * 新增预约
*/ */
...@@ -91,14 +108,25 @@ public class GoblinMongoUtils { ...@@ -91,14 +108,25 @@ public class GoblinMongoUtils {
} }
/** /**
* 根据antId修改 预约人数 * 根据skuId修改 预约人数
*/ */
public void updateGoblinGoodsAnticipateVoPeople(String antId, Long people) { public void updateGoblinGoodsAnticipateValueVoPeople(String skuId, BigInteger people) {
Query query = Query.query(Criteria.where("antId").is(antId)); Query query = Query.query(Criteria.where("skuId").is(skuId));
Update update = new Update().set("aboutPeople", people).set("updateDate", LocalDateTime.now()); Update update = new Update().set("aboutPeople", people).set("updateDate", LocalDateTime.now());
mongoTemplate.updateFirst(query, update, GoblinGoodsAnticipateVo.class.getSimpleName()); mongoTemplate.updateFirst(query, update, GoblinGoodsAnticipateValueVo.class.getSimpleName());
} }
/**
* 根据amtId删除VO
*/
public void delGoodsAnticipateValueVo(String skuId) {
redisUtils.delGoodsSkuId(skuId);
Query query = Query.query(Criteria.where("skuId").is(skuId));
mongoTemplate.remove(query, GoblinGoodsAnticipateValueVo.class.getSimpleName()).getDeletedCount();
}
/** /**
* 根据antId修改 预约人数 * 根据antId修改 预约人数
*/ */
...@@ -108,16 +136,7 @@ public class GoblinMongoUtils { ...@@ -108,16 +136,7 @@ public class GoblinMongoUtils {
mongoTemplate.updateFirst(query, update, GoblinGoodsAnticipateVo.class.getSimpleName()); mongoTemplate.updateFirst(query, update, GoblinGoodsAnticipateVo.class.getSimpleName());
} }
/**
* 根据amtId删除VO
*/
public boolean delGoodsAnticipateVo(String antId) {
//查询该预约下有多少个开启预约的skuId
delAnticipateValues(antId);
redisUtils.delGoodsAnticipateVo(antId);
Query query = Query.query(Criteria.where("antId").is(antId));
return mongoTemplate.remove(query, GoblinGoodsAnticipateVo.class.getSimpleName()).getDeletedCount() > 0;
}
/** /**
* 根据活动id查询关联 * 根据活动id查询关联
......
...@@ -20,6 +20,7 @@ import org.springframework.stereotype.Component; ...@@ -20,6 +20,7 @@ import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.math.BigInteger;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -47,7 +48,7 @@ public class GoblinRedisUtils { ...@@ -47,7 +48,7 @@ public class GoblinRedisUtils {
/** /**
* 该skuId已开启预约 * 该skuId已开启预约
*/ */
public void setAnticipateValue(String skuId){ public void setSkuId(String skuId){
redisUtil.set(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId),1); redisUtil.set(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId),1);
} }
...@@ -63,7 +64,7 @@ public class GoblinRedisUtils { ...@@ -63,7 +64,7 @@ public class GoblinRedisUtils {
/** /**
* 获取关联 * 获取关联
*/ */
public boolean getAnticipate(String skuId){ public boolean getSkuId(String skuId){
return redisUtil.get(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId)) != null; return redisUtil.get(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId)) != null;
} }
...@@ -90,27 +91,29 @@ public class GoblinRedisUtils { ...@@ -90,27 +91,29 @@ public class GoblinRedisUtils {
/** /**
* 实际预约人数修改 * 实际预约人数修改
*/ */
public void setAutIdPeople(String autId,Integer state) { public void setSkuIdPeople(String skuId,Integer state) {
Integer num = (Integer) redisUtil.get(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(autId)); BigInteger num = (BigInteger) redisUtil.get(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(skuId));
if (state.equals(GoblinGoodAnticipateUserVo.STATE_VALID)){ if (GoblinGoodAnticipateUserVo.STATE_VALID.equals(state)){
redisUtil.set(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(autId),num==null? 1:num+1); //新预约 +1
redisUtil.set(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(skuId),num.add(BigInteger.valueOf(1)));
} }
if (state.equals(GoblinGoodAnticipateUserVo.STATE_INVALID)&&num!=null){ if (state.equals(GoblinGoodAnticipateUserVo.STATE_INVALID)){
redisUtil.set(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(autId),num-1); //取消预约 -1
redisUtil.set(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(skuId),num.subtract(BigInteger.valueOf(1)));
} }
} }
/** /**
* 获取实际预约人数修改 * 获取实际预约人数修改
*/ */
public Integer getAutIdPeople(String autId) { public BigInteger getSkuIdPeople(String skuId) {
return (Integer) redisUtil.get(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(autId)); return (BigInteger) redisUtil.get(GoblinRedisConst.ANTICIPATE_PEOPLE.concat(skuId));
} }
/** /**
* 删除预约 * 删除预约
*/ */
public void delGoodsAnticipateVo(String skuId) { public void delGoodsSkuId(String skuId) {
redisUtil.del(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId)); redisUtil.del(GoblinRedisConst.ANTICIPATE_SKUID.concat(skuId));
} }
......
...@@ -134,15 +134,9 @@ goblin_user_digital_artwork.update_for_chain=UPDATE goblin_user_digital_artwork ...@@ -134,15 +134,9 @@ goblin_user_digital_artwork.update_for_chain=UPDATE goblin_user_digital_artwork
goblin_user_digital_artwork.update_for_unboxing=UPDATE goblin_user_digital_artwork SET state=1,del_flg='1',opening_at=?,updated_at=?,deleted_at=? WHERE artwork_id=? AND state<>1 goblin_user_digital_artwork.update_for_unboxing=UPDATE goblin_user_digital_artwork SET state=1,del_flg='1',opening_at=?,updated_at=?,deleted_at=? WHERE artwork_id=? AND state<>1
#---- #----
#---- \u9884\u7EA6 #---- \u9884\u7EA6
goblin_goods_anticipate=INSERT INTO goblin_goods_anticipate(ant_id,`name`,`rule`,actual_people,about_start_date,about_end_date,created_date,del_tag) VALUES(?,?,?,?,?,?,?,?) goblin_goods_anticipate=INSERT INTO goblin_goods_anticipate(ant_id,`rule`,created_date,del_tag) VALUES(?,?,?,?)
goblin_goods_anticipate_update_actual_add_people=UPDATE goblin_goods_anticipate SET actual_people = actual_people+1 WHERE ant_id = ? goblin_goods_anticipate_value=INSERT INTO goblin_goods_anticipate_value (ant_id,sku_name,sku_id,spu_id,about_people,actual_people,rule,about_start_date,about_end_date,created_date,del_tag) VALUES(?,?,?,?,?,?,?,?,?,?)
goblin_goods_anticipate_update_actual_reduce_people=UPDATE goblin_goods_anticipate SET actual_people = actual_people-1 WHERE ant_id = ? goblin_goods_anticipate_value_update_proper=UPDATE goblin_goods_anticipate_value SET about_people = ? WHERE sku_id = ?
goblin_goods_anticipate_delete=UPDATE goblin_goods_anticipate SET `del_tag` = 1 WHERE ant_id = ? goblin_goods_anticipate_value_delete=UPDATE goblin_goods_anticipate_value SET `del_tag` = 1 WHERE sku_id = ?
goblin_goods_anticipate_value=INSERT INTO goblin_goods_anticipate_value (ant_id,sku_name,sku_id,spu_id,about_start_date,about_end_date,created_date,del_tag) VALUES(?,?,?,?,?,?,?,?)
goblin_goods_anticipate_value_update=UPDATE goblin_goods_anticipate_value SET `about_start_date` = ?,`about_end_date`= ?,update_date = NOW() WHERE ant_id = ? AND sku_id = ? AND spu_id = ?
goblin_goods_anticipate_value_delete_by_antId=UPDATE goblin_goods_anticipate_value SET `del_tag` = 1,update_date = NOW() WHERE ant_id = ?
goblin_goods_anticipate_value_delete_by_antId_and_skuId=UPDATE goblin_goods_anticipate_value SET `del_tag` = 1,update_date = NOW() WHERE ant_id = ? AND sku_id = ?
goblin_goods_anticipate_update=UPDATE goblin_goods_anticipate SET `name` = ?,`rule`= ? WHERE ant_id = ?
goblin_goods_anticipate_update_proper=UPDATE goblin_goods_anticipate SET about_people = ? WHERE ant_id = ?
goblin_goods_anticipate_user=INSERT INTO goblin_goods_anticipate_user(uid,sku_id,phone,state) VALUES(?,?,?,?) goblin_goods_anticipate_user=INSERT INTO goblin_goods_anticipate_user(uid,sku_id,phone,state) VALUES(?,?,?,?)
goblin_goods_anticipate_user_update=UPDATE goblin_goods_anticipate_user SET state = 0 WHERE uid = ? AND sku_id = ? goblin_goods_anticipate_user_update=UPDATE goblin_goods_anticipate_user SET state = 0 WHERE uid = ? AND sku_id = ?
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