政务平台上传数据

dev
lzq 2025-12-17 09:43:16 +08:00
parent fd8f41ef08
commit 2f8281179a
6 changed files with 32 additions and 153 deletions

View File

@ -1,5 +1,7 @@
package com.njzscloud.common.core.utils;
import com.njzscloud.common.core.ex.Exceptions;
import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
@ -140,7 +142,7 @@ public class ImgUtil {
);
} catch (IOException e) {
throw new RuntimeException("图片递归压缩失败", e);
throw Exceptions.error(e, "图片压缩失败");
}
}

View File

@ -25,6 +25,9 @@ public class CompositeInterceptor implements RequestInterceptor, ResponseInterce
@Override
public Object process(RequestInfo requestInfo, ResponseInfo responseInfo, Type responseType) {
if (requestInfo.contentType != null && requestInfo.contentType.contains("multipart/form-data")) {
log.info("响应拦截器: {}、{}、{}", Jackson.toJsonStr(requestInfo), new String(responseInfo.body), responseType);
}
log.info("响应拦截器: {}、{}、{}", Jackson.toJsonStr(requestInfo), new String(responseInfo.body), responseType);
Object data = null;

View File

@ -16,28 +16,15 @@ public class HsoaController {
private final HsoaService hsoaService;
@PostMapping("/push")
public R<?> push(@RequestBody PushVehicleTrajectoryParam pushVehicleTrajectoryParam) {
@PostMapping("/push_vehicle_trajectory")
public R<?> pushVehicleTrajectory(@RequestBody PushVehicleTrajectoryParam pushVehicleTrajectoryParam) {
HsoaResult<?> objectHsoaResult = Hsoa.pushVehicleTrajectory(pushVehicleTrajectoryParam);
if (objectHsoaResult.isSuccess()) {
return R.success(objectHsoaResult);
}
return R.failed();
return R.success(objectHsoaResult);
}
@GetMapping("/push_order")
public R<?> pushOrder(@RequestParam Long orderId, @RequestParam Integer count) {
return R.success(hsoaService.pushOrder(orderId, count));
}
@GetMapping("/push_order2")
public R<?> pushOrder2(@RequestParam Long orderId) {
return R.success(hsoaService.pushOrder2(orderId));
}
@PostMapping("/push_order3")
public R<?> pushOrder3(@RequestParam PushProvincialSaveParam param) throws Exception {
HsoaResult<?> hsoaResult = hsoaService.pushOrder3(param);
@PostMapping("/push_provincial")
public R<?> pushProvincial(@RequestParam PushProvincialSaveParam param) {
HsoaResult<?> hsoaResult = Hsoa.pushProvincial(param);
return R.success(hsoaResult);
}

View File

@ -3,27 +3,17 @@ package com.njzscloud.supervisory.hsoa.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.map.MapBuilder;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.core.jackson.Jackson;
import com.njzscloud.common.core.tuple.Tuple2;
import com.njzscloud.common.core.utils.ImgUtil;
import com.njzscloud.common.oss.util.AliOSS;
import com.njzscloud.supervisory.biz.pojo.entity.TruckLocationTrackEntity;
import com.njzscloud.supervisory.biz.service.TruckLocationTrackService;
import com.njzscloud.supervisory.hsoa.Hsoa;
import com.njzscloud.supervisory.hsoa.pojo.param.PushProvincialSaveParam;
import com.njzscloud.supervisory.hsoa.pojo.param.PushProvincialUploadParam;
import com.njzscloud.supervisory.hsoa.pojo.param.PushVehicleTrajectoryParam;
import com.njzscloud.supervisory.hsoa.pojo.result.HsoaResult;
import com.njzscloud.supervisory.hsoa.pojo.result.UploadResult;
import com.njzscloud.supervisory.order.pojo.result.OrderPagingResult;
import com.njzscloud.supervisory.order.service.OrderInfoService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@ -33,13 +23,8 @@ import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
import static com.njzscloud.supervisory.hsoa.pojo.param.PushProvincialUploadParam.*;
@ -47,8 +32,8 @@ import static com.njzscloud.supervisory.hsoa.pojo.param.PushProvincialUploadPara
@Service
@RequiredArgsConstructor
public class HsoaService {
private final OrderInfoService orderInfoService;
private final TruckLocationTrackService truckLocationTrackService;
// private final OrderInfoService orderInfoService;
/* private final TruckLocationTrackService truckLocationTrackService;
private final AtomicBoolean run = new AtomicBoolean(false);
private final AtomicInteger succ = new AtomicInteger(0);
private final AtomicInteger fail = new AtomicInteger(0);
@ -155,11 +140,9 @@ public class HsoaService {
.put("剩余数量", i1 - i2 - i3)
.build();
}
public HsoaResult<?> pushOrder2(Long orderId) {
OrderPagingResult detail = orderInfoService.detail(orderId);
} */
public HsoaResult<?> pushProvincialSave(OrderPagingResult detail) {
log.info("上传数据:{}", Jackson.toJsonStr(detail));
return Hsoa.pushProvincial(new PushProvincialSaveParam()
@ -293,8 +276,4 @@ public class HsoaService {
IoUtil.close(in);
}
}
public HsoaResult<?> pushOrder3(PushProvincialSaveParam param) {
return Hsoa.pushProvincial(param);
}
}

View File

@ -263,6 +263,7 @@ public class OrderInfoController {
/**
*
*
* @param orderId Id
*/
@GetMapping("/forwarded")
@ -292,4 +293,9 @@ public class OrderInfoController {
return R.success();
}
@PostMapping("/hsoa/push_provincial")
public R<?> pushProvincial(@RequestParam("orderId") Long orderId) {
return R.success(orderInfoService.pushProvincial(orderId));
}
}

View File

@ -39,9 +39,9 @@ import com.njzscloud.supervisory.expense.pojo.entity.ExpenseItemsConfigEntity;
import com.njzscloud.supervisory.expense.service.ExpenseItemsConfigService;
import com.njzscloud.supervisory.goods.contant.MoneyStrategy;
import com.njzscloud.supervisory.hsoa.Hsoa;
import com.njzscloud.supervisory.hsoa.pojo.param.PushProvincialSaveParam;
import com.njzscloud.supervisory.hsoa.pojo.param.PushVehicleTrajectoryParam;
import com.njzscloud.supervisory.hsoa.pojo.result.HsoaResult;
import com.njzscloud.supervisory.hsoa.service.HsoaService;
import com.njzscloud.supervisory.money.contant.MoneyChangeCategory;
import com.njzscloud.supervisory.money.pojo.entity.MoneyAccountEntity;
import com.njzscloud.supervisory.money.pojo.entity.MoneyChangeDetailEntity;
@ -78,9 +78,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.atomic.AtomicBoolean;
@ -118,6 +116,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
private final UserService userService;
private final BizTruckService bizTruckService;
private final DiscountManageService discountManageService;
private final HsoaService hsoaService;
private final AtomicBoolean test_thread_running = new AtomicBoolean(false);
Thread test_thread = null;
@Value("${app.check-gps:false}")
@ -1279,116 +1278,14 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
});
CompletableFuture.runAsync(() -> {
OrderPagingResult detail = this.detail(orderId);
HsoaResult<?> result = Hsoa.pushProvincial(new PushProvincialSaveParam()
.setHandleInfo(new PushProvincialSaveParam.HandleInfo()
.setApproveDate(detail.getOutTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setApproveUserName(detail.getCheckerName())
.setCreateTime(detail.getCreateTime())
.setCreaterName(detail.getContacts())
// .setDisposalSiteCode("")
.setDisposalSiteName(detail.getStationName())
// .setHandleCraft("")
// .setHandleLicenseName("")
// .setHandleLicenseNum("")
.setHandleMethod("资源化利用")
.setLongitude(detail.getStationLng().toString())
.setLatitude(detail.getStationLat().toString())
// .setHANDLE_LICENSE_FILE("")
// .setLicenseValidStartDate("")
// .setLicenseValidEndDate("")
.setLinkPhone(detail.getCheckerPhone())
// .setSuperviseUnitName("")
// .setUpdateTime("")
// .setUpdaterName("")
.setHandleVoucherFile("detail.getCheckPhoto().get(0)")
.setWeight(new BigDecimal(detail.getSettleWeight()).divide(new BigDecimal(1000), 2, RoundingMode.HALF_UP).toPlainString())
)
.setReviewInfo(new PushProvincialSaveParam.ReviewInfo()
.setCgAreaName(detail.getProvinceName() + detail.getCityName() + detail.getAreaName())
.setCgReviewOpinion(detail.getAuditMemo())
.setCgReviewTime(detail.getAuditTime())
// .setCgUnitCode("")
.setCgUnitName(detail.getAreaName())
.setCgUserId(detail.getQuAuditUserId() == null ? (detail.getShiAuditUserId() == null ? null : detail.getShiAuditUserId().toString()) : detail.getQuAuditUserId().toString())
.setCgUserName(detail.getQuAuditUserName() == null ? (detail.getShiAuditUserName() == null ? null : detail.getShiAuditUserName()) : detail.getQuAuditUserName())
.setCreateTime(detail.getCreateTime())
.setCreaterName(detail.getContacts())
// .setCG_REVIEW_FILE("")
)
.setTransportOrder(new PushProvincialSaveParam.TransportOrder()
.setAddress(detail.getAddress())
.setAppointmentStartDate(detail.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setAppointmentStartTime(detail.getCreateTime().format(DateTimeFormatter.ofPattern("HH:mm")))
.setAreaCode(detail.getArea())
.setAreaName(detail.getAreaName())
.setCityCode(detail.getCity())
.setCityName(detail.getCityName())
.setConstructionUnitCreditCode(detail.getUscc())
.setConstructionUnitName(detail.getCompanyName())
.setConstructionUnitDirector(detail.getContacts())
.setConstructionUnitPhone(detail.getPhone())
.setEmissionSource(detail.getCompanyName())
.setEstimateWeight(detail.getEstimatedQuantity())
.setGarbageSceneFile("detail.getSitePhotos().get(0)")
.setEnterpriseHead(detail.getTransContacts())
.setHeadContact(detail.getTransPhone())
.setLatitude(detail.getLat() == null ? null : detail.getLat().toString())
.setLongitude(detail.getLng() == null ? null : detail.getLng().toString())
// .setOrderNumber(detail.getArea() + detail.getSn())
.setOrderStatus(90)
.setOrderType(detail.getCompanyName() == null ? 1 : 4)
.setProjectName(detail.getProjectName())
.setRegisterAddress(detail.getTransAddress())
.setSceneLinkName(detail.getContacts())
.setSceneLinkPhone(detail.getPhone())
.setStreetCode(detail.getTown())
.setStreetName(detail.getTownName())
.setTransportationEnterpriseId(detail.getTransCompanyId() == null ? null : detail.getTransCompanyId().toString())
.setTransportationEnterpriseName(detail.getTransCompanyName())
.setWasteTypeCode(detail.getCategoryName().contains("拆除") ? "4" : (detail.getCategoryName().contains("装修") ? "5" : null))
.setWasteTypeName(detail.getCategoryName())
.setWorkUnitCreditCode(detail.getUscc())
.setWorkUnitDirector(detail.getContacts())
.setWorkUnitPhone(detail.getPhone())
.setWorkUnitName(detail.getCompanyName())
)
.setTransportOrderRecord(new PushProvincialSaveParam.TransportOrderRecord()
.setAbsorptionUnitName(detail.getStationCompanyName())
.setAuditStatus(3)
.setCarNo(detail.getLicensePlate())
.setAbsorptionUnitType("1")
.setAbsorptionUnitCode(detail.getStationUscc())
.setDriverLicense(detail.getDrivingLicenceNo())
.setEnterpriseHead(detail.getDriverName())
.setHeadContact(detail.getDriverPhone())
// .setEnterpriseTransportLicenseName("")
.setEnterpriseTransportLicenseNum(detail.getCertificateSn())
.setEstimateWeight(detail.getEstimatedQuantity())
.setHaulageStartTimeStr(detail.getTransTime())
.setHaulageEndTimeStr(detail.getOutTime())
// .setTRANS_LICENSE_FILE("")
.setGarbageLoadBeforeFile(detail.getCargoPhoto().get(0))
.setGarbageLoadAfterFile(detail.getCargoPhoto().get(0))
.setLicenseValidityPeriodDateRange(detail.getAuditTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "-" + detail.getAuditTime().plusHours(24).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setLicenseValidityPeriodStartDate(detail.getAuditTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setLicenseValidityPeriodEndDate(detail.getAuditTime().plusHours(24).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
// .setRoute("")
.setSuperviseUnitName(detail.getAreaName())
.setTransportDateRange(detail.getTransTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + "-" + detail.getOutTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setTransportStartDate(detail.getTransTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setTransportEndDate(detail.getOutTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")))
.setTransportationEnterpriseId(detail.getTransCompanyId() == null ? null : detail.getTransCompanyId().toString())
.setTransportationEnterpriseName(detail.getTransCompanyName())
)
);
HsoaResult<?> result = hsoaService.pushProvincialSave(detail);
if (result == null || !result.isSuccess()) {
Hsoa.relogin();
log.error("推送定位数据失败数据Id{}", entity.getId());
log.error("推送订单数据失败数据Id{}", entity.getId());
}
}).exceptionally(e -> {
log.error("推送定位数据失败数据Id{}", entity.getId(), e);
log.error("推送订单数据失败数据Id{}", entity.getId(), e);
return null;
});
@ -2237,4 +2134,9 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
throw Exceptions.clierr("装货地址不存在");
}
}
public HsoaResult<?> pushProvincial(Long orderId) {
OrderPagingResult detail = this.detail(orderId);
return hsoaService.pushProvincialSave(detail);
}
}