新增委托验收同步

master
anthonyywj2 3 years ago
parent 300076f48f
commit 551a6c7745

@ -70,6 +70,8 @@ public class SpsSyncDownloadController {
logs = logs + "业务单据类型:" + baseResponse.getData().getBussinessLocalTypeEntities().size() + "条\n";
if (CollUtil.isNotEmpty(baseResponse.getData().getBussinessOriginTypeEntities()))
logs = logs + "第三方单据类型:" + baseResponse.getData().getBussinessOriginTypeEntities().size() + "条\n";
if (CollUtil.isNotEmpty(baseResponse.getData().getEntrustReceEntities()))
logs = logs + "委托验收设置:" + baseResponse.getData().getEntrustReceEntities().size() + "条\n";
basicExportStatusEntity.setRemark(logs);
basicExportService.updateExportStatus(basicExportStatusEntity);
}

@ -98,17 +98,25 @@ public class SpsSyncDownloadService {
syncDataResponse.setInvWarehouseEntities(invWarehouseEntities);
if (CollUtil.isNotEmpty(invWarehouseEntities)) {
//仓库关联单据类型
FilterInvBusTypeRequest filterInvBusTypeRequest = new FilterInvBusTypeRequest();
BeanUtils.copyProperties(spsSyncDataRequest, filterInvBusTypeRequest);
List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.filterList(filterInvBusTypeRequest);
syncDataResponse.setWarehouseBussinessTypeEntities(warehouseBussinessTypeEntities);
//仓库关联用户
FilterInvUserRequest filterInvUserRequest = new FilterInvUserRequest();
BeanUtils.copyProperties(spsSyncDataRequest, filterInvBusTypeRequest);
List<WarehouseUserEntity> warehouseUserEntities = warehouseUserService.filterWarehouseUsers(filterInvUserRequest);
syncDataResponse.setWarehouseUserEntities(warehouseUserEntities);
List<WarehouseBussinessTypeEntity> mWarehouseBussinessTypeEntities = new ArrayList<>();
List<WarehouseUserEntity> mWarehouseUserEntities = new ArrayList<>();
for (InvWarehouseEntity invWarehouseEntity : invWarehouseEntities) {
//仓库关联单据类型
FilterInvBusTypeRequest filterInvBusTypeRequest = new FilterInvBusTypeRequest();
filterInvBusTypeRequest.setCode(invWarehouseEntity.getCode());
List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.filterList(filterInvBusTypeRequest);
mWarehouseBussinessTypeEntities.addAll(warehouseBussinessTypeEntities);
//仓库关联用户
FilterInvUserRequest filterInvUserRequest = new FilterInvUserRequest();
filterInvUserRequest.setCode(invWarehouseEntity.getCode());
List<WarehouseUserEntity> warehouseUserEntities = warehouseUserService.filterWarehouseUsers(filterInvUserRequest);
mWarehouseUserEntities.addAll(warehouseUserEntities);
}
syncDataResponse.setWarehouseUserEntities(mWarehouseUserEntities);
syncDataResponse.setWarehouseBussinessTypeEntities(mWarehouseBussinessTypeEntities);
}
@ -201,6 +209,8 @@ public class SpsSyncDownloadService {
BussinessOriginTypeService bussinessOriginTypeService;
@Resource
private BussinessChangeTypeService bussinessChangeTypeService;
@Resource
private EntrustReceService entrustReceService;
public BaseResponse findBusType(SpsSyncDataRequest spsSyncDataRequest) {
@ -232,12 +242,25 @@ public class SpsSyncDownloadService {
spsSyncBusResponse.setBussinessLocalTypeEntities(spsBusLoclTypeResponses);
spsSyncBusResponse.setBussinessChangeTypeEntities(allBussinessChanges);
}
//第三方单据类型
if (syncDataSetEntity.isTypeThird()) {
BussinessOriginTypeFilterRequest bussinessOriginTypeFilterRequest = new BussinessOriginTypeFilterRequest();
BeanUtils.copyProperties(spsSyncDataRequest, bussinessOriginTypeFilterRequest);
List<BussinessOriginTypeEntity> bussinessOriginTypeEntities = bussinessOriginTypeService.filterList(bussinessOriginTypeFilterRequest);
spsSyncBusResponse.setBussinessOriginTypeEntities(bussinessOriginTypeEntities);
}
//委托验收
if (syncDataSetEntity.isEntrustAction()) {
BasicEntrustRecRequest basicEntrustRecRequest = new BasicEntrustRecRequest();
BeanUtils.copyProperties(spsSyncDataRequest, basicEntrustRecRequest);
List<EntrustReceEntity> dlEntrustReceEntities = entrustReceService.filterEntrustRec(basicEntrustRecRequest);
if (CollUtil.isNotEmpty(dlEntrustReceEntities)) {
List<EntrustReceEntity> temps = entrustReceService.filterEntrustRec(new BasicEntrustRecRequest());
spsSyncBusResponse.setEntrustReceEntities(temps);
}
}
return ResultVOUtils.success(spsSyncBusResponse);
}

@ -22,6 +22,7 @@ import com.glxp.sale.admin.res.basic.SpsSyncDataResponse;
import com.glxp.sale.admin.res.basic.SpsSyncOrderResponse;
import com.glxp.sale.admin.service.basic.BasicUnitMaintainService;
import com.glxp.sale.admin.service.basic.BussinessChangeTypeService;
import com.glxp.sale.admin.service.basic.EntrustReceService;
import com.glxp.sale.admin.service.basic.UdiRelevanceService;
import com.glxp.sale.admin.service.info.CompanyProductRelevanceService;
import com.glxp.sale.admin.service.inout.OrderService;
@ -63,6 +64,8 @@ public class SpsSyncUploadController {
WarehouseBussinessTypeDao warehouseBussinessTypeDao;
@Resource
BussinessChangeTypeService bussinessChangeTypeService;
@Resource
EntrustReceService entrustReceService;
@PostMapping("sps/sync/basic/upload")
public BaseResponse findProductInfo(@RequestBody SpsSyncDataResponse syncDataResponse) {
@ -112,10 +115,28 @@ public class SpsSyncUploadController {
List<InvWarehouseEntity> invWarehouseEntities = syncDataResponse.getInvWarehouseEntities();
for (InvWarehouseEntity invWarehouseEntity : invWarehouseEntities) {
invWarehouseEntity.setUpdateTime(null);
warehouseUserDao.deleteByCode(invWarehouseEntity.getCode());
warehouseBussinessTypeDao.deleteByCode(invWarehouseEntity.getCode());
}
invWarehouseService.importInvWarehouse(syncDataResponse.getInvWarehouseEntities());
}
//仓库用户表
if (CollUtil.isNotEmpty(syncDataResponse.getWarehouseUserEntities())) {
for (WarehouseUserEntity warehouseUserEntity : syncDataResponse.getWarehouseUserEntities()) {
warehouseUserDao.insertOrUpdate(warehouseUserEntity);
}
}
//仓库单据类型表
if (CollUtil.isNotEmpty(syncDataResponse.getWarehouseBussinessTypeEntities())) {
for (WarehouseBussinessTypeEntity warehouseUserEntity : syncDataResponse.getWarehouseBussinessTypeEntities()) {
warehouseBussinessTypeDao.insertOrUpdate(warehouseUserEntity);
}
}
//关联表导入
if (CollUtil.isNotEmpty(syncDataResponse.getUdiRelevanceEntities())) {
try {
@ -187,20 +208,6 @@ public class SpsSyncUploadController {
}
}
//仓库用户表
if (CollUtil.isNotEmpty(syncDataResponse.getWarehouseUserEntities())) {
for (WarehouseUserEntity warehouseUserEntity : syncDataResponse.getWarehouseUserEntities()) {
warehouseUserDao.insertOrUpdate(warehouseUserEntity);
}
}
//仓库单据类型表
if (CollUtil.isNotEmpty(syncDataResponse.getWarehouseBussinessTypeEntities())) {
for (WarehouseBussinessTypeEntity warehouseUserEntity : syncDataResponse.getWarehouseBussinessTypeEntities()) {
warehouseBussinessTypeDao.insertOrUpdate(warehouseUserEntity);
}
}
//第三方产品信息导入
if (CollUtil.isNotEmpty(syncDataResponse.getThrProductsEntities())) {
@ -327,6 +334,15 @@ public class SpsSyncUploadController {
} catch (Exception e) {
}
}
if (CollUtil.isNotEmpty(syncDataResponse.getEntrustReceEntities())) {
entrustReceService.deleteAll();
for (EntrustReceEntity entrustReceEntity : syncDataResponse.getEntrustReceEntities()) {
entrustReceEntity.setUpdateTime(null);
entrustReceService.insertEntrustRec(entrustReceEntity);
}
}
batchSession.close();
}

@ -23,6 +23,8 @@ public interface EntrustReceDao {
boolean deleteById(String id);
boolean deleteAll();
boolean updateEntrustRec(EntrustReceEntity warehouseEntity);
}

@ -23,6 +23,13 @@ public class SyncDataSetEntity {
private boolean orderUnReceive;
private boolean orderUnCheck;
private String busTypes;
private Integer syncTime;
private boolean sysUser;
private Integer syncTime;
private Integer orderSyncTime;
private String orderSyncStart;
private String basicSyncStart;
private boolean entrustAction;
}

@ -13,6 +13,7 @@ public class SpsSyncBusResponse {
private List<BussinessOriginTypeEntity> bussinessOriginTypeEntities;
private List<SpsBusLoclTypeResponse> bussinessLocalTypeEntities;
private List<BussinessChangeTypeEntity> bussinessChangeTypeEntities;
private List<EntrustReceEntity> entrustReceEntities;
}

@ -26,5 +26,10 @@ public class SyncDataSetResponse {
private List<String> busTypes;
private Integer syncTime;
private Integer orderSyncTime;
private String orderSyncStart;
private String basicSyncStart;
private boolean entrustAction;
}

@ -23,6 +23,8 @@ public interface EntrustReceService {
boolean deleteById(String id);
boolean deleteAll();
boolean updateEntrustRec(EntrustReceEntity warehouseEntity);
}

@ -80,6 +80,11 @@ public class EntrustReceServiceImpl implements EntrustReceService {
return entrustReceDao.deleteById(id);
}
@Override
public boolean deleteAll() {
return entrustReceDao.deleteAll();
}
@Override
public boolean updateEntrustRec(EntrustReceEntity entrustReceEntity) {
return entrustReceDao.updateEntrustRec(entrustReceEntity);

@ -25,6 +25,9 @@
<if test="curInv!=null">
and curInv = #{curInv}
</if>
<if test="lastUpdateTime!=null and lastUpdateTime!=''">
<![CDATA[ and DATE_FORMAT(updateTime, '%Y-%m-%d %H:%i:%S')>= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]>
</if>
</where>
order by updateTime desc
</select>
@ -54,6 +57,9 @@
<if test="userId!=null">
and basic_entrust_accept.userId = #{userId}
</if>
<if test="lastUpdateTime!=null and lastUpdateTime!=''">
<![CDATA[ and DATE_FORMAT(updateTime, '%Y-%m-%d %H:%i:%S')>= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]>
</if>
</where>
</select>
@ -96,9 +102,8 @@
<insert id="insertEntrustRec" keyProperty="id"
parameterType="com.glxp.sale.admin.entity.basic.EntrustReceEntity">
replace
INTO basic_entrust_accept(id,`action`, entrustInv, `entrustUser`, userId, updateTime, remark,entrustAction,finishRece,curInv)
INTO basic_entrust_accept(`action`, entrustInv, `entrustUser`, userId, updateTime, remark,entrustAction,finishRece,curInv)
values (
#{id},
#{action},
#{entrustInv},
#{entrustUser},
@ -132,4 +137,9 @@
WHERE id = #{id}
</delete>
<delete id="deleteAll" parameterType="Map">
DELETE
FROM basic_entrust_accept
</delete>
</mapper>

@ -16,7 +16,7 @@
INTO sync_data_set(id,typeBus, typeScan,
typeThird, basicProducts, basicCorp, basicInv, basicThirdProducts, basicThirdCorp, basicThirdInv
, basicThirdBusOrder, orderScanFinish, dbDiProducts,downstreamEnable,syncTime,
orderUnReceive,orderUnCheck,busTypes,sysUser)
orderUnReceive,orderUnCheck,busTypes,sysUser,orderSyncTime,orderSyncStart,basicSyncStart,entrustAction)
values (
#{id},
#{typeBus},
@ -32,7 +32,14 @@
#{orderScanFinish},
#{dbDiProducts},
#{downstreamEnable},
#{syncTime},#{orderUnReceive},#{orderUnCheck},#{busTypes},#{sysUser}
#{syncTime},
#{orderUnReceive},
#{orderUnCheck},
#{busTypes},
#{sysUser},
#{orderSyncTime},
#{orderSyncStart},
#{basicSyncStart},#{entrustAction}
)
</insert>

@ -22,6 +22,9 @@ import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.spec.PKCS8EncodedKeySpec;
import java.security.spec.X509EncodedKeySpec;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
public class TestUtils extends BaseApiAdminApplicationTest {
@ -163,4 +166,28 @@ public class TestUtils extends BaseApiAdminApplicationTest {
return outStr;
}
public static long getStartTime(String startTime) {
final SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
final Date datetime;//将你的日期转换为时间戳
try {
datetime = sdf.parse(startTime);
final long time = datetime.getTime();
long curTime = System.currentTimeMillis();
if (curTime - time > 0) {
return 24 * 60 * 60 * 1000 - (curTime - time);
} else
return time - curTime;
} catch (ParseException e) {
e.printStackTrace();
}
return 0;
}
@Test
public void testTime(){
System.out.println(getStartTime("17:30:01")+"");
}
}
Loading…
Cancel
Save