Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
bc3f972a45
|
|
@ -15,10 +15,11 @@ public enum OrderStatusEnum {
|
||||||
ORDER_RECEIVE(2, "已接单-待出库"),
|
ORDER_RECEIVE(2, "已接单-待出库"),
|
||||||
ORDER_PENDING_SHIPMENT(3, "已出库-待收货"),
|
ORDER_PENDING_SHIPMENT(3, "已出库-待收货"),
|
||||||
ORDER_AWAITING_RECEIPT(4, "已收货-租赁中"),
|
ORDER_AWAITING_RECEIPT(4, "已收货-租赁中"),
|
||||||
ORDER_UNDER_LEASE(5, "已退租-待结算"),
|
ORDER_UNDER_LEASE(5, "已退租-待检修"),
|
||||||
ORDER_TERMINATED(6, "已结算-待确认"),
|
ORDER_REPAIRED(10, "已检修-待结算"),
|
||||||
ORDER_FINISHED(7, "已完成"),
|
ORDER_TERMINATED(15, "已结算-待确认"),
|
||||||
ORDER_CANCEL(8, "已取消");
|
ORDER_FINISHED(20, "已完成"),
|
||||||
|
ORDER_CANCEL(99, "已取消");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,9 @@ import java.util.List;
|
||||||
@Data
|
@Data
|
||||||
public class LeasePriceRecord {
|
public class LeasePriceRecord {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "订单id")
|
||||||
|
private Integer orderId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "租赁费用列表")
|
@ApiModelProperty(value = "租赁费用列表")
|
||||||
private List<LeaseRepairRecord> rentPriceList;
|
private List<LeaseRepairRecord> rentPriceList;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,9 +23,6 @@ public class LeaseRecordDto {
|
||||||
@ApiModelProperty(value = "订单编号")
|
@ApiModelProperty(value = "订单编号")
|
||||||
private String code;
|
private String code;
|
||||||
|
|
||||||
@ApiModelProperty(value = "装备Id")
|
|
||||||
private Integer maId;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "装备套数")
|
@ApiModelProperty(value = "装备套数")
|
||||||
private Integer maNumber;
|
private Integer maNumber;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,9 @@ public class MaLeaseInfo extends BaseEntity implements Serializable {
|
||||||
@ApiModelProperty(value = "接单公司")
|
@ApiModelProperty(value = "接单公司")
|
||||||
private String orderCompany;
|
private String orderCompany;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "接单公司名称")
|
||||||
|
private String orderCompanyName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 接单时间
|
* 接单时间
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,8 @@ public interface LeaseRepairRecordMapper {
|
||||||
*/
|
*/
|
||||||
int insert(LeaseRepairRecord leaseRepairRecord);
|
int insert(LeaseRepairRecord leaseRepairRecord);
|
||||||
|
|
||||||
|
int deleteLeaseRepairRecord(LeaseRepairRecord leaseRepairRecord);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询列表
|
* 查询列表
|
||||||
* @param dto
|
* @param dto
|
||||||
|
|
|
||||||
|
|
@ -187,13 +187,23 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
||||||
if (leaseRecordDto == null || leaseRecordDto.getOrderId() == null || leaseRecordDto.getCode() == null) {
|
if (leaseRecordDto == null || leaseRecordDto.getOrderId() == null || leaseRecordDto.getCode() == null) {
|
||||||
return AjaxResult.error(HttpCodeEnum.TO_PARAM_NULL.getCode(), HttpCodeEnum.TO_PARAM_NULL.getMsg());
|
return AjaxResult.error(HttpCodeEnum.TO_PARAM_NULL.getCode(), HttpCodeEnum.TO_PARAM_NULL.getMsg());
|
||||||
}
|
}
|
||||||
List<Integer> maIdList = new ArrayList<>();
|
Set<Integer> maIdSet = new HashSet<>();
|
||||||
if (Objects.isNull(leaseRecordDto.getMaId())) {
|
List<Integer> maIds_repair = new ArrayList<>();
|
||||||
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOderId(leaseRecordDto.getOrderId());
|
List<Integer> maIds_scrap = new ArrayList<>();
|
||||||
maIdList = list.stream().map(OrderDetailDto::getMaId).collect(Collectors.toList());
|
List<Integer> maIds_loss = new ArrayList<>();
|
||||||
} else {
|
if (CollectionUtils.isNotEmpty(leaseRecordDto.getRepairRecordList())) {
|
||||||
maIdList = Arrays.asList(leaseRecordDto.getMaId());
|
maIds_repair = leaseRecordDto.getRepairRecordList().stream().map(LeaseRepairRecord::getMaId).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
if (CollectionUtils.isNotEmpty(leaseRecordDto.getScrapRecordList())) {
|
||||||
|
maIds_scrap = leaseRecordDto.getRepairRecordList().stream().map(LeaseRepairRecord::getMaId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
if (CollectionUtils.isNotEmpty(leaseRecordDto.getLossRecordList())) {
|
||||||
|
maIds_loss = leaseRecordDto.getRepairRecordList().stream().map(LeaseRepairRecord::getMaId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
maIdSet.addAll(maIds_repair);
|
||||||
|
maIdSet.addAll(maIds_scrap);
|
||||||
|
maIdSet.addAll(maIds_loss);
|
||||||
|
|
||||||
LeaseRepairRecord leaseRepairRecord = createLeaseRepairRecord(leaseRecordDto);
|
LeaseRepairRecord leaseRepairRecord = createLeaseRepairRecord(leaseRecordDto);
|
||||||
// 校验所有记录是否为空
|
// 校验所有记录是否为空
|
||||||
if (isAllRecordListsEmpty(leaseRecordDto)) {
|
if (isAllRecordListsEmpty(leaseRecordDto)) {
|
||||||
|
|
@ -201,7 +211,7 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
// 处理维修、报废、丢失记录的情况
|
// 处理维修、报废、丢失记录的情况
|
||||||
return handleAllRecords(leaseRecordDto, maIdList);
|
return handleAllRecords(leaseRecordDto, new ArrayList<>(maIdSet));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("新增退租检修异常: ", e.getMessage());
|
log.error("新增退租检修异常: ", e.getMessage());
|
||||||
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), e.getMessage());
|
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), e.getMessage());
|
||||||
|
|
@ -265,6 +275,8 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
||||||
result += mapper.updateChangePrice(lossRecord);
|
result += mapper.updateChangePrice(lossRecord);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
String userName = SecurityUtils.getLoginUser().getUsername();
|
||||||
|
result += orderMapper.updateOrderStatus(leasePriceRecord.getOrderId(), null, String.valueOf(OrderStatusEnum.ORDER_TERMINATED.getStatus()), userName);
|
||||||
if (result > 0) {
|
if (result > 0) {
|
||||||
return AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg());
|
return AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg());
|
||||||
}
|
}
|
||||||
|
|
@ -326,14 +338,17 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
||||||
result += insertRepairScrapLossRecords(scrapRecordList, leaseRepairRecord);
|
result += insertRepairScrapLossRecords(scrapRecordList, leaseRepairRecord);
|
||||||
result += insertRepairScrapLossRecords(lossRecordList, leaseRepairRecord);
|
result += insertRepairScrapLossRecords(lossRecordList, leaseRepairRecord);
|
||||||
|
|
||||||
|
// 插入前删掉旧的维修记录
|
||||||
|
mapper.deleteLeaseRepairRecord(leaseRepairRecord);
|
||||||
|
|
||||||
// 执行插入操作
|
// 执行插入操作
|
||||||
result += mapper.insert(leaseRepairRecord);
|
result += mapper.insert(leaseRepairRecord);
|
||||||
}
|
}
|
||||||
LeaseRepairRecord leaseRepairRecord = new LeaseRepairRecord();
|
// LeaseRepairRecord leaseRepairRecord = new LeaseRepairRecord();
|
||||||
leaseRepairRecord.setOrderId(leaseRecordDto.getOrderId());
|
// leaseRepairRecord.setOrderId(leaseRecordDto.getOrderId());
|
||||||
leaseRepairRecord.setOrderStatus(OrderStatusEnum.ORDER_TERMINATED.getStatus());
|
// leaseRepairRecord.setOrderStatus(OrderStatusEnum.ORDER_REPAIRED.getStatus());
|
||||||
leaseRepairRecord.setMaIds(maIdList);
|
// leaseRepairRecord.setMaIds(maIdList);
|
||||||
result += orderMapper.updateOrder(leaseRepairRecord);
|
// result += orderMapper.updateOrder(leaseRepairRecord);
|
||||||
// 返回结果
|
// 返回结果
|
||||||
return result > 0 ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg())
|
return result > 0 ? AjaxResult.success(HttpCodeEnum.SUCCESS.getMsg())
|
||||||
: AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
|
: AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
|
||||||
|
|
@ -436,6 +451,9 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
||||||
leaseRepairRecord.setLossNum(record.getLossNum());
|
leaseRepairRecord.setLossNum(record.getLossNum());
|
||||||
leaseRepairRecord.setLossPrice(record.getLossPrice());
|
leaseRepairRecord.setLossPrice(record.getLossPrice());
|
||||||
if (CollectionUtils.isNotEmpty(record.getFileInfoList())) {
|
if (CollectionUtils.isNotEmpty(record.getFileInfoList())) {
|
||||||
|
for (BmFileInfo bmFileInfo : record.getFileInfoList()) {
|
||||||
|
bmFileInfoMapper.deleteBmFileInfoByBizInfo(bmFileInfo);
|
||||||
|
}
|
||||||
bmFileInfoMapper.insertBmFileInfos(record.getFileInfoList());
|
bmFileInfoMapper.insertBmFileInfos(record.getFileInfoList());
|
||||||
}
|
}
|
||||||
result++;
|
result++;
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ public class OrderDetailDto {
|
||||||
@ApiModelProperty(value = "日租金")
|
@ApiModelProperty(value = "日租金")
|
||||||
private BigDecimal dayLeasePrice;
|
private BigDecimal dayLeasePrice;
|
||||||
|
|
||||||
@ApiModelProperty(value = "订单状态(0未下单 1已下单 2待出库 3待收货 4租赁中 5已退租 6已完成 7已取消)")
|
@ApiModelProperty(value = "订单状态(0未下单 1已下单 2待出库 3待收货 4租赁中 5已退租 10已检修 15已结算 20已完成 99已取消)")
|
||||||
private String orderStatus;
|
private String orderStatus;
|
||||||
|
|
||||||
@ApiModelProperty(value = "创建日期")
|
@ApiModelProperty(value = "创建日期")
|
||||||
|
|
|
||||||
|
|
@ -119,4 +119,7 @@ public class OrderInfoDto {
|
||||||
@ApiModelProperty(value = "是否已填写退租检修内容(0 否,1 是)")
|
@ApiModelProperty(value = "是否已填写退租检修内容(0 否,1 是)")
|
||||||
private Integer isLeaseContent;
|
private Integer isLeaseContent;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否部分退租")
|
||||||
|
private boolean isPartBacked;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.bonus.material.order.service.impl;
|
package com.bonus.material.order.service.impl;
|
||||||
|
|
||||||
import com.bonus.common.biz.enums.MaStatusEnum;
|
import com.bonus.common.biz.enums.MaStatusEnum;
|
||||||
|
import com.bonus.common.biz.enums.OrderStatusEnum;
|
||||||
import com.bonus.common.security.utils.SecurityUtils;
|
import com.bonus.common.security.utils.SecurityUtils;
|
||||||
import com.bonus.material.device.domain.DevInfo;
|
import com.bonus.material.device.domain.DevInfo;
|
||||||
import com.bonus.material.lease.mapper.LeaseRepairRecordMapper;
|
import com.bonus.material.lease.mapper.LeaseRepairRecordMapper;
|
||||||
|
|
@ -114,6 +115,7 @@ public class OrderServiceImpl implements OrderService {
|
||||||
} else {
|
} else {
|
||||||
dto.setIsLeaseContent(0);
|
dto.setIsLeaseContent(0);
|
||||||
}
|
}
|
||||||
|
dto.setPartBacked(list.stream().anyMatch(o -> OrderStatusEnum.ORDER_UNDER_LEASE.getStatus().toString().equals(o.getOrderStatus())));
|
||||||
}
|
}
|
||||||
return orderInfoDtos;
|
return orderInfoDtos;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<delete id="deleteLeaseRepairRecord">
|
||||||
|
delete from lease_repair_record
|
||||||
|
where
|
||||||
|
code = #{code} and order_id = #{orderId} and ma_id = #{maId}
|
||||||
|
</delete>
|
||||||
|
|
||||||
<insert id="insertHotSearch">
|
<insert id="insertHotSearch">
|
||||||
insert into ma_hot_search(lease_id, lease_num, create_time)
|
insert into ma_hot_search(lease_id, lease_num, create_time)
|
||||||
values(#{id}, 1, now())
|
values(#{id}, 1, now())
|
||||||
|
|
|
||||||
|
|
@ -123,6 +123,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
m.lease_end_time as leaseEndTime,
|
m.lease_end_time as leaseEndTime,
|
||||||
m.start_time as startTime,
|
m.start_time as startTime,
|
||||||
m.end_time as endTime,
|
m.end_time as endTime,
|
||||||
|
m.order_time as orderTime,
|
||||||
|
su.nick_name as orderUser,
|
||||||
|
su.phonenumber as orderPhone,
|
||||||
|
m.order_company as orderCompany,
|
||||||
|
sd2.dept_name as orderCompanyName,
|
||||||
m.person as person,
|
m.person as person,
|
||||||
m.person_phone as personPhone,
|
m.person_phone as personPhone,
|
||||||
m.description as description,
|
m.description as description,
|
||||||
|
|
@ -144,6 +149,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
LEFT JOIN base_address b2 on m.city_code = b2.code
|
LEFT JOIN base_address b2 on m.city_code = b2.code
|
||||||
LEFT JOIN ma_hot_search h ON h.lease_id = m.id
|
LEFT JOIN ma_hot_search h ON h.lease_id = m.id
|
||||||
LEFT JOIN sys_dept sd on m.publish_company = sd.dept_id
|
LEFT JOIN sys_dept sd on m.publish_company = sd.dept_id
|
||||||
|
LEFT JOIN sys_dept sd2 on m.order_company = sd2.dept_id
|
||||||
|
LEFT JOIN sys_user su on m.order_user = su.user_id
|
||||||
WHERE 1 = 1
|
WHERE 1 = 1
|
||||||
<if test="id != null">
|
<if test="id != null">
|
||||||
and m.id = #{id}
|
and m.id = #{id}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue