Commit 3ab6e756 authored by shengnan hu's avatar shengnan hu
Browse files

init

parents
Pipeline #294 passed with stage
in 2 minutes and 13 seconds
package com.mall4j.cloud.common.database.util;
import com.mall4j.cloud.common.database.dto.PageDTO;
/**
* 分页适配
* @author FrozenWatermelon
*/
public class PageAdapter {
private int begin;
private int size;
public PageAdapter(PageDTO page) {
this.begin = getStart(page.getPageNum() - 1, page.getPageSize());
this.size = page.getPageSize();
}
public int getBegin() {
return begin;
}
public void setBegin(int begin) {
this.begin = begin;
}
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public static int getStart(int pageNo, int pageSize) {
if (pageNo < 0) {
pageNo = 0;
}
if (pageSize < 1) {
pageSize = 0;
}
return pageNo * pageSize;
}
}
package com.mall4j.cloud.common.database.util;
import com.github.pagehelper.ISelect;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageSerializable;
import com.mall4j.cloud.common.database.dto.PageDTO;
import com.mall4j.cloud.common.database.vo.PageVO;
/**
* @author FrozenWatermelon
* @date 2020/9/8
*/
public class PageUtil {
/**
* 使用pagehelper进行分页,该分页只能一对一
*/
public static <T> PageVO<T> doPage(PageDTO pageDTO, ISelect select) {
PageSerializable<T> simplePageInfo = PageHelper.startPage(pageDTO).doSelectPageSerializable(select);
PageVO<T> pageVO = new PageVO<>();
pageVO.setList(simplePageInfo.getList());
pageVO.setTotal(simplePageInfo.getTotal());
pageVO.setPages(getPages(simplePageInfo.getTotal(), pageDTO.getPageSize()));
return pageVO;
}
public static Integer getPages(long total, Integer pageSize) {
if (total == -1) {
return 1;
}
if (pageSize > 0) {
return (int) (total / pageSize + ((total % pageSize == 0) ? 0 : 1));
}
return 0;
}
}
package com.mall4j.cloud.common.database.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
/**
* @author FrozenWatermelon
* @date 2020/9/8
*/
public class PageVO<T> {
@Schema(description = "总页数" )
private Integer pages;
@Schema(description = "总条目数" )
private Long total;
@Schema(description = "结果集" )
private List<T> list;
public Integer getPages() {
return pages;
}
public void setPages(Integer pages) {
this.pages = pages;
}
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public List<T> getList() {
return list;
}
public void setList(List<T> list) {
this.list = list;
}
@Override
public String toString() {
return "PageVO{" +
", pages=" + pages +
", total=" + total +
", list=" + list +
'}';
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>mall4cloud-common</artifactId>
<groupId>com.mall4j.cloud</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>mall4cloud-common-order</artifactId>
<packaging>jar</packaging>
<description>mall4cloud 订单相关公共类</description>
<dependencies>
<dependency>
<groupId>com.mall4j.cloud</groupId>
<artifactId>mall4cloud-common-core</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>
package com.mall4j.cloud.common.order.bo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
/**
* 订单支付成功通知
* @author FrozenWatermelon
* @date 2020/12/8
*/
public class PayNotifyBO {
private List<Long> orderIds;
public PayNotifyBO(){
}
public PayNotifyBO(List<Long> orderIds) {
this.orderIds = orderIds;
}
public List<Long> getOrderIds() {
return orderIds;
}
public void setOrderIds(List<Long> orderIds) {
this.orderIds = orderIds;
}
@Override
public String toString() {
return "PayNotifyBO{" +
"orderIds=" + orderIds +
'}';
}
}
package com.mall4j.cloud.common.order.constant;
/**
* 订单关闭
*
* @author YXF
* * @date 2021-01-27 09:10:00
*/
public enum OrderCloseType {
/**
* 超时未支付
*/
OVERTIME(1),
/**
* 买家取消
*/
BUYER(4),
/**
* 已通过货到付款交易
*/
DELIVERY(15),
;
private Integer code;
public Integer value() {
return code;
}
OrderCloseType(Integer code) {
this.code = code;
}
}
package com.mall4j.cloud.common.order.vo;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.mall4j.cloud.common.serializer.ImgJsonSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author FrozenWatermelon
* @date 2020-11-20 15:47:32
*/
public class ShopCartItemVO implements Serializable {
@Schema(description = "加入购物车时间" , requiredMode = Schema.RequiredMode.REQUIRED)
private Date createTime;
@Schema(description = "购物车ID" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long cartItemId;
@Schema(description = "店铺ID" )
private Long shopId;
@Schema(description = "产品ID" )
private Long spuId;
@Schema(description = "SkuID" )
private Long skuId;
@Schema(description = "用户ID" )
private Long userId;
@Schema(description = "购物车产品个数" )
private Integer count;
@Schema(description = "是否已经勾选" )
private Integer isChecked;
@Schema(description = "售价,加入购物车时的商品价格" )
private Long priceFee;
@Schema(description = "当前商品价格" )
private Long skuPriceFee;
@Schema(description = "当前总价格(商品价格 * 数量)" )
private Long totalPriceFee;
@Schema(description = "当前总价格(商品价格 * 数量)(带小数)" )
private Long totalPrice;
@Schema(description = "商品重量" )
private BigDecimal weight;
@Schema(description = "商品体积" )
private BigDecimal volume;
@Schema(description = "商品图片" )
@JsonSerialize(using = ImgJsonSerializer.class)
private String imgUrl;
@Schema(description = "总金额" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long totalAmount;
@Schema(description = "sku规格信息" )
private String skuName;
@Schema(description = "spu名称" )
private String spuName;
public Long getCartItemId() {
return cartItemId;
}
public void setCartItemId(Long cartItemId) {
this.cartItemId = cartItemId;
}
public Long getShopId() {
return shopId;
}
public void setShopId(Long shopId) {
this.shopId = shopId;
}
public Long getSpuId() {
return spuId;
}
public void setSpuId(Long spuId) {
this.spuId = spuId;
}
public Long getSkuId() {
return skuId;
}
public void setSkuId(Long skuId) {
this.skuId = skuId;
}
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public Integer getCount() {
return count;
}
public void setCount(Integer count) {
this.count = count;
}
public Long getPriceFee() {
return priceFee;
}
public void setPriceFee(Long priceFee) {
this.priceFee = priceFee;
}
public Long getSkuPriceFee() {
return skuPriceFee;
}
public void setSkuPriceFee(Long skuPriceFee) {
this.skuPriceFee = skuPriceFee;
}
public String getImgUrl() {
return imgUrl;
}
public void setImgUrl(String imgUrl) {
this.imgUrl = imgUrl;
}
public String getSkuName() {
return skuName;
}
public void setSkuName(String skuName) {
this.skuName = skuName;
}
public String getSpuName() {
return spuName;
}
public void setSpuName(String spuName) {
this.spuName = spuName;
}
public Long getTotalAmount() {
return totalAmount;
}
public void setTotalAmount(Long totalAmount) {
this.totalAmount = totalAmount;
}
public Long getTotalPriceFee() {
return totalPriceFee;
}
public Integer getIsChecked() {
return isChecked;
}
public void setIsChecked(Integer isChecked) {
this.isChecked = isChecked;
}
public void setTotalPriceFee(Long totalPriceFee) {
this.totalPriceFee = totalPriceFee;
}
public Long getTotalPrice() {
return totalPrice;
}
public void setTotalPrice(Long totalPrice) {
this.totalPrice = totalPrice;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
@Override
public String toString() {
return "ShopCartItemVO{" +
"createTime=" + createTime +
", cartItemId=" + cartItemId +
", shopId=" + shopId +
", spuId=" + spuId +
", skuId=" + skuId +
", userId=" + userId +
", count=" + count +
", isChecked=" + isChecked +
", priceFee=" + priceFee +
", skuPriceFee=" + skuPriceFee +
", totalPriceFee=" + totalPriceFee +
", totalPrice=" + totalPrice +
", weight=" + weight +
", volume=" + volume +
", imgUrl='" + imgUrl + '\'' +
", totalAmount=" + totalAmount +
", skuName='" + skuName + '\'' +
", spuName='" + spuName + '\'' +
'}';
}
public BigDecimal getWeight() {
return weight;
}
public void setWeight(BigDecimal weight) {
this.weight = weight;
}
public BigDecimal getVolume() {
return volume;
}
public void setVolume(BigDecimal volume) {
this.volume = volume;
}
}
package com.mall4j.cloud.common.order.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
/**
* 多个店铺订单合并在一起的合并类
* "/confirm" 使用
* @author FrozenWatermelon
*/
public class ShopCartOrderMergerVO {
@Schema(description = "商品总值" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long total;
@Schema(description = "商品总数" , requiredMode = Schema.RequiredMode.REQUIRED)
private Integer totalCount;
@Schema(description = "配送类型 :无需快递" )
private Integer dvyType;
@Schema(description = "过滤掉的商品项" , requiredMode = Schema.RequiredMode.REQUIRED)
private List<ShopCartItemVO> filterShopItems;
@Schema(description = "每个店铺的订单信息" , requiredMode = Schema.RequiredMode.REQUIRED)
List<ShopCartOrderVO> shopCartOrders;
@Schema(description = "用户地址" )
private UserAddrVO userAddr;
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public Integer getTotalCount() {
return totalCount;
}
public void setTotalCount(Integer totalCount) {
this.totalCount = totalCount;
}
public Integer getDvyType() {
return dvyType;
}
public void setDvyType(Integer dvyType) {
this.dvyType = dvyType;
}
public List<ShopCartOrderVO> getShopCartOrders() {
return shopCartOrders;
}
public void setShopCartOrders(List<ShopCartOrderVO> shopCartOrders) {
this.shopCartOrders = shopCartOrders;
}
public List<ShopCartItemVO> getFilterShopItems() {
return filterShopItems;
}
public void setFilterShopItems(List<ShopCartItemVO> filterShopItems) {
this.filterShopItems = filterShopItems;
}
public UserAddrVO getUserAddr() {
return userAddr;
}
public void setUserAddr(UserAddrVO userAddr) {
this.userAddr = userAddr;
}
@Override
public String toString() {
return "ShopCartOrderMergerVO{" +
"total=" + total +
", totalCount=" + totalCount +
", dvyType=" + dvyType +
", filterShopItems=" + filterShopItems +
", shopCartOrders=" + shopCartOrders +
", userAddr=" + userAddr +
'}';
}
}
package com.mall4j.cloud.common.order.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import java.util.List;
/**
* 单个店铺的订单信息
* @author FrozenWatermelon
*/
public class ShopCartOrderVO implements Serializable{
@Schema(description = "店铺id" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long shopId;
@Schema(description = "店铺名称" , requiredMode = Schema.RequiredMode.REQUIRED)
private String shopName;
@Schema(description = "商品总值" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long total;
@Schema(description = "购物车商品" , requiredMode = Schema.RequiredMode.REQUIRED)
private List<ShopCartItemVO> shopCartItemVO;
@Schema(description = "商品总数" , requiredMode = Schema.RequiredMode.REQUIRED)
private Integer totalCount;
public Long getShopId() {
return shopId;
}
public void setShopId(Long shopId) {
this.shopId = shopId;
}
public String getShopName() {
return shopName;
}
public void setShopName(String shopName) {
this.shopName = shopName;
}
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public List<ShopCartItemVO> getShopCartItemVO() {
return shopCartItemVO;
}
public void setShopCartItemVO(List<ShopCartItemVO> shopCartItemVO) {
this.shopCartItemVO = shopCartItemVO;
}
public Integer getTotalCount() {
return totalCount;
}
public void setTotalCount(Integer totalCount) {
this.totalCount = totalCount;
}
@Override
public String toString() {
return "ShopCartOrderVO{" +
"shopId=" + shopId +
", shopName='" + shopName + '\'' +
", total=" + total +
", shopCartItemVO=" + shopCartItemVO +
", totalCount=" + totalCount +
'}';
}
}
package com.mall4j.cloud.common.order.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
/**
* 购物车VO
*
* @author FrozenWatermelon
* @date 2020-11-20 15:47:32
*/
public class ShopCartVO {
@Schema(description = "店铺ID" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long shopId;
@Schema(description = "店铺名称" , requiredMode = Schema.RequiredMode.REQUIRED)
private String shopName;
@Schema(description = "店铺类型1自营店 2普通店" )
private Integer shopType;
@Schema(description = "购物车商品信息" )
private List<ShopCartItemVO> shopCartItem;
@Schema(description = "商品总值" , requiredMode = Schema.RequiredMode.REQUIRED)
private Long total;
@Schema(description = "数量" , requiredMode = Schema.RequiredMode.REQUIRED)
private Integer totalCount;
public Long getShopId() {
return shopId;
}
public void setShopId(Long shopId) {
this.shopId = shopId;
}
public String getShopName() {
return shopName;
}
public void setShopName(String shopName) {
this.shopName = shopName;
}
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public Integer getShopType() {
return shopType;
}
public void setShopType(Integer shopType) {
this.shopType = shopType;
}
public List<ShopCartItemVO> getshopCartItem() {
return shopCartItem;
}
public void setshopCartItem(List<ShopCartItemVO> shopCartItem) {
this.shopCartItem = shopCartItem;
}
@Override
public String toString() {
return "ShopCartVO{" +
"shopId=" + shopId +
", shopName='" + shopName + '\'' +
", shopType=" + shopType +
", shopCartItem=" + shopCartItem +
", total=" + total +
", totalCount=" + totalCount +
'}';
}
public Integer getTotalCount() {
return totalCount;
}
public void setTotalCount(Integer totalCount) {
this.totalCount = totalCount;
}
}
package com.mall4j.cloud.common.order.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;
/**
* @author FrozenWatermelon
* @date 2020/12/14
*/
public class ShopCartWithAmountVO {
@Schema(description = "总额" )
private Long totalMoney;
@Schema(description = "总计" )
private Long finalMoney;
@Schema(description = "商品数量" )
private Integer count;
@Schema(description = "多个店铺的购物车信息" )
private List<ShopCartVO> shopCarts;
public Long getTotalMoney() {
return totalMoney;
}
public void setTotalMoney(Long totalMoney) {
this.totalMoney = totalMoney;
}
public Long getFinalMoney() {
return finalMoney;
}
public void setFinalMoney(Long finalMoney) {
this.finalMoney = finalMoney;
}
public Integer getCount() {
return count;
}
public void setCount(Integer count) {
this.count = count;
}
public List<ShopCartVO> getShopCarts() {
return shopCarts;
}
public void setShopCarts(List<ShopCartVO> shopCarts) {
this.shopCarts = shopCarts;
}
@Override
public String toString() {
return "ShopCartWithAmountVO{" +
"totalMoney=" + totalMoney +
", finalMoney=" + finalMoney +
", count=" + count +
", shopCarts=" + shopCarts +
'}';
}
}
package com.mall4j.cloud.common.order.vo;
import com.mall4j.cloud.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
/**
* 用户地址VO
*
* @author FrozenWatermelon
* @date 2020-12-07 15:50:02
*/
public class UserAddrVO extends BaseVO{
private static final long serialVersionUID = 1L;
@Schema(description = "ID" )
private Long addrId;
@Schema(description = "手机" )
private String mobile;
@Schema(description = "是否默认地址 1是" )
private Integer isDefault;
@Schema(description = "收货人" )
private String consignee;
@Schema(description = "省ID" )
private Long provinceId;
@Schema(description = "省" )
private String province;
@Schema(description = "城市ID" )
private Long cityId;
@Schema(description = "城市" )
private String city;
@Schema(description = "区ID" )
private Long areaId;
@Schema(description = "区" )
private String area;
@Schema(description = "邮编" )
private String postCode;
@Schema(description = "地址" )
private String addr;
@Schema(description = "经度" )
private Double lng;
@Schema(description = "纬度" )
private Double lat;
public Long getAddrId() {
return addrId;
}
public void setAddrId(Long addrId) {
this.addrId = addrId;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public Integer getIsDefault() {
return isDefault;
}
public void setIsDefault(Integer isDefault) {
this.isDefault = isDefault;
}
public String getConsignee() {
return consignee;
}
public void setConsignee(String consignee) {
this.consignee = consignee;
}
public Long getProvinceId() {
return provinceId;
}
public void setProvinceId(Long provinceId) {
this.provinceId = provinceId;
}
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
public Long getCityId() {
return cityId;
}
public void setCityId(Long cityId) {
this.cityId = cityId;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public Long getAreaId() {
return areaId;
}
public void setAreaId(Long areaId) {
this.areaId = areaId;
}
public String getArea() {
return area;
}
public void setArea(String area) {
this.area = area;
}
public String getPostCode() {
return postCode;
}
public void setPostCode(String postCode) {
this.postCode = postCode;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public Double getLng() {
return lng;
}
public void setLng(Double lng) {
this.lng = lng;
}
public Double getLat() {
return lat;
}
public void setLat(Double lat) {
this.lat = lat;
}
@Override
public String toString() {
return "UserAddrVO{" +
"addrId=" + addrId +
",createTime=" + createTime +
",updateTime=" + updateTime +
",mobile=" + mobile +
",isDefault=" + isDefault +
",consignee=" + consignee +
",provinceId=" + provinceId +
",province=" + province +
",cityId=" + cityId +
",city=" + city +
",areaId=" + areaId +
",area=" + area +
",postCode=" + postCode +
",addr=" + addr +
",lng=" + lng +
",lat=" + lat +
'}';
}
}
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