摆货相关修改,添加货位查询,预验收,寄售等相关库存摆货

master
anthonywj 2 years ago
parent a9fd3f2c2b
commit 3cae7526bc

@ -285,5 +285,5 @@ public class Constant {
public static final String ORDER_ACTION_SUP_INOUT = "supInout"; public static final String ORDER_ACTION_SUP_INOUT = "supInout";
public static final String ORDER_ACTION_SUP_PREIN = "preInOrder"; public static final String ORDER_ACTION_SUP_PREIN = "preInOrder";
public static final String SYNC_REMARK = "syncRemark";
} }

@ -269,7 +269,7 @@ public class InvWarehouseController extends BaseController {
} }
InvWarehouseEntity originEntity = invWarehouseService.findByInvSubByCode(invWarehouseEntity.getCode()); InvWarehouseEntity originEntity = invWarehouseService.findByInvSubByCode(invWarehouseEntity.getCode());
if (!originEntity.getParentId().equals(invWarehouseEntity.getParentId()) || !originEntity.getParentCode().equals(invWarehouseEntity.getParentCode())) { if (!originEntity.getParentId().equals(invWarehouseEntity.getParentId()) || (originEntity.getParentCode() != null && !originEntity.getParentCode().equals(invWarehouseEntity.getParentCode()))) {
Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode()); Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode());
if (userCount > 0) { if (userCount > 0) {
return ResultVOUtils.error(500, "修改部门或上级仓库时,请先移除该仓库关联用户!"); return ResultVOUtils.error(500, "修改部门或上级仓库时,请先移除该仓库关联用户!");

@ -52,8 +52,7 @@ public class InvPlaceController {
if (null == bindInvSpaceRequest) { if (null == bindInvSpaceRequest) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
} }
invPlaceService.bindInvSpace(bindInvSpaceRequest); return invPlaceService.bindInvSpace(bindInvSpaceRequest);
return ResultVOUtils.success("绑定成功");
} }
/** /**

@ -74,8 +74,14 @@ public class InvProductController extends BaseController {
filterInvProductRequest.setInvCodes(invCodes); filterInvProductRequest.setInvCodes(invCodes);
} }
} }
List<InvProductResponse> list;
if (StrUtil.isNotEmpty(filterInvProductRequest.getInvSpaceCode())) {
list = invProductService.findGroupBySpace(filterInvProductRequest);
} else {
list = invProductService.filterListProduct(filterInvProductRequest);
}
List<InvProductResponse> list = invProductService.filterListProduct(filterInvProductRequest);
PageInfo<InvProductResponse> pageInfo = new PageInfo<>(list); PageInfo<InvProductResponse> pageInfo = new PageInfo<>(list);
InvProductPageResponse<InvProductResponse> pageResponse = new InvProductPageResponse(); InvProductPageResponse<InvProductResponse> pageResponse = new InvProductPageResponse();
pageResponse.setList(pageInfo.getList()); pageResponse.setList(pageInfo.getList());

@ -2,9 +2,14 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity; import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest; import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.res.inv.InvPreinProductResponse;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -22,6 +27,8 @@ public interface InvPreInProductDetailDao extends BaseMapperPlus<InvPreInProduct
*/ */
List<InvPreInProductDetailEntity> filterPreProductDetailList(FilterInvPreProductDetailRequest filterInvPreProductDetailRequest); List<InvPreInProductDetailEntity> filterPreProductDetailList(FilterInvPreProductDetailRequest filterInvPreProductDetailRequest);
List<InvPreinProductResponse> findGroupBySpace(FilterInvPreinProductRequest filterInvPreinProductRequest);
/** /**
* *
* *
@ -29,4 +36,9 @@ public interface InvPreInProductDetailDao extends BaseMapperPlus<InvPreInProduct
* @return * @return
*/ */
boolean deleteInvPreProductDetail(FilterInvProductDetailRequest detailRequest); boolean deleteInvPreProductDetail(FilterInvProductDetailRequest detailRequest);
List<InvPlaceDetailResponse> getInvProductInfo(FilterInvPlaceRequest filterInvPlaceRequest);
void batchBindSpace(@Param("ids") List<Integer> ids, @Param("invSpaceCode") String invSpaceCode);
} }

@ -2,8 +2,11 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvPreProductEntity; import com.glxp.api.entity.inv.InvPreProductEntity;
import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.req.inv.FilterInvPreProductRequest; import com.glxp.api.req.inv.FilterInvPreProductRequest;
import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.res.inv.InvPreProductResponse; import com.glxp.api.res.inv.InvPreProductResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -20,6 +23,8 @@ public interface InvPreProductDao extends BaseMapperPlus<InvPreProductDao, InvPr
*/ */
List<InvPreProductResponse> filterList(FilterInvPreProductRequest invPreProductRequest); List<InvPreProductResponse> filterList(FilterInvPreProductRequest invPreProductRequest);
/** /**
* *
* *
@ -28,4 +33,5 @@ public interface InvPreProductDao extends BaseMapperPlus<InvPreProductDao, InvPr
*/ */
List<InvPreProductEntity> filterPreProductList(FilterInvPreProductRequest invPreProductRequest); List<InvPreProductEntity> filterPreProductList(FilterInvPreProductRequest invPreProductRequest);
}
}

@ -2,8 +2,13 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvPreProductDetailEntity; import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest; import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.res.inv.InvPreinProductResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -12,6 +17,9 @@ import java.util.List;
*/ */
public interface InvPreProductDetailDao extends BaseMapperPlus<InvPreProductDetailDao, InvPreProductDetailEntity, InvPreProductDetailEntity> { public interface InvPreProductDetailDao extends BaseMapperPlus<InvPreProductDetailDao, InvPreProductDetailEntity, InvPreProductDetailEntity> {
List<InvPreinProductResponse> findGroupBySpace(FilterInvPreinProductRequest filterInvPreinProductRequest);
/** /**
* *
* *
@ -27,4 +35,9 @@ public interface InvPreProductDetailDao extends BaseMapperPlus<InvPreProductDeta
* @return * @return
*/ */
boolean deleteInvPreProductDetail(FilterInvProductDetailRequest detailRequest); boolean deleteInvPreProductDetail(FilterInvProductDetailRequest detailRequest);
}
List<InvPlaceDetailResponse> getInvProductInfo(FilterInvPlaceRequest filterInvPlaceRequest);
void batchBindSpace(@Param("ids") List<Integer> ids, @Param("invSpaceCode") String invSpaceCode);
}

@ -5,6 +5,7 @@ import com.glxp.api.entity.inv.InvPreinProductEntity;
import com.glxp.api.req.inv.FilterInvPreinProductRequest; import com.glxp.api.req.inv.FilterInvPreinProductRequest;
import com.glxp.api.res.inv.InvPreinProductResponse; import com.glxp.api.res.inv.InvPreinProductResponse;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -22,6 +23,8 @@ public interface InvPreinProductDao extends BaseMapperPlus<InvPreinProductDao, I
*/ */
List<InvPreinProductResponse> filterList(FilterInvPreinProductRequest invPreProductRequest); List<InvPreinProductResponse> filterList(FilterInvPreinProductRequest invPreProductRequest);
void batchBindSpace(@Param("ids") List<Integer> ids, @Param("invSpaceCode") String invSpaceCode);
/** /**
* *
* *

@ -3,10 +3,14 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvProductDetailEntity; import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPlaceRequest; import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.res.inout.IoOrderResponse; import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.res.inv.BindInvSpaceRequest; import com.glxp.api.res.inv.BindInvSpaceRequest;
import com.glxp.api.res.inv.InvPlaceDetailResponse; import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.res.inv.InvPreinProductResponse;
import com.glxp.api.res.inv.InvProductResponse;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -23,6 +27,9 @@ public interface InvProductDetailDao extends BaseMapperPlus<InvProductDetailDao,
*/ */
List<InvProductDetailEntity> filterInvProductDetailList(FilterInvProductDetailRequest filterInvProductDetailRequest); List<InvProductDetailEntity> filterInvProductDetailList(FilterInvProductDetailRequest filterInvProductDetailRequest);
List<InvProductResponse> findGroupBySpace(FilterInvProductRequest filterInvProductRequest);
/** /**
* *
* *

@ -34,7 +34,7 @@ public class BasicExportStatusEntity {
private Date endTime; private Date endTime;
private String remark; private String remark;
@TableField(value = "receiveStatus") @TableField(value = "receiveStatus")
private Integer receiveStatus; private String receiveStatus;
@TableField(value = "cacheFilePath") @TableField(value = "cacheFilePath")
private String cacheFilePath; private String cacheFilePath;

@ -208,10 +208,10 @@ public class SpGetHttpClient {
} }
public BaseResponse<List<BasicExportStatusEntity>> getBasicStatus(String type) { public BaseResponse<List<BasicExportStatusEntity>> getBasicStatus(String type,String status) {
Map<String, String> paramMap = new HashMap<>(16); Map<String, String> paramMap = new HashMap<>(16);
paramMap.put("type", type); paramMap.put("type", type);
paramMap.put("status", "1"); paramMap.put("status", status);
String response = okHttpCli.doGet(getIpUrl() + "/spssync/basic/udiinfo/getStatus", paramMap, buildHeader()); String response = okHttpCli.doGet(getIpUrl() + "/spssync/basic/udiinfo/getStatus", paramMap, buildHeader());
try { try {
BaseResponse<List<BasicExportStatusEntity>> data = BaseResponse<List<BasicExportStatusEntity>> data =

@ -88,6 +88,11 @@ public class FilterInvPreinProductRequest extends ListPageRequest {
*/ */
private String invCode; private String invCode;
// 货位编码
private String spaceCode;
/** /**
* *
*/ */

@ -127,4 +127,6 @@ public class InvPreProductDetailResponse {
*/ */
private String orderTime; private String orderTime;
private String invSpaceName;
} }

@ -126,4 +126,7 @@ public class InvProductDetailResponse {
* *
*/ */
private String orderTime; private String orderTime;
private String invSpaceName;
} }

@ -95,6 +95,9 @@ public class InvProductResponse {
*/ */
private String invName; private String invName;
// 货位名称
private String spaceName;
/** /**
* *
*/ */

@ -13,4 +13,5 @@ public class BaseSyncResponse {
private String updateTime; private String updateTime;
private String type; private String type;
private String idDatas; private String idDatas;
private String syncRemark;
} }

@ -2,6 +2,8 @@ package com.glxp.api.res.system;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
public class SystemPDFTemplateRelevanceResponse { public class SystemPDFTemplateRelevanceResponse {
@ -22,5 +24,6 @@ public class SystemPDFTemplateRelevanceResponse {
private String remark2; private String remark2;
private String remark3; private String remark3;
private int printType; private int printType;
private Date updateTime;
} }

@ -18,6 +18,8 @@ public interface InvSpaceService extends IService<InvSpace> {
*/ */
List<InvSpaceResponse> filterList(FilterInvSpaceRequest filterInvSpaceRequest); List<InvSpaceResponse> filterList(FilterInvSpaceRequest filterInvSpaceRequest);
InvSpace findByCode(String invCode, String spaceCode);
/** /**
* *
* *

@ -1,7 +1,9 @@
package com.glxp.api.service.auth.impl; package com.glxp.api.service.auth.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
@ -44,6 +46,17 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao, InvSpace> impl
return invSpaceDao.filterList(filterInvSpaceRequest); return invSpaceDao.filterList(filterInvSpaceRequest);
} }
@Override
public InvSpace findByCode(String invCode, String spaceCode) {
if (StrUtil.isEmpty(invCode) || StrUtil.isEmpty(spaceCode))
return null;
List<InvSpace> invSpaces = invSpaceDao.selectList(new QueryWrapper<InvSpace>()
.eq("invWarehouseCode", invCode).eq("code", spaceCode).last("limit 1"));
if (CollUtil.isNotEmpty(invSpaces))
return invSpaces.get(0);
return null;
}
@Override @Override
public BaseResponse addSpace(InvSpace invSpace) { public BaseResponse addSpace(InvSpace invSpace) {
BaseResponse verifyResult = verifySpaceParams(invSpace); BaseResponse verifyResult = verifySpaceParams(invSpace);
@ -56,7 +69,7 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao, InvSpace> impl
} }
//获取当前仓库下的最大货位编码 //获取当前仓库下的最大货位编码
String maxSpaceCode = invSpaceDao.getMaxSpaceCode(invSpace.getInvWarehouseCode()); String maxSpaceCode = invSpaceDao.getMaxSpaceCode(null);
if (StrUtil.isBlank(maxSpaceCode)) { if (StrUtil.isBlank(maxSpaceCode)) {
maxSpaceCode = "0000"; maxSpaceCode = "0000";
} }
@ -68,7 +81,8 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao, InvSpace> impl
invSpace.setUpdateTime(date); invSpace.setUpdateTime(date);
invSpace.setCreateUser(user.getUserName()); invSpace.setCreateUser(user.getUserName());
invSpace.setUpdateUser(user.getUserName()); invSpace.setUpdateUser(user.getUserName());
invSpaceDao.insertEntity(invSpace); invSpace.setId(IdUtil.getSnowflakeNextId());
invSpaceDao.insert(invSpace);
return ResultVOUtils.success(); return ResultVOUtils.success();
} }

@ -1,6 +1,7 @@
package com.glxp.api.service.inv; package com.glxp.api.service.inv;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.entity.auth.InvSpace;
import com.glxp.api.req.inv.FilterInvPlaceRequest; import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.res.inout.IoOrderResponse; import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.res.inv.BindInvSpaceRequest; import com.glxp.api.res.inv.BindInvSpaceRequest;
@ -26,7 +27,7 @@ public interface InvPlaceService {
* *
* @param bindInvSpaceRequest * @param bindInvSpaceRequest
*/ */
void bindInvSpace(BindInvSpaceRequest bindInvSpaceRequest); BaseResponse bindInvSpace(BindInvSpaceRequest bindInvSpaceRequest);
/** /**
* *

@ -33,6 +33,8 @@ public interface InvProductService {
*/ */
List<InvProductResponse> filterListProduct(FilterInvProductRequest filterInvProductRequest); List<InvProductResponse> filterListProduct(FilterInvProductRequest filterInvProductRequest);
List<InvProductResponse> findGroupBySpace(FilterInvProductRequest filterInvProductRequest);
/** /**
* ID * ID
* *

@ -7,9 +7,16 @@ import com.github.pagehelper.PageHelper;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.dao.auth.InvSpaceDao; import com.glxp.api.dao.auth.InvSpaceDao;
import com.glxp.api.dao.auth.InvWarehouseDao; import com.glxp.api.dao.auth.InvWarehouseDao;
import com.glxp.api.dao.inv.InvPreInProductDetailDao;
import com.glxp.api.dao.inv.InvPreProductDetailDao;
import com.glxp.api.dao.inv.InvProductDetailDao; import com.glxp.api.dao.inv.InvProductDetailDao;
import com.glxp.api.entity.auth.InvSpace;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.entity.inv.InvProductDetailEntity; import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.AddInvPlaceOrderRequest; import com.glxp.api.req.inv.AddInvPlaceOrderRequest;
import com.glxp.api.req.inv.FilterInvPlaceRequest; import com.glxp.api.req.inv.FilterInvPlaceRequest;
@ -18,11 +25,14 @@ import com.glxp.api.res.inv.BindInvSpaceRequest;
import com.glxp.api.res.inv.InvPlaceDetailResponse; import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.service.inv.InvPlaceOrderService; import com.glxp.api.service.inv.InvPlaceOrderService;
import com.glxp.api.service.inv.InvPlaceService; import com.glxp.api.service.inv.InvPlaceService;
import com.glxp.api.util.BeanCopyUtils;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -35,6 +45,10 @@ public class InvPlaceServiceImpl implements InvPlaceService {
@Resource @Resource
private InvProductDetailDao invProductDetailDao; private InvProductDetailDao invProductDetailDao;
@Resource @Resource
private InvPreProductDetailDao invPreProductDetailDao;
@Resource
private InvPreInProductDetailDao invPreInProductDetailDao;
@Resource
private InvWarehouseDao invWarehouseDao; private InvWarehouseDao invWarehouseDao;
@Resource @Resource
private InvSpaceDao invSpaceDao; private InvSpaceDao invSpaceDao;
@ -52,20 +66,62 @@ public class InvPlaceServiceImpl implements InvPlaceService {
return invProductDetailDao.selectPlaceDetailList(filterInvPlaceRequest); return invProductDetailDao.selectPlaceDetailList(filterInvPlaceRequest);
} }
@Override @Override
public void bindInvSpace(BindInvSpaceRequest bindInvSpaceRequest) { public BaseResponse bindInvSpace(BindInvSpaceRequest bindInvSpaceRequest) {
//查询仓库的部门ID //查询仓库的部门ID
String deptCode = invWarehouseDao.selectParentIdByCode(bindInvSpaceRequest.getInvCode()); String deptCode = invWarehouseDao.selectParentIdByCode(bindInvSpaceRequest.getInvCode());
List<InvProductDetailEntity> list = invProductDetailDao.selectList(new QueryWrapper<InvProductDetailEntity>() InvWarehouseEntity invWarehouseEntity = invWarehouseDao.filterGroupInvSubAndcode(bindInvSpaceRequest.getInvCode());
.select("id", "code", "relId", "batchNo")
.eq("deptCode", deptCode) List<InvProductDetailEntity> list = new ArrayList<>();
.eq("invCode", bindInvSpaceRequest.getInvCode()) if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_PREIN) {
.in("code", bindInvSpaceRequest.getCodeArray()) List<InvPreInProductDetailEntity> invPreInProductDetailEntities = invPreInProductDetailDao.selectList(new QueryWrapper<InvPreInProductDetailEntity>()
); .select("id", "code", "relId", "batchNo")
.eq("deptCode", deptCode)
.eq("invCode", bindInvSpaceRequest.getInvCode())
.in("code", bindInvSpaceRequest.getCodeArray())
);
for (InvPreInProductDetailEntity invPreInProductDetailEntity : invPreInProductDetailEntities) {
InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity();
BeanCopyUtils.copy(invPreInProductDetailEntity, invProductDetailEntity);
list.add(invProductDetailEntity);
}
} else if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_ADVANCE) {
List<InvPreProductDetailEntity> invPreProductDetailEntities = invPreProductDetailDao.selectList(new QueryWrapper<InvPreProductDetailEntity>()
.select("id", "code", "relId", "batchNo")
.eq("deptCode", deptCode)
.eq("invCode", bindInvSpaceRequest.getInvCode())
.in("code", bindInvSpaceRequest.getCodeArray())
);
for (InvPreProductDetailEntity invPreInProductDetailEntity : invPreProductDetailEntities) {
InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity();
BeanCopyUtils.copy(invPreInProductDetailEntity, invProductDetailEntity);
list.add(invProductDetailEntity);
}
} else {
list = invProductDetailDao.selectList(new QueryWrapper<InvProductDetailEntity>()
.select("id", "code", "relId", "batchNo")
.eq("deptCode", deptCode)
.eq("invCode", bindInvSpaceRequest.getInvCode())
.in("code", bindInvSpaceRequest.getCodeArray())
);
}
if (CollUtil.isNotEmpty(list)) { if (CollUtil.isNotEmpty(list)) {
List<Integer> ids = list.stream().map(InvProductDetailEntity::getId).collect(Collectors.toList()); List<Integer> ids = list.stream().map(InvProductDetailEntity::getId).collect(Collectors.toList());
log.info("本次绑定货位的库存详情数量为:{} 条", ids.size()); log.info("本次绑定货位的库存详情数量为:{} 条", ids.size());
invProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getInvSpaceCode());
if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_PREIN) {
invPreInProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getInvSpaceCode());
} else if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_ADVANCE) {
invPreProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getInvSpaceCode());
} else {
invProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getInvSpaceCode());
}
//添加物资上架记录 //添加物资上架记录
AddInvPlaceOrderRequest addInvPlaceOrderRequest = new AddInvPlaceOrderRequest(); AddInvPlaceOrderRequest addInvPlaceOrderRequest = new AddInvPlaceOrderRequest();
@ -75,8 +131,10 @@ public class InvPlaceServiceImpl implements InvPlaceService {
addInvPlaceOrderRequest.setInvCode(bindInvSpaceRequest.getInvCode()); addInvPlaceOrderRequest.setInvCode(bindInvSpaceRequest.getInvCode());
addInvPlaceOrderRequest.setInvSpaceCode(bindInvSpaceRequest.getInvSpaceCode()); addInvPlaceOrderRequest.setInvSpaceCode(bindInvSpaceRequest.getInvSpaceCode());
invPlaceOrderService.addInvPlaceOrder(addInvPlaceOrderRequest); invPlaceOrderService.addInvPlaceOrder(addInvPlaceOrderRequest);
return ResultVOUtils.success("绑定成功!本次绑定货位的库存详情数量为:" + ids.size() + "条");
} else { } else {
log.info("绑定货位列表查询无数据"); log.info("绑定货位列表查询无数据");
return ResultVOUtils.error(500, "绑定货位列表查询无数据");
} }
} }
@ -99,7 +157,15 @@ public class InvPlaceServiceImpl implements InvPlaceService {
@Override @Override
public List<InvPlaceDetailResponse> getInvProductInfo(FilterInvPlaceRequest filterInvPlaceRequest) { public List<InvPlaceDetailResponse> getInvProductInfo(FilterInvPlaceRequest filterInvPlaceRequest) {
return invProductDetailDao.getInvProductInfo(filterInvPlaceRequest);
InvWarehouseEntity invWarehouseEntity = invWarehouseDao.selectOne(new QueryWrapper<InvWarehouseEntity>().eq("code", filterInvPlaceRequest.getInvCode()));
if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_PREIN) {
return invPreInProductDetailDao.getInvProductInfo(filterInvPlaceRequest);
} else if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_ADVANCE) {
return invPreProductDetailDao.getInvProductInfo(filterInvPlaceRequest);
} else
return invProductDetailDao.getInvProductInfo(filterInvPlaceRequest);
} }
@Override @Override

@ -11,6 +11,7 @@ import com.glxp.api.dao.basic.UdiProductDao;
import com.glxp.api.dao.inout.IoOrderDao; import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvPreInProductDetailDao; import com.glxp.api.dao.inv.InvPreInProductDetailDao;
import com.glxp.api.dao.inv.InvPreProductDetailDao; import com.glxp.api.dao.inv.InvPreProductDetailDao;
import com.glxp.api.entity.auth.InvSpace;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity; import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
@ -18,6 +19,7 @@ import com.glxp.api.entity.inv.InvPreinDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest; import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvPreProductDetailResponse; import com.glxp.api.res.inv.InvPreProductDetailResponse;
import com.glxp.api.service.auth.InvSpaceService;
import com.glxp.api.service.inv.InvPreProductDetailService; import com.glxp.api.service.inv.InvPreProductDetailService;
import com.glxp.api.service.inv.InvPreinProductDetailService; import com.glxp.api.service.inv.InvPreinProductDetailService;
import com.glxp.api.util.DateUtil; import com.glxp.api.util.DateUtil;
@ -115,6 +117,9 @@ public class InvPreInProductDetailServiceImpl implements InvPreinProductDetailSe
return invPreInProductDetailDao.filterPreProductDetailList(invPreProductDetailRequest); return invPreInProductDetailDao.filterPreProductDetailList(invPreProductDetailRequest);
} }
@Resource
InvSpaceService invSpaceService;
@Override @Override
public void setOrderInfo(InvPreProductDetailResponse response) { public void setOrderInfo(InvPreProductDetailResponse response) {
//查询DI层级根据DI层级设置数量取值 //查询DI层级根据DI层级设置数量取值
@ -139,6 +144,11 @@ public class InvPreInProductDetailServiceImpl implements InvPreinProductDetailSe
response.setInCount(response.getCount()); response.setInCount(response.getCount());
} }
} }
InvSpace invSpace = invSpaceService.findByCode(response.getInvCode(), response.getInvSpaceCode());
if (invSpace != null)
response.setInvSpaceName(invSpace.getName());
//设置单据类型名称 //设置单据类型名称
BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction())); BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction()));
response.setActionName(busType.getName()); response.setActionName(busType.getName());

@ -10,6 +10,7 @@ import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.basic.UdiProductDao; import com.glxp.api.dao.basic.UdiProductDao;
import com.glxp.api.dao.inout.IoOrderDao; import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvPreProductDetailDao; import com.glxp.api.dao.inv.InvPreProductDetailDao;
import com.glxp.api.entity.auth.InvSpace;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity; import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
@ -19,6 +20,7 @@ import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.req.system.DeleteRequest; import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.inv.InvPreProductDetailResponse; import com.glxp.api.res.inv.InvPreProductDetailResponse;
import com.glxp.api.service.auth.InvSpaceService;
import com.glxp.api.service.inv.InvPreProductDetailService; import com.glxp.api.service.inv.InvPreProductDetailService;
import com.glxp.api.util.DateUtil; import com.glxp.api.util.DateUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -109,6 +111,10 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
return invPreProductDetailDao.filterPreProductDetailList(invPreProductDetailRequest); return invPreProductDetailDao.filterPreProductDetailList(invPreProductDetailRequest);
} }
@Resource
InvSpaceService invSpaceService;
@Override @Override
public void setOrderInfo(InvPreProductDetailResponse response) { public void setOrderInfo(InvPreProductDetailResponse response) {
//查询DI层级根据DI层级设置数量取值 //查询DI层级根据DI层级设置数量取值
@ -133,6 +139,11 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
response.setInCount(response.getCount()); response.setInCount(response.getCount());
} }
} }
InvSpace invSpace = invSpaceService.findByCode(response.getInvCode(), response.getInvSpaceCode());
if (invSpace != null)
response.setInvSpaceName(invSpace.getName());
//设置单据类型名称 //设置单据类型名称
BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction())); BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction()));
response.setActionName(busType.getName()); response.setActionName(busType.getName());

@ -5,15 +5,18 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.ConstantType; import com.glxp.api.constant.ConstantType;
import com.glxp.api.dao.auth.InvSpaceDao;
import com.glxp.api.dao.basic.BasicBussinessTypeDao; import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.basic.UdiProductDao; import com.glxp.api.dao.basic.UdiProductDao;
import com.glxp.api.dao.inout.IoOrderDao; import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvProductDetailDao; import com.glxp.api.dao.inv.InvProductDetailDao;
import com.glxp.api.entity.auth.InvSpace;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvProductDetailEntity; import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvProductDetailRequest; import com.glxp.api.req.inv.FilterInvProductDetailRequest;
import com.glxp.api.res.inv.InvProductDetailResponse; import com.glxp.api.res.inv.InvProductDetailResponse;
import com.glxp.api.service.auth.InvSpaceService;
import com.glxp.api.service.inv.InvProductDetailService; import com.glxp.api.service.inv.InvProductDetailService;
import com.glxp.api.util.DateUtil; import com.glxp.api.util.DateUtil;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -124,6 +127,9 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
return invProductDetailDao.deleteInvProductDetail(detailRequest); return invProductDetailDao.deleteInvProductDetail(detailRequest);
} }
@Resource
InvSpaceService invSpaceService;
@Override @Override
public void setOrderInfo(InvProductDetailResponse response) { public void setOrderInfo(InvProductDetailResponse response) {
//查询DI层级根据DI层级设置数量取值 //查询DI层级根据DI层级设置数量取值
@ -148,6 +154,9 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
response.setInCount(response.getCount()); response.setInCount(response.getCount());
} }
} }
InvSpace invSpace = invSpaceService.findByCode(response.getInvCode(), response.getInvSpaceCode());
if (invSpace != null)
response.setInvSpaceName(invSpace.getName());
//设置单据类型名称 //设置单据类型名称
BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction())); BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().select("name").eq("action", response.getAction()));

@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.inv.InvProductDao; import com.glxp.api.dao.inv.InvProductDao;
import com.glxp.api.dao.inv.InvProductDetailDao;
import com.glxp.api.entity.inv.InvProductEntity; import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.req.inv.FilterInvProductRequest; import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.res.inv.InvProductResponse; import com.glxp.api.res.inv.InvProductResponse;
@ -21,6 +22,8 @@ public class InvProductServiceImpl implements InvProductService {
@Resource @Resource
InvProductDao invProductDao; InvProductDao invProductDao;
@Resource
InvProductDetailDao invProductDetailDao;
@Override @Override
public int insert(InvProductEntity invProductEntity) { public int insert(InvProductEntity invProductEntity) {
@ -67,6 +70,18 @@ public class InvProductServiceImpl implements InvProductService {
return invProductDao.filterList(filterInvProductRequest); return invProductDao.filterList(filterInvProductRequest);
} }
@Override
public List<InvProductResponse> findGroupBySpace(FilterInvProductRequest filterInvProductRequest) {
if (null == filterInvProductRequest) {
return Collections.emptyList();
}
if (null != filterInvProductRequest.getPage() && null != filterInvProductRequest.getLimit()) {
PageHelper.offsetPage((filterInvProductRequest.getPage() - 1) * filterInvProductRequest.getLimit(), filterInvProductRequest.getLimit());
}
return invProductDetailDao.findGroupBySpace(filterInvProductRequest);
}
@Override @Override
public InvProductEntity findById(String id) { public InvProductEntity findById(String id) {
return invProductDao.selectById(id); return invProductDao.selectById(id);

@ -160,6 +160,14 @@ public class HeartService {
logs = logs + "单据条码信息:" + spsSyncOrderResponse.getCodeEntities().size() + "条\n"; logs = logs + "单据条码信息:" + spsSyncOrderResponse.getCodeEntities().size() + "条\n";
basicExportStatusEntity1.setRemark(logs); basicExportStatusEntity1.setRemark(logs);
basicExportStatusEntity1.setUpdateTime(new Date()); basicExportStatusEntity1.setUpdateTime(new Date());
try {
String fileFullPath = writeFile(filePrefix, NEW_ALL_ORDER, JsonUtils.toJsonString(spsSyncOrderResponse));
basicExportStatusEntity1.setCacheFilePath(fileFullPath);
} catch (IOException e) {
throw new RuntimeException(e);
}
basicExportService.updateExportStatus(basicExportStatusEntity1); basicExportService.updateExportStatus(basicExportStatusEntity1);
return ResultVOUtils.success(); return ResultVOUtils.success();
} }
@ -247,7 +255,7 @@ public class HeartService {
} }
break; break;
case USER_DATA: case USER_DATA:
if (!needExec(info.getBasicDept(), info.getBasicInv(), info.getSysUser())) { if (needExec(info.getBasicDept(), info.getBasicInv(), info.getSysUser())) {
uploadData(exportType, taskId, x -> x.getUserData(info, taskId, now, syncTime)); uploadData(exportType, taskId, x -> x.getUserData(info, taskId, now, syncTime));
} }
break; break;
@ -273,6 +281,7 @@ public class HeartService {
* @return * @return
*/ */
public SpsSyncBasicDataResponse getBasicData(SyncDataSetEntity info, String taskId, Date now, Date syncTime) { public SpsSyncBasicDataResponse getBasicData(SyncDataSetEntity info, String taskId, Date now, Date syncTime) {
StringBuffer remark = new StringBuffer();
SpsSyncBasicDataResponse dataResponse = null; SpsSyncBasicDataResponse dataResponse = null;
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
@ -293,6 +302,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(hospTypeList)) { if (CollectionUtil.isNotEmpty(hospTypeList)) {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
dataResponse.setHospTypeList(hospTypeList); dataResponse.setHospTypeList(hospTypeList);
remark.append("物资字典分类信息:").append(hospTypeList.size()).append("条\n");
} }
List<UdiRelevanceEntity> udiRelevanceList = udiRelevanceDao.selectList(Wrappers.lambdaQuery(UdiRelevanceEntity.class) List<UdiRelevanceEntity> udiRelevanceList = udiRelevanceDao.selectList(Wrappers.lambdaQuery(UdiRelevanceEntity.class)
.le((boolean) map.get("isNew"), UdiRelevanceEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), UdiRelevanceEntity::getUpdateTime, now)
@ -304,6 +314,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setUdiRelevanceList(udiRelevanceList); dataResponse.setUdiRelevanceList(udiRelevanceList);
remark.append("物资字典主表信息:").append(udiRelevanceList.size()).append("条\n");
} }
List<BasicProductsEntity> productsList = basicProductsDao.selectList(Wrappers.lambdaQuery(BasicProductsEntity.class) List<BasicProductsEntity> productsList = basicProductsDao.selectList(Wrappers.lambdaQuery(BasicProductsEntity.class)
.le((boolean) map.get("isNew"), BasicProductsEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), BasicProductsEntity::getUpdateTime, now)
@ -315,6 +326,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setProductsList(productsList); dataResponse.setProductsList(productsList);
remark.append("物资字典字表信息:").append(udiRelevanceList.size()).append("条\n");
} }
List<CompanyProductRelevanceEntity> relevanceList = relevanceDao.selectList(Wrappers.lambdaQuery(CompanyProductRelevanceEntity.class) List<CompanyProductRelevanceEntity> relevanceList = relevanceDao.selectList(Wrappers.lambdaQuery(CompanyProductRelevanceEntity.class)
.le((boolean) map.get("isNew"), CompanyProductRelevanceEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), CompanyProductRelevanceEntity::getUpdateTime, now)
@ -326,6 +338,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setRelevanceList(relevanceList); dataResponse.setRelevanceList(relevanceList);
remark.append("供应商物资字典信息:").append(relevanceList.size()).append("条\n");
} }
} }
//确认有开启往来单位字典同步 //确认有开启往来单位字典同步
@ -346,6 +359,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setCorpList(corpList); dataResponse.setCorpList(corpList);
remark.append("往来单位信息:").append(corpList.size()).append("条\n");
} }
} }
@ -367,6 +381,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setSupCertList(supCertList); dataResponse.setSupCertList(supCertList);
remark.append("资质证书信息:").append(supCertList.size()).append("条\n");
} }
List<SupCertSetEntity> supCertSetList = supCertSetDao.selectList(Wrappers.lambdaQuery(SupCertSetEntity.class) List<SupCertSetEntity> supCertSetList = supCertSetDao.selectList(Wrappers.lambdaQuery(SupCertSetEntity.class)
.le((boolean) map.get("isNew"), SupCertSetEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), SupCertSetEntity::getUpdateTime, now)
@ -378,6 +393,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setSupCertSetList(supCertSetList); dataResponse.setSupCertSetList(supCertSetList);
remark.append("资质证书要求设置信息:").append(supCertSetList.size()).append("条\n");
} }
List<SupCompanyEntity> supCompanyList = supCompanyDao.selectList(Wrappers.lambdaQuery(SupCompanyEntity.class) List<SupCompanyEntity> supCompanyList = supCompanyDao.selectList(Wrappers.lambdaQuery(SupCompanyEntity.class)
.le((boolean) map.get("isNew"), SupCompanyEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), SupCompanyEntity::getUpdateTime, now)
@ -389,6 +405,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setSupCompanyList(supCompanyList); dataResponse.setSupCompanyList(supCompanyList);
remark.append("供应商资质信息:").append(supCompanyList.size()).append("条\n");
} }
List<SupManufacturerEntity> supManufacturerList = supManufacturerDao.selectList(Wrappers.lambdaQuery(SupManufacturerEntity.class) List<SupManufacturerEntity> supManufacturerList = supManufacturerDao.selectList(Wrappers.lambdaQuery(SupManufacturerEntity.class)
.le((boolean) map.get("isNew"), SupManufacturerEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), SupManufacturerEntity::getUpdateTime, now)
@ -400,6 +417,7 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setSupManufacturerList(supManufacturerList); dataResponse.setSupManufacturerList(supManufacturerList);
remark.append("生产企业资质信息:").append(supManufacturerList.size()).append("条\n");
} }
List<SupProductEntity> supProductList = supProductDao.selectList(Wrappers.lambdaQuery(SupProductEntity.class) List<SupProductEntity> supProductList = supProductDao.selectList(Wrappers.lambdaQuery(SupProductEntity.class)
.le((boolean) map.get("isNew"), SupProductEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), SupProductEntity::getUpdateTime, now)
@ -411,12 +429,14 @@ public class HeartService {
dataResponse = new SpsSyncBasicDataResponse(); dataResponse = new SpsSyncBasicDataResponse();
} }
dataResponse.setSupProductList(supProductList); dataResponse.setSupProductList(supProductList);
remark.append("配送产品资质信息:").append(supProductList.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.BASIC_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.BASIC_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
} }
return dataResponse; return dataResponse;
@ -432,7 +452,7 @@ public class HeartService {
* @return * @return
*/ */
public SpsSyncOtherDataResponse getOtherData(SyncDataSetEntity info, String taskId, Date now, Date syncTime) { public SpsSyncOtherDataResponse getOtherData(SyncDataSetEntity info, String taskId, Date now, Date syncTime) {
StringBuffer remark = new StringBuffer();
SpsSyncOtherDataResponse dataResponse = null; SpsSyncOtherDataResponse dataResponse = null;
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
@ -453,6 +473,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(ioCodeLostList)) { if (CollectionUtil.isNotEmpty(ioCodeLostList)) {
dataResponse = new SpsSyncOtherDataResponse(); dataResponse = new SpsSyncOtherDataResponse();
dataResponse.setIoCodeLostList(ioCodeLostList); dataResponse.setIoCodeLostList(ioCodeLostList);
remark.append("UDI码补齐信息").append(ioCodeLostList.size()).append("条\n");
} }
} }
//确认有开启udi关联关系同步 //确认有开启udi关联关系同步
@ -473,11 +494,13 @@ public class HeartService {
dataResponse = new SpsSyncOtherDataResponse(); dataResponse = new SpsSyncOtherDataResponse();
} }
dataResponse.setIoCodeRelList(ioCodeRelList); dataResponse.setIoCodeRelList(ioCodeRelList);
remark.append("UDI码关联关系").append(ioCodeRelList.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.OTHER_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.OTHER_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
} }
return dataResponse; return dataResponse;
@ -522,9 +545,10 @@ public class HeartService {
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
syncTimeMap.put("oldDate", syncTime); syncTimeMap.put("oldDate", syncTime);
StringBuffer remark = new StringBuffer();
//确认有开启业务单据类型同步 //确认有开启扫码单据类型同步
if (needExec(info.getTypeBus())) { if (needExec(info.getTypeScan())) {
Map<String, Object> map; Map<String, Object> map;
if (syncTime == null) { if (syncTime == null) {
map = basicExportStatusTimeInfo(now, BasicExportStatusTimeEnum.BASIC_BUSSINESS_TYPE); map = basicExportStatusTimeInfo(now, BasicExportStatusTimeEnum.BASIC_BUSSINESS_TYPE);
@ -539,11 +563,11 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(bussinessTypeEntities)) { if (CollectionUtil.isNotEmpty(bussinessTypeEntities)) {
dataResponse = new SpsSyncBusResponse(); dataResponse = new SpsSyncBusResponse();
dataResponse.setBussinessTypeEntities(bussinessTypeEntities); dataResponse.setBussinessTypeEntities(bussinessTypeEntities);
remark.append("扫码单据类型信息:").append(bussinessTypeEntities.size()).append("条\n");
} }
} }
//确认有开启业务单据类型同步
//确认有开启扫码单据类型同步 if (needExec(info.getTypeBus())) {
if (needExec(info.getTypeScan())) {
Map<String, Object> map; Map<String, Object> map;
if (syncTime == null) { if (syncTime == null) {
map = basicExportStatusTimeInfo(now, BasicExportStatusTimeEnum.BASIC_BUSTYPE_CHANGE); map = basicExportStatusTimeInfo(now, BasicExportStatusTimeEnum.BASIC_BUSTYPE_CHANGE);
@ -560,6 +584,7 @@ public class HeartService {
dataResponse = new SpsSyncBusResponse(); dataResponse = new SpsSyncBusResponse();
} }
dataResponse.setBusTypeChangeEntities(busTypeChangeList); dataResponse.setBusTypeChangeEntities(busTypeChangeList);
remark.append("业务单据类型:").append(busTypeChangeList.size()).append("条\n");
} }
} }
@ -581,12 +606,14 @@ public class HeartService {
dataResponse = new SpsSyncBusResponse(); dataResponse = new SpsSyncBusResponse();
} }
dataResponse.setThrBusTypeOriginEntities(thrBusTypeOriginEntities); dataResponse.setThrBusTypeOriginEntities(thrBusTypeOriginEntities);
remark.append("第三方单据类型信息:").append(thrBusTypeOriginEntities.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.DOCUMENT_TYPE_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.DOCUMENT_TYPE_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
} }
return dataResponse; return dataResponse;
@ -614,7 +641,7 @@ public class HeartService {
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
syncTimeMap.put("oldDate", syncTime); syncTimeMap.put("oldDate", syncTime);
StringBuffer remark = new StringBuffer();
//确认有开启部门信息同步 //确认有开启部门信息同步
if (needExec(info.getBasicDept())) { if (needExec(info.getBasicDept())) {
Map<String, Object> map; Map<String, Object> map;
@ -631,6 +658,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(deptEntityList)) { if (CollectionUtil.isNotEmpty(deptEntityList)) {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
dataResponse.setDeptEntityList(deptEntityList); dataResponse.setDeptEntityList(deptEntityList);
remark.append("部门信息:").append(deptEntityList.size()).append("条\n");
} }
List<DeptUserEntity> deptUserEntityList = deptUserService.list(Wrappers.lambdaQuery(DeptUserEntity.class) List<DeptUserEntity> deptUserEntityList = deptUserService.list(Wrappers.lambdaQuery(DeptUserEntity.class)
.le((boolean) map.get("isNew"), DeptUserEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), DeptUserEntity::getUpdateTime, now)
@ -642,6 +670,7 @@ public class HeartService {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
dataResponse.setDeptUserEntities(deptUserEntityList); dataResponse.setDeptUserEntities(deptUserEntityList);
remark.append("部门用户信息:").append(deptEntityList.size()).append("条\n");
} }
} }
@ -662,6 +691,7 @@ public class HeartService {
if (dataResponse == null) { if (dataResponse == null) {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
remark.append("仓库字典信息:").append(warehouseEntityList.size()).append("条\n");
dataResponse.setInvWarehouseEntities(warehouseEntityList); dataResponse.setInvWarehouseEntities(warehouseEntityList);
} }
List<WarehouseUserEntity> warehouseUserEntities = warehouseUserService.list(Wrappers.lambdaQuery(WarehouseUserEntity.class) List<WarehouseUserEntity> warehouseUserEntities = warehouseUserService.list(Wrappers.lambdaQuery(WarehouseUserEntity.class)
@ -673,6 +703,7 @@ public class HeartService {
if (dataResponse == null) { if (dataResponse == null) {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
remark.append("仓库用户信息:").append(warehouseUserEntities.size()).append("条\n");
dataResponse.setWarehouseUserEntities(warehouseUserEntities); dataResponse.setWarehouseUserEntities(warehouseUserEntities);
} }
List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.list(Wrappers.lambdaQuery(WarehouseBussinessTypeEntity.class) List<WarehouseBussinessTypeEntity> warehouseBussinessTypeEntities = warehouseBussinessTypeService.list(Wrappers.lambdaQuery(WarehouseBussinessTypeEntity.class)
@ -685,6 +716,7 @@ public class HeartService {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
dataResponse.setWarehouseBussinessTypeEntities(warehouseBussinessTypeEntities); dataResponse.setWarehouseBussinessTypeEntities(warehouseBussinessTypeEntities);
remark.append("仓库单据类型信息:").append(warehouseBussinessTypeEntities.size()).append("条\n");
} }
List<InvSpace> invSpaceList = invSpaceService.list(Wrappers.lambdaQuery(InvSpace.class) List<InvSpace> invSpaceList = invSpaceService.list(Wrappers.lambdaQuery(InvSpace.class)
.le((boolean) map.get("isNew"), InvSpace::getUpdateTime, now) .le((boolean) map.get("isNew"), InvSpace::getUpdateTime, now)
@ -696,6 +728,7 @@ public class HeartService {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
dataResponse.setInvSpaces(invSpaceList); dataResponse.setInvSpaces(invSpaceList);
remark.append("货位信息:").append(invSpaceList.size()).append("条\n");
} }
} }
@ -717,6 +750,7 @@ public class HeartService {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
dataResponse.setAuthAdminList(adminList); dataResponse.setAuthAdminList(adminList);
remark.append("系统用户信息:").append(adminList.size()).append("条\n");
} }
List<InvBusUserEntity> busUserEntities = invBusUserService.list(Wrappers.lambdaQuery(InvBusUserEntity.class) List<InvBusUserEntity> busUserEntities = invBusUserService.list(Wrappers.lambdaQuery(InvBusUserEntity.class)
.le((boolean) map.get("isNew"), InvBusUserEntity::getUpdateTime, now) .le((boolean) map.get("isNew"), InvBusUserEntity::getUpdateTime, now)
@ -728,12 +762,14 @@ public class HeartService {
dataResponse = new SpsSyncDataResponse(); dataResponse = new SpsSyncDataResponse();
} }
dataResponse.setInvBusUserEntities(busUserEntities); dataResponse.setInvBusUserEntities(busUserEntities);
remark.append("用户关联单据信息:").append(busUserEntities.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.USER_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.USER_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
} }
return dataResponse; return dataResponse;
} }
@ -756,7 +792,7 @@ public class HeartService {
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
syncTimeMap.put("oldDate", syncTime); syncTimeMap.put("oldDate", syncTime);
StringBuffer remark = new StringBuffer();
//确认有开启第三方部门信息同步 //确认有开启第三方部门信息同步
if (needExec(info.getBasicThirdDept())) { if (needExec(info.getBasicThirdDept())) {
Map<String, Object> map; Map<String, Object> map;
@ -773,6 +809,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(deptEntityList)) { if (CollectionUtil.isNotEmpty(deptEntityList)) {
dataResponse = new SpsSyncThrDataResponse(); dataResponse = new SpsSyncThrDataResponse();
dataResponse.setDeptEntities(deptEntityList); dataResponse.setDeptEntities(deptEntityList);
remark.append("第三方部门信息:").append(deptEntityList.size()).append("条\n");
} }
} }
@ -794,6 +831,7 @@ public class HeartService {
dataResponse = new SpsSyncThrDataResponse(); dataResponse = new SpsSyncThrDataResponse();
} }
dataResponse.setInvWarehouseEntities(warehouseEntityList); dataResponse.setInvWarehouseEntities(warehouseEntityList);
remark.append("第三方仓库信息:").append(warehouseEntityList.size()).append("条\n");
} }
} }
@ -815,6 +853,7 @@ public class HeartService {
dataResponse = new SpsSyncThrDataResponse(); dataResponse = new SpsSyncThrDataResponse();
} }
dataResponse.setProductsEntityList(productsEntityList); dataResponse.setProductsEntityList(productsEntityList);
remark.append("第三方产品信息:").append(productsEntityList.size()).append("条\n");
} }
} }
@ -836,12 +875,14 @@ public class HeartService {
dataResponse = new SpsSyncThrDataResponse(); dataResponse = new SpsSyncThrDataResponse();
} }
dataResponse.setCorpEntities(corpEntities); dataResponse.setCorpEntities(corpEntities);
remark.append("第三方往来信息:").append(corpEntities.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.THIRD_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.THIRD_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
} }
return dataResponse; return dataResponse;
} }
@ -871,6 +912,7 @@ public class HeartService {
Map<String, Object> syncTimeMap = new WeakHashMap<>(3); Map<String, Object> syncTimeMap = new WeakHashMap<>(3);
syncTimeMap.put("isNew", true); syncTimeMap.put("isNew", true);
syncTimeMap.put("oldDate", syncTime); syncTimeMap.put("oldDate", syncTime);
StringBuffer remark = new StringBuffer();
if (needExec(info.getSystemConfig())) { if (needExec(info.getSystemConfig())) {
Map<String, Object> map; Map<String, Object> map;
if (syncTime == null) { if (syncTime == null) {
@ -886,6 +928,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(systemParamConfigEntities)) { if (CollectionUtil.isNotEmpty(systemParamConfigEntities)) {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
dataResponse.setSystemParamConfigEntities(systemParamConfigEntities); dataResponse.setSystemParamConfigEntities(systemParamConfigEntities);
remark.append("运行参数设置信息:").append(systemParamConfigEntities.size()).append("条\n");
} }
} }
if (needExec(info.getEntrustAction())) { if (needExec(info.getEntrustAction())) {
@ -905,6 +948,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setEntrustReceEntities(entrustReceEntities); dataResponse.setEntrustReceEntities(entrustReceEntities);
remark.append("委托验收设置信息:").append(entrustReceEntities.size()).append("条\n");
} }
} }
if (needExec(info.getPrintConfig())) { if (needExec(info.getPrintConfig())) {
@ -924,6 +968,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSystemPDFModuleEntities(systemPDFModuleEntities); dataResponse.setSystemPDFModuleEntities(systemPDFModuleEntities);
remark.append("系统模板模块信息:").append(systemPDFModuleEntities.size()).append("条\n");
} }
List<SystemPDFTemplateEntity> systemPDFTemplateEntities = systemPDFTemplateService.list(Wrappers.lambdaQuery(SystemPDFTemplateEntity.class) List<SystemPDFTemplateEntity> systemPDFTemplateEntities = systemPDFTemplateService.list(Wrappers.lambdaQuery(SystemPDFTemplateEntity.class)
@ -936,6 +981,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSystemPDFTemplateEntities(systemPDFTemplateEntities); dataResponse.setSystemPDFTemplateEntities(systemPDFTemplateEntities);
remark.append("模板信息:").append(systemPDFTemplateEntities.size()).append("条\n");
} }
List<SysPdfTemplateRelevanceCodeEntity> sysPdfTemplateRelevanceCodeEntities = systemPDFTemplateRelevanceCodeService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceCodeEntity.class) List<SysPdfTemplateRelevanceCodeEntity> sysPdfTemplateRelevanceCodeEntities = systemPDFTemplateRelevanceCodeService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceCodeEntity.class)
@ -948,6 +994,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSysPdfTemplateRelevanceCodeEntities(sysPdfTemplateRelevanceCodeEntities); dataResponse.setSysPdfTemplateRelevanceCodeEntities(sysPdfTemplateRelevanceCodeEntities);
remark.append("扫码单据关联模板信息:").append(sysPdfTemplateRelevanceCodeEntities.size()).append("条\n");
} }
List<SysPdfTemplateRelevanceBizEntity> sysPdfTemplateRelevanceBizEntities = systemPDFTemplateRelevanceBizService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceBizEntity.class) List<SysPdfTemplateRelevanceBizEntity> sysPdfTemplateRelevanceBizEntities = systemPDFTemplateRelevanceBizService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceBizEntity.class)
@ -960,6 +1007,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSysPdfTemplateRelevanceBizEntities(sysPdfTemplateRelevanceBizEntities); dataResponse.setSysPdfTemplateRelevanceBizEntities(sysPdfTemplateRelevanceBizEntities);
remark.append("业务单据关联模板信息:").append(sysPdfTemplateRelevanceBizEntities.size()).append("条\n");
} }
List<SysPdfTemplateRelevanceLabelEntity> sysPdfTemplateRelevanceLabelEntities = systemPDFTemplateRelevanceLabelService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceLabelEntity.class) List<SysPdfTemplateRelevanceLabelEntity> sysPdfTemplateRelevanceLabelEntities = systemPDFTemplateRelevanceLabelService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceLabelEntity.class)
@ -972,6 +1020,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSysPdfTemplateRelevanceLabelEntities(sysPdfTemplateRelevanceLabelEntities); dataResponse.setSysPdfTemplateRelevanceLabelEntities(sysPdfTemplateRelevanceLabelEntities);
remark.append("标签关联模板信息:").append(sysPdfTemplateRelevanceLabelEntities.size()).append("条\n");
} }
List<SysPdfTemplateRelevanceStatemenEntity> sysPdfTemplateRelevanceStatemenEntities = systemPDFTemplateRelevanceStatemenService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceStatemenEntity.class) List<SysPdfTemplateRelevanceStatemenEntity> sysPdfTemplateRelevanceStatemenEntities = systemPDFTemplateRelevanceStatemenService.list(Wrappers.lambdaQuery(SysPdfTemplateRelevanceStatemenEntity.class)
@ -984,6 +1033,7 @@ public class HeartService {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
} }
dataResponse.setSysPdfTemplateRelevanceStatemenEntities(sysPdfTemplateRelevanceStatemenEntities); dataResponse.setSysPdfTemplateRelevanceStatemenEntities(sysPdfTemplateRelevanceStatemenEntities);
remark.append("报表关联模板信息:").append(sysPdfTemplateRelevanceStatemenEntities.size()).append("条\n");
} }
} }
@ -1002,6 +1052,7 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(basicBusTypePreEntities)) { if (CollectionUtil.isNotEmpty(basicBusTypePreEntities)) {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
dataResponse.setBasicBusTypePreEntities(basicBusTypePreEntities); dataResponse.setBasicBusTypePreEntities(basicBusTypePreEntities);
remark.append("出入库单自动补单设置信息:").append(basicBusTypePreEntities.size()).append("条\n");
} }
} }
if (needExec(info.getBusChangeConfig())) { if (needExec(info.getBusChangeConfig())) {
@ -1019,12 +1070,14 @@ public class HeartService {
if (CollectionUtil.isNotEmpty(basicBusTypeChangeEntities)) { if (CollectionUtil.isNotEmpty(basicBusTypeChangeEntities)) {
dataResponse = new SpsSyncSysSettingResponse(); dataResponse = new SpsSyncSysSettingResponse();
dataResponse.setBasicBusTypeChangeEntities(basicBusTypeChangeEntities); dataResponse.setBasicBusTypeChangeEntities(basicBusTypeChangeEntities);
remark.append("业务单自动补单设置信息:").append(basicBusTypeChangeEntities.size()).append("条\n");
} }
} }
if (dataResponse != null) { if (dataResponse != null) {
dataResponse.setTaskId(taskId); dataResponse.setTaskId(taskId);
dataResponse.setType(BasicExportTypeEnum.SYS_SET_DATA.getRemark()); dataResponse.setType(BasicExportTypeEnum.SYS_SET_DATA.getRemark());
dataResponse.setSyncRemark(remark.toString());
if (CollUtil.isNotEmpty(dataResponse.getSystemPDFTemplateEntities())) { if (CollUtil.isNotEmpty(dataResponse.getSystemPDFTemplateEntities())) {
// List<Map<String, String>> list = new ArrayList<>(spsSyncSysSettingResponse.getSystemPDFTemplateEntities().size() * 2); // List<Map<String, String>> list = new ArrayList<>(spsSyncSysSettingResponse.getSystemPDFTemplateEntities().size() * 2);
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
@ -1068,6 +1121,9 @@ public class HeartService {
if (baseResponse.getCode() != 20000) { if (baseResponse.getCode() != 20000) {
status = StatusEnum.FAILED.getCode(); status = StatusEnum.FAILED.getCode();
} }
BaseSyncResponse baseSyncResponse = (BaseSyncResponse) data;
BasicExportStatusEntity exportStatus = BasicExportStatusEntity.builder() BasicExportStatusEntity exportStatus = BasicExportStatusEntity.builder()
.id(taskId) .id(taskId)
.status(status) .status(status)
@ -1076,9 +1132,9 @@ public class HeartService {
.startTime(new Date()) .startTime(new Date())
.endTime(new Date()) .endTime(new Date())
.updateTime(new Date()) .updateTime(new Date())
.receiveStatus(status) .receiveStatus(status + "")
.scheduleType(BasicProcessStatus.SCHEDULE_NORMAL) .scheduleType(BasicProcessStatus.SCHEDULE_NORMAL)
.remark(baseResponse.getMessage()) .remark(baseSyncResponse.getSyncRemark())
.build(); .build();
try { try {
String fileFullPath = writeFile(filePrefix, exportType.getRemark(), JsonUtils.toJsonString(data)); String fileFullPath = writeFile(filePrefix, exportType.getRemark(), JsonUtils.toJsonString(data));
@ -1284,7 +1340,7 @@ public class HeartService {
//下载最近更新扫码单据--上级服务 //下载最近更新扫码单据--上级服务
@Transactional(propagation = Propagation.NESTED) @Transactional(propagation = Propagation.NESTED)
public void dlAllOrder() { public void dlAllOrder() {
BaseResponse<List<BasicExportStatusEntity>> baseResponse = spGetHttp.getBasicStatus(NEW_ALL_ORDER + ""); BaseResponse<List<BasicExportStatusEntity>> baseResponse = spGetHttp.getBasicStatus(NEW_ALL_ORDER + "", "3");
List<BasicExportStatusEntity> pageSimpleResponse = baseResponse != null ? baseResponse.getData() : new ArrayList<>(); List<BasicExportStatusEntity> pageSimpleResponse = baseResponse != null ? baseResponse.getData() : new ArrayList<>();
if (pageSimpleResponse != null) { if (pageSimpleResponse != null) {
List<BasicExportStatusEntity> basicExportStatusEntities = pageSimpleResponse; List<BasicExportStatusEntity> basicExportStatusEntities = pageSimpleResponse;
@ -1304,9 +1360,9 @@ public class HeartService {
basicDownloadStatusEntity.setIdDatas(ConstantStatus.SYNC_DOWNLOAD_SCAN_ORDER); basicDownloadStatusEntity.setIdDatas(ConstantStatus.SYNC_DOWNLOAD_SCAN_ORDER);
basicDownloadStatusEntity.setStatus(ConstantStatus.SYNC_STATUS_WAIT); //下载中 basicDownloadStatusEntity.setStatus(ConstantStatus.SYNC_STATUS_WAIT); //下载中
basicDownloadStatusEntity.setType(NEW_ALL_ORDER); basicDownloadStatusEntity.setType(NEW_ALL_ORDER);
basicDownloadStatusEntity.setRemark(syncDataResponse.getSyncRemark());
basicDownloadStatusEntity.setScheduleType(1); basicDownloadStatusEntity.setScheduleType(1);
basicDownloadService.insertDownloadStatus(basicDownloadStatusEntity); basicDownloadService.insertDownloadStatus(basicDownloadStatusEntity);
StringBuffer remark = new StringBuffer();
if (CollUtil.isNotEmpty(syncDataResponse.getOrderEntities())) { if (CollUtil.isNotEmpty(syncDataResponse.getOrderEntities())) {
try { try {
@ -1314,6 +1370,7 @@ public class HeartService {
for (IoOrderEntity orderEntity : orderEntities) { for (IoOrderEntity orderEntity : orderEntities) {
orderEntity.setUpdateTime(null); orderEntity.setUpdateTime(null);
orderEntity.setFromType(ConstantStatus.FROM_UDISP); orderEntity.setFromType(ConstantStatus.FROM_UDISP);
orderEntity.setProcessStatus(ConstantStatus.ORDER_DEAL_POST);
orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
IoOrderEntity temp = orderService.findByBillNo(orderEntity.getBillNo()); IoOrderEntity temp = orderService.findByBillNo(orderEntity.getBillNo());
if (temp == null) { if (temp == null) {
@ -1329,29 +1386,15 @@ public class HeartService {
} }
} }
String logs = "";
if (CollUtil.isNotEmpty(syncDataResponse.getOrderEntities()))
logs = logs + "单据:" + syncDataResponse.getOrderEntities().size() + "条\n";
if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailBizEntities()))
logs = logs + "业务详情:" + syncDataResponse.getOrderDetailBizEntities().size() + "条\n";
if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailCodeEntities()))
logs = logs + "单据扫码详情:" + syncDataResponse.getOrderDetailCodeEntities().size() + "条\n";
if (CollUtil.isNotEmpty(syncDataResponse.getOrderDetailResultEntities()))
logs = logs + "单据结果详情:" + syncDataResponse.getOrderDetailResultEntities().size() + "条\n";
if (CollUtil.isNotEmpty(syncDataResponse.getCodeEntities()))
logs = logs + "单据条码信息:" + syncDataResponse.getCodeEntities().size() + "条\n";
remark.append(logs);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
} }
spGetHttp.postBasicStatus(basicExportStatusEntity.getId()); spGetHttp.finishTask(basicExportStatusEntity.getId());
basicDownloadStatusEntity.setUpdateTime(new Date()); basicDownloadStatusEntity.setUpdateTime(new Date());
basicDownloadStatusEntity.setEndTime(new Date()); basicDownloadStatusEntity.setEndTime(new Date());
basicDownloadStatusEntity.setRemark(remark.toString());
basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode()); basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode());
basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity); basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity);
@ -1365,7 +1408,7 @@ public class HeartService {
// 下载最近更新国家库数据-上级服务 // 下载最近更新国家库数据-上级服务
@Transactional(propagation = Propagation.NESTED) @Transactional(propagation = Propagation.NESTED)
public void dlAllDiProducts() { public void dlAllDiProducts() {
BaseResponse<List<BasicExportStatusEntity>> baseResponse = spGetHttp.getBasicStatus(NEW_ALL_UDIS); BaseResponse<List<BasicExportStatusEntity>> baseResponse = spGetHttp.getBasicStatus(NEW_ALL_UDIS, "3");
List<BasicExportStatusEntity> pageSimpleResponse = baseResponse.getData(); List<BasicExportStatusEntity> pageSimpleResponse = baseResponse.getData();
if (pageSimpleResponse != null) { if (pageSimpleResponse != null) {
List<BasicExportStatusEntity> basicExportStatusEntities = pageSimpleResponse; List<BasicExportStatusEntity> basicExportStatusEntities = pageSimpleResponse;
@ -1414,11 +1457,17 @@ public class HeartService {
remark.append("产品信息:").append(spSyncUdiResponse.getProductInfoEntityList().size()).append("条\n"); remark.append("产品信息:").append(spSyncUdiResponse.getProductInfoEntityList().size()).append("条\n");
} }
batchSession.close(); batchSession.close();
spGetHttp.postBasicStatus(basicExportStatusEntity.getId()); // spGetHttp.postBasicStatus(basicExportStatusEntity.getId());
spGetHttp.finishTask(basicExportStatusEntity.getId());
basicDownloadStatusEntity.setUpdateTime(new Date()); basicDownloadStatusEntity.setUpdateTime(new Date());
basicDownloadStatusEntity.setEndTime(new Date()); basicDownloadStatusEntity.setEndTime(new Date());
basicDownloadStatusEntity.setRemark(remark.toString()); basicDownloadStatusEntity.setRemark(remark.toString());
try {
String fileFullPath = writeFile(filePrefix, NEW_ALL_UDIS, JSONUtil.toJsonStr(response.getData()));
basicDownloadStatusEntity.setCacheFilePath(fileFullPath);
} catch (IOException e) {
throw new RuntimeException(e);
}
basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode()); basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode());
basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity); basicDownloadService.updateDownloadStatus(basicDownloadStatusEntity);
} }
@ -1476,6 +1525,8 @@ public class HeartService {
String taskId = bean.getTaskId(); String taskId = bean.getTaskId();
if (StrUtil.isNotBlank(taskId)) { if (StrUtil.isNotBlank(taskId)) {
//插入下载记录 //插入下载记录
cn.hutool.json.JSONObject jsonObject = JSONUtil.parseObj(bean.getFileContent());
String remark = jsonObject.getStr(Constant.SYNC_REMARK);
BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity(); BasicDownloadStatusEntity basicDownloadStatusEntity = new BasicDownloadStatusEntity();
basicDownloadStatusEntity.setId(CustomUtil.getId()); basicDownloadStatusEntity.setId(CustomUtil.getId());
basicDownloadStatusEntity.setTaskId(taskId); basicDownloadStatusEntity.setTaskId(taskId);
@ -1483,6 +1534,7 @@ public class HeartService {
basicDownloadStatusEntity.setUpdateTime(new Date()); basicDownloadStatusEntity.setUpdateTime(new Date());
basicDownloadStatusEntity.setEndTime(new Date()); basicDownloadStatusEntity.setEndTime(new Date());
basicDownloadStatusEntity.setIdDatas(exportType.getKey()); basicDownloadStatusEntity.setIdDatas(exportType.getKey());
basicDownloadStatusEntity.setRemark(remark);
basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode()); //下载完成 basicDownloadStatusEntity.setStatus(StatusEnum.SUCCESS.getCode()); //下载完成
basicDownloadStatusEntity.setType(exportType.getRemark()); basicDownloadStatusEntity.setType(exportType.getRemark());
basicDownloadStatusEntity.setScheduleType(1); basicDownloadStatusEntity.setScheduleType(1);
@ -1781,6 +1833,7 @@ public class HeartService {
List<IoOrderInvoiceEntity> orderInvoiceEntities = syncDataResponse.getOrderInvoiceEntities(); List<IoOrderInvoiceEntity> orderInvoiceEntities = syncDataResponse.getOrderInvoiceEntities();
for (IoOrderInvoiceEntity orderInvoiceEntity : orderInvoiceEntities) { for (IoOrderInvoiceEntity orderInvoiceEntity : orderInvoiceEntities) {
if (orderInvoiceEntity.getOrderIdFk().equals(orderEntity.getBillNo())) { if (orderInvoiceEntity.getOrderIdFk().equals(orderEntity.getBillNo())) {
orderInvoiceEntity.setId(null);
orderInvoiceService.insertInvoice(orderInvoiceEntity); orderInvoiceService.insertInvoice(orderInvoiceEntity);
} }
} }

@ -60,7 +60,7 @@ public class SyncHeartTask implements SchedulingConfigurer {
//定时上传最近更新基础数据至上游轮询时间 //定时上传最近更新基础数据至上游轮询时间
long timeInterval1 = syncDataSetEntity.getSyncTime() * 60 * 1000L; long timeInterval1 = syncDataSetEntity.getSyncTime() * 6 * 1000L;
long curTime1 = System.currentTimeMillis(); long curTime1 = System.currentTimeMillis();
Long lastTime1 = (Long) redisUtil.get("SPS_SYNC_UPLOAD_DATA"); Long lastTime1 = (Long) redisUtil.get("SPS_SYNC_UPLOAD_DATA");
if (lastTime1 == null) { if (lastTime1 == null) {
@ -86,7 +86,7 @@ public class SyncHeartTask implements SchedulingConfigurer {
//定时上传最近更新单据数据至上游轮询时间 //定时上传最近更新单据数据至上游轮询时间
long timeInterval2 = syncDataSetEntity.getOrderSyncTime() * 60 * 1000L; long timeInterval2 = syncDataSetEntity.getOrderSyncTime() * 6 * 1000L;
long curTime2 = System.currentTimeMillis(); long curTime2 = System.currentTimeMillis();
Long lastTime2 = (Long) redisUtil.get("SPS_SYNC_UPLOAD_ORDER"); Long lastTime2 = (Long) redisUtil.get("SPS_SYNC_UPLOAD_ORDER");
if (lastTime2 == null) { if (lastTime2 == null) {

@ -1,6 +1,6 @@
spring: spring:
profiles: profiles:
active: test active: dev
jmx: jmx:
enabled: false enabled: false
servlet: servlet:

@ -47,9 +47,9 @@
<insert id="insertEntity" keyColumn="id" keyProperty="id" parameterType="com.glxp.api.entity.auth.InvSpace" <insert id="insertEntity" keyColumn="id" keyProperty="id" parameterType="com.glxp.api.entity.auth.InvSpace"
useGeneratedKeys="true"> useGeneratedKeys="true">
insert into auth_space (code, `name`, type, invStorageCode, insert into auth_space (code, `name`, type, invStorageCode,
invWarehouseCode, `status`, createTime, invWarehouseCode, `status`, createTime,
updateTime, `createUser`, updateUser, updateTime, `createUser`, updateUser,
remark) remark)
values (#{code,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, values (#{code,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR},
#{invStorageCode,jdbcType=VARCHAR}, #{invStorageCode,jdbcType=VARCHAR},
#{invWarehouseCode,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{invWarehouseCode,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP},
@ -255,9 +255,9 @@
<insert id="batchInsert" keyColumn="id" keyProperty="id" parameterType="map" useGeneratedKeys="true"> <insert id="batchInsert" keyColumn="id" keyProperty="id" parameterType="map" useGeneratedKeys="true">
insert into auth_space insert into auth_space
(code, `name`, type, invStorageCode, invWarehouseCode, `status`, createTime, updateTime, (code, `name`, type, invStorageCode, invWarehouseCode, `status`, createTime, updateTime,
`createUser`, updateUser, remark) `createUser`, updateUser, remark)
values values
<foreach collection="list" item="item" separator=","> <foreach collection="list" item="item" separator=",">
(#{item.code,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, (#{item.code,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR},
#{item.invStorageCode,jdbcType=VARCHAR}, #{item.invStorageCode,jdbcType=VARCHAR},
@ -269,13 +269,14 @@
</foreach> </foreach>
</insert> </insert>
<select id="filterList" parameterType="com.glxp.api.req.auth.FilterInvSpaceRequest" resultType="com.glxp.api.res.auth.InvSpaceResponse"> <select id="filterList" parameterType="com.glxp.api.req.auth.FilterInvSpaceRequest"
resultType="com.glxp.api.res.auth.InvSpaceResponse">
select s.*, select s.*,
w.name invStorageName, w.name invStorageName,
iws.name invSubStorageName iws.name invSubStorageName
from auth_space s from auth_space s
left join auth_dept w on s.invStorageCode = w.code left join auth_dept w on s.invStorageCode = w.code
left join auth_warehouse iws on s.invWarehouseCode = iws.code left join auth_warehouse iws on s.invWarehouseCode = iws.code
<where> <where>
<if test="invStorageCode != null and invStorageCode != ''"> <if test="invStorageCode != null and invStorageCode != ''">
AND s.invStorageCode = #{invStorageCode} AND s.invStorageCode = #{invStorageCode}
@ -318,8 +319,8 @@
<select id="selectSpaceCodeList" resultType="com.glxp.api.res.auth.InvSpaceResponse"> <select id="selectSpaceCodeList" resultType="com.glxp.api.res.auth.InvSpaceResponse">
select auth_space.code, auth_space.name, iws.name invSubStorageName, iw.name invStorageName select auth_space.code, auth_space.name, iws.name invSubStorageName, iw.name invStorageName
from auth_space from auth_space
left join auth_warehouse iws on iws.code = auth_space.invWarehouseCode left join auth_warehouse iws on iws.code = auth_space.invWarehouseCode
left join auth_dept iw on iw.code = auth_space.invStorageCode left join auth_dept iw on iw.code = auth_space.invStorageCode
<where> <where>
<if test="invStorageCode != null and invStorageCode != ''"> <if test="invStorageCode != null and invStorageCode != ''">
AND auth_space.invStorageCode = #{invStorageCode} AND auth_space.invStorageCode = #{invStorageCode}
@ -385,7 +386,7 @@
<select id="selectExistByName" resultMap="BaseResultMap"> <select id="selectExistByName" resultMap="BaseResultMap">
select select
<include refid="Base_Column_List" /> <include refid="Base_Column_List"/>
from auth_space from auth_space
<where> <where>
<if test="invStorageCode != null and invStorageCode != ''"> <if test="invStorageCode != null and invStorageCode != ''">
@ -401,7 +402,8 @@
</select> </select>
<select id="getMaxSpaceCode" resultType="java.lang.String"> <select id="getMaxSpaceCode" resultType="java.lang.String">
select max(code) from auth_space select max(code)
from auth_space
<where> <where>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
and invWarehouseCode = #{invCode} and invWarehouseCode = #{invCode}

@ -38,11 +38,11 @@
a4.name a4.name
thirdName4 thirdName4
from auth_warehouse from auth_warehouse
LEFT JOIN thr_inv_warehouse a on a.code = auth_warehouse.thirdId LEFT JOIN thr_inv_warehouse a on a.code = auth_warehouse.thirdId
LEFT JOIN thr_inv_warehouse a1 on a1.code = auth_warehouse.thirdId1 LEFT JOIN thr_inv_warehouse a1 on a1.code = auth_warehouse.thirdId1
LEFT JOIN thr_inv_warehouse a2 on a2.code = auth_warehouse.thirdId2 LEFT JOIN thr_inv_warehouse a2 on a2.code = auth_warehouse.thirdId2
LEFT JOIN thr_inv_warehouse a3 on a3.code = auth_warehouse.thirdId3 LEFT JOIN thr_inv_warehouse a3 on a3.code = auth_warehouse.thirdId3
LEFT JOIN thr_inv_warehouse a4 on a4.code = auth_warehouse.thirdId4 LEFT JOIN thr_inv_warehouse a4 on a4.code = auth_warehouse.thirdId4
<where> <where>
<if test="code != '' and code != null"> <if test="code != '' and code != null">
AND auth_warehouse.code = #{code} AND auth_warehouse.code = #{code}
@ -57,13 +57,13 @@
limit 1 limit 1
</select> </select>
<select id="getByWareId" resultType="com.glxp.api.entity.auth.InvWarehouseEntity"> <select id="getByWareId" resultType="com.glxp.api.entity.auth.InvWarehouseEntity">
select * select *
FROM auth_warehouse FROM auth_warehouse
WHERE id = #{id} WHERE id = #{id}
</select> </select>
<select id="getByWarePcode" resultType="com.glxp.api.entity.auth.InvWarehouseEntity"> <select id="getByWarePcode" resultType="com.glxp.api.entity.auth.InvWarehouseEntity">
select * select *
FROM auth_warehouse FROM auth_warehouse
WHERE parentCode = #{parentCode} WHERE parentCode = #{parentCode}
@ -73,9 +73,9 @@
<select id="filterGroupInvSub" parameterType="com.glxp.api.req.auth.FilterInvWarehouseRequest" <select id="filterGroupInvSub" parameterType="com.glxp.api.req.auth.FilterInvWarehouseRequest"
resultType="com.glxp.api.entity.auth.InvWarehouseEntity"> resultType="com.glxp.api.entity.auth.InvWarehouseEntity">
select auth_warehouse.*, auth_dept.`name` AS warehouseName from auth_warehouse select auth_warehouse.*, auth_dept.`name` AS warehouseName from auth_warehouse
INNER JOIN INNER JOIN
auth_dept auth_dept
on auth_warehouse.parentId = auth_dept.code on auth_warehouse.parentId = auth_dept.code
<if test="userId != '' and userId != null"> <if test="userId != '' and userId != null">
INNER JOIN auth_warehouse_user on auth_warehouse.code = auth_warehouse_user.code INNER JOIN auth_warehouse_user on auth_warehouse.code = auth_warehouse_user.code
</if> </if>
@ -100,7 +100,7 @@
</if> </if>
<if test="superiorCode != '' and superiorCode != null"> <if test="superiorCode != '' and superiorCode != null">
AND (auth_dept.code = #{superiorPcode} AND (auth_dept.code = #{superiorPcode}
OR auth_dept.pcode = #{superiorCode}) OR auth_dept.pcode = #{superiorCode})
</if> </if>
<if test="subordinateCode != '' and subordinateCode != null"> <if test="subordinateCode != '' and subordinateCode != null">
AND auth_dept.pcode = #{subordinateCode} AND auth_dept.pcode = #{subordinateCode}
@ -145,23 +145,23 @@
<insert id="insertInvSubWarehouse" keyProperty="id" <insert id="insertInvSubWarehouse" keyProperty="id"
parameterType="com.glxp.api.entity.auth.InvWarehouseEntity"> parameterType="com.glxp.api.entity.auth.InvWarehouseEntity">
replace replace
INTO auth_warehouse INTO auth_warehouse
( id, code, `name`, parentId, remark, defaultInv, advanceType, spUse,parentCode ( id, code, `name`, parentId, remark, defaultInv, advanceType, spUse, parentCode
, thirdId, thirdId1, thirdId2, thirdId3, thirdId4) , thirdId, thirdId1, thirdId2, thirdId3, thirdId4)
values (#{id}, values (#{id},
#{code}, #{code},
#{name}, #{name},
#{parentId}, #{parentId},
#{remark}, #{remark},
#{defaultInv}, #{defaultInv},
#{advanceType}, #{advanceType},
#{spUse}, #{spUse},
#{parentCode}, #{parentCode},
#{thirdId}, #{thirdId},
#{thirdId1}, #{thirdId1},
#{thirdId2}, #{thirdId2},
#{thirdId3}, #{thirdId3},
#{thirdId4}) #{thirdId4})
</insert> </insert>
@ -226,10 +226,11 @@
<insert id="importInvSubWarehouse" parameterType="java.util.List"> <insert id="importInvSubWarehouse" parameterType="java.util.List">
replace replace
into auth_warehouse into auth_warehouse
(id, code, `name`, parentId, remark, defaultInv, parentCode, advanceType, thirdId, thirdId1, thirdId2, thirdId3, (id, code, `name`, parentId, remark, defaultInv, parentCode, advanceType, thirdId, thirdId1, thirdId2,
thirdId4) thirdId3,
values thirdId4)
values
<foreach collection="invWarehouseEntities" item="item" index="index" separator=","> <foreach collection="invWarehouseEntities" item="item" index="index" separator=",">
@ -287,8 +288,8 @@
c.name parentInvName, c.name parentInvName,
a.spUse a.spUse
FROM auth_warehouse a FROM auth_warehouse a
left join auth_dept b on a.parentId = b.code left join auth_dept b on a.parentId = b.code
left join auth_warehouse c on a.parentCode = c.code left join auth_warehouse c on a.parentCode = c.code
<where> <where>
<if test="id != '' and id != null"> <if test="id != '' and id != null">
AND a.id = #{id} AND a.id = #{id}
@ -309,8 +310,8 @@
AND a.advanceType = #{advanceType} AND a.advanceType = #{advanceType}
</if> </if>
<if test="key != null and key != ''"> <if test="key != null and key != ''">
AND (a.name like concat('%', #{key}, '%') or AND (a.name like concat('%', #{key}, '%') or
a.code = #{key}) a.code = #{key})
</if> </if>
</where> </where>
</select> </select>
@ -319,9 +320,9 @@
resultType="com.glxp.api.entity.auth.InvWarehouseEntity"> resultType="com.glxp.api.entity.auth.InvWarehouseEntity">
select auth_warehouse.*, auth_dept.`name` AS warehouseName select auth_warehouse.*, auth_dept.`name` AS warehouseName
from auth_warehouse from auth_warehouse
INNER JOIN INNER JOIN
auth_dept auth_dept
on auth_warehouse.parentId = auth_dept.code on auth_warehouse.parentId = auth_dept.code
<where> <where>
<if test="subordinateCode != '' and subordinateCode != null"> <if test="subordinateCode != '' and subordinateCode != null">
AND auth_dept.pcode = #{subordinateCode} AND auth_dept.pcode = #{subordinateCode}
@ -345,8 +346,8 @@
b.name parentName, b.name parentName,
a.parentCode a.parentCode
from auth_warehouse a from auth_warehouse a
left join auth_dept b on a.parentId = b.code left join auth_dept b on a.parentId = b.code
left join auth_warehouse_user c on a.code = c.code left join auth_warehouse_user c on a.code = c.code
<where> <where>
<if test="userId != null"> <if test="userId != null">
AND c.userId = #{userId} AND c.userId = #{userId}
@ -368,8 +369,8 @@
auth_warehouse.parentCode, auth_warehouse.parentCode,
auth_dept.name warehouseName auth_dept.name warehouseName
from auth_warehouse from auth_warehouse
inner join auth_dept on auth_warehouse.parentId = auth_dept.code inner join auth_dept on auth_warehouse.parentId = auth_dept.code
LEFT join auth_warehouse_user on auth_warehouse.code = auth_warehouse_user.code LEFT join auth_warehouse_user on auth_warehouse.code = auth_warehouse_user.code
<where> <where>
<if test="userId != null"> <if test="userId != null">
AND auth_warehouse_user.userId = #{userId} AND auth_warehouse_user.userId = #{userId}
@ -405,12 +406,18 @@
</where> </where>
</select> </select>
<select id="selectLowWarehouseAll" parameterType="java.lang.String" resultType="com.glxp.api.entity.auth.InvWarehouseEntity"> <select id="selectLowWarehouseAll" parameterType="java.lang.String"
resultType="com.glxp.api.entity.auth.InvWarehouseEntity">
with recursive table_a as ( with recursive table_a as (
select * from auth_warehouse ta where parentCode = #{pcode} select *
union all from auth_warehouse ta
select tb.* from auth_warehouse tb inner join table_a on table_a.code = tb.parentCode where parentCode = #{pcode}
) union all
select * from table_a select tb.*
from auth_warehouse tb
inner join table_a on table_a.code = tb.parentCode
)
select *
from table_a
</select> </select>
</mapper> </mapper>

@ -2,19 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.glxp.api.dao.basic.ProductInfoDao"> <mapper namespace="com.glxp.api.dao.basic.ProductInfoDao">
<select id="filterProductInfo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterProductInfo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
SELECT * FROM productinfo SELECT *
FROM productinfo
<where> <where>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc},'%') AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc}, '%')
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
@ -23,31 +23,31 @@
AND deviceRecordKey = #{deviceRecordKey} AND deviceRecordKey = #{deviceRecordKey}
</if> </if>
<if test="ggxh != '' and ggxh != null"> <if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat(#{ggxh},'%') AND ggxh LIKE concat(#{ggxh}, '%')
</if> </if>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
</where> </where>
</select> </select>
<select id="filterProductGroup" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterProductGroup" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
SELECT * FROM productinfo SELECT *
FROM productinfo
<where> <where>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc},'%') AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc}, '%')
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
@ -56,13 +56,15 @@
AND deviceRecordKey = #{deviceRecordKey} AND deviceRecordKey = #{deviceRecordKey}
</if> </if>
<if test="ggxh != '' and ggxh != null"> <if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat(#{ggxh},'%') AND ggxh LIKE concat(#{ggxh}, '%')
</if> </if>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
</where> </where>
GROUP BY uuid GROUP BY uuid
@ -70,22 +72,25 @@
<select id="filterCpmctymc" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterCpmctymc" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
select * from productinfo select *
from productinfo
<where> <where>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
</where> </where>
GROUP BY cpmctymc GROUP BY cpmctymc
@ -94,23 +99,26 @@
<select id="filterUdiByTyshxydm" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterUdiByTyshxydm" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
SELECT * FROM productinfo SELECT *
FROM productinfo
<where> <where>
diType = 1 diType = 1
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
</where> </where>
GROUP BY nameCode GROUP BY nameCode
@ -118,8 +126,9 @@
<select id="selectAllByUuid" parameterType="java.util.List" <select id="selectAllByUuid" parameterType="java.util.List"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
select * from productinfo where select *
uuid in ( from productinfo where
uuid in (
<foreach collection="ids" item="item" index="index" <foreach collection="ids" item="item" index="index"
separator=","> separator=",">
#{item} #{item}
@ -137,27 +146,27 @@
<!-- CHAR_LENGTH(nameCode) <![CDATA[ >= ]]> 14--> <!-- CHAR_LENGTH(nameCode) <![CDATA[ >= ]]> 14-->
<select id="filterUdiByCreditNo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterUdiByCreditNo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
select p.* from productinfo p
select p.* from productinfo p INNER JOIN INNER JOIN
(select deviceRecordKey ,max(versionNumber) versionNumber from productinfo (select deviceRecordKey, max(versionNumber) versionNumber
from productinfo
<where> <where>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
</where> </where>
GROUP BY deviceRecordKey) GROUP BY deviceRecordKey)
a on p.deviceRecordKey = a.deviceRecordKey and p.versionNumber = a.versionNumber a on p.deviceRecordKey = a.deviceRecordKey and p.versionNumber = a.versionNumber
<where> <where>
<if test="diType != '' and diType != null"> <if test="diType != '' and diType != null">
AND diType = #{diType} AND diType = #{diType}
@ -168,17 +177,17 @@
<select id="filterUdiByNewest" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterUdiByNewest" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
SELECT *
SELECT * FROM productinfo FROM productinfo
<where> <where>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
@ -191,72 +200,73 @@
<select id="filterUuidByCreditNo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterUuidByCreditNo" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="java.lang.String"> resultType="java.lang.String">
select p.uuid from productinfo p
select p.uuid from productinfo p INNER JOIN INNER JOIN
(select deviceRecordKey ,max(versionNumber) versionNumber from productinfo (select deviceRecordKey, max(versionNumber) versionNumber
from productinfo
<where> <where>
<if test="tyshxydm != '' and tyshxydm != null"> <if test="tyshxydm != '' and tyshxydm != null">
AND tyshxydm = #{tyshxydm} AND tyshxydm = #{tyshxydm}
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
</where> </where>
GROUP BY deviceRecordKey) GROUP BY deviceRecordKey)
a on p.deviceRecordKey = a.deviceRecordKey and p.versionNumber = a.versionNumber a on p.deviceRecordKey = a.deviceRecordKey and p.versionNumber = a.versionNumber
group by uuid group by uuid
</select> </select>
<select id="filterUdi" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="filterUdi" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
select *
select * from productinfo from productinfo
<where> <where>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc= #{ylqxzcrbarmc} AND ylqxzcrbarmc = #{ylqxzcrbarmc}
</if> </if>
<if test="ylqxzcrbarmc == '' and cpmctymc != '' and cpmctymc != null"> <if test="ylqxzcrbarmc == '' and cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null and cpmctymc != '' and cpmctymc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null and cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat('%',#{cpmctymc},'%') AND cpmctymc LIKE concat('%', #{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
<if test="ggxh != '' and ggxh != null"> <if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat('%',#{ggxh},'%') AND ggxh LIKE concat('%', #{ggxh}, '%')
</if> </if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null"> <if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND zczbhhzbapzbh LIKE concat('%',#{zczbhhzbapzbh},'%') AND zczbhhzbapzbh LIKE concat('%', #{zczbhhzbapzbh}, '%')
</if> </if>
<if test="deviceRecordKey != '' and deviceRecordKey != null"> <if test="deviceRecordKey != '' and deviceRecordKey != null">
AND deviceRecordKey = #{deviceRecordKey} AND deviceRecordKey = #{deviceRecordKey}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
<if test="isNewest != null and isNewest!=''"> <if test="isNewest != null and isNewest != ''">
AND isNewest = #{isNewest} AND isNewest = #{isNewest}
</if> </if>
<if test="diType != '' and diType != null"> <if test="diType != '' and diType != null">
AND diType = #{diType} AND diType = #{diType}
</if> </if>
</where> </where>
</select> </select>
@ -368,24 +378,23 @@
<select id="syncDlUdi" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest" <select id="syncDlUdi" parameterType="com.glxp.api.req.basic.ProductInfoFilterRequest"
resultType="com.glxp.api.entity.basic.ProductInfoEntity"> resultType="com.glxp.api.entity.basic.ProductInfoEntity">
SELECT *
SELECT * FROM productinfo FROM productinfo
<where> <where>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc},'%') AND ylqxzcrbarmc LIKE concat(#{ylqxzcrbarmc}, '%')
</if> </if>
<if test="cpmctymc != '' and cpmctymc != null"> <if test="cpmctymc != '' and cpmctymc != null">
AND cpmctymc LIKE concat(#{cpmctymc},'%') AND cpmctymc LIKE concat(#{cpmctymc}, '%')
</if> </if>
<if test="nameCode != '' and nameCode != null"> <if test="nameCode != '' and nameCode != null">
AND nameCode LIKE concat(#{nameCode},'%') AND nameCode LIKE concat(#{nameCode}, '%')
</if> </if>
<if test="uuid != '' and uuid != null"> <if test="uuid != '' and uuid != null">
AND uuid = #{uuid} AND uuid = #{uuid}
</if> </if>
<if test="ggxh != '' and ggxh != null"> <if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat('%',#{ggxh},'%') AND ggxh LIKE concat('%', #{ggxh}, '%')
</if> </if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null"> <if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND zczbhhzbapzbh = #{zczbhhzbapzbh} AND zczbhhzbapzbh = #{zczbhhzbapzbh}
@ -393,137 +402,133 @@
<if test="deviceRecordKey != '' and deviceRecordKey != null"> <if test="deviceRecordKey != '' and deviceRecordKey != null">
AND deviceRecordKey = #{deviceRecordKey} AND deviceRecordKey = #{deviceRecordKey}
</if> </if>
<if test="updateTime!=null and updateTime!=''"> <if test="updateTime != null and updateTime != ''">
<![CDATA[ and updateTime>= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[
and updateTime >= DATE_FORMAT(#{updateTime}, '%Y-%m-%d %H:%i:%S')
]]>
</if> </if>
</where> </where>
limit #{page},#{limit} limit #{page},#{limit}
</select> </select>
<insert id="insertProductInfo" keyProperty="id" <insert id="insertProductInfo"
parameterType="com.glxp.api.entity.basic.ProductInfoEntity"> parameterType="com.glxp.api.entity.basic.ProductInfoEntity">
REPLACE REPLACE
INTO productinfo INTO productinfo
( (id, nameCode, packRatio, packLevel, bhxjsl,
id,nameCode,packRatio,packLevel,bhxjsl, bhzxxsbzsl, zxxsbzbhsydysl, bhxjcpbm, bzcj, thirdProductNo, addType, deviceRecordKey, isUseDy,
bhzxxsbzsl,zxxsbzbhsydysl,bhxjcpbm,bzcj,thirdProductNo,addType,deviceRecordKey,isUseDy,thirdProductName, thirdProductName,
cpmctymc,cplb,flbm,ggxh,qxlb,tyshxydm,ylqxzcrbarmc,zczbhhzbapzbh,ylqxzcrbarywmc,uuid,sjcpbm,versionNumber cpmctymc, cplb, flbm, ggxh, qxlb, tyshxydm, ylqxzcrbarmc, zczbhhzbapzbh, ylqxzcrbarywmc, uuid, sjcpbm,
,diType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq, versionNumber
ybbm,spmc,cphhhbh,cpms,cpbsbmtxmc,isNewest,updateTime,cplx,hchzsb , diType, scbssfbhph, scbssfbhxlh, scbssfbhscrq, scbssfbhsxrq,
,sfwblztlcp,cgzmraqxgxx,sfbjwycxsy,zdcfsycs,sfwwjbz,syqsfxyjxmj,qtxxdwzlj,mjfs ybbm, spmc, cphhhbh, cpms, cpbsbmtxmc, isNewest, updateTime, cplx, hchzsb
) , sfwblztlcp, cgzmraqxgxx, sfbjwycxsy, zdcfsycs, sfwwjbz, syqsfxyjxmj, qtxxdwzlj, mjfs)
values values (#{id},
( #{nameCode},
#{id}, #{packRatio},
#{nameCode}, #{packLevel},
#{packRatio}, #{bhxjsl},
#{packLevel}, #{bhzxxsbzsl},
#{bhxjsl}, #{zxxsbzbhsydysl},
#{bhzxxsbzsl}, #{bhxjcpbm},
#{zxxsbzbhsydysl}, #{bzcj},
#{bhxjcpbm}, #{thirdProductNo},
#{bzcj}, #{addType},
#{thirdProductNo}, #{deviceRecordKey},
#{addType}, #{isUseDy},
#{deviceRecordKey}, #{thirdProductName},
#{isUseDy}, #{cpmctymc},
#{thirdProductName}, #{cplb},
#{cpmctymc}, #{flbm},
#{cplb}, #{ggxh},
#{flbm}, #{qxlb},
#{ggxh}, #{tyshxydm},
#{qxlb}, #{ylqxzcrbarmc},
#{tyshxydm}, #{zczbhhzbapzbh},
#{ylqxzcrbarmc}, #{ylqxzcrbarywmc},
#{zczbhhzbapzbh}, #{uuid},
#{ylqxzcrbarywmc}, #{sjcpbm},
#{uuid}, #{versionNumber},
#{sjcpbm}, #{diType},
#{versionNumber}, #{scbssfbhph},
#{diType}, #{scbssfbhxlh},
#{scbssfbhph}, #{scbssfbhscrq},
#{scbssfbhxlh}, #{scbssfbhsxrq},
#{scbssfbhscrq}, #{ybbm},
#{scbssfbhsxrq}, #{spmc},
#{ybbm}, #{cphhhbh},
#{spmc}, #{cpms},
#{cphhhbh}, #{cpbsbmtxmc},
#{cpms}, #{isNewest},
#{cpbsbmtxmc}, #{updateTime},
#{isNewest}, #{cplx},
#{updateTime}, #{hchzsb},
#{cplx}, #{sfwblztlcp},
#{hchzsb}, #{cgzmraqxgxx},
#{sfwblztlcp}, #{sfbjwycxsy},
#{cgzmraqxgxx}, #{zdcfsycs},
#{sfbjwycxsy}, #{sfwwjbz},
#{zdcfsycs}, #{syqsfxyjxmj},
#{sfwwjbz}, #{qtxxdwzlj},
#{syqsfxyjxmj}, #{mjfs})
#{qtxxdwzlj},
#{mjfs}
)
</insert> </insert>
<insert id="insertProductInfos" keyProperty="id" <insert id="insertProductInfos" keyProperty="id"
parameterType="com.glxp.api.entity.basic.ProductInfoEntity"> parameterType="com.glxp.api.entity.basic.ProductInfoEntity">
REPLACE INTO productinfo REPLACE INTO productinfo
( (id, nameCode, packRatio, packLevel, bhxjsl,
id,nameCode,packRatio,packLevel,bhxjsl, bhzxxsbzsl, zxxsbzbhsydysl, bhxjcpbm, bzcj, thirdProductNo, addType, deviceRecordKey, isUseDy,
bhzxxsbzsl,zxxsbzbhsydysl,bhxjcpbm,bzcj,thirdProductNo,addType,deviceRecordKey,isUseDy,thirdProductName, thirdProductName,
cpmctymc,cplb,flbm,ggxh,qxlb,tyshxydm,ylqxzcrbarmc,zczbhhzbapzbh,ylqxzcrbarywmc,uuid,sjcpbm,versionNumber cpmctymc, cplb, flbm, ggxh, qxlb, tyshxydm, ylqxzcrbarmc, zczbhhzbapzbh, ylqxzcrbarywmc, uuid, sjcpbm,
,diType,scbssfbhph,scbssfbhxlh,scbssfbhscrq,scbssfbhsxrq, versionNumber
ybbm,spmc,cphhhbh,cpms,cpbsbmtxmc,isNewest,updateTime,cplx,hchzsb , diType, scbssfbhph, scbssfbhxlh, scbssfbhscrq, scbssfbhsxrq,
,sfwblztlcp,cgzmraqxgxx,sfbjwycxsy,zdcfsycs,sfwwjbz,syqsfxyjxmj,qtxxdwzlj,mjfs ybbm, spmc, cphhhbh, cpms, cpbsbmtxmc, isNewest, updateTime, cplx, hchzsb
) values , sfwblztlcp, cgzmraqxgxx, sfbjwycxsy, zdcfsycs, sfwwjbz, syqsfxyjxmj, qtxxdwzlj, mjfs) values
<foreach collection="datas" item="item" index="index" <foreach collection="datas" item="item" index="index"
separator=","> separator=",">
(#{item.id},
#{item.nameCode},
( #{item.packRatio},
#{item.id}, #{item.packLevel},
#{item.nameCode}, #{item.bhxjsl},
#{item.packRatio}, #{item.bhzxxsbzsl},
#{item.packLevel}, #{item.zxxsbzbhsydysl},
#{item.bhxjsl}, #{item.bhxjcpbm},
#{item.bhzxxsbzsl}, #{item.bzcj},
#{item.zxxsbzbhsydysl}, #{item.thirdProductNo},
#{item.bhxjcpbm}, #{item.addType},
#{item.bzcj}, #{item.deviceRecordKey},
#{item.thirdProductNo}, #{item.isUseDy},
#{item.addType}, #{item.thirdProductName},
#{item.deviceRecordKey}, #{item.cpmctymc},
#{item.isUseDy}, #{item.cplb},
#{item.thirdProductName}, #{item.flbm},
#{item.cpmctymc}, #{item.ggxh},
#{item.cplb}, #{item.qxlb},
#{item.flbm}, #{item.tyshxydm},
#{item.ggxh}, #{item.ylqxzcrbarmc},
#{item.qxlb}, #{item.zczbhhzbapzbh},
#{item.tyshxydm}, #{item.ylqxzcrbarywmc},
#{item.ylqxzcrbarmc}, #{item.uuid},
#{item.zczbhhzbapzbh}, #{item.sjcpbm},
#{item.ylqxzcrbarywmc}, #{item.versionNumber},
#{item.uuid}, #{item.diType},
#{item.sjcpbm}, #{item.scbssfbhph},
#{item.versionNumber}, #{item.scbssfbhxlh},
#{item.diType}, #{item.scbssfbhscrq},
#{item.scbssfbhph}, #{item.scbssfbhsxrq},
#{item.scbssfbhxlh}, #{item.ybbm},
#{item.scbssfbhscrq}, #{item.spmc},
#{item.scbssfbhsxrq}, #{item.cphhhbh},
#{item.ybbm}, #{item.cpms},
#{item.spmc}, #{item.cpbsbmtxmc},
#{item.cphhhbh}, #{item.isNewest},
#{item.cpms}, #{item.updateTime}, #{item.cplx}, #{item.hchzsb}, #{item.sfwblztlcp}, #{item.cgzmraqxgxx},
#{item.cpbsbmtxmc}, #{item.sfbjwycxsy}, #{item.zdcfsycs}
#{item.isNewest}, , #{item.sfwwjbz}, #{item.syqsfxyjxmj}, #{item.qtxxdwzlj}, #{item.mjfs})
#{item.updateTime},#{item.cplx},#{item.hchzsb},#{item.sfwblztlcp},#{item.cgzmraqxgxx},#{item.sfbjwycxsy},#{item.zdcfsycs}
,#{item.sfwwjbz},#{item.syqsfxyjxmj},#{item.qtxxdwzlj},#{item.mjfs}
)
</foreach> </foreach>
</insert> </insert>
@ -534,7 +539,8 @@
</delete> </delete>
<delete id="deleteAll" parameterType="java.util.List"> <delete id="deleteAll" parameterType="java.util.List">
DELETE FROM productinfo WHERE thirdProductNo in DELETE
FROM productinfo WHERE thirdProductNo in
<foreach collection="ids" item="item" open="(" separator="," close=")"> <foreach collection="ids" item="item" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -543,44 +549,117 @@
<update id="updateProductInfo" parameterType="com.glxp.api.entity.basic.ProductInfoEntity"> <update id="updateProductInfo" parameterType="com.glxp.api.entity.basic.ProductInfoEntity">
UPDATE productinfo UPDATE productinfo
<set> <set>
<if test="nameCode != null">nameCode=#{nameCode},</if> <if test="nameCode != null">
<if test="packRatio != null">packRatio=#{packRatio},</if> nameCode=#{nameCode},
<if test="packLevel != null">packLevel=#{packLevel},</if> </if>
<if test="bhxjsl != null">bhxjsl=#{bhxjsl},</if> <if test="packRatio != null">
<if test="bhzxxsbzsl != null">bhzxxsbzsl=#{bhzxxsbzsl},</if> packRatio=#{packRatio},
<if test="zxxsbzbhsydysl != null">zxxsbzbhsydysl=#{zxxsbzbhsydysl},</if> </if>
<if test="bhxjcpbm != null">bhxjcpbm=#{bhxjcpbm},</if> <if test="packLevel != null">
<if test="bzcj != null">bzcj=#{bzcj},</if> packLevel=#{packLevel},
<if test="thirdProductNo != null">thirdProductNo=#{thirdProductNo},</if> </if>
<if test="addType != null">addType=#{addType},</if> <if test="bhxjsl != null">
<if test="deviceRecordKey != null">deviceRecordKey=#{deviceRecordKey},</if> bhxjsl=#{bhxjsl},
<if test="isUseDy != null">isUseDy=#{isUseDy},</if> </if>
<if test="thirdProductName != null">thirdProductName=#{thirdProductName},</if> <if test="bhzxxsbzsl != null">
<if test="cpmctymc != null">cpmctymc=#{cpmctymc},</if> bhzxxsbzsl=#{bhzxxsbzsl},
<if test="cplb != null">cplb=#{cplb},</if> </if>
<if test="flbm != null">flbm=#{flbm},</if> <if test="zxxsbzbhsydysl != null">
<if test="ggxh != null">ggxh=#{ggxh},</if> zxxsbzbhsydysl=#{zxxsbzbhsydysl},
<if test="qxlb != null">qxlb=#{qxlb},</if> </if>
<if test="tyshxydm != null">tyshxydm=#{tyshxydm},</if> <if test="bhxjcpbm != null">
<if test="ylqxzcrbarmc != null">ylqxzcrbarmc=#{ylqxzcrbarmc},</if> bhxjcpbm=#{bhxjcpbm},
<if test="ylqxzcrbarywmc != null">ylqxzcrbarywmc=#{ylqxzcrbarywmc},</if> </if>
<if test="uuid != null">uuid=#{uuid},</if> <if test="bzcj != null">
<if test="sjcpbm != null">sjcpbm=#{sjcpbm},</if> bzcj=#{bzcj},
<if test="versionNumber != null">versionNumber=#{versionNumber},</if> </if>
<if test="diType != null">diType=#{diType},</if> <if test="thirdProductNo != null">
<if test="isNewest != null">isNewest=#{isNewest},</if> thirdProductNo=#{thirdProductNo},
<if test="updateTime != null">updateTime=#{updateTime},</if> </if>
<if test="cplx != null">cplx=#{cplx},</if> <if test="addType != null">
<if test="hchzsb != null">hchzsb=#{hchzsb},</if> addType=#{addType},
<if test="sfwblztlcp != null">sfwblztlcp=#{sfwblztlcp},</if> </if>
<if test="cgzmraqxgxx != null">cgzmraqxgxx=#{cgzmraqxgxx},</if> <if test="deviceRecordKey != null">
<if test="sfbjwycxsy != null">sfbjwycxsy=#{sfbjwycxsy},</if> deviceRecordKey=#{deviceRecordKey},
<if test="zdcfsycs != null">zdcfsycs=#{zdcfsycs},</if> </if>
<if test="sfwwjbz != null">sfwwjbz=#{sfwwjbz},</if> <if test="isUseDy != null">
<if test="syqsfxyjxmj != null">syqsfxyjxmj=#{syqsfxyjxmj}, isUseDy=#{isUseDy},
</if> </if>
<if test="qtxxdwzlj != null">qtxxdwzlj=#{qtxxdwzlj},</if> <if test="thirdProductName != null">
<if test="mjfs != null">mjfs=#{mjfs},</if> thirdProductName=#{thirdProductName},
</if>
<if test="cpmctymc != null">
cpmctymc=#{cpmctymc},
</if>
<if test="cplb != null">
cplb=#{cplb},
</if>
<if test="flbm != null">
flbm=#{flbm},
</if>
<if test="ggxh != null">
ggxh=#{ggxh},
</if>
<if test="qxlb != null">
qxlb=#{qxlb},
</if>
<if test="tyshxydm != null">
tyshxydm=#{tyshxydm},
</if>
<if test="ylqxzcrbarmc != null">
ylqxzcrbarmc=#{ylqxzcrbarmc},
</if>
<if test="ylqxzcrbarywmc != null">
ylqxzcrbarywmc=#{ylqxzcrbarywmc},
</if>
<if test="uuid != null">
uuid=#{uuid},
</if>
<if test="sjcpbm != null">
sjcpbm=#{sjcpbm},
</if>
<if test="versionNumber != null">
versionNumber=#{versionNumber},
</if>
<if test="diType != null">
diType=#{diType},
</if>
<if test="isNewest != null">
isNewest=#{isNewest},
</if>
<if test="updateTime != null">
updateTime=#{updateTime},
</if>
<if test="cplx != null">
cplx=#{cplx},
</if>
<if test="hchzsb != null">
hchzsb=#{hchzsb},
</if>
<if test="sfwblztlcp != null">
sfwblztlcp=#{sfwblztlcp},
</if>
<if test="cgzmraqxgxx != null">
cgzmraqxgxx=#{cgzmraqxgxx},
</if>
<if test="sfbjwycxsy != null">
sfbjwycxsy=#{sfbjwycxsy},
</if>
<if test="zdcfsycs != null">
zdcfsycs=#{zdcfsycs},
</if>
<if test="sfwwjbz != null">
sfwwjbz=#{sfwwjbz},
</if>
<if test="syqsfxyjxmj != null">
syqsfxyjxmj=#{syqsfxyjxmj},
</if>
<if test="qtxxdwzlj != null">
qtxxdwzlj=#{qtxxdwzlj},
</if>
<if test="mjfs != null">
mjfs=#{mjfs},
</if>
</set> </set>
WHERE id = #{id} WHERE id = #{id}
</update> </update>
@ -588,29 +667,69 @@
<update id="updateProductByUuid" parameterType="com.glxp.api.entity.basic.ProductInfoEntity"> <update id="updateProductByUuid" parameterType="com.glxp.api.entity.basic.ProductInfoEntity">
UPDATE productinfo UPDATE productinfo
<set> <set>
<if test="scbssfbhph != null">scbssfbhph=#{scbssfbhph},</if> <if test="scbssfbhph != null">
<if test="scbssfbhxlh != null">scbssfbhxlh=#{scbssfbhxlh},</if> scbssfbhph=#{scbssfbhph},
<if test="scbssfbhscrq != null">scbssfbhscrq=#{scbssfbhscrq},</if> </if>
<if test="scbssfbhsxrq != null">scbssfbhsxrq=#{scbssfbhsxrq},</if> <if test="scbssfbhxlh != null">
<if test="ybbm != null">ybbm=#{ybbm},</if> scbssfbhxlh=#{scbssfbhxlh},
<if test="spmc != null">spmc=#{spmc},</if> </if>
<if test="cphhhbh != null">cphhhbh=#{cphhhbh},</if> <if test="scbssfbhscrq != null">
<if test="cpms != null">cpms=#{cpms},</if> scbssfbhscrq=#{scbssfbhscrq},
<if test="cpbsbmtxmc != null">cpbsbmtxmc=#{cpbsbmtxmc},</if> </if>
<if test="isNewest != null">isNewest=#{isNewest},</if> <if test="scbssfbhsxrq != null">
<if test="updateTime != null">updateTime=#{updateTime},</if> scbssfbhsxrq=#{scbssfbhsxrq},
<if test="cplx != null">cplx=#{cplx},</if> </if>
<if test="hchzsb != null">hchzsb=#{hchzsb}, <if test="ybbm != null">
</if> ybbm=#{ybbm},
<if test="sfwblztlcp != null">sfwblztlcp=#{sfwblztlcp},</if> </if>
<if test="cgzmraqxgxx != null">cgzmraqxgxx=#{cgzmraqxgxx},</if> <if test="spmc != null">
<if test="sfbjwycxsy != null">sfbjwycxsy=#{sfbjwycxsy},</if> spmc=#{spmc},
<if test="zdcfsycs != null">zdcfsycs=#{zdcfsycs},</if> </if>
<if test="sfwwjbz != null">sfwwjbz=#{sfwwjbz},</if> <if test="cphhhbh != null">
<if test="syqsfxyjxmj != null">syqsfxyjxmj=#{syqsfxyjxmj}, cphhhbh=#{cphhhbh},
</if> </if>
<if test="qtxxdwzlj != null">qtxxdwzlj=#{qtxxdwzlj},</if> <if test="cpms != null">
<if test="mjfs != null">mjfs=#{mjfs},</if> cpms=#{cpms},
</if>
<if test="cpbsbmtxmc != null">
cpbsbmtxmc=#{cpbsbmtxmc},
</if>
<if test="isNewest != null">
isNewest=#{isNewest},
</if>
<if test="updateTime != null">
updateTime=#{updateTime},
</if>
<if test="cplx != null">
cplx=#{cplx},
</if>
<if test="hchzsb != null">
hchzsb=#{hchzsb},
</if>
<if test="sfwblztlcp != null">
sfwblztlcp=#{sfwblztlcp},
</if>
<if test="cgzmraqxgxx != null">
cgzmraqxgxx=#{cgzmraqxgxx},
</if>
<if test="sfbjwycxsy != null">
sfbjwycxsy=#{sfbjwycxsy},
</if>
<if test="zdcfsycs != null">
zdcfsycs=#{zdcfsycs},
</if>
<if test="sfwwjbz != null">
sfwwjbz=#{sfwwjbz},
</if>
<if test="syqsfxyjxmj != null">
syqsfxyjxmj=#{syqsfxyjxmj},
</if>
<if test="qtxxdwzlj != null">
qtxxdwzlj=#{qtxxdwzlj},
</if>
<if test="mjfs != null">
mjfs=#{mjfs},
</if>
</set> </set>
WHERE uuid = #{uuid} WHERE uuid = #{uuid}
</update> </update>
@ -620,7 +739,8 @@
<select id="findAllUuids" parameterType="com.glxp.api.util.page.ListPageRequest" resultType="java.lang.String"> <select id="findAllUuids" parameterType="com.glxp.api.util.page.ListPageRequest" resultType="java.lang.String">
SELECT uuid SELECT uuid
from device from device
group by uuid limit #{page}, #{limit} group by uuid
limit #{page}, #{limit}
</select> </select>
<select id="findAllTyshxyh" resultType="java.lang.String"> <select id="findAllTyshxyh" resultType="java.lang.String">
SELECT tyshxydm SELECT tyshxydm

@ -53,6 +53,87 @@
</where> </where>
</select> </select>
<select id="findGroupBySpace" resultType="com.glxp.api.res.inv.InvPreinProductResponse">
select ipp.id,
ipp.nameCode,
bp.cpmctymc,
ipp.relId,
bp.ggxh,
ipp.batchNo,
ipp.produceDate,
ipp.expireDate,
bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh,
ipp.inCount,
ipp.outCount,
ipp.reCount,
basic_corp.name supName,
ipp.supId,
auth_dept.name deptName,
auth_warehouse.name invName,
as.name spaceName,
ipp.deptCode,
ipp.invCode
from inv_prein_product_detail ipp
inner join basic_udirel on ipp.relId = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ipp.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ipp.deptCode
left join auth_warehouse on auth_warehouse.code = ipp.invCode
left join auth_space `as` on ipp.code = `as`.code
<where>
<if test="cpmctymc != null and cpmctymc != ''">
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
</if>
<if test="nameCode != null and nameCode != ''">
AND ipp.nameCode like concat('%', #{nameCode}, '%')
</if>
<if test="relIdFk != null and relIdFk != ''">
AND ipp.relId = #{relIdFk}
</if>
<if test="ggxh != null and ggxh != ''">
AND bp.ggxh like concat('%', #{ggxh}, '%')
</if>
<if test="batchNo != null and batchNo != ''">
AND ipp.batchNo like concat('%', #{batchNo}, '%')
</if>
<if test="productionDate != null and productionDate != ''">
AND ipp.produceDate = #{productionDate}
</if>
<if test="expireDate != null and expireDate != ''">
AND ipp.expireDate = #{expireDate}
</if>
<if test="ylqxzcrbarmc != null and ylqxzcrbarmc != ''">
AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
</if>
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
</if>
<if test="supId != null and supId != ''">
AND ipp.supId = #{supId}
</if>
<if test="deptCode != null and deptCode != ''">
AND ipp.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND ipp.invCode = #{invCode}
</if>
<if test="spaceCode != null and spaceCode != ''">
AND ipp.invSpaceCode = #{spaceCode}
</if>
<if test="invCodes != null and invCodes.size() != 0">
AND ipp.invCode in
<foreach collection="invCodes" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
</where>
GROUP BY ipp.relId, ipp.batchNo
order by ipp.updateTime desc
</select>
<delete id="deleteInvPreProductDetail"> <delete id="deleteInvPreProductDetail">
delete delete
from inv_prein_product_detail from inv_prein_product_detail
@ -74,49 +155,46 @@
</if> </if>
</where> </where>
</delete> </delete>
<select id="getInvProductInfo" resultType="com.glxp.api.res.inv.InvPlaceDetailResponse">
select ipd.code,
<select id="selectGroupDetail" resultType="com.glxp.api.entity.inv.InvPreInProductDetailEntity"> ipd.relId,
select * ipd.batchNo,
from inv_prein_product_detail ipd.serialNo,
ipd.invSpaceCode,
ipd.invCode,
bp.cpmctymc productName,
bp.ggxh,
bp.measname,
bp.zczbhhzbapzbh,
bp.manufactory,
(select name from auth_space s where s.code = ipd.invSpaceCode) invSpaceName,
(select name from basic_corp bc where bc.erpId = ipd.supId) supName
from inv_prein_product_detail ipd
left join basic_udirel bu on bu.id = ipd.relId
left join basic_products bp on bp.uuid = bu.uuid
<where> <where>
<if test="code != null and code != ''">
AND code = #{code}
</if>
<if test="mainAction != null and mainAction != ''">
AND mainAction = #{mainAction}
</if>
<if test="action != null and action != ''">
AND action = #{action}
</if>
<if test="supId != null and supId != ''">
and supId = #{supId}
</if>
<if test="relId != null and relId != ''">
AND relId = #{relId}
</if>
<if test="nameCode != null and nameCode != ''">
AND nameCode like concat('%', #{nameCode}, '%')
</if>
<if test="orderId != null and orderId != ''">
AND orderId = #{orderId}
</if>
<if test="deptCode != null and deptCode != ''">
AND deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
AND invCode = #{invCode} AND ipd.invCode = #{invCode}
</if> </if>
<if test="invSpaceCode != null and invSpaceCode != ''"> <if test="invSpaceCode != null and invSpaceCode != ''">
AND invSpaceCode = #{invSpaceCode} AND ipd.invSpaceCode = #{invSpaceCode}
</if> </if>
<if test="batchNo != null and batchNo != ''"> <if test="code != null and code != ''">
AND batchNo = #{batchNo} AND ipd.code = #{code}
</if> </if>
<if test="batchNo == null and batchNo == ''"> <if test="orderId != null and orderId != ''">
AND batchNo is null AND ipd.orderId = #{orderId}
</if> </if>
</where> </where>
group by group by ipd.id
</select> </select>
<update id="batchBindSpace">
update inv_prein_product_detail
set invSpaceCode = #{invSpaceCode}
where id in
<foreach collection="ids" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</update>
</mapper> </mapper>

@ -3,32 +3,32 @@
<mapper namespace="com.glxp.api.dao.inv.InvPreProductDao"> <mapper namespace="com.glxp.api.dao.inv.InvPreProductDao">
<select id="filterList" resultType="com.glxp.api.res.inv.InvPreProductResponse"> <select id="filterList" resultType="com.glxp.api.res.inv.InvPreProductResponse">
select ipp.id, select ipp.id,
ipp.nameCode, ipp.nameCode,
bp.cpmctymc, bp.cpmctymc,
ipp.relIdFk, ipp.relIdFk,
bp.ggxh, bp.ggxh,
ipp.batchNo, ipp.batchNo,
ipp.productionDate, ipp.productionDate,
ipp.expireDate, ipp.expireDate,
bp.ylqxzcrbarmc, bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh, bp.zczbhhzbapzbh,
ipp.inCount, ipp.inCount,
ipp.outCount, ipp.outCount,
ipp.reCount, ipp.reCount,
ipp.customerId, ipp.customerId,
basic_corp.name supName, basic_corp.name supName,
ipp.supId, ipp.supId,
auth_dept.name deptName, auth_dept.name deptName,
auth_warehouse.name invName, auth_warehouse.name invName,
ipp.deptCode, ipp.deptCode,
ipp.invCode, ipp.invCode,
bp.measname bp.measname
from inv_pre_product ipp from inv_pre_product ipp
inner join basic_udirel on ipp.relIdFk = basic_udirel.id inner join basic_udirel on ipp.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ipp.supId = basic_corp.erpId left join basic_corp on ipp.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ipp.deptCode left join auth_dept on auth_dept.code = ipp.deptCode
left join auth_warehouse on auth_warehouse.code = ipp.invCode left join auth_warehouse on auth_warehouse.code = ipp.invCode
<where> <where>
bp.diType = 1 bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">
@ -82,11 +82,11 @@
<select id="filterPreProductList" resultType="com.glxp.api.entity.inv.InvPreProductEntity"> <select id="filterPreProductList" resultType="com.glxp.api.entity.inv.InvPreProductEntity">
select ipp.* select ipp.*
from inv_pre_product ipp from inv_pre_product ipp
inner join basic_udirel on ipp.relIdFk = basic_udirel.id inner join basic_udirel on ipp.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ipp.supId = basic_corp.erpId left join basic_corp on ipp.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ipp.deptCode left join auth_dept on auth_dept.code = ipp.deptCode
left join auth_warehouse on auth_warehouse.code = ipp.invCode left join auth_warehouse on auth_warehouse.code = ipp.invCode
<where> <where>
bp.diType = 1 bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">

@ -1,6 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.InvPreProductDetailDao"> <mapper namespace="com.glxp.api.dao.inv.InvPreProductDetailDao">
<select id="findGroupBySpace" resultType="com.glxp.api.res.inv.InvPreinProductResponse">
select ipp.id,
ipp.nameCode,
bp.cpmctymc,
ipp.relId,
bp.ggxh,
ipp.batchNo,
ipp.produceDate,
ipp.expireDate,
bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh,
ipp.inCount,
ipp.outCount,
ipp.reCount,
basic_corp.name supName,
ipp.supId,
auth_dept.name deptName,
auth_warehouse.name invName,
as.name spaceName,
ipp.deptCode,
ipp.invCode
from inv_pre_product_detail ipp
inner join basic_udirel on ipp.relId = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ipp.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ipp.deptCode
left join auth_warehouse on auth_warehouse.code = ipp.invCode
left join auth_space `as` on ipp.code = `as`.code
<where>
<if test="cpmctymc != null and cpmctymc != ''">
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
</if>
<if test="nameCode != null and nameCode != ''">
AND ipp.nameCode like concat('%', #{nameCode}, '%')
</if>
<if test="relIdFk != null and relIdFk != ''">
AND ipp.relId = #{relIdFk}
</if>
<if test="ggxh != null and ggxh != ''">
AND bp.ggxh like concat('%', #{ggxh}, '%')
</if>
<if test="batchNo != null and batchNo != ''">
AND ipp.batchNo like concat('%', #{batchNo}, '%')
</if>
<if test="productionDate != null and productionDate != ''">
AND ipp.produceDate = #{productionDate}
</if>
<if test="expireDate != null and expireDate != ''">
AND ipp.expireDate = #{expireDate}
</if>
<if test="ylqxzcrbarmc != null and ylqxzcrbarmc != ''">
AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
</if>
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
</if>
<if test="supId != null and supId != ''">
AND ipp.supId = #{supId}
</if>
<if test="deptCode != null and deptCode != ''">
AND ipp.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND ipp.invCode = #{invCode}
</if>
<if test="spaceCode != null and spaceCode != ''">
AND ipp.invSpaceCode = #{spaceCode}
</if>
<if test="invCodes != null and invCodes.size() != 0">
AND ipp.invCode in
<foreach collection="invCodes" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
</where>
GROUP BY ipp.relId, ipp.batchNo
order by ipp.updateTime desc
</select>
<select id="filterPreProductDetailList" resultType="com.glxp.api.entity.inv.InvPreProductDetailEntity"> <select id="filterPreProductDetailList" resultType="com.glxp.api.entity.inv.InvPreProductDetailEntity">
select * select *
from inv_pre_product_detail from inv_pre_product_detail
@ -74,4 +154,47 @@
</if> </if>
</where> </where>
</delete> </delete>
<select id="getInvProductInfo" resultType="com.glxp.api.res.inv.InvPlaceDetailResponse">
select ipd.code,
ipd.relId,
ipd.batchNo,
ipd.serialNo,
ipd.invSpaceCode,
ipd.invCode,
bp.cpmctymc productName,
bp.ggxh,
bp.measname,
bp.zczbhhzbapzbh,
bp.manufactory,
(select name from auth_space s where s.code = ipd.invSpaceCode) invSpaceName,
(select name from basic_corp bc where bc.erpId = ipd.supId) supName
from inv_pre_product_detail ipd
left join basic_udirel bu on bu.id = ipd.relId
left join basic_products bp on bp.uuid = bu.uuid
<where>
<if test="invCode != null and invCode != ''">
AND ipd.invCode = #{invCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND ipd.invSpaceCode = #{invSpaceCode}
</if>
<if test="code != null and code != ''">
AND ipd.code = #{code}
</if>
<if test="orderId != null and orderId != ''">
AND ipd.orderId = #{orderId}
</if>
</where>
group by ipd.id
</select>
<update id="batchBindSpace">
update inv_pre_product_detail
set invSpaceCode = #{invSpaceCode}
where id in
<foreach collection="ids" index="index" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</update>
</mapper> </mapper>

@ -134,4 +134,5 @@
</if> </if>
</where> </where>
</select> </select>
</mapper> </mapper>

@ -6,34 +6,34 @@
<select id="filterList" resultType="com.glxp.api.res.inv.InvProductResponse" <select id="filterList" resultType="com.glxp.api.res.inv.InvProductResponse"
parameterType="com.glxp.api.req.inv.FilterInvProductRequest"> parameterType="com.glxp.api.req.inv.FilterInvProductRequest">
select ip.id, select ip.id,
ip.nameCode, ip.nameCode,
bp.cpmctymc, bp.cpmctymc,
bp.measname, bp.measname,
ip.relIdFk, ip.relIdFk,
bp.ggxh, bp.ggxh,
ip.batchNo, ip.batchNo,
ip.productionDate, ip.productionDate,
ip.expireDate, ip.expireDate,
bp.ylqxzcrbarmc, bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh, bp.zczbhhzbapzbh,
sum(ip.inCount) as inCount, sum(ip.inCount) as inCount,
sum(ip.outCount) as outCount, sum(ip.outCount) as outCount,
sum(ip.reCount) as reCount, sum(ip.reCount) as reCount,
ip.customerId, ip.customerId,
basic_corp.name supName, basic_corp.name supName,
ip.supId, ip.supId,
auth_dept.name deptName, auth_dept.name deptName,
auth_warehouse.name invName, auth_warehouse.name invName,
ip.deptCode, ip.deptCode,
ip.invCode, ip.invCode,
as.name spaceName as.name spaceName
from inv_product ip from inv_product ip
inner join basic_udirel on ip.relIdFk = basic_udirel.id inner join basic_udirel on ip.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ip.supId = basic_corp.erpId left join basic_corp on ip.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ip.deptCode left join auth_dept on auth_dept.code = ip.deptCode
left join auth_warehouse on auth_warehouse.code = ip.invCode left join auth_warehouse on auth_warehouse.code = ip.invCode
left join auth_space `as` on ip.invSpaceCode = `as`.code left join auth_space `as` on ip.invSpaceCode = `as`.code
<where> <where>
bp.diType = 1 bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">
@ -91,26 +91,26 @@
<select id="stockStatistics" resultType="com.glxp.api.res.inv.InvProductResponse"> <select id="stockStatistics" resultType="com.glxp.api.res.inv.InvProductResponse">
select bp.cpmctymc, select bp.cpmctymc,
bp.nameCode, bp.nameCode,
bp.ylqxzcrbarmc, bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh, bp.zczbhhzbapzbh,
bc.name supName, bc.name supName,
bp.ggxh, bp.ggxh,
aw.name invName, aw.name invName,
ip.batchNo, ip.batchNo,
ip.relIdFk, ip.relIdFk,
ip.productionDate, ip.productionDate,
ip.expireDate, ip.expireDate,
ip.customerId, ip.customerId,
ip.supId, ip.supId,
sum(ip.inCount) inCount, sum(ip.inCount) inCount,
sum(ip.outCount) outCount, sum(ip.outCount) outCount,
sum(ip.reCount) reCount sum(ip.reCount) reCount
from inv_product ip from inv_product ip
inner join basic_udirel bu on ip.relIdFk = bu.id inner join basic_udirel bu on ip.relIdFk = bu.id
inner join basic_products bp on bu.uuid = bp.uuid inner join basic_products bp on bu.uuid = bp.uuid
left join basic_corp bc on ip.supId = bc.erpId left join basic_corp bc on ip.supId = bc.erpId
left join auth_warehouse aw on aw.code = ip.invCode left join auth_warehouse aw on aw.code = ip.invCode
<where> <where>
bp.diType = 1 bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">
@ -150,13 +150,13 @@
<select id="getMAInvProducts" resultType="com.glxp.api.res.inv.InvProductResponse"> <select id="getMAInvProducts" resultType="com.glxp.api.res.inv.InvProductResponse">
select ip.id, bp.nameCode, bp.cpmctymc, bp.ggxh, ip.batchNo, ip.productionDate, ip.expireDate select ip.id, bp.nameCode, bp.cpmctymc, bp.ggxh, ip.batchNo, ip.productionDate, ip.expireDate
from inv_product ip from inv_product ip
left join inv_product_detail ipd left join inv_product_detail ipd
on ip.relIdFk = ipd.relId and on ip.relIdFk = ipd.relId and
ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty') ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
left join basic_udirel bu on bu.id = ip.relIdFk left join basic_udirel bu on bu.id = ip.relIdFk
left join basic_products bp on bu.uuid = bp.uuid left join basic_products bp on bu.uuid = bp.uuid
<where> <where>
( ip.inCount - ip.outCount ) > 0 (ip.inCount - ip.outCount) > 0
<if test="nameCode != null and nameCode != ''"> <if test="nameCode != null and nameCode != ''">
AND bp.nameCode like concat('%', #{nameCode}, '%') AND bp.nameCode like concat('%', #{nameCode}, '%')
</if> </if>
@ -182,10 +182,10 @@
<select id="selectProductInfo" resultType="com.glxp.api.entity.inv.InvProductEntity"> <select id="selectProductInfo" resultType="com.glxp.api.entity.inv.InvProductEntity">
select ip.* select ip.*
from inv_product ip from inv_product ip
left join inv_product_detail ipd on ip.relIdFk = ipd.relId left join inv_product_detail ipd on ip.relIdFk = ipd.relId
and ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty') and ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
and ip.deptCode = ipd.deptCode and ip.deptCode = ipd.deptCode
and ip.invCode = ipd.invCode and ip.invCode = ipd.invCode
<where> <where>
<if test="relId != null and relId != ''"> <if test="relId != null and relId != ''">
AND ip.relIdFk = #{relId} AND ip.relIdFk = #{relId}
@ -208,22 +208,22 @@
<select id="getCountInvProduct" resultType="com.glxp.api.res.inv.InvProductResponse"> <select id="getCountInvProduct" resultType="com.glxp.api.res.inv.InvProductResponse">
select inv_product_detail.id, select inv_product_detail.id,
inv_product.relIdFk, inv_product.relIdFk,
inv_product.nameCode, inv_product.nameCode,
inv_product.batchNo, inv_product.batchNo,
inv_product.productionDate, inv_product.productionDate,
inv_product.expireDate, inv_product.expireDate,
basic_products.ggxh, basic_products.ggxh,
inv_product.inCount, inv_product.inCount,
inv_product.outCount, inv_product.outCount,
sum(inv_product.inCount - inv_product.outCount) reCount, sum(inv_product.inCount - inv_product.outCount) reCount,
basic_products.cpmctymc basic_products.cpmctymc
from inv_product_detail from inv_product_detail
left join inv_product on inv_product_detail.relId = inv_product.relIdFk left join inv_product on inv_product_detail.relId = inv_product.relIdFk
and inv_product.invCode = inv_product_detail.invCode and inv_product.invCode = inv_product_detail.invCode
AND IFNULL(inv_product.batchNo, 'empty') = IFNULL(inv_product_detail.batchNo, 'empty') AND IFNULL(inv_product.batchNo, 'empty') = IFNULL(inv_product_detail.batchNo, 'empty')
left join basic_udirel on inv_product_detail.relId = basic_udirel.id left join basic_udirel on inv_product_detail.relId = basic_udirel.id
left join basic_products on basic_products.uuid = basic_udirel.uuid left join basic_products on basic_products.uuid = basic_udirel.uuid
<where> <where>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
AND inv_product_detail.invCode = #{invCode} AND inv_product_detail.invCode = #{invCode}
@ -246,19 +246,19 @@
<select id="selectInvProductInfo" resultType="com.glxp.api.entity.inv.InvProductEntity"> <select id="selectInvProductInfo" resultType="com.glxp.api.entity.inv.InvProductEntity">
select ip.relIdFk, select ip.relIdFk,
ip.deptCode, ip.deptCode,
ip.invCode, ip.invCode,
ipd.invSpaceCode, ipd.invSpaceCode,
ip.batchNo, ip.batchNo,
ip.productionDate, ip.productionDate,
ip.expireDate, ip.expireDate,
ip.supId, ip.supId,
ip.inCount, ip.inCount,
ip.outCount, ip.outCount,
ip.reCount ip.reCount
from inv_product ip from inv_product ip
left join inv_product_detail ipd left join inv_product_detail ipd
on ip.relIdFk = ipd.relId and ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty') on ip.relIdFk = ipd.relId and ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
<where> <where>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
AND ip.invCode = #{invCode} AND ip.invCode = #{invCode}
@ -276,10 +276,10 @@
<select id="filterProductNames" resultType="com.glxp.api.res.inv.InvProductResponse"> <select id="filterProductNames" resultType="com.glxp.api.res.inv.InvProductResponse">
select ip.relIdFk, bp.cpmctymc, bp.ggxh select ip.relIdFk, bp.cpmctymc, bp.ggxh
from inv_product ip from inv_product ip
left join inv_product_detail ipd on ip.relIdFk = ipd.relId and ip.invCode = ipd.invCode and left join inv_product_detail ipd on ip.relIdFk = ipd.relId and ip.invCode = ipd.invCode and
ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty') ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
left join basic_udirel bu on bu.id = ip.relIdFk left join basic_udirel bu on bu.id = ip.relIdFk
left join basic_products bp on bp.uuid = bu.uuid left join basic_products bp on bp.uuid = bu.uuid
<where> <where>
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%') AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
@ -297,33 +297,33 @@
<select id="filterProductList" resultType="com.glxp.api.res.inv.InvProductResponse" <select id="filterProductList" resultType="com.glxp.api.res.inv.InvProductResponse"
parameterType="com.glxp.api.req.inv.FilterInvProductRequest"> parameterType="com.glxp.api.req.inv.FilterInvProductRequest">
select ip.id, select ip.id,
ip.nameCode, ip.nameCode,
bp.cpmctymc, bp.cpmctymc,
ip.relIdFk, ip.relIdFk,
bp.ggxh, bp.ggxh,
ip.batchNo, ip.batchNo,
ip.productionDate, ip.productionDate,
ip.expireDate, ip.expireDate,
bp.ylqxzcrbarmc, bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh, bp.zczbhhzbapzbh,
sum(ip.inCount) as inCount, sum(ip.inCount) as inCount,
sum(ip.outCount) as outCount, sum(ip.outCount) as outCount,
sum(ip.reCount) as reCount, sum(ip.reCount) as reCount,
ip.customerId, ip.customerId,
basic_corp.name supName, basic_corp.name supName,
ip.supId, ip.supId,
auth_dept.name deptName, auth_dept.name deptName,
auth_warehouse.name invName, auth_warehouse.name invName,
ip.deptCode, ip.deptCode,
ip.invCode ip.invCode
from inv_product ip from inv_product ip
inner join basic_udirel on ip.relIdFk = basic_udirel.id inner join basic_udirel on ip.relIdFk = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ip.supId = basic_corp.erpId left join basic_corp on ip.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ip.deptCode left join auth_dept on auth_dept.code = ip.deptCode
left join auth_warehouse on auth_warehouse.code = ip.invCode left join auth_warehouse on auth_warehouse.code = ip.invCode
left join inv_product_detail ipd on ip.invCode = ipd.invCode and ip.relIdFk = ipd.relId and left join inv_product_detail ipd on ip.invCode = ipd.invCode and ip.relIdFk = ipd.relId and
ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty') ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
<where> <where>
bp.diType = 1 bp.diType = 1
<if test="cpmctymc != null and cpmctymc != ''"> <if test="cpmctymc != null and cpmctymc != ''">

@ -3,6 +3,86 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.InvProductDetailDao"> <mapper namespace="com.glxp.api.dao.inv.InvProductDetailDao">
<select id="findGroupBySpace" resultType="com.glxp.api.res.inv.InvProductResponse">
select ipp.id,
ipp.nameCode,
bp.cpmctymc,
ipp.relId,
bp.ggxh,
ipp.batchNo,
ipp.produceDate,
ipp.expireDate,
bp.ylqxzcrbarmc,
bp.zczbhhzbapzbh,
ipp.inCount,
ipp.outCount,
ipp.reCount,
basic_corp.name supName,
ipp.supId,
auth_dept.name deptName,
auth_warehouse.name invName,
as.name spaceName,
ipp.deptCode,
ipp.invCode
from inv_product_detail ipp
inner join basic_udirel on ipp.relId = basic_udirel.id
inner join basic_products bp on basic_udirel.uuid = bp.uuid
left join basic_corp on ipp.supId = basic_corp.erpId
left join auth_dept on auth_dept.code = ipp.deptCode
left join auth_warehouse on auth_warehouse.code = ipp.invCode
left join auth_space `as` on ipp.code = `as`.code
<where>
<if test="cpmctymc != null and cpmctymc != ''">
AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
</if>
<if test="nameCode != null and nameCode != ''">
AND ipp.nameCode like concat('%', #{nameCode}, '%')
</if>
<if test="relIdFk != null and relIdFk != ''">
AND ipp.relId = #{relIdFk}
</if>
<if test="ggxh != null and ggxh != ''">
AND bp.ggxh like concat('%', #{ggxh}, '%')
</if>
<if test="batchNo != null and batchNo != ''">
AND ipp.batchNo like concat('%', #{batchNo}, '%')
</if>
<if test="productionDate != null and productionDate != ''">
AND ipp.produceDate = #{productionDate}
</if>
<if test="expireDate != null and expireDate != ''">
AND ipp.expireDate = #{expireDate}
</if>
<if test="ylqxzcrbarmc != null and ylqxzcrbarmc != ''">
AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
</if>
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
</if>
<if test="supId != null and supId != ''">
AND ipp.supId = #{supId}
</if>
<if test="deptCode != null and deptCode != ''">
AND ipp.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND ipp.invCode = #{invCode}
</if>
<if test="invSpaceCode != null and invSpaceCode != ''">
AND ipp.invSpaceCode = #{invSpaceCode}
</if>
<if test="invCodes != null and invCodes.size() != 0">
AND ipp.invCode in
<foreach collection="invCodes" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
</where>
GROUP BY ipp.relId, ipp.batchNo
order by ipp.updateTime desc
</select>
<select id="filterInvProductDetailList" resultType="com.glxp.api.entity.inv.InvProductDetailEntity" <select id="filterInvProductDetailList" resultType="com.glxp.api.entity.inv.InvProductDetailEntity"
parameterType="com.glxp.api.req.inv.FilterInvProductDetailRequest"> parameterType="com.glxp.api.req.inv.FilterInvProductDetailRequest">
select * select *
@ -101,12 +181,12 @@
aw.name invName, aw.name invName,
sp.name invSpaceName sp.name invSpaceName
from inv_product_detail pd from inv_product_detail pd
left join basic_udirel bu on pd.relId = bu.id left join basic_udirel bu on pd.relId = bu.id
left join basic_products bp on bp.uuid = bu.uuid left join basic_products bp on bp.uuid = bu.uuid
left join auth_dept ad on pd.deptCode = ad.code left join auth_dept ad on pd.deptCode = ad.code
left join auth_warehouse aw on pd.invCode = aw.code left join auth_warehouse aw on pd.invCode = aw.code
left join auth_space sp on pd.invSpaceCode = sp.code left join auth_space sp on pd.invSpaceCode = sp.code
and sp.invStorageCode = pd.deptCode and sp.invWarehouseCode = pd.invCode and sp.invStorageCode = pd.deptCode and sp.invWarehouseCode = pd.invCode
<where> <where>
<if test="deptCode != null and deptCode != ''"> <if test="deptCode != null and deptCode != ''">
AND pd.deptCode = #{deptCode} AND pd.deptCode = #{deptCode}
@ -127,7 +207,7 @@
<update id="batchBindSpace"> <update id="batchBindSpace">
update inv_product_detail update inv_product_detail
set invSpaceCode = #{invSpaceCode} set invSpaceCode = #{invSpaceCode}
where id in where id in
<foreach collection="ids" index="index" item="item" open="(" close=")" separator=","> <foreach collection="ids" index="index" item="item" open="(" close=")" separator=",">
#{item} #{item}
</foreach> </foreach>
@ -182,8 +262,8 @@
(select name from auth_space s where s.code = ipd.invSpaceCode) invSpaceName, (select name from auth_space s where s.code = ipd.invSpaceCode) invSpaceName,
(select name from basic_corp bc where bc.erpId = ipd.supId) supName (select name from basic_corp bc where bc.erpId = ipd.supId) supName
from inv_product_detail ipd from inv_product_detail ipd
left join basic_udirel bu on bu.id = ipd.relId left join basic_udirel bu on bu.id = ipd.relId
left join basic_products bp on bp.uuid = bu.uuid left join basic_products bp on bp.uuid = bu.uuid
<where> <where>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
AND ipd.invCode = #{invCode} AND ipd.invCode = #{invCode}
@ -210,9 +290,9 @@
o.fromType, o.fromType,
o.createTime, o.createTime,
o.auditTime, o.auditTime,
(select employeeName from auth_user where id = o.reviewUser) reviewUserName (select employeeName from auth_user where id = o.reviewUser) reviewUserName
from inv_product_detail ipd from inv_product_detail ipd
left join io_order o on ipd.orderId = o.billNo left join io_order o on ipd.orderId = o.billNo
<where> <where>
<if test="invCode != null and invCode != ''"> <if test="invCode != null and invCode != ''">
AND ipd.invCode = #{invCode} AND ipd.invCode = #{invCode}

@ -34,7 +34,7 @@
parameterType="com.glxp.api.entity.sync.BasicDownloadStatusEntity"> parameterType="com.glxp.api.entity.sync.BasicDownloadStatusEntity">
replace replace
INTO basic_download_status(id, taskId, idDatas, status, type, updateTime, scheduleType, startTime, INTO basic_download_status(id, taskId, idDatas, status, type, updateTime, scheduleType, startTime,
endTime, remark,cacheFilePath) endTime, remark, cacheFilePath)
values (#{id}, values (#{id},
#{taskId}, #{taskId},
#{idDatas}, #{idDatas},
@ -45,7 +45,7 @@
#{startTime}, #{startTime},
#{endTime}, #{endTime},
#{remark}, #{remark},
#{cacheFilePath}) #{cacheFilePath})
</insert> </insert>
<update id="updateDownloadStatus" parameterType="com.glxp.api.entity.sync.BasicDownloadStatusEntity"> <update id="updateDownloadStatus" parameterType="com.glxp.api.entity.sync.BasicDownloadStatusEntity">
@ -75,6 +75,9 @@
<if test="remark != null"> <if test="remark != null">
remark=#{remark}, remark=#{remark},
</if> </if>
<if test="cacheFilePath != null">
cacheFilePath=#{cacheFilePath},
</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>
@ -91,6 +94,8 @@
</delete> </delete>
<delete id="deleteByDate"> <delete id="deleteByDate">
delete from basic_download_status where date_format(#{date}, '%Y-%m-%d') >= date_format(updateTime, '%Y-%m-%d') delete
from basic_download_status
where date_format(#{date}, '%Y-%m-%d') >= date_format(updateTime, '%Y-%m-%d')
</delete> </delete>
</mapper> </mapper>

@ -2,28 +2,29 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.glxp.api.dao.sync.BasicExportDao"> <mapper namespace="com.glxp.api.dao.sync.BasicExportDao">
<select id="filterExportStatus" parameterType="com.glxp.api.req.sync.BasicExportStatusRequest" <select id="filterExportStatus" parameterType="com.glxp.api.req.sync.BasicExportStatusRequest"
resultType="com.glxp.api.entity.sync.BasicExportStatusEntity"> resultType="com.glxp.api.entity.sync.BasicExportStatusEntity">
select * from basic_export_status select *
from basic_export_status
<where> <where>
<if test="id != null and id != ''"> <if test="id != null and id != ''">
AND id LIKE concat('%',#{id},'%') AND id LIKE concat('%', #{id}, '%')
</if> </if>
<if test="status!=null"> <if test="status != null">
and status = #{status} and status = #{status}
</if> </if>
<if test="type!=null"> <if test="type != null">
and `type` = #{type} and `type` = #{type}
</if> </if>
<if test="idDatas != '' and idDatas!=null"> <if test="idDatas != '' and idDatas != null">
and idDatas = #{idDatas} and idDatas = #{idDatas}
</if> </if>
<if test="scheduleType!=null"> <if test="scheduleType != null">
and scheduleType = #{scheduleType} and scheduleType = #{scheduleType}
</if> </if>
<if test="syncTime != null and syncTime != ''"> <if test="syncTime != null and syncTime != ''">
and #{syncTime} >= startTime and #{syncTime} &lt;= endTime and #{syncTime} >= startTime
and #{syncTime} &lt;= endTime
</if> </if>
</where> </where>
order by updateTime desc order by updateTime desc
@ -33,32 +34,50 @@
<insert id="insertExportStatus" keyProperty="id" <insert id="insertExportStatus" keyProperty="id"
parameterType="com.glxp.api.entity.sync.BasicExportStatusEntity"> parameterType="com.glxp.api.entity.sync.BasicExportStatusEntity">
replace replace
INTO basic_export_status(id,idDatas,status,type,updateTime,scheduleType,startTime,endTime,remark,cacheFilePath) INTO basic_export_status(id, idDatas, status, type, updateTime, scheduleType, startTime, endTime,
values( remark, cacheFilePath)
#{id}, values (#{id},
#{idDatas}, #{idDatas},
#{status}, #{status},
#{type}, #{type},
#{updateTime}, #{updateTime},
#{scheduleType}, #{scheduleType},
#{startTime}, #{startTime},
#{endTime}, #{endTime},
#{remark}, #{remark},
#{cacheFilePath} #{cacheFilePath})
)
</insert> </insert>
<update id="updateExportStatus" parameterType="com.glxp.api.entity.sync.BasicExportStatusEntity"> <update id="updateExportStatus" parameterType="com.glxp.api.entity.sync.BasicExportStatusEntity">
UPDATE basic_export_status UPDATE basic_export_status
<trim prefix="set" suffixOverrides=","> <trim prefix="set" suffixOverrides=",">
<if test="idDatas != null">idDatas=#{idDatas},</if> <if test="idDatas != null">
<if test="status != null">status=#{status},</if> idDatas=#{idDatas},
<if test="type != null">type=#{type},</if> </if>
<if test="updateTime != null">updateTime=#{updateTime},</if> <if test="status != null">
<if test="scheduleType != null">scheduleType=#{scheduleType},</if> status=#{status},
<if test="startTime != null">startTime=#{startTime},</if> </if>
<if test="endTime != null">endTime=#{endTime},</if> <if test="type != null">
<if test="remark != null">remark=#{remark},</if> type=#{type},
</if>
<if test="updateTime != null">
updateTime=#{updateTime},
</if>
<if test="scheduleType != null">
scheduleType=#{scheduleType},
</if>
<if test="startTime != null">
startTime=#{startTime},
</if>
<if test="endTime != null">
endTime=#{endTime},
</if>
<if test="remark != null">
remark=#{remark},
</if>
<if test="cacheFilePath != null">
cacheFilePath=#{cacheFilePath},
</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>
@ -69,11 +88,14 @@
</delete> </delete>
<delete id="deleteByTime"> <delete id="deleteByTime">
Delete From basic_export_status Delete
where date(startTime) &lt;= date(DATE_SUB(NOW(),INTERVAL 30 day)) From basic_export_status
where date(startTime) &lt;= date(DATE_SUB(NOW(), INTERVAL 30 day))
</delete> </delete>
<delete id="deleteByDate"> <delete id="deleteByDate">
delete from basic_export_status where date_format(#{date}, '%Y-%m-%d') >= date_format(startTime, '%Y-%m-%d') delete
from basic_export_status
where date_format(#{date}, '%Y-%m-%d') >= date_format(startTime, '%Y-%m-%d')
</delete> </delete>
</mapper> </mapper>

Loading…
Cancel
Save