|
|
@@ -16,21 +16,38 @@
|
|
|
*/
|
|
|
package org.springblade.los.edi.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.los.Util.RegularUtils;
|
|
|
+import org.springblade.los.basic.corps.entity.BCorps;
|
|
|
+import org.springblade.los.basic.corps.service.IBCorpsService;
|
|
|
+import org.springblade.los.basic.ports.entity.BPorts;
|
|
|
+import org.springblade.los.basic.ports.service.IBPortsService;
|
|
|
+import org.springblade.los.basic.vessels.entity.BVessels;
|
|
|
+import org.springblade.los.basic.vessels.service.IBVesselsService;
|
|
|
import org.springblade.los.business.files.entity.FilesCenter;
|
|
|
+import org.springblade.los.business.files.service.IFilesCenterService;
|
|
|
+import org.springblade.los.business.sea.entity.Bills;
|
|
|
+import org.springblade.los.business.sea.service.IBillsService;
|
|
|
import org.springblade.los.edi.api.EDISender;
|
|
|
+import org.springblade.los.edi.dto.InttraSoDto;
|
|
|
+import org.springblade.los.edi.entity.EdiLog;
|
|
|
import org.springblade.los.edi.entity.EdiTypes;
|
|
|
import org.springblade.los.edi.mapper.EdiTypesMapper;
|
|
|
+import org.springblade.los.edi.service.IEdiLogService;
|
|
|
import org.springblade.los.edi.service.IEdiTypesService;
|
|
|
import org.springblade.los.edi.vo.EdiTypesVO;
|
|
|
import org.springblade.system.feign.ISysClient;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
@@ -46,6 +63,18 @@ public class EdiTypesServiceImpl extends ServiceImpl<EdiTypesMapper, EdiTypes> i
|
|
|
|
|
|
private final ISysClient sysClient;
|
|
|
|
|
|
+ private final IBPortsService bPortsService;
|
|
|
+
|
|
|
+ private final IBCorpsService bCorpsService;
|
|
|
+
|
|
|
+ private final IBVesselsService bVesselsService;
|
|
|
+
|
|
|
+ private final IFilesCenterService filesCenterService;
|
|
|
+
|
|
|
+ private final IBillsService billsService;
|
|
|
+
|
|
|
+ private final IEdiLogService ediLogService;
|
|
|
+
|
|
|
@Override
|
|
|
public IPage<EdiTypesVO> selectEdiTypesPage(IPage<EdiTypesVO> page, EdiTypesVO ediTypes) {
|
|
|
return page.setRecords(baseMapper.selectEdiTypesPage(page, ediTypes));
|
|
|
@@ -80,4 +109,295 @@ public class EdiTypesServiceImpl extends ServiceImpl<EdiTypesMapper, EdiTypes> i
|
|
|
return R.data(filesCenter);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public R sendingEdi(EdiTypes ediTypes) {
|
|
|
+
|
|
|
+ if (ediTypes.getBillId() == null) {
|
|
|
+ throw new RuntimeException("缺少必要参数");
|
|
|
+ }
|
|
|
+ List<FilesCenter> filesCenterList = new ArrayList<>();
|
|
|
+ List<Bills> billsList = billsService.list(new LambdaQueryWrapper<Bills>()
|
|
|
+ .eq(Bills::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(Bills::getIsDeleted, 0)
|
|
|
+ .apply("find_in_set(id,'" + ediTypes.getBillId() + "')"));
|
|
|
+ if ("HYCK".equals(ediTypes.getType())) {
|
|
|
+ Date date = new Date();
|
|
|
+ for (Bills details : billsList) {
|
|
|
+ if ("1".equals(details.getEdiStatus())) {
|
|
|
+ throw new RuntimeException("单据号:" + details.getBillNo() + "已发送过edi");
|
|
|
+ } else {
|
|
|
+ details.setEdiStatus("1");
|
|
|
+ }
|
|
|
+ InttraSoDto inttraSoDto = new InttraSoDto();
|
|
|
+ inttraSoDto.setIdentifying("发送方标识");
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyMMdd:hhmm");
|
|
|
+ inttraSoDto.setDate(sdf.format(date));
|
|
|
+ SimpleDateFormat sdf1 = new SimpleDateFormat("yyMMddhhmm");
|
|
|
+ String corpId = details.getCorpId().toString();
|
|
|
+ inttraSoDto.setFileExchangeNumber(sdf1.format(date) + corpId.substring(corpId.length() - 4));
|
|
|
+ inttraSoDto.setInformationNo(inttraSoDto.getFileExchangeNumber());
|
|
|
+
|
|
|
+ details.setMblno(RegularUtils.regularEn(details.getMblno()));
|
|
|
+ inttraSoDto.setIdentificationCode(details.getMblno() + "SO");
|
|
|
+
|
|
|
+ inttraSoDto.setFilesFunction("9");
|
|
|
+ inttraSoDto.setFilesDate("cc" + sdf1.format(date));
|
|
|
+
|
|
|
+ details.setServiceTerms(RegularUtils.regularEn(details.getServiceTerms()));
|
|
|
+ inttraSoDto.setTransportTermCode(details.getServiceTerms());
|
|
|
+
|
|
|
+ inttraSoDto.setLclType("2");
|
|
|
+
|
|
|
+ details.setRemarks(RegularUtils.regularEn(details.getRemarks()));
|
|
|
+ inttraSoDto.setRemarks(details.getRemarks());
|
|
|
+
|
|
|
+ details.setBookingRemarks(RegularUtils.regularEn(details.getBookingRemarks()));
|
|
|
+ inttraSoDto.setCarrySingleRemarks(details.getBookingRemarks());
|
|
|
+
|
|
|
+ inttraSoDto.setWeightOfGoods(details.getGrossWeight().toString());
|
|
|
+ inttraSoDto.setPackagesNumber(details.getQuantity());
|
|
|
+ inttraSoDto.setVolumeOfGoods(details.getMeasurement());
|
|
|
+ Integer sum = details.getQuantityV20() + details.getQuantityV40() + details.getQuantityV45()
|
|
|
+ + details.getQuantityV48() + details.getQuantityV40hc();
|
|
|
+ inttraSoDto.setTotalBoxNumber(new BigDecimal(sum + ""));
|
|
|
+ if (ObjectUtils.isNotNull(details.getMpayplace())) {
|
|
|
+ BPorts bPorts = bPortsService.getOne(new LambdaQueryWrapper<BPorts>()
|
|
|
+ .eq(BPorts::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(BPorts::getIsDeleted, 0)
|
|
|
+ .eq(BPorts::getEnName, details.getMpayplace()));
|
|
|
+ if (bPorts != null) {
|
|
|
+ bPorts.setCode(RegularUtils.regularEn(bPorts.getCode()));
|
|
|
+ inttraSoDto.setPaymentLocationCode(bPorts.getCode());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ details.setMpayplace(RegularUtils.regularEn(details.getMpayplace()));
|
|
|
+ inttraSoDto.setPaymentLand(details.getMpayplace());
|
|
|
+ if (ObjectUtils.isNotNull(details.getIssueAtId())) {
|
|
|
+ BPorts bPorts = bPortsService.getById(details.getIssueAtId());
|
|
|
+ if (bPorts != null) {
|
|
|
+ bPorts.setCode(RegularUtils.regularEn(bPorts.getCode()));
|
|
|
+ inttraSoDto.setIssuanceLandCode(bPorts.getCode());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ details.setIssueAt(RegularUtils.regularEn(details.getIssueAt()));
|
|
|
+ inttraSoDto.setIssuanceLand(details.getIssueAt());
|
|
|
+
|
|
|
+ SimpleDateFormat sdf2 = new SimpleDateFormat("yyyymmdd");
|
|
|
+ if (ObjectUtils.isNotNull(details.getIssueDate())) {
|
|
|
+ inttraSoDto.setIssueDate(sdf2.format(details.getIssueDate()));
|
|
|
+ }
|
|
|
+ details.setBookingNo(RegularUtils.regularEn(details.getBookingNo()));
|
|
|
+ inttraSoDto.setBookingNo(details.getBookingNo());
|
|
|
+
|
|
|
+ details.setRefno(RegularUtils.regularEn(details.getRefno()));
|
|
|
+ inttraSoDto.setBillNo(details.getRefno());
|
|
|
+
|
|
|
+ details.setCorpArgreementNo(RegularUtils.regularEn(details.getCorpArgreementNo()));
|
|
|
+ inttraSoDto.setFreightProtocolNumber(details.getCorpArgreementNo());
|
|
|
+
|
|
|
+
|
|
|
+ inttraSoDto.setMainPinyin("");
|
|
|
+ inttraSoDto.setOrderNo(details.getMblno());
|
|
|
+
|
|
|
+ inttraSoDto.setJobId(details.getBillNo());
|
|
|
+ inttraSoDto.setPaymentType(details.getMpaymode());
|
|
|
+
|
|
|
+ details.setVoyageNo(RegularUtils.regularEn(details.getVoyageNo()));
|
|
|
+ inttraSoDto.setVoyageNo(details.getVoyageNo());
|
|
|
+ if (ObjectUtils.isNotNull(details.getVesselId())) {
|
|
|
+ BVessels bVessels = bVesselsService.getById(details.getVesselId());
|
|
|
+ if (bVessels != null) {
|
|
|
+ BCorps bCorps = bCorpsService.getById(bVessels.getCarrierId());
|
|
|
+ if (bCorps != null) {
|
|
|
+ bCorps.setCarrierCode(RegularUtils.regularEn(bCorps.getCarrierCode()));
|
|
|
+ inttraSoDto.setVesselCarrierCode(bCorps.getCarrierCode());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ details.setVesselCnName(RegularUtils.regularEn(details.getVesselCnName()));
|
|
|
+ inttraSoDto.setVesselName(details.getVesselCnName());
|
|
|
+
|
|
|
+ details.setPolCode(RegularUtils.regularEn(details.getPolCode()));
|
|
|
+ inttraSoDto.setPolCode(details.getPolCode());
|
|
|
+
|
|
|
+ details.setServiceTerms(RegularUtils.regularEn(details.getPolCnName()));
|
|
|
+ inttraSoDto.setPolName(details.getPolCnName());
|
|
|
+
|
|
|
+ SimpleDateFormat sdf3 = new SimpleDateFormat("yyyymmdd");
|
|
|
+ inttraSoDto.setEtd(sdf3.format(details.getEtd()));
|
|
|
+
|
|
|
+ details.setPlaceReceiptCode(RegularUtils.regularEn(details.getPlaceReceiptCode()));
|
|
|
+ inttraSoDto.setPlaceReceiptCode(details.getPlaceReceiptCode());
|
|
|
+
|
|
|
+ details.setPlaceReceiptName(RegularUtils.regularEn(details.getPlaceReceiptName()));
|
|
|
+ inttraSoDto.setPlaceReceiptName(details.getPlaceReceiptName());
|
|
|
+
|
|
|
+ details.setPodCode(RegularUtils.regularEn(details.getPodCode()));
|
|
|
+ inttraSoDto.setPodCode(details.getPodCode());
|
|
|
+
|
|
|
+ details.setPodCnName(RegularUtils.regularEn(details.getPodCnName()));
|
|
|
+ inttraSoDto.setPodName(details.getPodCnName());
|
|
|
+
|
|
|
+ details.setPlaceDeliveryCode(RegularUtils.regularEn(details.getPlaceDeliveryCode()));
|
|
|
+ inttraSoDto.setPlaceDeliveryCode(details.getPlaceDeliveryCode());
|
|
|
+
|
|
|
+ details.setPlaceDeliveryName(RegularUtils.regularEn(details.getPlaceDeliveryName()));
|
|
|
+ inttraSoDto.setPlaceDeliveryName(details.getPlaceDeliveryName());
|
|
|
+
|
|
|
+ details.setHshipperCnName(RegularUtils.regularEn(details.getHshipperCnName()));
|
|
|
+ inttraSoDto.setHsHipperOne(details.getHshipperCnName());
|
|
|
+ inttraSoDto.setHsHipperTwo("发货人 2");
|
|
|
+ inttraSoDto.setHsHipperThree("发货人 3");
|
|
|
+ inttraSoDto.setHsHipperFour("发货人 4");
|
|
|
+ inttraSoDto.setHsHipperFive("发货人 5");
|
|
|
+
|
|
|
+ details.setHconsigneeCnName(RegularUtils.regularEn(details.getHconsigneeCnName()));
|
|
|
+ inttraSoDto.setHConsigneeOne(details.getHconsigneeCnName());
|
|
|
+ inttraSoDto.setHConsigneeTwo("收货人 2");
|
|
|
+ inttraSoDto.setHConsigneeThree("收货人3");
|
|
|
+ inttraSoDto.setHConsigneeFour("收货人 4");
|
|
|
+ inttraSoDto.setHConsigneeFive("收货人 5");
|
|
|
+
|
|
|
+ details.setHnotifyCnName(RegularUtils.regularEn(details.getHnotifyCnName()));
|
|
|
+ inttraSoDto.setHNotifyOne(details.getHnotifyCnName());
|
|
|
+ inttraSoDto.setHNotifyTwo("通知人 2");
|
|
|
+ inttraSoDto.setHNotifyThree("通知人 3");
|
|
|
+ inttraSoDto.setHNotifyFour("通知人 4");
|
|
|
+ inttraSoDto.setHNotifyFive("通知人 5");
|
|
|
+
|
|
|
+ details.setCarrierCnName(RegularUtils.regularEn(details.getCarrierCnName()));
|
|
|
+ inttraSoDto.setCarrierName(details.getCarrierCnName());
|
|
|
+ if (ObjectUtils.isNotNull(details.getCarrierId())) {
|
|
|
+ BCorps bCorps = bCorpsService.getById(details.getCarrierId());
|
|
|
+ if (bCorps != null) {
|
|
|
+ bCorps.setCarrierCode(RegularUtils.regularEn(bCorps.getCarrierCode()));
|
|
|
+ inttraSoDto.setCarrierCode(bCorps.getCarrierCode());
|
|
|
+ bCorps.setShortName(RegularUtils.regularEn(bCorps.getShortName()));
|
|
|
+ inttraSoDto.setContactInformation(bCorps.getShortName());
|
|
|
+ bCorps.setAttnName(RegularUtils.regularEn(bCorps.getAttnName()));
|
|
|
+ inttraSoDto.setContacts(bCorps.getAttnName());
|
|
|
+ bCorps.setEmail(RegularUtils.regularEn(bCorps.getEmail()));
|
|
|
+ inttraSoDto.setAttnEmail(bCorps.getEmail());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ details.setInttraToDoorCorpName(RegularUtils.regularEn(details.getInttraToDoorCorpName()));
|
|
|
+ inttraSoDto.setInttraToDoorName(details.getInttraToDoorCorpName());
|
|
|
+ details.setInttraToDoorCorpAddr(RegularUtils.regularEn(details.getInttraToDoorCorpAddr()));
|
|
|
+ inttraSoDto.setInttraToDoorAddrOne(details.getInttraToDoorCorpAddr());
|
|
|
+ inttraSoDto.setInttraToDoorAddrTwo("地址 2");
|
|
|
+ inttraSoDto.setInttraToDoorAddrThree("地址 3");
|
|
|
+ inttraSoDto.setInttraToDoorAddrFour("地址 4");
|
|
|
+ details.setInttraToDoorCorpContacts(RegularUtils.regularEn(details.getInttraToDoorCorpContacts()));
|
|
|
+ inttraSoDto.setInttraToDoorContacts(details.getInttraToDoorCorpContacts());
|
|
|
+ details.setInttraToDoorCorpTel(RegularUtils.regularEn(details.getInttraToDoorCorpTel()));
|
|
|
+ inttraSoDto.setInttraToDoorTel(details.getInttraToDoorCorpTel());
|
|
|
+ details.setInttraDoorToCorpName(RegularUtils.regularEn(details.getInttraDoorToCorpName()));
|
|
|
+ inttraSoDto.setInttraDoorToName(details.getInttraDoorToCorpName());
|
|
|
+ details.setInttraDoorToCorpAddr(RegularUtils.regularEn(details.getInttraDoorToCorpAddr()));
|
|
|
+ inttraSoDto.setInttraDoorToAddrOne(details.getInttraDoorToCorpAddr());
|
|
|
+ inttraSoDto.setInttraDoorToAddrTwo("地址 2");
|
|
|
+ inttraSoDto.setInttraDoorToAddrThree("地址 3");
|
|
|
+ inttraSoDto.setInttraDoorToAddrFour("地址 4");
|
|
|
+ details.setInttraDoorToCorpContacts(RegularUtils.regularEn(details.getInttraDoorToCorpContacts()));
|
|
|
+ inttraSoDto.setInttraDoorToContacts(details.getInttraDoorToCorpContacts());
|
|
|
+ details.setInttraDoorToCorpTel(RegularUtils.regularEn(details.getInttraDoorToCorpTel()));
|
|
|
+ inttraSoDto.setInttraDoorToTel(details.getInttraDoorToCorpTel());
|
|
|
+ inttraSoDto.setFreightForwarderCode("货代代码");
|
|
|
+ inttraSoDto.setFreightForwarderName("货代称呼");
|
|
|
+ inttraSoDto.setSenderCode("发送方代码");
|
|
|
+ inttraSoDto.setSenderName("发送方称呼");
|
|
|
+ inttraSoDto.setSenderContacts("发送方联系人");
|
|
|
+ inttraSoDto.setSenderTel("发送方联系电话");
|
|
|
+ inttraSoDto.setSenderEmail("发送方联系邮件");
|
|
|
+ inttraSoDto.setBillLadingType("提单类型");
|
|
|
+ if (details.getStlCrStatus() >= 3 || details.getStlDrStatus() >= 3) {
|
|
|
+ inttraSoDto.setPaymentStatus("已付款");
|
|
|
+ } else {
|
|
|
+ inttraSoDto.setPaymentStatus("未付款");
|
|
|
+ }
|
|
|
+ inttraSoDto.setBillLadingNumber(new BigDecimal("0"));
|
|
|
+ inttraSoDto.setPackagesNumbers(details.getQuantity());
|
|
|
+ inttraSoDto.setPackagesCode(details.getPackingUnit());
|
|
|
+ inttraSoDto.setPackagesDescribe("包装描述");
|
|
|
+ inttraSoDto.setHsCode(new BigDecimal("001"));
|
|
|
+ details.setCommodityCnName(RegularUtils.regularEn(details.getCommodityCnName()));
|
|
|
+ inttraSoDto.setProductName(details.getCommodityCnName());
|
|
|
+ inttraSoDto.setGrossWeight(details.getGrossWeight());
|
|
|
+ inttraSoDto.setMeasurement(details.getMeasurement());
|
|
|
+ inttraSoDto.setMarks(details.getMarks());
|
|
|
+ details.setDgImdgCode(RegularUtils.regularEn(details.getDgImdgCode()));
|
|
|
+ inttraSoDto.setDgImdgCode(details.getDgImdgCode());
|
|
|
+ inttraSoDto.setPageNumber(new BigDecimal("007"));
|
|
|
+ inttraSoDto.setDgUnCode(1);
|
|
|
+ inttraSoDto.setDgFlashPoint(1);
|
|
|
+ inttraSoDto.setDgFlashPointUnit(details.getDgFlashPointUnit());
|
|
|
+ inttraSoDto.setPackingGroup("包装组别");
|
|
|
+ inttraSoDto.setEmergencyMeasureNo("应急措施号");
|
|
|
+ details.setDgRemarks(RegularUtils.regularEn(details.getDgRemarks()));
|
|
|
+ inttraSoDto.setDgRemarks(details.getDgRemarks());
|
|
|
+ inttraSoDto.setDgContacts(details.getDgContacts());
|
|
|
+ inttraSoDto.setDgTel(details.getDgTel());
|
|
|
+ inttraSoDto.setBoxCode(details.getQuantityCntrDescr());
|
|
|
+ inttraSoDto.setShipperBoxIdentification("货主箱标识");
|
|
|
+ Integer sum1 = details.getQuantityV20() + details.getQuantityV40() + details.getQuantityV45()
|
|
|
+ + details.getQuantityV48() + details.getQuantityV40hc();
|
|
|
+ inttraSoDto.setBoxNumber(new BigDecimal(sum1 + ""));
|
|
|
+ inttraSoDto.setVentilation("冷藏通风量");
|
|
|
+ inttraSoDto.setTemperature(1);
|
|
|
+ inttraSoDto.setTemperatureUnit("温度单位");
|
|
|
+ inttraSoDto.setRecordRows(new BigDecimal("10"));
|
|
|
+ inttraSoDto.setInformationNoEnd(inttraSoDto.getInformationNo());
|
|
|
+ inttraSoDto.setFileExchangeNumberEnd(inttraSoDto.getFileExchangeNumber());
|
|
|
+
|
|
|
+ FilesCenter filesCenter = EDISender.sendingInttraSo(inttraSoDto);
|
|
|
+
|
|
|
+ //发送edi记录
|
|
|
+ EdiLog ediLog = new EdiLog();
|
|
|
+ ediLog.setBillId(details.getId());
|
|
|
+ ediLog.setBillNo(details.getBillNo());
|
|
|
+ ediLog.setMblno(details.getMblno());
|
|
|
+ ediLog.setHblno(details.getHblno());
|
|
|
+ ediLog.setPid(ediTypes.getId());
|
|
|
+ ediLog.setSenderDate(new Date());
|
|
|
+ ediLog.setBranchId(details.getBranchId());
|
|
|
+ ediLog.setCreateDept(details.getCreateDept());
|
|
|
+ ediLog.setCreateTime(details.getCreateTime());
|
|
|
+ ediLog.setCreateDeptName(details.getCreateDeptName());
|
|
|
+ ediLog.setCreateUser(details.getCreateUser());
|
|
|
+ ediLog.setCreateUserName(details.getCreateUserName());
|
|
|
+ ediLog.setRemarks("发送成功");
|
|
|
+ ediLog.setStatus(1);
|
|
|
+ ediLogService.save(ediLog);
|
|
|
+
|
|
|
+ //发送edi文件
|
|
|
+ filesCenter.setMblno(details.getMblno());
|
|
|
+ filesCenter.setHblno(details.getHblno());
|
|
|
+ filesCenter.setBillNo(details.getBillNo());
|
|
|
+ filesCenter.setBranchId(details.getBranchId());
|
|
|
+ filesCenter.setCreateDept(details.getCreateDept());
|
|
|
+ filesCenter.setCreateTime(details.getCreateTime());
|
|
|
+ filesCenter.setCreateDeptName(details.getCreateDeptName());
|
|
|
+ filesCenter.setCreateUser(details.getCreateUser());
|
|
|
+ filesCenter.setCreateUserName(details.getCreateUserName());
|
|
|
+ filesCenter.setPid(details.getId());
|
|
|
+ filesCenter.setItemId(ediLog.getId());
|
|
|
+ filesCenter.setBusinessType(details.getBusinessType());
|
|
|
+ filesCenter.setClassifyCode("edi");
|
|
|
+ filesCenter.setGroupCode("SO");
|
|
|
+ filesCenter.setSerialNo(1);
|
|
|
+ filesCenter.setSort(1);
|
|
|
+ filesCenter.setReceivedData(new Date());
|
|
|
+ filesCenter.setIsImage(0);
|
|
|
+ filesCenter.setTenantId(AuthUtil.getTenantId());
|
|
|
+ filesCenterList.add(filesCenter);
|
|
|
+ }
|
|
|
+ billsService.updateBatchById(billsList);
|
|
|
+ }
|
|
|
+ filesCenterService.saveOrUpdateBatch(filesCenterList);
|
|
|
+ return R.data("发送成功");
|
|
|
+ }
|
|
|
+
|
|
|
}
|