fix: 原始单据分表出来

dev_no_inv
chenhc 10 months ago
parent 90b9c4d168
commit f4d932671d

@ -5,6 +5,7 @@ import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
@ -12,10 +13,7 @@ import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeAuto;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.entity.collect.*;
import com.glxp.api.req.basic.BasicCollectUserRequest;
import com.glxp.api.req.basic.PrescribeBindWorkRequest;
import com.glxp.api.req.collect.CollectOrderBindWorkRequest;
@ -52,6 +50,9 @@ public class IoCollectOrderController extends BaseController {
@Resource
IoCollectOrderService collectOrderService;
@Resource
IoCollectOrderOriginService collectOrderOriginService;
@Resource
IoCollectOrderBizService collectOrderBizService;
@ -250,6 +251,11 @@ public class IoCollectOrderController extends BaseController {
collectOrder.setUpdateTime(new Date());
collectOrder.setUpdateUser(getUserId());
collectOrderService.updateById(collectOrder);
if (collectOrder.getTagStatus() == 2){
collectOrderOriginService.update( new LambdaUpdateWrapper<IoCollectOrderOrigin>().eq(IoCollectOrderOrigin::getBillNo,collectOrder.getBillNo())
.set(IoCollectOrderOrigin::getTagStatus,2));
}
return ResultVOUtils.success();
}

@ -1,26 +1,47 @@
package com.glxp.api.controller.collect;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderOrigin;
import com.glxp.api.req.basic.BasicCollectUserRequest;
import com.glxp.api.req.collect.CollectOrderBizRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UserWorkResponse;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.service.basic.BasicCollectUserService;
import com.glxp.api.service.collect.IoCollectOrderBizOriginService;
import com.glxp.api.service.collect.IoCollectOrderOriginService;
import com.glxp.api.service.collect.IoCollectOriginService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
/**
*
*/
@RestController
public class IoCollectOriginController {
public class IoCollectOriginController extends BaseController {
@Resource
private BasicCollectUserService basicCollectUserService;
@Resource
private IoCollectOrderOriginService collectOrderOriginService;
@Resource
IoCollectOriginService collectOriginService;
@Resource
IoCollectOrderBizOriginService collectOrderBizOriginService;
@PostMapping("/udiwms/basic/collect/origin/order/download")
public BaseResponse downloadOrder(@RequestBody CollectOrderRequest collectOrderRequest) {
@ -40,4 +61,48 @@ public class IoCollectOriginController {
return ResultVOUtils.success();
}
@GetMapping("/udiwms/basic/collect/origin/order/filter")
public BaseResponse filterOrder(CollectOrderRequest collectOrderRequest) {
List<Long> workPlaceCodes = null;
List<UserWorkResponse> page;
if (collectOrderRequest.getWorkPlaceCode() == null) {
Long userId = getUserId();
BasicCollectUserRequest request = new BasicCollectUserRequest();
request.setPage(1);
request.setLimit(100);
request.setUserId(userId.toString());
page = basicCollectUserService.filterList(request);
if (page != null) {
workPlaceCodes = page.stream()
.map(UserWorkResponse::getWorkplaceId)
.collect(Collectors.toList());
}
collectOrderRequest.setWorkPlaceCodes(workPlaceCodes);
}
List<IoCollectOrderResponse> orderResponses = collectOrderOriginService.filterList(collectOrderRequest);
PageInfo<IoCollectOrderResponse> pageInfo = new PageInfo<>(orderResponses);
PageSimpleResponse<IoCollectOrderResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(orderResponses);
return ResultVOUtils.success(pageSimpleResponse);
}
@GetMapping("/udiwms/basic/collect/origin/order/detail")
public BaseResponse detail(CollectOrderBizRequest collectOrderBizRequest) {
if (StrUtil.isBlank(collectOrderBizRequest.getOrderIdFk())) {
return ResultVOUtils.error(500, "单据号不能为空");
}
IoCollectOrderOrigin collectOrder = collectOrderOriginService.getByBillNo(collectOrderBizRequest.getOrderIdFk());
if (collectOrder == null) {
return ResultVOUtils.error(500, "未找到单据");
}
List<CollectOrderBizResponse> list = collectOrderBizOriginService.filterList(collectOrderBizRequest);
PageInfo<CollectOrderBizResponse> pageInfo = new PageInfo<>(list);
PageSimpleResponse<CollectOrderBizResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(list);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -0,0 +1,15 @@
package com.glxp.api.dao.collect;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.collect.IoCollectOrderBizOrigin;
import com.glxp.api.req.collect.CollectOrderBizRequest;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface IoCollectOrderBizOriginMapper extends BaseMapper<IoCollectOrderBizOrigin> {
List<CollectOrderBizResponse> filterList(CollectOrderBizRequest collectOrderRequest);
}

@ -0,0 +1,15 @@
package com.glxp.api.dao.collect;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.collect.IoCollectOrderOrigin;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface IoCollectOrderOriginMapper extends BaseMapper<IoCollectOrderOrigin> {
List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest);
}

@ -0,0 +1,351 @@
package com.glxp.api.entity.collect;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
*/
@ApiModel(value="com-glxp-api-entity-collect-IoCollectOrderBizOrigin")
@Data
@TableName(value = "io_collect_order_biz_origin")
public class IoCollectOrderBizOrigin implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="")
private Long id;
/**
*
*/
@TableField(value = "orderIdFk")
@ApiModelProperty(value="单据号")
private String orderIdFk;
/**
* ID
*/
@TableField(value = "relId")
@ApiModelProperty(value="物资字典ID")
private Long relId;
/**
*
*/
@TableField(value = "thrCode")
@ApiModelProperty(value="院内编码(第三方编码)")
private String thrCode;
/**
*
*/
@TableField(value = "ybbm")
@ApiModelProperty(value="医保编码")
private String ybbm;
/**
*
*/
@TableField(value = "payFeeCode")
@ApiModelProperty(value="收费编码")
private String payFeeCode;
/**
*
*/
@TableField(value = "sptm")
@ApiModelProperty(value="商品条码")
private String sptm;
/**
*
*/
@TableField(value = "cpmctymc")
@ApiModelProperty(value="产品通用名称")
private String cpmctymc;
/**
*
*/
@TableField(value = "nameCode")
@ApiModelProperty(value="产品标识")
private String nameCode;
/**
*
*/
@TableField(value = "batchNo")
@ApiModelProperty(value="批次号")
private String batchNo;
/**
*
*/
@TableField(value = "productDate")
@ApiModelProperty(value="生产日期")
private String productDate;
/**
*
*/
@TableField(value = "expireDate")
@ApiModelProperty(value="失效日期")
private String expireDate;
/**
*
*/
@TableField(value = "count")
@ApiModelProperty(value="单据数量")
private Integer count;
/**
*
*/
@TableField(value = "unTagCount")
@ApiModelProperty(value="未拆零数量")
private Integer unTagCount;
/**
*
*/
@TableField(value = "actCount")
@ApiModelProperty(value="实际数量")
private Integer actCount;
/**
*
*/
@TableField(value = "scanCount")
@ApiModelProperty(value="扫码数量")
private Integer scanCount;
/**
*
*/
@TableField(value = "scanActCount")
@ApiModelProperty(value="扫码实际数量")
private Integer scanActCount;
/**
*
*/
@TableField(value = "ggxh")
@ApiModelProperty(value="规格型号")
private String ggxh;
/**
*
*/
@TableField(value = "measureUnit")
@ApiModelProperty(value="计量单位")
private String measureUnit;
/**
* 1:23
*/
@TableField(value = "tagStatus")
@ApiModelProperty(value="单据明细赋码状态 1:未赋码2部分赋码3已赋码")
private Byte tagStatus;
/**
*
*/
@TableField(value = "tagMsg")
@ApiModelProperty(value="赋码错误信息")
private String tagMsg;
/**
* 123:
*/
@TableField(value = "autoTagStatus")
@ApiModelProperty(value="自动赋码状态1无法自动赋码2可以自动赋码3:可以自动赋码,但是数量不足")
private Byte autoTagStatus;
/**
*
*/
@TableField(value = "remark")
@ApiModelProperty(value="备注")
private String remark;
/**
*
*/
@TableField(value = "createTime")
@ApiModelProperty(value="创建时间")
private Date createTime;
/**
*
*/
@TableField(value = "updateTime")
@ApiModelProperty(value="更新时间")
private Date updateTime;
@TableField(value = "remark1")
@ApiModelProperty(value="")
private String remark1;
@TableField(value = "remark2")
@ApiModelProperty(value="")
private String remark2;
@TableField(value = "remark3")
@ApiModelProperty(value="")
private String remark3;
@TableField(value = "remark4")
@ApiModelProperty(value="")
private String remark4;
@TableField(value = "remark5")
@ApiModelProperty(value="")
private String remark5;
@TableField(value = "remark6")
@ApiModelProperty(value="")
private String remark6;
@TableField(value = "remark7")
@ApiModelProperty(value="")
private String remark7;
@TableField(value = "remark8")
@ApiModelProperty(value="")
private String remark8;
@TableField(value = "remark9")
@ApiModelProperty(value="")
private String remark9;
@TableField(value = "remark10")
@ApiModelProperty(value="")
private String remark10;
@TableField(value = "remark11")
@ApiModelProperty(value="")
private String remark11;
@TableField(value = "remark12")
@ApiModelProperty(value="")
private String remark12;
@TableField(value = "remark13")
@ApiModelProperty(value="")
private String remark13;
@TableField(value = "remark14")
@ApiModelProperty(value="")
private String remark14;
@TableField(value = "remark15")
@ApiModelProperty(value="")
private String remark15;
/**
*
*/
@TableField(value = "autoResCount")
@ApiModelProperty(value="自动扫码预分配工位存量")
private Integer autoResCount;
/**
*
*/
@TableField(value = "replaceCode")
@ApiModelProperty(value="替换码")
private String replaceCode;
private static final long serialVersionUID = 1L;
public static final String COL_ID = "id";
public static final String COL_ORDERIDFK = "orderIdFk";
public static final String COL_RELID = "relId";
public static final String COL_THRCODE = "thrCode";
public static final String COL_YBBM = "ybbm";
public static final String COL_PAYFEECODE = "payFeeCode";
public static final String COL_SPTM = "sptm";
public static final String COL_CPMCTYMC = "cpmctymc";
public static final String COL_NAMECODE = "nameCode";
public static final String COL_BATCHNO = "batchNo";
public static final String COL_PRODUCTDATE = "productDate";
public static final String COL_EXPIREDATE = "expireDate";
public static final String COL_COUNT = "count";
public static final String COL_UNTAGCOUNT = "unTagCount";
public static final String COL_ACTCOUNT = "actCount";
public static final String COL_SCANCOUNT = "scanCount";
public static final String COL_SCANACTCOUNT = "scanActCount";
public static final String COL_GGXH = "ggxh";
public static final String COL_MEASUREUNIT = "measureUnit";
public static final String COL_TAGSTATUS = "tagStatus";
public static final String COL_TAGMSG = "tagMsg";
public static final String COL_AUTOTAGSTATUS = "autoTagStatus";
public static final String COL_REMARK = "remark";
public static final String COL_CREATETIME = "createTime";
public static final String COL_UPDATETIME = "updateTime";
public static final String COL_REMARK1 = "remark1";
public static final String COL_REMARK2 = "remark2";
public static final String COL_REMARK3 = "remark3";
public static final String COL_REMARK4 = "remark4";
public static final String COL_REMARK5 = "remark5";
public static final String COL_REMARK6 = "remark6";
public static final String COL_REMARK7 = "remark7";
public static final String COL_REMARK8 = "remark8";
public static final String COL_REMARK9 = "remark9";
public static final String COL_REMARK10 = "remark10";
public static final String COL_REMARK11 = "remark11";
public static final String COL_REMARK12 = "remark12";
public static final String COL_REMARK13 = "remark13";
public static final String COL_REMARK14 = "remark14";
public static final String COL_REMARK15 = "remark15";
public static final String COL_AUTORESCOUNT = "autoResCount";
public static final String COL_REPLACECODE = "replaceCode";
}

@ -0,0 +1,326 @@
package com.glxp.api.entity.collect;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
*/
@ApiModel(value="com-glxp-api-entity-purchase-IoCollectOrderOrigin")
@Data
@TableName(value = "io_collect_order_origin")
public class IoCollectOrderOrigin implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="")
private Integer id;
/**
*
*/
@TableField(value = "orderId")
@ApiModelProperty(value="自定义本单据号")
private String orderId;
/**
* (
*/
@TableField(value = "billNo")
@ApiModelProperty(value="单据号(原始单据号)")
private String billNo;
/**
*
*/
@TableField(value = "busType")
@ApiModelProperty(value="单据类型")
private String busType;
/**
* 12
*/
@TableField(value = "inoutType")
@ApiModelProperty(value="出入库类型1入库2出库")
private Integer inoutType;
/**
*
*/
@TableField(value = "fromType")
@ApiModelProperty(value="来源业务")
private String fromType;
/**
*
*/
@TableField(value = "fromTypeDesc")
@ApiModelProperty(value="来源业务说明")
private String fromTypeDesc;
/**
*
*/
@TableField(value = "localFromCorp")
@ApiModelProperty(value="本系统往来单位编码")
private String localFromCorp;
/**
*
*/
@TableField(value = "fromCorp")
@ApiModelProperty(value="往来信息")
private String fromCorp;
/**
*
*/
@TableField(value = "fromCorpName")
@ApiModelProperty(value="往来信息名称")
private String fromCorpName;
/**
*
*/
@TableField(value = "billTime")
@ApiModelProperty(value="单据时间")
private Date billTime;
/**
*
*/
@TableField(value = "createTime")
@ApiModelProperty(value="创建时间")
private Date createTime;
/**
* /
*/
@TableField(value = "collectTime")
@ApiModelProperty(value="采集时间/单据处理时间")
private Date collectTime;
/**
*
*/
@TableField(value = "workPlaceCode")
@ApiModelProperty(value="工位编码")
private Long workPlaceCode;
/**
* 012,3.
*/
@TableField(value = "splitStatus")
@ApiModelProperty(value="停用拆零状态0未拆零1正在拆零2,已完成3.拆零失败")
private Integer splitStatus;
/**
*
*/
@TableField(value = "splitMsg")
@ApiModelProperty(value="拆零异常信息")
private String splitMsg;
/**
* 0:1:234
*/
@TableField(value = "tagStatus")
@ApiModelProperty(value="赋码状态 0:原始单据未处理1:已分配工位待处理2处理中3已完成4处理异常")
private Integer tagStatus;
/**
*
*/
@TableField(value = "tagMsg")
@ApiModelProperty(value="赋码信息")
private String tagMsg;
/**
*
*/
@TableField(value = "remark")
@ApiModelProperty(value="备注")
private String remark;
/**
*
*/
@TableField(value = "createUser")
@ApiModelProperty(value="创建人")
private String createUser;
/**
*
*/
@TableField(value = "updateTime")
@ApiModelProperty(value="更新时间")
private Date updateTime;
/**
*
*/
@TableField(value = "updateUser")
@ApiModelProperty(value="更新人")
private String updateUser;
/**
*
*/
@TableField(value = "finishTime")
@ApiModelProperty(value="完成时间")
private Date finishTime;
/**
*
*/
@TableField(value = "draftTime")
@ApiModelProperty(value="单据挂起时间")
private Date draftTime;
/**
* 12:使
*/
@TableField(value = "orderCirType")
@ApiModelProperty(value="1流通2:使用")
private Integer orderCirType;
/**
* 1
*/
@TableField(value = "backupOrderRemark1")
@ApiModelProperty(value="备用查询字段1")
private String backupOrderRemark1;
/**
* 2
*/
@TableField(value = "backupOrderRemark2")
@ApiModelProperty(value="备用查询字段2")
private String backupOrderRemark2;
/**
* 3
*/
@TableField(value = "backupOrderRemark3")
@ApiModelProperty(value="备用查询字段3")
private String backupOrderRemark3;
/**
* 4
*/
@TableField(value = "backupOrderRemark4")
@ApiModelProperty(value="备用查询字段4")
private String backupOrderRemark4;
/**
* 5
*/
@TableField(value = "backupOrderRemark5")
@ApiModelProperty(value="备用查询字段5")
private String backupOrderRemark5;
/**
* 6
*/
@TableField(value = "backupOrderRemark6")
@ApiModelProperty(value="备用查询字段6")
private String backupOrderRemark6;
/**
* 1
*/
@TableField(value = "remark1")
@ApiModelProperty(value="备用字段1")
private String remark1;
/**
* 2
*/
@TableField(value = "remark2")
@ApiModelProperty(value="备用字段2")
private String remark2;
/**
* 3
*/
@TableField(value = "remark3")
@ApiModelProperty(value="备用字段3")
private String remark3;
/**
* 4
*/
@TableField(value = "remark4")
@ApiModelProperty(value="备用字段4")
private String remark4;
/**
* 5
*/
@TableField(value = "remark5")
@ApiModelProperty(value="备用字段5")
private String remark5;
/**
* 6
*/
@TableField(value = "remark6")
@ApiModelProperty(value="备用字段6")
private String remark6;
/**
* 7
*/
@TableField(value = "remark7")
@ApiModelProperty(value="备用字段7")
private String remark7;
/**
* 8
*/
@TableField(value = "remark8")
@ApiModelProperty(value="备用字段8")
private String remark8;
/**
*
*/
@TableField(value = "orderTime")
@ApiModelProperty(value="排序时间")
private Date orderTime;
/**
* 1:; 2:
*/
@TableField(value = "invAlert")
@ApiModelProperty(value="库存预警: 1:正常; 2:不足")
private Integer invAlert;
/**
* (1.,2.,3.)
*/
@TableField(value = "uploadStatus")
@ApiModelProperty(value="上传状态(1.未上传,2.已上传,3.上传失败)")
private Integer uploadStatus;
/**
*
*/
@TableField(value = "uploadError")
@ApiModelProperty(value="上传错误信息")
private String uploadError;
/**
*
*/
@TableField(value = "errorMsg")
@ApiModelProperty(value="异常信息")
private String errorMsg;
}

@ -0,0 +1,32 @@
package com.glxp.api.service.collect;
import com.github.pagehelper.PageHelper;
import com.glxp.api.req.collect.CollectOrderBizRequest;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.collect.IoCollectOrderBizOrigin;
import com.glxp.api.dao.collect.IoCollectOrderBizOriginMapper;
@Service
public class IoCollectOrderBizOriginService extends ServiceImpl<IoCollectOrderBizOriginMapper, IoCollectOrderBizOrigin> {
public List<CollectOrderBizResponse> filterList(CollectOrderBizRequest collectOrderRequest) {
if (collectOrderRequest == null) {
return Collections.emptyList();
}
if (collectOrderRequest.getPage() != null) {
int offset = (collectOrderRequest.getPage() - 1) * collectOrderRequest.getLimit();
PageHelper.offsetPage(offset, collectOrderRequest.getLimit());
}
List<CollectOrderBizResponse> data = this.baseMapper.filterList(collectOrderRequest);
return data;
}
}

@ -0,0 +1,35 @@
package com.glxp.api.service.collect;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.collect.IoCollectOrderOrigin;
import com.glxp.api.dao.collect.IoCollectOrderOriginMapper;
import java.util.Collections;
import java.util.List;
@Service
public class IoCollectOrderOriginService extends ServiceImpl<IoCollectOrderOriginMapper, IoCollectOrderOrigin> {
public List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest) {
if (collectOrderRequest == null) {
return Collections.emptyList();
}
if (collectOrderRequest.getPage() != null) {
int offset = (collectOrderRequest.getPage() - 1) * collectOrderRequest.getLimit();
PageHelper.offsetPage(offset, collectOrderRequest.getLimit());
}
List<IoCollectOrderResponse> data = this.baseMapper.filterList(collectOrderRequest);
return data;
}
public IoCollectOrderOrigin getByBillNo(String billNo) {
return this.baseMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderOrigin>().eq(IoCollectOrderOrigin::getBillNo, billNo).last("limit 1"));
}
}

@ -123,6 +123,10 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
private ErpBasicClient erpBasicClient;
@Resource
IoSplitCodeService splitCodeService;
@Resource
IoCollectOrderOriginService collectOrderOriginService;
@Resource
IoCollectOrderBizOriginService collectOrderBizOriginService;
public IoCollectOrder getByBillNo(String billNo) {
return collectOrderMapper.selectOne(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, billNo).last("limit 1"));
@ -463,6 +467,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
//下载处方
if (CollUtil.isNotEmpty(ioCollectOrderList)) {
for (IoCollectOrder collectOrder : ioCollectOrderList) {
IoCollectOrderOrigin ioCollectOrderOrigin = new IoCollectOrderOrigin();
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, collectOrder.getBillNo()))) {
continue;
}
@ -502,10 +508,14 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
collectOrder.setBusType(sysWorkplaceDocumentEntity.getDocumentTypeCode());
collectOrder.setOrderCirType(sysWorkplaceDocumentEntity.getOrderCirType());
if (IntUtil.value(collectOrder.getTagStatus()) != 4 && collectOrder.getWorkPlaceCode() != null) {
BeanUtils.copyProperties(collectOrder,ioCollectOrderOrigin);
if (!collectOrder.getTagStatus().equals(4) && collectOrder.getWorkPlaceCode() != null) {
collectOrder.setTagStatus(1);
}
this.save(collectOrder);
}
collectOrderOriginService.save(ioCollectOrderOrigin);
List<IoCollectOrderBiz> bizList = collectOrder.getBizList();
if (CollUtil.isNotEmpty(bizList)) {
for (IoCollectOrderBiz collectOrderBiz : bizList) {
@ -522,6 +532,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
}
}
collectOrderBizService.saveBatch(bizList);
List<IoCollectOrderBizOrigin> ioCollectOrderBizOrigins = BeanCopyUtils.copyList(bizList, IoCollectOrderBizOrigin.class);
collectOrderBizOriginService.saveBatch(ioCollectOrderBizOrigins);
}
if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1 && IntUtil.value(collectOrder.getTagStatus()) == 1) {
splitFifoCodeService.lockInventoryByOrder(collectOrder.getBillNo(), 1);

@ -0,0 +1,42 @@
<?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">
<mapper namespace="com.glxp.api.dao.collect.IoCollectOrderBizOriginMapper">
<select id="filterList" parameterType="com.glxp.api.req.collect.CollectOrderBizRequest"
resultType="com.glxp.api.res.collect.CollectOrderBizResponse">
SELECT icob.*,
bp.nameCode diCode,
bp.zczbhhzbapzbh,
bp.manufactory,
bp.bzgg
FROM io_collect_order_biz_origin icob
left join basic_udirel bu on icob.relId = bu.id
left join basic_products bp on bu.uuid = bp.uuid
<where>
<if test="thrCode != '' and thrCode != null">
AND icob.thrCode LIKE concat('%', #{thrCode}, '%')
</if>
<if test="orderIdFk != null and orderIdFk != ''">
AND icob.orderIdFk = #{orderIdFk}
</if>
<if test="relId != null">
AND icob.relId = #{relId}
</if>
<if test="cpmctymc != null and cpmctymc != ''">
AND icob.cpmctymc LIKE concat('%', #{cpmctymc}, '%')
</if>
<if test="unionCode != '' and unionCode != null">
and (
bp.nameCode LIKE concat('%', #{unionCode}, '%')
or bp.ybbm LIKE concat('%', #{unionCode}, '%')
or bp.sptm LIKE concat('%', #{unionCode}, '%'))
</if>
<if test="ggxh != '' and ggxh != null">
AND ggxh LIKE concat('%', #{ggxh}, '%')
</if>
</where>
group by icob.id
</select>
</mapper>

@ -123,6 +123,10 @@
TRUNCATE io_split_des_order;
TRUNCATE io_split_des_order_code;
TRUNCATE io_split_des_order_detail;
TRUNCATE io_collect_order_code_man;
TRUNCATE io_collect_order_origin;
TRUNCATE io_collect_order_biz_origin;
</select>
<update id="updateInvAlert" parameterType="map">

@ -0,0 +1,112 @@
<?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">
<mapper namespace="com.glxp.api.dao.collect.IoCollectOrderOriginMapper">
<select id="filterList" parameterType="com.glxp.api.req.collect.CollectOrderRequest"
resultType="com.glxp.api.res.collect.IoCollectOrderResponse">
SELECT ico.billNo,
ico.busType,
ico.fromType,
ico.fromTypeDesc,
ico.fromCorp,
ico.billTime,
ico.orderCirType,
ico.createTime,
ico.workPlaceCode,
ico.remark,
ico.createUser,
ico.updateTime,
ico.updateUser,
ico.tagStatus,
ico.splitStatus,
ico.invAlert,
ico.splitMsg,
ico.fromCorpName,
ico.tagMsg,
sys_workplace_document.busName busTypeName,
sw.workplaceName,
ico.id,
ico.orderTime,
ico.uploadStatus,
ico.uploadError,
ico.errorMsg,
row_number() over ( order by case when ico.orderTime is null then ico.createTime else ico.orderTime end desc ) as orderSequence
FROM io_collect_order_origin ico
left join sys_workplace_document on ico.busType = sys_workplace_document.documentTypeCode
left join basic_corp bc on ico.fromCorp = bc.erpId
left join sys_workplace sw on ico.workPlaceCode = sw.workplaceId
<where>
<if test="billNo != '' and billNo != null">
AND billNo LIKE concat('%', #{billNo}, '%')
</if>
<if test="workplaceName != '' and workplaceName != null">
AND workplaceName LIKE concat('%', #{workplaceName}, '%')
</if>
<if test="busType != null and busType != ''">
AND busType = #{busType}
</if>
<if test="fromCorp != '' and fromCorp != null">
AND fromCorp LIKE concat('%', #{fromCorp}, '%')
</if>
<if test="collectCode != null and collectCode != ''">
AND collectCode = #{collectCode}
</if>
<if test="busType != null and busType != ''">
AND busType = #{busType}
</if>
<if test="tagStatus != null">
AND tagStatus = #{tagStatus}
</if>
<if test="workPlaceCode != null">
AND ico.workPlaceCode = #{workPlaceCode}
</if>
<if test="chargeUser != null">
AND sw.chargeUser = #{chargeUser}
</if>
<if test="unionKey != null">
AND (
ico.billNo like concat('%', #{unionKey}, '%')
or ico.fromCorp like concat('%', #{unionKey}, '%')
or ico.fromCorpName like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark1 like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark2 like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark3 like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark4 like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark5 like concat('%', #{unionKey}, '%')
or ico.backupOrderRemark6 like concat('%', #{unionKey}, '%'))
</if>
<if test="tagStatusList != null and tagStatusList.size() > 0">
and tagStatus in
<foreach collection="tagStatusList" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="workPlaceCodes != null and workPlaceCodes.size() > 0">
and ico.workPlaceCode in
<foreach collection="workPlaceCodes" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="invAlert != null">
and ico.invAlert =#{invAlert}
</if>
<if test="invAlerts != null and invAlerts.size() > 0">
and ico.invAlert in
<foreach collection="invAlerts" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="uploadStatus != null">
and ico.uploadStatus = #{uploadStatus}
</if>
</where>
GROUP BY
ico.billNo
order by case when ico.orderTime is null then ico.createTime else ico.orderTime end desc
</select>
</mapper>
Loading…
Cancel
Save