开店列表+导出

This commit is contained in:
shuo.wang
2025-01-09 17:18:21 +08:00
parent 4acd471fbd
commit 2d94266e62
38 changed files with 662 additions and 28 deletions

View File

@@ -0,0 +1,114 @@
package com.cool.store.dto;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: WangShuo
* @Date: 2025/01/09/下午4:13
* @Version 1.0
* @注释:
*/
@Data
public class ExportBranchShopDTO {
@ExcelProperty(value = "加盟商名称",order = 1)
@ColumnWidth(30)
private String userName;
@ExcelProperty(value = "加盟商手机号",order = 2)
@ColumnWidth(30)
private String mobile;
@ExcelProperty(value = "门店名称",order = 3)
@ColumnWidth(30)
private String shopName;
@ExcelProperty(value = "门店编号",order = 4)
@ColumnWidth(30)
private String shopCode;
@ExcelProperty(value = "所属区域/分公司",order = 5)
@ColumnWidth(30)
private String regionName;
@ExcelProperty(value = "加盟模式",order = 6)
@ColumnWidth(30)
private String joinMode;
@ExcelProperty(value = "所属品牌",order = 6)
@ColumnWidth(30)
private String franchiseBrand;
@ExcelProperty(value = "督导",order = 7)
@ColumnWidth(30)
private String investmentManager;
@ExcelProperty(value = "合同编号",order = 8)
@ColumnWidth(30)
private String contractCode;
@ExcelProperty(value = "合同开始时间",order = 9)
@ColumnWidth(30)
private String contractStartTime;
@ExcelProperty(value = "合同结束时间",order = 10)
@ColumnWidth(30)
private String contractEndTime;
@ExcelProperty(value = "开票时间",order = 11)
@ColumnWidth(30)
private String invoicingTime;
@ExcelProperty(value = "管理费(含税金额)",order = 12)
@ColumnWidth(30)
private String managementFeeTax;
@ExcelProperty(value = "管理费(不含税金额)",order = 13)
@ColumnWidth(30)
private String managementFee;
@ExcelProperty(value = "品牌费(含税金额)",order = 14)
@ColumnWidth(30)
private String brandingFeeTax;
@ExcelProperty(value = "品牌费(不含税金额)",order = 15)
@ColumnWidth(30)
private String brandingFee;
@ExcelProperty(value = "加盟费(含税金额)",order = 16)
@ColumnWidth(30)
private String franchiseFeeTax;
@ExcelProperty(value = "加盟费(不含税金额)",order = 17)
@ColumnWidth(30)
private String franchiseFee;
@ExcelProperty(value = "设计费(含税金额)",order = 18)
@ColumnWidth(30)
private String designFeeTax;
@ExcelProperty(value = "设计费(不含税金额)",order = 19)
@ColumnWidth(30)
private String designFee;
@ExcelProperty(value = "当前进度",order = 20)
@ColumnWidth(30)
private String currentProgress;
@ExcelProperty(value = "状态",order = 21)
@ColumnWidth(30)
private String shopStatus;
@ExcelProperty(value = "计划开店时间",order = 22)
@ColumnWidth(30)
private String planOpenTime;
@ExcelProperty(value = "开店时长(天)",order = 23)
@ColumnWidth(30)
private String openDuration;
}

View File

@@ -1,5 +1,6 @@
package com.cool.store.dto.Preparation;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@@ -14,6 +15,10 @@ public class PreparationDTO {
private Long id;
private Long wantShopAreaId;
private Integer shopStatus;
private Long lineId;
private String shopName;
@@ -37,4 +42,9 @@ public class PreparationDTO {
private String supervisorUserId;
private Date createTime;
private Integer franchiseBrand;
private Integer joinMode;
}

View File

@@ -0,0 +1,45 @@
package com.cool.store.request;
import com.cool.store.common.PageBasicInfo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @Author: WangShuo
* @Date: 2025/01/08/下午6:00
* @Version 1.0
* @注释:
*/
@Data
public class BranchShopRequest {
//页码
private Integer pageNum=1;
//分页大小
private Integer pageSize=10;
@ApiModelProperty("加盟商姓名或手机号")
private String partnerKeyword;
@ApiModelProperty("门店名称/编号")
private String shopKeyword;
@ApiModelProperty("所属大区")
private List<String> regionIds;
@ApiModelProperty("督导userId")
private String investmentManagerUserId;
@ApiModelProperty("意向开店区域")
private Long wantShopAreaId;
@ApiModelProperty("加盟模式")
private Integer joinMode;
@ApiModelProperty("加盟品牌")
private Integer franchiseBrand;
@ApiModelProperty("开店状态")
private Integer shopStatus;
@ApiModelProperty("计划开业日期开始")
private Date openTimeStart;
@ApiModelProperty("计划开业日期结束")
private Date openTimeEnd;
@ApiModelProperty(value = "管辖区域",hidden = true)
private List<String> authRegionIds;
}

View File

@@ -0,0 +1,64 @@
package com.cool.store.response;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.temporal.ChronoUnit;
import java.util.Date;
/**
* @Author: WangShuo
* @Date: 2025/01/08/下午5:46
* @Version 1.0
* @注释:
*/
@Data
public class BranchShopResponse {
private Long shopId;
private Long lineId;
@ApiModelProperty("加盟商姓名")
private String userName;
@ApiModelProperty("加盟商手机号")
private String mobile;
@ApiModelProperty("门店名称")
private String shopName;
@ApiModelProperty("门店编号")
private String shopCode;
@ApiModelProperty("所属大区")
private String regionName;
@ApiModelProperty("所属品牌")
private String franchiseBrand;
@ApiModelProperty("加盟模式")
private String joinMode;
@ApiModelProperty("意向开店区域")
private String wantRegionName;
@ApiModelProperty("计划开业时间")
private Date planOpenTime;
@ApiModelProperty("总项数")
private Integer totalColumn;
@ApiModelProperty("完成项")
private Integer completionColumn;
@ApiModelProperty("开店时长")
private String openTime;
@ApiModelProperty("督导/招商经理")
private String investmentManagerName;
@ApiModelProperty("状态")
private String shopStatus;
@ApiModelProperty("创建时间")
private Date createTime;
@ApiModelProperty("开业活动完成时间")
private Date openingActivityEndTime;
public void setOpenTime() {
if (this.openingActivityEndTime==null){
long between = ChronoUnit.SECONDS.between(this.createTime.toInstant(), new Date().toInstant());
double days = (double) between / (24*60*60);
this.openTime=String.format("%.1f", days);
}else{
long between = ChronoUnit.SECONDS.between(this.createTime.toInstant(), this.openingActivityEndTime.toInstant());
double days = (double) between / (24*60*60);
this.openTime = String.format("%.1f", days);
}
}
}