|
|
|
@ -3,15 +3,18 @@ package cc.yunxi.controller;
|
|
|
|
|
|
|
|
|
|
import cc.yunxi.common.domain.CommonResult;
|
|
|
|
|
import cc.yunxi.common.exception.BizIllegalException;
|
|
|
|
|
import cc.yunxi.common.utils.CommonUtil;
|
|
|
|
|
import cc.yunxi.domain.dto.UserDTO;
|
|
|
|
|
import cc.yunxi.domain.po.*;
|
|
|
|
|
import cc.yunxi.domain.vo.device.*;
|
|
|
|
|
import cc.yunxi.domain.vo.file.FileUploadReqVO;
|
|
|
|
|
import cc.yunxi.domain.vo.file.FileUploadRespVO;
|
|
|
|
|
import cc.yunxi.enums.BusinessCodeEnum;
|
|
|
|
|
import cc.yunxi.service.*;
|
|
|
|
|
import cc.yunxi.utils.CustomerMqttClient;
|
|
|
|
|
import cc.yunxi.utils.RedisTool;
|
|
|
|
|
import cc.yunxi.utils.UserContext;
|
|
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
@ -23,6 +26,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
|
import java.util.*;
|
|
|
|
@ -391,11 +395,30 @@ public class DeviceController {
|
|
|
|
|
order.setPhoto(photos);
|
|
|
|
|
order.setCompanyId(companyId);//绑定订单对应商户
|
|
|
|
|
order.setLoginType(orderVO.getLoginType());
|
|
|
|
|
// order.setStartTime(orderVO.getStartTime());
|
|
|
|
|
// order.setFinishTime(orderVO.getFinishTime());
|
|
|
|
|
order.setReportTime(new Date());
|
|
|
|
|
|
|
|
|
|
deliveryOrderService.save(order);
|
|
|
|
|
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
|
|
try {
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getStarTime())) {
|
|
|
|
|
Date start = format.parse(orderVO.getStarTime());
|
|
|
|
|
order.setStartTime(start);
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getReportTime())) {
|
|
|
|
|
Date report = format.parse(orderVO.getReportTime());
|
|
|
|
|
order.setReportTime(report);
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getFinishTime())) {
|
|
|
|
|
Date finish = format.parse(orderVO.getFinishTime());
|
|
|
|
|
order.setFinishTime(finish);
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
boolean save = deliveryOrderService.save(order);
|
|
|
|
|
// 结算
|
|
|
|
|
if(save){
|
|
|
|
|
deliveryOrderService.settlement(order);
|
|
|
|
|
}else {
|
|
|
|
|
throw new BizIllegalException("上传失败:订单上传失败!!");
|
|
|
|
|
}
|
|
|
|
|
return CommonResult.success(orderVO.getDeviceOrderNo());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -413,17 +436,15 @@ public class DeviceController {
|
|
|
|
|
RecycleDeviceConfig config = configService.getByCompanyId(user.getCompanyId());
|
|
|
|
|
String adjustSet = config.getCleanAdjustSet();//审核配置
|
|
|
|
|
//查询桶
|
|
|
|
|
// RecycleBucket bucket = bucketService.getByBucketCode(orderVO.getBucketCode());
|
|
|
|
|
|
|
|
|
|
RecycleCleanOrder order = new RecycleCleanOrder();
|
|
|
|
|
order.setOrderNo(CommonUtil.getIdNumber(BusinessCodeEnum.CLEAN.getCode()));
|
|
|
|
|
order.setDeviceCode(orderVO.getDeviceCode());
|
|
|
|
|
order.setBucketCode(orderVO.getBucketCode());
|
|
|
|
|
order.setDoorNum(orderVO.getDoorNum());
|
|
|
|
|
order.setProductCode(orderVO.getProductCode());
|
|
|
|
|
order.setProductSubCode(orderVO.getProductSubCode());
|
|
|
|
|
order.setPrice(orderVO.getPrice());
|
|
|
|
|
//开始时间
|
|
|
|
|
//完成时间
|
|
|
|
|
List<Snap> images = orderVO.getImages();
|
|
|
|
|
if (images == null || images.size() == 0) {
|
|
|
|
|
throw new BizIllegalException("上传失败:未上传抓拍图片!!");
|
|
|
|
@ -435,6 +456,7 @@ public class DeviceController {
|
|
|
|
|
if ("1".equals(adjustSet)) {
|
|
|
|
|
order.setAdjustStatus(1);
|
|
|
|
|
order.setAdjustComm("自动审核");
|
|
|
|
|
order.setEntryStatus(1);//已入库
|
|
|
|
|
order.setAdjustWeight(orderVO.getTotalWeight());
|
|
|
|
|
order.setAdjustPrice(orderVO.getTotalPrice());
|
|
|
|
|
} else {
|
|
|
|
@ -443,9 +465,16 @@ public class DeviceController {
|
|
|
|
|
order.setAdjustWeight(BigDecimal.ZERO);
|
|
|
|
|
order.setAdjustPrice(BigDecimal.ZERO);
|
|
|
|
|
}
|
|
|
|
|
// order.setStartTime(orderVO.getStartTime());
|
|
|
|
|
// order.setFinishTime(orderVO.getFinishTime());
|
|
|
|
|
order.setReportTime(new Date());
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getStartTime())) {
|
|
|
|
|
order.setStartTime(DateUtil.parse(orderVO.getStartTime(), "yyyy-MM-dd HH:mm:ss"));
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getFinishTime())) {
|
|
|
|
|
order.setFinishTime(DateUtil.parse(orderVO.getFinishTime(), "yyyy-MM-dd HH:mm:ss"));
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isNotEmpty(orderVO.getReportTime())) {
|
|
|
|
|
order.setReportTime(DateUtil.parse(orderVO.getReportTime(), "yyyy-MM-dd HH:mm:ss"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
order.setCreatorUserId(orderVO.getUserId());
|
|
|
|
|
order.setCreatorTime(new Date());
|
|
|
|
|
order.setPhone(orderVO.getPhone());
|
|
|
|
@ -465,7 +494,12 @@ public class DeviceController {
|
|
|
|
|
event.setPhone(eventVO.getPhone());
|
|
|
|
|
event.setIsLocal("0");
|
|
|
|
|
event.setEventType(eventVO.getEventType());
|
|
|
|
|
// event.setEventTime(eventVO.getEventTime());
|
|
|
|
|
String eventTime = eventVO.getEventTime();
|
|
|
|
|
if (StrUtil.isNotEmpty(eventTime)) {
|
|
|
|
|
event.setEventTime(DateUtil.parse(eventTime, "yyyy-MM-dd HH:mm:ss"));
|
|
|
|
|
} else {
|
|
|
|
|
event.setEventTime(new Date());
|
|
|
|
|
}
|
|
|
|
|
event.setEventDesc(eventVO.getEventDesc());
|
|
|
|
|
event.setDoorNum(eventVO.getDoorNum());
|
|
|
|
|
event.setBucketCode(eventVO.getBucketCode());
|
|
|
|
|