20 changed files with 1213 additions and 47 deletions
@ -0,0 +1,141 @@ |
|||
package com.qs.serve.modules.bms.controller; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.common.model.annotation.SysLog; |
|||
import com.qs.serve.common.model.dto.PageVo; |
|||
import com.qs.serve.common.model.dto.R; |
|||
import com.qs.serve.common.model.enums.BizType; |
|||
import com.qs.serve.common.model.enums.SystemModule; |
|||
import com.qs.serve.common.util.PageUtil; |
|||
import com.qs.serve.common.util.CopierUtil; |
|||
import com.qs.serve.common.util.StringUtils; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtendUser; |
|||
import com.qs.serve.modules.bms.entity.bo.BmsCenterExtendBo; |
|||
import com.qs.serve.modules.bms.service.BmsCenterExtendUserService; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.security.access.prepost.PreAuthorize; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import com.qs.serve.modules.bms.entity.so.BmsCenterExtendSo; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtend; |
|||
import com.qs.serve.modules.bms.service.BmsCenterExtendService; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 基础档案 后继成本中心 |
|||
* @author YenHex |
|||
* @since 2023-05-30 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("bms/centerExtend") |
|||
public class BmsCenterExtendController { |
|||
|
|||
private BmsCenterExtendService bmsCenterExtendService; |
|||
private BmsCenterExtendUserService bmsCenterExtendUserService; |
|||
|
|||
/** |
|||
* 列表 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
//@GetMapping("/list")
|
|||
@PreAuthorize("hasRole('bms:centerExtend:query')") |
|||
public R<List<BmsCenterExtend>> getList(BmsCenterExtendSo param){ |
|||
BmsCenterExtend entity = CopierUtil.copy(param,new BmsCenterExtend()); |
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(entity); |
|||
List<BmsCenterExtend> list = bmsCenterExtendService.list(lqw); |
|||
return R.ok(list); |
|||
} |
|||
|
|||
/** |
|||
* 翻页 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@GetMapping("/page") |
|||
public R<PageVo<BmsCenterExtend>> getPage(BmsCenterExtendSo param){ |
|||
BmsCenterExtend entity = CopierUtil.copy(param,new BmsCenterExtend()); |
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(entity); |
|||
PageUtil.startPage(); |
|||
List<BmsCenterExtend> list = bmsCenterExtendService.list(lqw); |
|||
for (BmsCenterExtend centerExtend : list) { |
|||
LambdaQueryWrapper<BmsCenterExtend> childLqw = new LambdaQueryWrapper<>(); |
|||
childLqw.eq(BmsCenterExtend::getSourceId,centerExtend.getId()); |
|||
List<BmsCenterExtend> childList = bmsCenterExtendService.list(childLqw); |
|||
/*for (BmsCenterExtend childExt : childList) { |
|||
LambdaQueryWrapper<BmsCenterExtendUser> userLqw = new LambdaQueryWrapper<>(); |
|||
userLqw.eq(BmsCenterExtendUser::getChildExtId,childExt.getId()); |
|||
List<BmsCenterExtendUser> userList = bmsCenterExtendUserService.list(userLqw); |
|||
childExt.setUserList(userList); |
|||
}*/ |
|||
centerExtend.setChildList(childList); |
|||
} |
|||
return R.byPageHelperList(list); |
|||
} |
|||
|
|||
/** |
|||
* ID查询 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@GetMapping("/getById/{id}") |
|||
@SysLog(module = SystemModule.BASE, title = "后继成本中心", biz = BizType.QUERY) |
|||
public R<BmsCenterExtend> getById(@PathVariable("id") String id){ |
|||
BmsCenterExtend centerExtend = bmsCenterExtendService.getById(id); |
|||
LambdaQueryWrapper<BmsCenterExtend> childLqw = new LambdaQueryWrapper<>(); |
|||
childLqw.eq(BmsCenterExtend::getSourceId,centerExtend.getId()); |
|||
List<BmsCenterExtend> childList = bmsCenterExtendService.list(childLqw); |
|||
for (BmsCenterExtend childExt : childList) { |
|||
LambdaQueryWrapper<BmsCenterExtendUser> userLqw = new LambdaQueryWrapper<>(); |
|||
userLqw.eq(BmsCenterExtendUser::getChildExtId,childExt.getId()); |
|||
List<BmsCenterExtendUser> userList = bmsCenterExtendUserService.list(userLqw); |
|||
childExt.setUserList(userList); |
|||
} |
|||
centerExtend.setChildList(childList); |
|||
return R.ok(centerExtend); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 保存均摊 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/allocation4Save") |
|||
@SysLog(module = SystemModule.BASE, title = "后继成本中心", biz = BizType.INSERT) |
|||
public R<?> allocation(BmsCenterExtendBo param){ |
|||
BmsCenterExtend detail = bmsCenterExtendService.allocation(param); |
|||
return R.ok(detail); |
|||
} |
|||
|
|||
/** |
|||
* 更新均摊(加删除子节点) |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
@PostMapping("/allocation4Update") |
|||
@SysLog(module = SystemModule.BASE, title = "后继成本中心", biz = BizType.UPDATE) |
|||
public R<?> allocation4Update(BmsCenterExtendBo param){ |
|||
bmsCenterExtendService.allocation4Update(param); |
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除均摊关系,并恢复到未继承状态 |
|||
* @param id |
|||
* @return |
|||
*/ |
|||
@DeleteMapping("/deleteAndReply/{id}") |
|||
@SysLog(module = SystemModule.BASE, title = "后继成本中心", biz = BizType.UPDATE) |
|||
public R<?> delete(@PathVariable("id") Long id){ |
|||
bmsCenterExtendService.deleteAndReply(id); |
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,147 @@ |
|||
package com.qs.serve.modules.bms.entity; |
|||
|
|||
import java.time.LocalDate; |
|||
import java.io.Serializable; |
|||
import java.math.BigDecimal; |
|||
import java.time.LocalDateTime; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import lombok.Data; |
|||
import org.hibernate.validator.constraints.Length; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
import javax.validation.constraints.NotBlank; |
|||
import java.util.List; |
|||
/** |
|||
* 后继成本中心 实体类 |
|||
* @author YenHex |
|||
* @since 2023-05-30 |
|||
*/ |
|||
@Data |
|||
@TableName("bms_center_extend") |
|||
public class BmsCenterExtend implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** 编号 */ |
|||
@TableId(type = IdType.AUTO) |
|||
private Long id; |
|||
|
|||
/** 来源id */ |
|||
@NotNull(message = "来源id不能为空") |
|||
private Long sourceId; |
|||
|
|||
/** 成本中心类型 */ |
|||
@NotBlank(message = "成本中心类型不能为空") |
|||
@Length(max = 255,message = "成本中心类型长度不能超过255字") |
|||
private String centerType; |
|||
|
|||
/** 祖级id */ |
|||
private String pathIds; |
|||
|
|||
/** 成本中心id */ |
|||
@NotBlank(message = "成本中心id不能为空") |
|||
@Length(max = 32,message = "成本中心id长度不能超过32字") |
|||
private String centerId; |
|||
|
|||
/** 成本中心编码 */ |
|||
@NotBlank(message = "成本中心编码不能为空") |
|||
@Length(max = 50,message = "成本中心编码长度不能超过50字") |
|||
private String centerCode; |
|||
|
|||
/** 成本中心名称 */ |
|||
@NotBlank(message = "成本中心名称不能为空") |
|||
@Length(max = 200,message = "成本中心名称长度不能超过200字") |
|||
private String centerName; |
|||
|
|||
/** 开始时间 */ |
|||
@NotNull(message = "开始时间不能为空") |
|||
@Length(max = 0,message = "开始时间长度不能超过0字") |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
private LocalDateTime startTime; |
|||
|
|||
/** 结束时间 */ |
|||
@Length(max = 0,message = "结束时间长度不能超过0字") |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
private LocalDateTime stopTime; |
|||
|
|||
/** 结束标识 */ |
|||
@NotNull(message = "结束标识不能为空") |
|||
private Integer stopFlag; |
|||
|
|||
/** 权重 */ |
|||
@NotNull(message = "权重不能为空") |
|||
private BigDecimal weightRate; |
|||
|
|||
/** 备注 */ |
|||
@Length(max = 600,message = "备注长度不能超过600字") |
|||
private String remark; |
|||
|
|||
/** 创建时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private LocalDateTime createTime; |
|||
|
|||
/** 最后更新时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private LocalDateTime updateTime; |
|||
|
|||
/** 所属租户 */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String tenantId; |
|||
|
|||
/** 创建人 */ |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private String createBy; |
|||
|
|||
/** 更新人 */ |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private String updateBy; |
|||
|
|||
/** 逻辑删除标记(0:显示;1:隐藏) */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String delFlag; |
|||
|
|||
/** 子列表 */ |
|||
@TableField(exist = false) |
|||
private List<?> childList; |
|||
|
|||
/** 人员列表 */ |
|||
@TableField(exist = false) |
|||
private List<?> userList; |
|||
|
|||
public static BmsCenterExtend toNewObject(BmsCenterExtend source){ |
|||
BmsCenterExtend centerExtend = new BmsCenterExtend(); |
|||
centerExtend.setId(source.getId()); |
|||
centerExtend.setSourceId(source.getSourceId()); |
|||
centerExtend.setCenterType(source.getCenterType()); |
|||
centerExtend.setCenterId(source.getCenterId()); |
|||
centerExtend.setCenterCode(source.getCenterCode()); |
|||
centerExtend.setCenterName(source.getCenterName()); |
|||
centerExtend.setStartTime(source.getStartTime()); |
|||
centerExtend.setStopTime(source.getStopTime()); |
|||
centerExtend.setStopFlag(source.getStopFlag()); |
|||
centerExtend.setWeightRate(source.getWeightRate()); |
|||
centerExtend.setRemark(source.getRemark()); |
|||
centerExtend.setCreateTime(source.getCreateTime()); |
|||
centerExtend.setUpdateTime(source.getUpdateTime()); |
|||
centerExtend.setTenantId(source.getTenantId()); |
|||
centerExtend.setCreateBy(source.getCreateBy()); |
|||
centerExtend.setUpdateBy(source.getUpdateBy()); |
|||
centerExtend.setDelFlag(source.getDelFlag()); |
|||
return centerExtend; |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,144 @@ |
|||
package com.qs.serve.modules.bms.entity; |
|||
|
|||
import java.time.LocalDate; |
|||
import java.io.Serializable; |
|||
import java.math.BigDecimal; |
|||
import java.time.LocalDateTime; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.*; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import lombok.Data; |
|||
import org.hibernate.validator.constraints.Length; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* 后继负责人 实体类 |
|||
* @author YenHex |
|||
* @since 2023-05-31 |
|||
*/ |
|||
@Data |
|||
@TableName("bms_center_extend_user") |
|||
public class BmsCenterExtendUser implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** 编号 */ |
|||
@TableId(type = IdType.AUTO) |
|||
private Long id; |
|||
|
|||
/** 子继承id */ |
|||
@NotNull(message = "子继承id不能为空") |
|||
private Long childExtId; |
|||
|
|||
/** 来源id */ |
|||
@NotNull(message = "来源id不能为空") |
|||
private Long sourceId; |
|||
|
|||
/** 祖级id */ |
|||
@NotBlank(message = "祖级id不能为空") |
|||
@Length(max = 2000,message = "祖级id长度不能超过2000字") |
|||
private String pathIds; |
|||
|
|||
/** 成本中心类型 */ |
|||
@NotBlank(message = "成本中心类型不能为空") |
|||
@Length(max = 255,message = "成本中心类型长度不能超过255字") |
|||
private String centerType; |
|||
|
|||
/** 成本中心id */ |
|||
@NotBlank(message = "成本中心id不能为空") |
|||
@Length(max = 32,message = "成本中心id长度不能超过32字") |
|||
private String centerId; |
|||
|
|||
/** 成本中心编码 */ |
|||
@NotBlank(message = "成本中心编码不能为空") |
|||
@Length(max = 50,message = "成本中心编码长度不能超过50字") |
|||
private String centerCode; |
|||
|
|||
/** 成本中心名称 */ |
|||
@NotBlank(message = "成本中心名称不能为空") |
|||
@Length(max = 200,message = "成本中心名称长度不能超过200字") |
|||
private String centerName; |
|||
|
|||
/** */ |
|||
@NotBlank(message = "不能为空") |
|||
@Length(max = 255,message = "长度不能超过255字") |
|||
private String userId; |
|||
|
|||
/** */ |
|||
@Length(max = 255,message = "长度不能超过255字") |
|||
private String userCode; |
|||
|
|||
/** */ |
|||
@Length(max = 255,message = "长度不能超过255字") |
|||
private String userName; |
|||
|
|||
/** 权重 */ |
|||
@NotNull(message = "权重不能为空") |
|||
private BigDecimal weightRate; |
|||
|
|||
/** 备注 */ |
|||
@Length(max = 600,message = "备注长度不能超过600字") |
|||
private String remark; |
|||
|
|||
/** 创建时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private LocalDateTime createTime; |
|||
|
|||
/** 最后更新时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private LocalDateTime updateTime; |
|||
|
|||
/** 所属租户 */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String tenantId; |
|||
|
|||
/** 创建人 */ |
|||
@TableField(fill = FieldFill.INSERT) |
|||
private String createBy; |
|||
|
|||
/** 更新人 */ |
|||
@TableField(fill = FieldFill.UPDATE) |
|||
private String updateBy; |
|||
|
|||
/** 逻辑删除标记(0:显示;1:隐藏) */ |
|||
@JsonIgnore |
|||
@JsonProperty |
|||
private String delFlag; |
|||
|
|||
|
|||
public static BmsCenterExtendUser toNewObject(BmsCenterExtendUser source){ |
|||
BmsCenterExtendUser centerExtendUser = new BmsCenterExtendUser(); |
|||
centerExtendUser.setId(source.getId()); |
|||
centerExtendUser.setChildExtId(source.getChildExtId()); |
|||
centerExtendUser.setSourceId(source.getSourceId()); |
|||
centerExtendUser.setPathIds(source.getPathIds()); |
|||
centerExtendUser.setCenterType(source.getCenterType()); |
|||
centerExtendUser.setCenterId(source.getCenterId()); |
|||
centerExtendUser.setCenterCode(source.getCenterCode()); |
|||
centerExtendUser.setCenterName(source.getCenterName()); |
|||
centerExtendUser.setUserId(source.getUserId()); |
|||
centerExtendUser.setUserCode(source.getUserCode()); |
|||
centerExtendUser.setUserName(source.getUserName()); |
|||
centerExtendUser.setWeightRate(source.getWeightRate()); |
|||
centerExtendUser.setRemark(source.getRemark()); |
|||
centerExtendUser.setCreateTime(source.getCreateTime()); |
|||
centerExtendUser.setUpdateTime(source.getUpdateTime()); |
|||
centerExtendUser.setTenantId(source.getTenantId()); |
|||
centerExtendUser.setCreateBy(source.getCreateBy()); |
|||
centerExtendUser.setUpdateBy(source.getUpdateBy()); |
|||
centerExtendUser.setDelFlag(source.getDelFlag()); |
|||
return centerExtendUser; |
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,68 @@ |
|||
package com.qs.serve.modules.bms.entity.bo; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2023/5/30 |
|||
*/ |
|||
@Data |
|||
public class BmsCenterExtendBo { |
|||
|
|||
/** |
|||
* 后继成本中心id(仅用于更新) |
|||
*/ |
|||
Long id; |
|||
|
|||
/** 成本中心类型(更新可忽略) |
|||
center, |
|||
customer, |
|||
bizRegion, |
|||
saleRegion, |
|||
*/ |
|||
String type; |
|||
|
|||
String sourceCenterId; |
|||
|
|||
List<Item> targetCenters; |
|||
|
|||
@Data |
|||
public static class Item{ |
|||
|
|||
/** |
|||
* 后继成本中心id(仅用于更新) |
|||
*/ |
|||
Long id; |
|||
|
|||
/** |
|||
* 权重 |
|||
*/ |
|||
BigDecimal weightRate; |
|||
|
|||
String targetCenterId; |
|||
|
|||
/** |
|||
* 当值=1,更新用户列表(仅用于更新) |
|||
*/ |
|||
Integer updateUserListFlag; |
|||
|
|||
List<AllocationUser> userList; |
|||
|
|||
} |
|||
|
|||
@Data |
|||
public static class AllocationUser{ |
|||
|
|||
/** |
|||
* 权重 |
|||
*/ |
|||
BigDecimal weightRate; |
|||
|
|||
String userId; |
|||
|
|||
} |
|||
|
|||
} |
@ -0,0 +1,55 @@ |
|||
package com.qs.serve.modules.bms.entity.so; |
|||
|
|||
import java.time.LocalDate; |
|||
import java.io.Serializable; |
|||
import java.math.BigDecimal; |
|||
import java.time.LocalDateTime; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import lombok.Data; |
|||
import org.hibernate.validator.constraints.Length; |
|||
import org.springframework.format.annotation.DateTimeFormat; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* 后继成本中心 查询参数 |
|||
* @author YenHex |
|||
* @since 2023-05-30 |
|||
*/ |
|||
@Data |
|||
public class BmsCenterExtendSo implements Serializable { |
|||
|
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** 来源id */ |
|||
private Long sourceId; |
|||
|
|||
/** 成本中心类型 */ |
|||
private String centerType; |
|||
|
|||
/** 成本中心id */ |
|||
private String centerId; |
|||
|
|||
/** 成本中心编码 */ |
|||
private String centerCode; |
|||
|
|||
/** 成本中心名称 */ |
|||
private String centerName; |
|||
|
|||
/** 开始时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
private LocalDateTime startTime; |
|||
|
|||
/** 结束时间 */ |
|||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
private LocalDateTime stopTime; |
|||
|
|||
/** 结束标识 */ |
|||
private Integer stopFlag; |
|||
|
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bms.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtend; |
|||
|
|||
/** |
|||
* 后继成本中心 Mapper |
|||
* @author YenHex |
|||
* @date 2023-05-30 |
|||
*/ |
|||
public interface BmsCenterExtendMapper extends BaseMapper<BmsCenterExtend> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bms.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtendUser; |
|||
|
|||
/** |
|||
* 后继负责人 Mapper |
|||
* @author YenHex |
|||
* @date 2023-05-31 |
|||
*/ |
|||
public interface BmsCenterExtendUserMapper extends BaseMapper<BmsCenterExtendUser> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,27 @@ |
|||
package com.qs.serve.modules.bms.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtend; |
|||
import com.qs.serve.modules.bms.entity.bo.BmsCenterExtendBo; |
|||
|
|||
/** |
|||
* 后继成本中心 服务接口 |
|||
* @author YenHex |
|||
* @date 2023-05-30 |
|||
*/ |
|||
public interface BmsCenterExtendService extends IService<BmsCenterExtend> { |
|||
|
|||
boolean checkIsStop(String type, String centerId); |
|||
|
|||
BmsCenterExtend allocation(BmsCenterExtendBo param); |
|||
|
|||
void allocation4Update(BmsCenterExtendBo param); |
|||
|
|||
/** |
|||
* 删除所有均摊节点 |
|||
* @param id |
|||
*/ |
|||
void deleteAndReply(Long id); |
|||
|
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qs.serve.modules.bms.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtendUser; |
|||
|
|||
/** |
|||
* 后继负责人 服务接口 |
|||
* @author YenHex |
|||
* @date 2023-05-31 |
|||
*/ |
|||
public interface BmsCenterExtendUserService extends IService<BmsCenterExtendUser> { |
|||
|
|||
} |
|||
|
@ -0,0 +1,320 @@ |
|||
package com.qs.serve.modules.bms.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.qs.serve.common.util.Assert; |
|||
import com.qs.serve.common.util.CollectionUtil; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtendUser; |
|||
import com.qs.serve.modules.bms.entity.BmsCostCenter; |
|||
import com.qs.serve.modules.bms.entity.bo.BmsCenterExtendBo; |
|||
import com.qs.serve.modules.bms.mapper.*; |
|||
import com.qs.serve.modules.bms.service.BmsCenterExtendUserService; |
|||
import com.qs.serve.modules.goods.entity.dto.TbsCenterDto; |
|||
import com.qs.serve.modules.sys.entity.SysUser; |
|||
import com.qs.serve.modules.sys.mapper.SysUserMapper; |
|||
import com.qs.serve.modules.tbs.service.TbsCenterDtoService; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtend; |
|||
import com.qs.serve.modules.bms.service.BmsCenterExtendService; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.time.LocalDateTime; |
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
import java.util.Objects; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* 后继成本中心 服务实现类 |
|||
* @author YenHex |
|||
* @since 2023-05-30 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@AllArgsConstructor |
|||
public class BmsCenterExtendServiceImpl extends ServiceImpl<BmsCenterExtendMapper,BmsCenterExtend> implements BmsCenterExtendService { |
|||
|
|||
private TbsCenterDtoService centerDtoService; |
|||
private BmsCenterExtendUserService centerExtendUserService; |
|||
private SysUserMapper sysUserMapper; |
|||
|
|||
@Override |
|||
public boolean checkIsStop(String type, String centerId) { |
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(); |
|||
lqw.eq(BmsCenterExtend::getCenterType,type); |
|||
lqw.eq(BmsCenterExtend::getCenterId,centerId); |
|||
lqw.eq(BmsCenterExtend::getStopFlag,1); |
|||
return this.count(lqw)>0; |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public BmsCenterExtend allocation(BmsCenterExtendBo param) { |
|||
//校验
|
|||
String type = param.getType(); |
|||
String centerId = param.getSourceCenterId(); |
|||
BigDecimal n100 = new BigDecimal("100"); |
|||
List<BmsCenterExtendBo.Item> targetCenters = param.getTargetCenters(); |
|||
BigDecimal totalRate = BigDecimal.ZERO; |
|||
for (BmsCenterExtendBo.Item center : targetCenters) { |
|||
totalRate=totalRate.add(center.getWeightRate()); |
|||
} |
|||
if(totalRate.compareTo(n100)!=0){ |
|||
Assert.throwEx("权重合计必须百分百"); |
|||
} |
|||
if (this.checkIsStop(type,centerId)){ |
|||
Assert.throwEx("当前成本中心已分配"); |
|||
} |
|||
TbsCenterDto centerDto = centerDtoService.getCenterDto(type,centerId); |
|||
//停止时间
|
|||
LocalDateTime nowTime = LocalDateTime.now(); |
|||
//当前节点
|
|||
BmsCenterExtend currentCenter = new BmsCenterExtend(); |
|||
currentCenter.setSourceId(0L); |
|||
currentCenter.setCenterType(type); |
|||
currentCenter.setPathIds("0"); |
|||
currentCenter.setCenterId(centerId); |
|||
currentCenter.setCenterCode(centerDto.getCenterCode()); |
|||
currentCenter.setCenterName(centerDto.getCenterName()); |
|||
currentCenter.setStartTime(centerDto.getCreateTime()); |
|||
currentCenter.setStopTime(nowTime); |
|||
currentCenter.setStopFlag(1); |
|||
currentCenter.setWeightRate(n100); |
|||
this.save(currentCenter); |
|||
//历史分摊节点
|
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(); |
|||
lqw.eq(BmsCenterExtend::getCenterType,param.getType()); |
|||
lqw.eq(BmsCenterExtend::getCenterId,param.getSourceCenterId()); |
|||
lqw.eq(BmsCenterExtend::getStopFlag,0); |
|||
List<BmsCenterExtend> sourcesCenterList = this.list(lqw); |
|||
List<BmsCenterExtend> updList = this.list(lqw); |
|||
for (BmsCenterExtend sourceCenter : sourcesCenterList) { |
|||
if(sourceCenter.getStopFlag()==0){ |
|||
BmsCenterExtend centerExtend = new BmsCenterExtend(); |
|||
centerExtend.setId(sourceCenter.getId()); |
|||
centerExtend.setStopFlag(1); |
|||
centerExtend.setStopTime(nowTime); |
|||
updList.add(centerExtend); |
|||
} |
|||
} |
|||
//新的继承节点
|
|||
for (BmsCenterExtendBo.Item targetCenter : targetCenters) { |
|||
TbsCenterDto centerDto2 = centerDtoService.getCenterDto(currentCenter.getCenterType(),targetCenter.getTargetCenterId()); |
|||
BigDecimal weightRate = currentCenter.getWeightRate() |
|||
.multiply(targetCenter.getWeightRate()) |
|||
.divide(n100); |
|||
BmsCenterExtend currentChildCenter = new BmsCenterExtend(); |
|||
currentChildCenter.setSourceId(currentCenter.getId()); |
|||
currentChildCenter.setCenterType(currentCenter.getCenterType()); |
|||
currentChildCenter.setPathIds(currentCenter.getPathIds()+"_"+currentCenter.getId()); |
|||
currentChildCenter.setCenterId(centerDto2.getId()); |
|||
currentChildCenter.setCenterCode(centerDto2.getCenterCode()); |
|||
currentChildCenter.setCenterName(centerDto2.getCenterName()); |
|||
currentChildCenter.setStartTime(nowTime); |
|||
currentChildCenter.setStopFlag(0); |
|||
currentChildCenter.setWeightRate(weightRate); |
|||
this.save(currentChildCenter); |
|||
this.toSaveExtendUser( currentCenter, targetCenter.getUserList(), centerDto2, currentChildCenter.getId()); |
|||
} |
|||
this.updateBatchById(updList); |
|||
|
|||
return currentCenter; |
|||
|
|||
/*//校验
|
|||
String type = param.getType(); |
|||
String centerId = param.getSourceCenterId(); |
|||
BigDecimal n100 = new BigDecimal("100"); |
|||
List<BmsCenterExtendBo.Item> targetCenters = param.getTargetCenters(); |
|||
BigDecimal totalRate = BigDecimal.ZERO; |
|||
for (BmsCenterExtendBo.Item center : targetCenters) { |
|||
totalRate=totalRate.add(center.getWeightRate()); |
|||
} |
|||
if(totalRate.compareTo(n100)!=0){ |
|||
Assert.throwEx("权重合计必须百分百"); |
|||
} |
|||
if (this.checkIsStop(type,centerId)){ |
|||
Assert.throwEx("当前成本中心已分配"); |
|||
} |
|||
TbsCenterDto centerDto = centerDtoService.getCenterDto(type,centerId); |
|||
//停止时间
|
|||
LocalDateTime nowTime = LocalDateTime.now(); |
|||
//当前节点
|
|||
BmsCenterExtend currentCenter = new BmsCenterExtend(); |
|||
currentCenter.setSourceId(0L); |
|||
currentCenter.setCenterType(type); |
|||
currentCenter.setPathIds("0"); |
|||
currentCenter.setCenterId(centerId); |
|||
currentCenter.setCenterCode(centerDto.getCenterCode()); |
|||
currentCenter.setCenterName(centerDto.getCenterName()); |
|||
currentCenter.setStartTime(centerDto.getCreateTime()); |
|||
currentCenter.setStopTime(nowTime); |
|||
currentCenter.setStopFlag(1); |
|||
currentCenter.setWeightRate(n100); |
|||
this.save(currentCenter); |
|||
//历史分摊节点
|
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(); |
|||
lqw.eq(BmsCenterExtend::getCenterType,param.getType()); |
|||
lqw.eq(BmsCenterExtend::getCenterId,param.getSourceCenterId()); |
|||
lqw.eq(BmsCenterExtend::getStopFlag,0); |
|||
List<BmsCenterExtend> sourcesCenterList = this.list(lqw); |
|||
|
|||
sourcesCenterList.add(currentCenter); |
|||
|
|||
List<BmsCenterExtend> newList = new ArrayList<>(); |
|||
List<BmsCenterExtend> updList = new ArrayList<>(); |
|||
for (BmsCenterExtend sourceCenter : sourcesCenterList) { |
|||
newList.addAll(buildCenterExtend(sourceCenter,targetCenters,nowTime)); |
|||
if(sourceCenter.getStopFlag()==0){ |
|||
BmsCenterExtend centerExtend = new BmsCenterExtend(); |
|||
centerExtend.setId(sourceCenter.getId()); |
|||
centerExtend.setStopFlag(1); |
|||
centerExtend.setStopTime(nowTime); |
|||
updList.add(centerExtend); |
|||
} |
|||
} |
|||
if(CollectionUtil.isNotEmpty(updList)){ |
|||
this.updateBatchById(updList); |
|||
} |
|||
this.saveBatch(newList);*/ |
|||
} |
|||
|
|||
private void toSaveExtendUser(BmsCenterExtend currentCenter, List<BmsCenterExtendBo.AllocationUser> userList, TbsCenterDto centerDto2, Long childExtendId) { |
|||
BigDecimal n100 = new BigDecimal("100"); |
|||
BigDecimal totalUser = BigDecimal.ZERO; |
|||
List<BmsCenterExtendUser> extendUserList = new ArrayList<>(); |
|||
for (BmsCenterExtendBo.AllocationUser allocationUser : userList) { |
|||
totalUser.add(allocationUser.getWeightRate()); |
|||
BmsCenterExtendUser extendUser = new BmsCenterExtendUser(); |
|||
SysUser sysUser = sysUserMapper.selectById(allocationUser.getUserId()); |
|||
extendUser.setChildExtId(childExtendId); |
|||
extendUser.setSourceId(currentCenter.getId()); |
|||
extendUser.setCenterType(currentCenter.getCenterType()); |
|||
extendUser.setPathIds(currentCenter.getPathIds()+"_"+ currentCenter.getId()); |
|||
extendUser.setCenterId(centerDto2.getId()); |
|||
extendUser.setCenterCode(centerDto2.getCenterCode()); |
|||
extendUser.setCenterName(centerDto2.getCenterName()); |
|||
extendUser.setUserId(sysUser.getId()); |
|||
extendUser.setUserCode(sysUser.getCode()); |
|||
extendUser.setUserName(sysUser.getName()); |
|||
extendUser.setWeightRate(allocationUser.getWeightRate()); |
|||
extendUserList.add(extendUser); |
|||
} |
|||
if(totalUser.compareTo(n100)!=0){ |
|||
Assert.throwEx("["+ centerDto2.getCenterName()+"]人员比例异常"); |
|||
} |
|||
centerExtendUserService.saveBatch(extendUserList); |
|||
} |
|||
|
|||
private List<BmsCenterExtend> buildCenterExtend(BmsCenterExtend sourceCenter,List<BmsCenterExtendBo.Item> targetCenters,LocalDateTime nowTime) { |
|||
BigDecimal n100 = new BigDecimal("100"); |
|||
List<BmsCenterExtend> newList = new ArrayList<>(); |
|||
for (BmsCenterExtendBo.Item targetCenter : targetCenters) { |
|||
TbsCenterDto centerDto = centerDtoService.getCenterDto(sourceCenter.getCenterType(),targetCenter.getTargetCenterId()); |
|||
BigDecimal weightRate = sourceCenter.getWeightRate() |
|||
.multiply(sourceCenter.getWeightRate()) |
|||
.divide(n100); |
|||
BmsCenterExtend currentCenter = new BmsCenterExtend(); |
|||
currentCenter.setSourceId(sourceCenter.getId()); |
|||
currentCenter.setCenterType(sourceCenter.getCenterType()); |
|||
currentCenter.setPathIds(sourceCenter.getPathIds()+"_"+sourceCenter.getId()); |
|||
currentCenter.setCenterId(centerDto.getId()); |
|||
currentCenter.setCenterCode(centerDto.getCenterCode()); |
|||
currentCenter.setCenterName(centerDto.getCenterName()); |
|||
currentCenter.setStartTime(nowTime); |
|||
currentCenter.setStopFlag(0); |
|||
currentCenter.setWeightRate(weightRate); |
|||
newList.add(currentCenter); |
|||
} |
|||
return newList; |
|||
} |
|||
|
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void allocation4Update(BmsCenterExtendBo param) { |
|||
String type = param.getType(); |
|||
String centerId = param.getSourceCenterId(); |
|||
BigDecimal n100 = new BigDecimal("100"); |
|||
List<BmsCenterExtendBo.Item> targetCenters = param.getTargetCenters(); |
|||
BigDecimal totalRate = BigDecimal.ZERO; |
|||
for (BmsCenterExtendBo.Item center : targetCenters) { |
|||
totalRate=totalRate.add(center.getWeightRate()); |
|||
} |
|||
if(totalRate.compareTo(n100)!=0){ |
|||
Assert.throwEx("权重合计必须百分百"); |
|||
} |
|||
List<BmsCenterExtendBo.Item> saveExtendBo = targetCenters.stream().filter(a->a.getId()==null).collect(Collectors.toList()); |
|||
List<BmsCenterExtendBo.Item> updExtendBo = targetCenters.stream().filter(a->a.getId()!=null).collect(Collectors.toList()); |
|||
List<Long> updateIds = targetCenters.stream().filter(a->a.getId()!=null |
|||
).map(a->a.getId()).collect(Collectors.toList()); |
|||
//新增
|
|||
BmsCenterExtend currentCenter = this.getById(param.getId()); |
|||
for (BmsCenterExtendBo.Item item : saveExtendBo) { |
|||
//校验是否可添加
|
|||
if (this.checkIsStop(currentCenter.getCenterType(),item.getTargetCenterId())){ |
|||
Assert.throwEx("新增的后继成本中心已被停用,请重新选择"); |
|||
} |
|||
TbsCenterDto centerDto2 = centerDtoService.getCenterDto(type,centerId); |
|||
BmsCenterExtend currentChildCenter = new BmsCenterExtend(); |
|||
currentChildCenter.setSourceId(currentCenter.getId()); |
|||
currentChildCenter.setCenterType(currentCenter.getCenterType()); |
|||
currentChildCenter.setPathIds(currentCenter.getPathIds()+"_"+currentCenter.getId()); |
|||
currentChildCenter.setCenterId(centerDto2.getId()); |
|||
currentChildCenter.setCenterCode(centerDto2.getCenterCode()); |
|||
currentChildCenter.setCenterName(centerDto2.getCenterName()); |
|||
currentChildCenter.setStartTime(currentCenter.getStopTime()); |
|||
currentChildCenter.setStopFlag(0); |
|||
currentChildCenter.setWeightRate(item.getWeightRate()); |
|||
this.save(currentChildCenter); |
|||
this.toSaveExtendUser( currentCenter, item.getUserList(), centerDto2, currentChildCenter.getId()); |
|||
} |
|||
//移除
|
|||
LambdaQueryWrapper<BmsCenterExtend> dellqw = new LambdaQueryWrapper<>(); |
|||
dellqw.eq(BmsCenterExtend::getCenterType,param.getType()); |
|||
dellqw.eq(BmsCenterExtend::getCenterId,param.getSourceCenterId()); |
|||
dellqw.notIn(BmsCenterExtend::getId,updateIds); |
|||
this.remove(dellqw); |
|||
//更新
|
|||
LambdaQueryWrapper<BmsCenterExtend> lqw = new LambdaQueryWrapper<>(); |
|||
lqw.eq(BmsCenterExtend::getCenterType,param.getType()); |
|||
lqw.eq(BmsCenterExtend::getCenterId,param.getSourceCenterId()); |
|||
lqw.in(BmsCenterExtend::getId,updateIds); |
|||
List<BmsCenterExtend> sourcesCenterList = this.list(lqw); |
|||
for (BmsCenterExtend centerExtend : sourcesCenterList) { |
|||
for (BmsCenterExtendBo.Item item : updExtendBo) { |
|||
if(centerExtend.getId().equals(item.getId())){ |
|||
//匹配更新
|
|||
centerExtend.setWeightRate(item.getWeightRate()); |
|||
if(item.getUpdateUserListFlag()!=null&&item.getUpdateUserListFlag().equals(1)){ |
|||
LambdaQueryWrapper<BmsCenterExtendUser> delUsrLqw = new LambdaQueryWrapper<>(); |
|||
delUsrLqw.eq(BmsCenterExtendUser::getChildExtId,centerExtend.getId()); |
|||
centerExtendUserService.remove(delUsrLqw); |
|||
//重新保存
|
|||
TbsCenterDto centerDto2 = centerDtoService.getCenterDto(type,item.getTargetCenterId()); |
|||
this.toSaveExtendUser( currentCenter, item.getUserList(), centerDto2, centerExtend.getId()); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void deleteAndReply(Long id) { |
|||
LambdaQueryWrapper<BmsCenterExtendUser> delUsrLqw = new LambdaQueryWrapper<>(); |
|||
delUsrLqw.eq(BmsCenterExtendUser::getSourceId,id); |
|||
centerExtendUserService.remove(delUsrLqw); |
|||
|
|||
LambdaQueryWrapper<BmsCenterExtend> delChildLqw = new LambdaQueryWrapper<>(); |
|||
delChildLqw.eq(BmsCenterExtend::getSourceId,id); |
|||
this.remove(delChildLqw); |
|||
|
|||
this.removeById(id); |
|||
|
|||
} |
|||
|
|||
} |
|||
|
@ -0,0 +1,22 @@ |
|||
package com.qs.serve.modules.bms.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import com.qs.serve.modules.bms.entity.BmsCenterExtendUser; |
|||
import com.qs.serve.modules.bms.service.BmsCenterExtendUserService; |
|||
import com.qs.serve.modules.bms.mapper.BmsCenterExtendUserMapper; |
|||
|
|||
/** |
|||
* 后继负责人 服务实现类 |
|||
* @author YenHex |
|||
* @since 2023-05-31 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@AllArgsConstructor |
|||
public class BmsCenterExtendUserServiceImpl extends ServiceImpl<BmsCenterExtendUserMapper,BmsCenterExtendUser> implements BmsCenterExtendUserService { |
|||
|
|||
} |
|||
|
@ -0,0 +1,91 @@ |
|||
package com.qs.serve.modules.check.entity; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.time.LocalDate; |
|||
|
|||
/** |
|||
* 对账单 |
|||
* @author YenHex |
|||
* @since 2023/5/30 |
|||
*/ |
|||
@Data |
|||
public class ExcelCheckApplyMain { |
|||
|
|||
/** |
|||
* 已批准(费用申请) |
|||
*/ |
|||
private BigDecimal costApplyAmt; |
|||
|
|||
/** |
|||
* 已核销 |
|||
*/ |
|||
private BigDecimal checkedAmt; |
|||
|
|||
/** |
|||
* 申请中 |
|||
*/ |
|||
private BigDecimal checkingAmt; |
|||
|
|||
/** |
|||
* 未申请 |
|||
*/ |
|||
private BigDecimal notCheckAmt; |
|||
|
|||
/** |
|||
* 不予核销 |
|||
*/ |
|||
private BigDecimal dontCheckAmt; |
|||
|
|||
/** |
|||
* 已支付 |
|||
*/ |
|||
private BigDecimal payAmt; |
|||
|
|||
/** |
|||
* 待支付 |
|||
*/ |
|||
private BigDecimal unPayAmt; |
|||
|
|||
/** |
|||
* 不再支付 |
|||
*/ |
|||
private BigDecimal notPayAmt; |
|||
|
|||
/** |
|||
* 客户名 |
|||
*/ |
|||
private String cusName; |
|||
|
|||
/** |
|||
* 客户地址 |
|||
*/ |
|||
private String cusAddress; |
|||
|
|||
/** |
|||
* 客户编码 |
|||
*/ |
|||
private String cusCode; |
|||
|
|||
/** |
|||
* 联系人用户 |
|||
*/ |
|||
private String contactUser; |
|||
|
|||
/** |
|||
* 联系人 |
|||
*/ |
|||
private String contactMobile; |
|||
|
|||
/** |
|||
* 起始日期 |
|||
*/ |
|||
private LocalDate startDate; |
|||
|
|||
/** |
|||
* 截止日期 |
|||
*/ |
|||
private LocalDate endDate; |
|||
|
|||
} |
@ -0,0 +1,76 @@ |
|||
package com.qs.serve.modules.pay.controller.my; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.common.model.annotation.SysLog; |
|||
import com.qs.serve.common.model.dto.PageVo; |
|||
import com.qs.serve.common.model.dto.R; |
|||
import com.qs.serve.common.model.enums.BizType; |
|||
import com.qs.serve.common.model.enums.SystemModule; |
|||
import com.qs.serve.common.util.CollectionUtil; |
|||
import com.qs.serve.common.util.CopierUtil; |
|||
import com.qs.serve.common.util.PageUtil; |
|||
import com.qs.serve.modules.bms.entity.BmsSupplier; |
|||
import com.qs.serve.modules.bms.entity.so.BmsSupplierSo; |
|||
import com.qs.serve.modules.bms.service.BmsSupplierService; |
|||
import com.qs.serve.modules.his.service.HisUserSupplierService; |
|||
import com.qs.serve.modules.pay.common.PaymentType; |
|||
import com.qs.serve.modules.pay.controller.PayPaymentController; |
|||
import com.qs.serve.modules.pay.entity.PayPayment; |
|||
import com.qs.serve.modules.pay.entity.PayPaymentItem; |
|||
import com.qs.serve.modules.pay.entity.bo.PayPaymentBo; |
|||
import com.qs.serve.modules.pay.entity.bo.PayUnPaymentBo; |
|||
import com.qs.serve.modules.pay.entity.dto.PayPaymentAmountDto; |
|||
import com.qs.serve.modules.pay.entity.dto.PaySupplierAmountDto; |
|||
import com.qs.serve.modules.pay.entity.so.PayPaymentSo; |
|||
import com.qs.serve.modules.pay.entity.vo.PaySupplierVo; |
|||
import com.qs.serve.modules.pay.mapper.PaySupplierMapper; |
|||
import com.qs.serve.modules.pay.service.PayPaymentItemService; |
|||
import com.qs.serve.modules.pay.service.PayPaymentService; |
|||
import com.qs.serve.modules.sys.service.SysPostUserService; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.jetbrains.annotations.NotNull; |
|||
import org.springframework.security.access.prepost.PreAuthorize; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.math.BigDecimal; |
|||
import java.util.List; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* 支付 支付记录(我的) |
|||
* @author YenHex |
|||
* @since 2022-12-15 |
|||
*/ |
|||
@Slf4j |
|||
@AllArgsConstructor |
|||
@RestController |
|||
@RequestMapping("my/payment") |
|||
public class PayPaymentMyController { |
|||
|
|||
private PayPaymentController payPaymentController; |
|||
private PayPaymentService payPaymentService; |
|||
private PayPaymentItemService paymentItemService; |
|||
private BmsSupplierService bmsSupplierService; |
|||
private PaySupplierMapper paySupplierMapper; |
|||
private HisUserSupplierService hisUserSupplierService; |
|||
private SysPostUserService postUserService; |
|||
|
|||
/** |
|||
* 客户费用列表 |
|||
* @return |
|||
*/ |
|||
@GetMapping("supplierPage") |
|||
public R<PageVo<PaySupplierVo>> getSupplierPage(BmsSupplierSo paramSo){ |
|||
BmsSupplier param = CopierUtil.copy(paramSo,new BmsSupplier()); |
|||
PageVo<BmsSupplier> pageVo = hisUserSupplierService.selectPageSupplier(param); |
|||
if(CollectionUtil.isNotEmpty(pageVo.getList())){ |
|||
List<PaySupplierVo> supplierVoList = payPaymentController.getPaySupplierVos(paramSo, pageVo.getList()); |
|||
return R.ok(PageVo.initNewList(pageVo,supplierVoList)); |
|||
} |
|||
return R.byEmptyList(); |
|||
} |
|||
|
|||
} |
|||
|
Loading…
Reference in new issue