单据上传重盖

pro
anthonywj 2 years ago
parent eb3f48ce04
commit d3697401a2

@ -162,9 +162,7 @@ public class PurApplyController {
purApplyEntity.setAuditTime(new Date());
purApplyEntity.setAuditUser(userId + "");
purApplyService.update(purApplyEntity);
//System.out.println("666666666666666666++"+purApplyRequest.getStatus());
if (purApplyRequest.getStatus() == 3) {
// generateDocument(purApplyEntity);
purChangeService.purApplyChange(purApplyEntity);
}

@ -1,20 +1,17 @@
package com.glxp.api.controller.thrsys;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.system.SyncDataBustypeEntity;
import com.glxp.api.entity.system.SyncUploadDataSetEntity;
import com.glxp.api.entity.thrsys.ThrSystemEntity;
import com.glxp.api.req.thrsys.FilterBasicThirdSysRequest;
import com.glxp.api.entity.thrsys.ThrOrderUploadBustypesEntity;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.service.system.SyncUploadDataBustypeService;
import com.glxp.api.service.system.SyncUploadDataSetService;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import org.springframework.validation.BindingResult;
import com.glxp.api.service.thrsys.ThrOrderUploadBustypesService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -22,6 +19,8 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@RestController
@ -29,7 +28,7 @@ public class ThirdUploadSetController {
@Resource
SyncUploadDataSetService syncUploadDataSetService;
@Resource
SyncUploadDataBustypeService syncUploadDataBustypeService;
ThrOrderUploadBustypesService thrOrderUploadBustypesService;
@AuthRuleAnnotation("system/third/syncData/config")
@GetMapping("/system/third/syncData/config")
@ -43,11 +42,6 @@ public class ThirdUploadSetController {
@PostMapping("/system/third/syncData/save")
public BaseResponse save(@RequestBody @Valid SyncUploadDataSetEntity syncUploadDataSetEntity
) {
List<SyncDataBustypeEntity> busTypes = syncUploadDataSetEntity.getBusTypes();
syncUploadDataBustypeService.deleteAll();
if (CollUtil.isNotEmpty(busTypes))
syncUploadDataBustypeService.inserts(busTypes);
syncUploadDataSetEntity.setBusTypes(null);
boolean b = syncUploadDataSetService.insert(syncUploadDataSetEntity);
if (!b) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);
@ -55,32 +49,65 @@ public class ThirdUploadSetController {
return ResultVOUtils.success();
}
@AuthRuleAnnotation("system/third/syncData/getBus")
@GetMapping("/system/third/syncData/getBus")
public BaseResponse getBuslist() {
List<ThrOrderUploadBustypesEntity> thrOrderUploadBustypesEntities = thrOrderUploadBustypesService.list();
return ResultVOUtils.success(thrOrderUploadBustypesEntities);
}
// 添加单据类型
@AuthRuleAnnotation("system/third/syncData/addBus")
@PostMapping("/system/third/syncData/addBus")
public BaseResponse addBus(@RequestBody @Valid SyncUploadDataSetEntity syncUploadDataSetEntity
) {
if (CollUtil.isEmpty(syncUploadDataSetEntity.getBusTypes())) {
return ResultVOUtils.error(500, "未选入单据类型");
}
List<ThrOrderUploadBustypesEntity> bustypesEntities = syncUploadDataSetEntity.getBusTypes();
if (CollUtil.isNotEmpty(bustypesEntities)) {
for (ThrOrderUploadBustypesEntity thrOrderUploadBustypesEntity : bustypesEntities) {
if (!thrOrderUploadBustypesService.isExit(thrOrderUploadBustypesEntity.getAction())) {
thrOrderUploadBustypesEntity.setOrderStatus(3);
thrOrderUploadBustypesEntity.setUpdateTime(new Date());
thrOrderUploadBustypesEntity.setCreateTime(new Date());
thrOrderUploadBustypesEntity.setOrderSource(Arrays.asList("2"));
thrOrderUploadBustypesService.save(thrOrderUploadBustypesEntity);
}
}
}
return ResultVOUtils.success();
}
// 移除单据类型
@AuthRuleAnnotation("system/third/syncData/removeBus")
@PostMapping("/system/third/syncData/removeBus")
public BaseResponse removeBus(@RequestBody @Valid DeleteRequest deleteRequest
) {
thrOrderUploadBustypesService.removeById(deleteRequest.getId());
return ResultVOUtils.success("删除成功!");
}
// 单据类型编辑
@AuthRuleAnnotation("system/third/syncData/editBus")
@PostMapping("/system/third/syncData/editBus")
public BaseResponse editBus(@RequestBody @Valid ThrOrderUploadBustypesEntity thrOrderUploadBustypesEntity
) {
thrOrderUploadBustypesService.updateById(thrOrderUploadBustypesEntity);
return ResultVOUtils.success("更新成功!");
}
//编辑
@AuthRuleAnnotation("system/third/syncData/update")
@GetMapping("/system/third/syncData/update")
public BaseResponse update(@RequestBody @Valid SyncUploadDataSetEntity syncUploadDataSetEntity) {
// 获取需要更新的数据集ID
Long dataSetId = Long.valueOf(syncUploadDataSetEntity.getId());
// 根据数据集ID查询原有数据集信息
SyncUploadDataSetEntity oldDataSet = syncUploadDataSetService.getById(dataSetId);
if (oldDataSet == null) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);
}
// // 更新数据集信息
// oldDataSet.setName(syncUploadDataSetEntity.getName());
// oldDataSet.setDescription(syncUploadDataSetEntity.getDescription());
// oldDataSet.setUpdateTime(new Date());
// 更新数据集业务类型信息
// List<SyncDataBustypeEntity> busTypes = syncUploadDataSetEntity.getBusTypes();
// syncUploadDataBustypeService.deleteByDataSetId(dataSetId);
// if (CollUtil.isNotEmpty(busTypes)) {
// for (SyncDataBustypeEntity busType : busTypes) {
// busType.setDataSetId(dataSetId);
// }
// syncUploadDataBustypeService.inserts(busTypes);
// }
// 保存更新后的数据集信息
boolean b = syncUploadDataSetService.updateById(oldDataSet);
boolean b = syncUploadDataSetService.updateById(syncUploadDataSetEntity);
if (!b) {
return ResultVOUtils.error(ResultEnum.NOT_NETWORK);
}

@ -28,8 +28,4 @@ public class SyncDataBustypeEntity {
private Integer syncStatus; //同步后单据状态
@TableField(value = "`syncChange`")
private boolean syncChange; //同步后是否自动补单
@TableField(value = "`createTime`")
private String createTime; //创建时间
@TableField(value = "`updateTime`")
private String updateTime; //更新时间
}

@ -1,5 +1,6 @@
package com.glxp.api.entity.system;
import com.glxp.api.entity.thrsys.ThrOrderUploadBustypesEntity;
import lombok.Data;
import java.util.List;
@ -26,5 +27,5 @@ public class SyncUploadDataSetEntity {
private String orderStartTime;
private List<SyncDataBustypeEntity> busTypes;
private List<ThrOrderUploadBustypesEntity> busTypes;
}

@ -7,12 +7,15 @@ import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
@Data
@TableName(value = "thr_order_upload_bustypes")
@TableName(value = "thr_order_upload_bustypes", autoResultMap = true)
public class ThrOrderUploadBustypesEntity implements Serializable {
@TableId(value = "id", type = IdType.INPUT)
@ -33,8 +36,8 @@ public class ThrOrderUploadBustypesEntity implements Serializable {
/**
* ()
*/
@TableField(value = "orderSource", typeHandler = FastjsonTypeHandler.class)
private String orderSource;
@TableField(value = "orderSource", typeHandler = JacksonTypeHandler.class)
private List<String> orderSource;
/**
*
@ -42,6 +45,14 @@ public class ThrOrderUploadBustypesEntity implements Serializable {
@TableField(value = "`createUser`")
private String createUser;
/**
*
*/
@JsonFormat(pattern = "yyyy-MM-dd")
@TableField(value = "`orderStartTime`")
private Date orderStartTime;
/**
*
*/

@ -27,6 +27,7 @@ import com.glxp.api.entity.basic.BasicCorpEntity;
import com.glxp.api.entity.inout.*;
import com.glxp.api.entity.inv.*;
import com.glxp.api.entity.system.SyncDataBustypeEntity;
import com.glxp.api.entity.thrsys.ThrOrderUploadBustypesEntity;
import com.glxp.api.entity.thrsys.ThrSystemBusApiEntity;
import com.glxp.api.entity.thrsys.ThrSystemDetailEntity;
import com.glxp.api.entity.thrsys.ThrSystemEntity;
@ -41,7 +42,9 @@ import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.inv.*;
import com.glxp.api.service.system.SyncUploadDataBustypeService;
import com.glxp.api.service.thrsys.ThrOrderUploadBustypesService;
import com.glxp.api.util.DateUtil;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.udi.UdiCalCountUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
@ -634,7 +637,7 @@ public class IoOrderServiceImpl implements IoOrderService {
filterOrderRequest.setDealStatuses(Arrays.asList(2));
break;
case Constant.ORDER_STATUS_CHECKED_ERROR:
filterOrderRequest.setStatuses(Arrays.asList(6,4));
filterOrderRequest.setStatuses(Arrays.asList(6, 4));
filterOrderRequest.setDealStatuses(Arrays.asList(2));
break;
case Constant.ORDER_STATUS_CHECK_SUCCESS:
@ -818,7 +821,6 @@ public class IoOrderServiceImpl implements IoOrderService {
public BaseResponse submitToThrSys(String billNo) {
//查询单据类型
String billType = orderDao.selectActionByBillNo(billNo);
//查询此单据类型对应的第三方系统ID
ThrSystemBusApiEntity thrSystemBusApiEntity = thrSystemBusApiDao.selectByCode(billType);
//查询第三方系统
@ -849,6 +851,10 @@ public class IoOrderServiceImpl implements IoOrderService {
return orderDao.exists(new QueryWrapper<IoOrderEntity>().eq("action", action));
}
@Resource
ThrOrderUploadBustypesService thrOrderUploadBustypesService;
@Override
public BaseResponse submitOrderToThrSys(ThrSystemDetailEntity thrSystemDetailEntity) {
//查询可以提交到第三方系统的单据
@ -856,7 +862,34 @@ public class IoOrderServiceImpl implements IoOrderService {
if (CollUtil.isNotEmpty(billNos)) {
log.info("开始提交单据到第三方系统,本次提交单据数量:{}", billNos.size());
for (String billNo : billNos) {
submitToThrSys(billNo);
IoOrderEntity orderEntity = findByBillNo(billNo);
ThrOrderUploadBustypesEntity thrOrderUploadBustypesEntity = thrOrderUploadBustypesService.findByAction(orderEntity.getAction());
if (thrOrderUploadBustypesEntity == null) {
log.error(billNo + ":" + orderEntity.getAction() + "单据类型未设置自动上传");
return ResultVOUtils.error(500, billNo + ":" + orderEntity.getAction() + "单据类型未设置自动上传");
}
if (thrOrderUploadBustypesEntity.getOrderSource().contains(orderEntity.getFromType() + "")) {
log.error(billNo + ":" + "单据来源不允许自动提交");
return ResultVOUtils.error(500, billNo + ":" + "单据来源不允许自动提交");
}
if (IntUtil.value(thrOrderUploadBustypesEntity.getOrderStatus()) == 1) {
if (orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_CHECK_REW) {
log.error(billNo + ":" + "非待审核单据");
return ResultVOUtils.error(500, billNo + ":" + "非待审核单据");
}
} else if (IntUtil.value(thrOrderUploadBustypesEntity.getOrderStatus()) == 2) {
if (orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_AUDITED) {
log.error(billNo + ":" + "非已审核单据");
return ResultVOUtils.error(500, billNo + ":" + "非已审核单据");
}
} else if (IntUtil.value(thrOrderUploadBustypesEntity.getOrderStatus()) == 3) {
if (IntUtil.value(orderEntity.getCheckStatus()) != 1) {
log.error(billNo + ":" + "非已确认单据");
return ResultVOUtils.error(500, billNo + ":" + "非已确认单据");
}
}
return submitToThrSys(billNo);
}
log.info("单据提交完成");
}

@ -26,8 +26,6 @@ public class SyncDataBustypeServiceImpl extends ServiceImpl<SyncDataBustypeDao,
@Override
public SyncDataBustypeEntity findByAction(String action, Integer direct) {
List<SyncDataBustypeEntity> syncDataBustypeEntities = syncDataBustypeDao.selectList(new QueryWrapper<SyncDataBustypeEntity>().eq(direct != null, "direct", direct).eq("action", action));
if (CollUtil.isNotEmpty(syncDataBustypeEntities)) {
return syncDataBustypeEntities.get(0);

@ -17,8 +17,6 @@ public class SyncUploadDataSetServiceImpl implements SyncUploadDataSetService {
@Resource
SyncUploadDataSetDao syncUploadDataSetDao;
@Resource
SyncUploadDataBustypeService syncUploadDataBustypeService;
@Override
public SyncUploadDataSetEntity findSet() {
@ -36,8 +34,6 @@ public class SyncUploadDataSetServiceImpl implements SyncUploadDataSetService {
syncDataSetEntity.setOrderSyncTime(1);
syncUploadDataSetDao.insert(syncDataSetEntity);
}
List<SyncDataBustypeEntity> syncDataBustypeEntities = syncUploadDataBustypeService.findAll();
syncDataSetEntity.setBusTypes(syncDataBustypeEntities);
return syncDataSetEntity;
}

@ -1,10 +1,26 @@
package com.glxp.api.service.thrsys;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.dao.thrsys.ThrOrderUploadBustypesMapper;
import com.glxp.api.entity.thrsys.ThrOrderUploadBustypesEntity;
import javax.annotation.Resource;
@Service
public class ThrOrderUploadBustypesService extends ServiceImpl<ThrOrderUploadBustypesMapper, ThrOrderUploadBustypesEntity> {
@Resource
ThrOrderUploadBustypesMapper thrOrderUploadBustypesMapper;
public boolean isExit(String action) {
return thrOrderUploadBustypesMapper.exists(new QueryWrapper<ThrOrderUploadBustypesEntity>().eq("action", action));
}
public ThrOrderUploadBustypesEntity findByAction(String action) {
return thrOrderUploadBustypesMapper.selectOne(new QueryWrapper<ThrOrderUploadBustypesEntity>().eq("action", action));
}
}

@ -481,4 +481,9 @@ CALL Pro_Temp_ColumnWork('io_stat_year', 'deptCode', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('io_order_detail_code', 'updateTime', 'datetime', 1);
CALL Pro_Temp_ColumnWork('basic_products', 'pinyinInitial', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_products', 'pinyinInitial', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('thr_order_upload_bustypes', 'orderStatus', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('thr_order_upload_bustypes', 'orderStartTime', 'datetime', 1);
CALL Pro_Temp_ColumnWork('thr_order_upload_bustypes', 'orderSource', 'varchar(1024)', 1);

Loading…
Cancel
Save