提交 f9d66f5f authored 作者: 刘海泉's avatar 刘海泉

Merge remote-tracking branch 'origin/v19.4_order_performance_progress_20240712' into dev

......@@ -179,7 +179,8 @@ public enum OrderChildEnum {
public static ConcurrentHashMap<Integer, String> map = new ConcurrentHashMap();
static {
for(OrderChildEnum.Status orderChildStatusEnum : OrderChildEnum.Status.values()){
for(OrderChildEnum.Status
orderChildStatusEnum : OrderChildEnum.Status.values()){
map.put(orderChildStatusEnum.getCode(), orderChildStatusEnum.getName());
}
}
......
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Optional;
public enum PerformanceProgressEnum {
;
//1:进行中的线路(不分页) 2:已结束线路 3:全部线路
@Getter
@AllArgsConstructor
public enum Tab {
IN_PROCESS(1, "进行中的线路"),
END(2, "已结束线路"),
ALL(3, "全部线路"),
;
private final Integer code;
private final String name;
public static Optional<Tab> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> e.code.equals(code)).findFirst();
}
public static String getMsgByCode(int code) {
return getByCode(code).map(Tab::getName).orElse(null);
}
}
@Getter
@AllArgsConstructor
public enum LogType {
TODAY_EXPECT_COMPLETE(1, "今日预计完成吨数"),
TRADE_REQUIRE_ARRIVE_STATION_TIME(2, "交易要求到站时间"),
TRANSPORT_EXPECT_ARRIVE_STATION_TIME(3, "调度备注/跟进措施"),
ABNORMAL_REMARK(4, "异常备注"),
PERFORMANCE_ABNORMAL_REASON(5, "履约异常原因"),
DISPATCH_FOLLOW(6, "物流预计到站时间"),
;
private final Integer code;
private final String name;
public static Optional<LogType> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> e.code.equals(code)).findFirst();
}
public static String getMsgByCode(int code) {
return getByCode(code).map(LogType::getName).orElse(null);
}
}
}
package com.clx.performance.param.pc.carrier;
import com.msl.common.base.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* @ClassName PagePerformanceProgress
* @Description
* @Author kavin
* @Date 2024/7/12 16:29
* @Version 1.0
*/
@Getter
@Setter
public class PagePerformanceProgress extends PageParam {
@ApiModelProperty(value = "Tab类型 1:进行中的线路(不分页) 2:已结束线路 3:全部线路", example = "")
private Integer tab;
}
package com.clx.performance.param.pc.carrier;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
/**
* @ClassName UpdatePerformanceProgressParam
* @Description
* @Author kavin
* @Date 2024/7/16 10:29
* @Version 1.0
*/
@Getter
@Setter
public class UpdatePerformanceProgressParam {
@NotNull(message = "id不能为空")
@ApiModelProperty("id")
private Integer id;
@ApiModelProperty("今日预计完成吨数")
private BigDecimal todayExpectComplete;
@ApiModelProperty("交易要求到站时间")
private String tradeRequireArriveStationTime;
@ApiModelProperty("物流预计到站时间")
private String transportExpectArriveStationTime;
@ApiModelProperty("异常备注")
private String abnormalRemark;
@ApiModelProperty("履约异常原因")
private String performanceAbnormalReason;
@ApiModelProperty("调度备注/跟进措施")
private String dispatchFollow;
}
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
/**
* @ClassName UpdatePerformanceProgressParam
* @Description
* @Author kavin
* @Date 2024/7/16 10:29
* @Version 1.0
*/
@Getter
@Setter
public class PerformanceProgressDetailVO {
@ApiModelProperty("id")
private Integer id;
@ApiModelProperty("今日预计完成吨数")
private BigDecimal todayExpectComplete;
@ApiModelProperty("交易要求到站时间")
private String tradeRequireArriveStationTime;
@ApiModelProperty("物流预计到站时间")
private String transportExpectArriveStationTime;
@ApiModelProperty("异常备注")
private String abnormalRemark;
@ApiModelProperty("履约异常原因")
private String performanceAbnormalReason;
@ApiModelProperty("调度备注/跟进措施")
private String dispatchFollow;
}
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* @ClassName PerformanceProgressOperationLog
* @Description
* @Author kavin
* @Date 2024/7/16 11:07
* @Version 1.0
*/
@Getter
@Setter
public class PerformanceProgressOperationLogVO {
@ApiModelProperty("操作时间")
private String createTime;
@ApiModelProperty("操作人")
private String createName;
@ApiModelProperty("操作内容")
private String operateContent;
}
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Getter
@Setter
public class PerformanceProgressVO{
private Integer id;
@ApiModelProperty("排序")
private Integer seq;
@ApiModelProperty("订单编号")
private String orderNo;
@ApiModelProperty("订单状态: 0待报价 1客户确认中 2报价已确认 3平台已承接 4已取消 5暂停 6拒绝承运 7 挂单中 8运输中 9订单已完成 10 已失效")
private Integer orderStatus;
@ApiModelProperty("发货-地址id")
private Integer sendAddressId;
@ApiModelProperty("货源地简称")
private String sendAddressShorter;
@ApiModelProperty("货源地-标准地址id")
private Integer sendSystemAddressId;
@ApiModelProperty("货源地-标准地址简称")
private String sendSystemAddressShorter;
@ApiModelProperty("高级物流经理姓名数组")
private String seniorLogisticsManagerName;
@ApiModelProperty("货物类型编码")
private String goodsTypeCode;
@ApiModelProperty("货物类型名称")
private String goodsTypeName;
@ApiModelProperty("货物名称id")
private Integer goodsNameId;
@ApiModelProperty("货物名称")
private String goodsName;
@ApiModelProperty("煤源位置")
private String sendAddress;
@ApiModelProperty("是否C类煤源 0 否 1 是")
private Integer sendOverStandard;
@ApiModelProperty("司机运费")
private BigDecimal driverFreightPrice;
@ApiModelProperty("任务吨数")
private BigDecimal taskWeight;
@ApiModelProperty("任务吨数")
private BigDecimal transportWeight;
@ApiModelProperty("挂单吨数")
private BigDecimal pendingWeight;
@ApiModelProperty("接单车数")
private Integer orderedTruckNum;
@ApiModelProperty("到达货源地车数")
private Integer arriveSendTruckNum;
@ApiModelProperty("装车车数")
private Integer loadTruckNum;
@ApiModelProperty("卸车车数")
private Integer unloadTruckNum;
@ApiModelProperty("在途车数")
private Integer onTheWayTruckNum;
@ApiModelProperty("接单率")
private BigDecimal orderedRate;
@ApiModelProperty("任务完成率")
private BigDecimal taskCompleteRatio;
@ApiModelProperty("矿发吨数")
private BigDecimal sumLoadWeight;
@ApiModelProperty("到站吨数")
private BigDecimal sumUnloadWeight;
@ApiModelProperty("在途吨数")
private BigDecimal sumOnTheWayWeight;
@ApiModelProperty("今日预计完成吨数")
private BigDecimal todayExpectComplete;
@ApiModelProperty("异常备注")
private String abnormalRemark;
@ApiModelProperty("履约异常原因")
private String performanceAbnormalReason;
@ApiModelProperty("调度备注/跟进措施")
private String dispatchFollow;
@ApiModelProperty("重车运距(公里)")
private BigDecimal orderDistance;
@ApiModelProperty("可拉运时间段")
private String transportTimeSlot;
@ApiModelProperty("挂单时间")
private LocalDateTime pendingTime;
@ApiModelProperty("交易要求到站时间")
private String tradeRequireArriveStationTime;
@ApiModelProperty("交易要求到站时间")
private String transportExpectArriveStationTime;
@ApiModelProperty("测算运费")
private BigDecimal predictionFreightPrice;
@ApiModelProperty("创建时间")
private String createTime;
@ApiModelProperty("修改时间")
private String modifiedTime;
}
package com.clx.performance.controller.pc.carrier;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.carrier.PagePerformanceProgress;
import com.clx.performance.param.pc.carrier.UpdatePerformanceProgressParam;
import com.clx.performance.service.PerformanceProgressService;
import com.clx.performance.vo.pc.PerformanceProgressDetailVO;
import com.clx.performance.vo.pc.PerformanceProgressOperationLogVO;
import com.clx.performance.vo.pc.PerformanceProgressVO;
import com.msl.common.base.PageData;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
@Slf4j
@RestController
@RequestMapping(value="/pc/carrier/performanceProgress")
@Validated
@Api(tags = "承运端-承运履约表")
@AllArgsConstructor
public class CarrierPerformanceProgressController {
private final PerformanceProgressService performanceProgressService;
@ApiOperation(value = "履约进度表列表",notes = "<br>By:刘海泉")
@PostMapping("/pagePerformanceProgress")
@UnitCovert(param = false)
public Result<PageData<PerformanceProgressVO>> pagePerformanceProgress(@RequestBody @Validated PagePerformanceProgress param) {
IPage<PerformanceProgressVO> page = performanceProgressService.pagePerformanceProgress(param);
return Result.page(page.getRecords(),page.getTotal(),page.getPages());
}
@ApiOperation(value = "进行中数据调整顺序",notes = "<br>By:刘海泉")
@GetMapping("/updateAdjustOrder")
public Result<Object> updateAdjustOrder(
@RequestParam("adjustOrderOneId") @NotBlank(message = "调整订单1的id不能为空") Integer adjustOrderId,
@RequestParam("adjustOrderTwoId") @NotBlank(message = "调整订单2的id不能为空") Integer adjustOrderBeforeId
) {
performanceProgressService.updateAdjustOrder(adjustOrderId,adjustOrderBeforeId);
return Result.ok();
}
@ApiOperation(value = "编辑履约进度",notes = "<br>By:刘海泉")
@PostMapping("/updatePerformanceProgress")
public Result<Object> updatePerformanceProgress(@RequestBody @Validated UpdatePerformanceProgressParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
performanceProgressService.updatePerformanceProgress(param,loginUserInfo.getUserNo(),loginUserInfo.getUserName());
return Result.ok();
}
@ApiOperation(value = "获取履约进度详情",notes = "<br>By:刘海泉")
@GetMapping("/getPerformanceProgressDetail")
public Result<PerformanceProgressDetailVO> getPerformanceProgressDetail(@RequestParam("id") @NotNull(message = "id不能为空") Integer id) {
PerformanceProgressDetailVO vo = performanceProgressService.getPerformanceProgressDetail(id);
return Result.ok(vo);
}
@ApiOperation(value = "获取履约进度编辑日志列表",notes = "<br>By:刘海泉")
@GetMapping("/getOperationLog")
public Result<List<PerformanceProgressOperationLogVO>> getOperationLog(@RequestParam("orderNo") @NotBlank(message = "订单编号不能为空") String orderNo) {
List<PerformanceProgressOperationLogVO> list = performanceProgressService.getOperationLog(orderNo);
return Result.ok(list);
}
}
package com.clx.performance.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.mapper.PerformanceProgressMapper;
import com.clx.performance.model.PerformanceProgress;
import com.clx.performance.param.pc.carrier.PagePerformanceProgress;
import com.msl.common.dao.BaseDao;
import java.util.List;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressDao extends BaseDao<PerformanceProgressMapper, PerformanceProgress, Integer> {
IPage<PerformanceProgress> pagePerformanceProgress(List<Integer> statusList, PagePerformanceProgress param);
void updateRecordOrder(Integer seq,boolean isUp);
}
package com.clx.performance.dao;
import com.clx.performance.mapper.PerformanceProgressLogMapper;
import com.clx.performance.model.PerformanceProgressLog;
import com.msl.common.dao.BaseDao;
import java.util.List;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressLogDao extends BaseDao<PerformanceProgressLogMapper, PerformanceProgressLog, Integer> {
List<PerformanceProgressLog> getOperationLog(String orderNo);
}
package com.clx.performance.dao.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.PerformanceProgressDao;
import com.clx.performance.mapper.PerformanceProgressMapper;
import com.clx.performance.model.PerformanceProgress;
import com.clx.performance.param.pc.carrier.PagePerformanceProgress;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Repository
public class PerformanceProgressDaoImpl extends BaseDaoImpl<PerformanceProgressMapper, PerformanceProgress, Integer> implements PerformanceProgressDao {
@Override
public IPage<PerformanceProgress> pagePerformanceProgress(List<Integer> statusList, PagePerformanceProgress param){
Page<PerformanceProgress> page = Page.of(param.getPage(), param.getPageSize());
LambdaQueryWrapper<PerformanceProgress> query = new LambdaQueryWrapper<>();
query.in(PerformanceProgress :: getOrderStatus,statusList);
//最新接单的seq最大,所以这里降序排序
query.orderByDesc(PerformanceProgress :: getSeq);
return baseMapper.selectPage(page,query);
}
@Override
public void updateRecordOrder(Integer seq,boolean isUp) {
LambdaUpdateWrapper<PerformanceProgress> update = new LambdaUpdateWrapper<>();
if(isUp){
update.gt(PerformanceProgress :: getSeq,seq);
}else{
update.ge(PerformanceProgress :: getSeq,seq);
}
update.setSql("seq = seq + 1");
baseMapper.update(null,update);
}
}
package com.clx.performance.dao.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.clx.performance.dao.PerformanceProgressLogDao;
import com.clx.performance.mapper.PerformanceProgressLogMapper;
import com.clx.performance.model.PerformanceProgressLog;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Repository
public class PerformanceProgressLogDaoImpl extends BaseDaoImpl<PerformanceProgressLogMapper, PerformanceProgressLog, Integer> implements PerformanceProgressLogDao {
@Override
public List<PerformanceProgressLog> getOperationLog(String orderNo) {
LambdaQueryWrapper<PerformanceProgressLog> query = new LambdaQueryWrapper<>();
query.eq(PerformanceProgressLog :: getOrderNo,orderNo);
query.orderByDesc(PerformanceProgressLog :: getId);
return baseMapper.selectList(query);
}
}
package com.clx.performance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.clx.performance.model.PerformanceProgressLog;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressLogMapper extends BaseMapper<PerformanceProgressLog> {
}
package com.clx.performance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.clx.performance.model.PerformanceProgress;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressMapper extends BaseMapper<PerformanceProgress> {
}
package com.clx.performance.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("performance_progress")
public class PerformanceProgress implements HasKey<Integer> {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@TableField("seq")
@ApiModelProperty("排序")
private Integer seq;
@TableField("order_no")
@ApiModelProperty("订单编号")
private String orderNo;
@TableField("order_status")
@ApiModelProperty("订单状态: 0待报价 1客户确认中 2报价已确认 3平台已承接 4已取消 5暂停 6拒绝承运 7 挂单中 8运输中 9订单已完成 10 已失效")
private Integer orderStatus;
@TableField("send_address_id")
@ApiModelProperty("发货-地址id")
private Integer sendAddressId;
@TableField("send_address_shorter")
@ApiModelProperty("货源地简称")
private String sendAddressShorter;
@TableField("send_system_address_id")
@ApiModelProperty("货源地-标准地址id")
private Integer sendSystemAddressId;
@TableField("send_system_address_shorter")
@ApiModelProperty("货源地-标准地址简称")
private String sendSystemAddressShorter;
@TableField("senior_logistics_manager_name")
@ApiModelProperty("高级物流经理姓名数组")
private String seniorLogisticsManagerName;
@TableField("goods_type_code")
@ApiModelProperty("货物类型编码")
private String goodsTypeCode;
@TableField("goods_type_name")
@ApiModelProperty("货物类型名称")
private String goodsTypeName;
@TableField("goods_name_id")
@ApiModelProperty("货物名称id")
private Integer goodsNameId;
@TableField("goods_name")
@ApiModelProperty("货物名称")
private String goodsName;
@TableField("send_address")
@ApiModelProperty("煤源位置")
private String sendAddress;
@TableField("send_over_standard")
@ApiModelProperty("是否C类煤源 0 否 1 是")
private Integer sendOverStandard;
@TableField("driver_freight_price")
@ApiModelProperty("司机运费")
private BigDecimal driverFreightPrice;
@TableField("task_weight")
@ApiModelProperty("任务吨数")
private BigDecimal taskWeight;
@TableField("transport_weight")
@ApiModelProperty("任务吨数")
private BigDecimal transportWeight;
@TableField("pending_weight")
@ApiModelProperty("挂单吨数")
private BigDecimal pendingWeight;
@TableField("ordered_truck_num")
@ApiModelProperty("接单车数")
private Integer orderedTruckNum;
@TableField("arrive_send_truck_num")
@ApiModelProperty("到达货源地车数")
private Integer arriveSendTruckNum;
@TableField("load_truck_num")
@ApiModelProperty("装车车数")
private Integer loadTruckNum;
@TableField("unload_truck_num")
@ApiModelProperty("卸车车数")
private Integer unloadTruckNum;
@TableField("on_the_way_truck_num")
@ApiModelProperty("在途车数")
private Integer onTheWayTruckNum;
@TableField("ordered_rate")
@ApiModelProperty("接单率")
private BigDecimal orderedRate;
@TableField("task_complete_ratio")
@ApiModelProperty("任务完成率")
private BigDecimal taskCompleteRatio;
@TableField("sum_load_weight")
@ApiModelProperty("矿发吨数")
private BigDecimal sumLoadWeight;
@TableField("sum_unload_weight")
@ApiModelProperty("到站吨数")
private BigDecimal sumUnloadWeight;
@TableField("sum_on_the_way_weight")
@ApiModelProperty("在途吨数")
private BigDecimal sumOnTheWayWeight;
@TableField("today_expect_complete")
@ApiModelProperty("今日预计完成吨数")
private BigDecimal todayExpectComplete;
@TableField("abnormal_remark")
@ApiModelProperty("异常备注")
private String abnormalRemark;
@TableField("performance_abnormal_reason")
@ApiModelProperty("履约异常原因")
private String performanceAbnormalReason;
@TableField("dispatch_follow")
@ApiModelProperty("调度备注/跟进措施")
private String dispatchFollow;
@TableField("order_distance")
@ApiModelProperty("重车运距(公里)")
private BigDecimal orderDistance;
@TableField("transport_time_slot")
@ApiModelProperty("可拉运时间段")
private String transportTimeSlot;
@TableField("pending_time")
@ApiModelProperty("挂单时间")
private LocalDateTime pendingTime;
@TableField("trade_require_arrive_station_time")
@ApiModelProperty("交易要求到站时间")
private String tradeRequireArriveStationTime;
@TableField("transport_expect_arrive_station_time")
@ApiModelProperty("物流预计到站时间")
private String transportExpectArriveStationTime;
@TableField("prediction_freight_price")
@ApiModelProperty("测算运费")
private BigDecimal predictionFreightPrice;
@TableField("create_time")
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@TableField("modified_time")
@ApiModelProperty("修改时间")
private LocalDateTime modifiedTime;
@Override
@KeyColumn("id")
public Integer gainKey() {
return this.id;
}
}
package com.clx.performance.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("performance_progress_log")
public class PerformanceProgressLog implements HasKey<Integer> {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@TableField("order_no")
@ApiModelProperty("订单编号")
private String orderNo;
@TableField("operate_type")
@ApiModelProperty("操作类型")
private Integer operateType;
@TableField("operate_content")
@ApiModelProperty("操作内容")
private String operateContent;
@TableField("create_by")
@ApiModelProperty("操作人编号")
private Long createBy;
@TableField("create_name")
@ApiModelProperty("操作人名称")
private String createName;
@TableField("create_time")
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@Override
@KeyColumn("id")
public Integer gainKey() {
return this.id;
}
}
package com.clx.performance.service;
import com.clx.performance.enums.PerformanceProgressEnum;
import com.clx.performance.model.PerformanceProgressLog;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressLogService {
PerformanceProgressLog generateLog(String orderNo, PerformanceProgressEnum.LogType logType, Object content,
Long userNo, String userName);
}
package com.clx.performance.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.model.PerformanceProgress;
import com.clx.performance.param.pc.carrier.PagePerformanceProgress;
import com.clx.performance.param.pc.carrier.UpdatePerformanceProgressParam;
import com.clx.performance.vo.pc.PerformanceProgressDetailVO;
import com.clx.performance.vo.pc.PerformanceProgressOperationLogVO;
import com.clx.performance.vo.pc.PerformanceProgressVO;
import java.util.List;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
public interface PerformanceProgressService {
IPage<PerformanceProgressVO> pagePerformanceProgress(PagePerformanceProgress param);
void updateAdjustOrder(Integer adjustOrderId, Integer adjustOrderBeforeId);
void saveOrUpdatePerformanceProgress(PerformanceProgress item);
void updatePerformanceProgress(UpdatePerformanceProgressParam param, Long userNo, String userName);
PerformanceProgressDetailVO getPerformanceProgressDetail(Integer id);
List<PerformanceProgressOperationLogVO> getOperationLog(String orderNo);
}
package com.clx.performance.service.impl;
import com.clx.performance.enums.PerformanceProgressEnum;
import com.clx.performance.model.PerformanceProgressLog;
import com.clx.performance.service.PerformanceProgressLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* @author kavin
* Date 2024-07-12
* Time 16:02
*/
@Service
@Slf4j
public class PerformanceProgressLogServiceImpl implements PerformanceProgressLogService {
@Override
public PerformanceProgressLog generateLog(String orderNo, PerformanceProgressEnum.LogType logType,
Object content, Long userNo, String userName) {
PerformanceProgressLog log = new PerformanceProgressLog();
log.setOrderNo(orderNo);
log.setOperateType(logType.getCode());
log.setOperateContent(logType.getName() + ":" + content);
log.setCreateBy(userNo);
log.setCreateName(userName);
return log;
}
}
package com.clx.performance.struct;
import com.clx.performance.model.PerformanceProgressLog;
import com.clx.performance.vo.pc.PerformanceProgressOperationLogVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
import java.util.List;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface PerformanceProgressLogStruct {
List<PerformanceProgressOperationLogVO> convertList(List<PerformanceProgressLog> list);
}
package com.clx.performance.struct;
import com.clx.performance.model.PerformanceProgress;
import com.clx.performance.vo.pc.PerformanceProgressDetailVO;
import com.clx.performance.vo.pc.PerformanceProgressVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.Mapper;
import java.util.List;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface PerformanceProgressStruct {
List<PerformanceProgressVO> convertList(List<PerformanceProgress> records);
PerformanceProgressDetailVO convert(PerformanceProgress item);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论