追溯代码备份

cert
anthonywj 2 years ago
parent a2ecdabbe4
commit 6778617902

@ -1,6 +1,8 @@
package com.glxp.api.controller.trace;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
@ -10,6 +12,7 @@ import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.sup.UserCompanyEntity;
import com.glxp.api.entity.trace.*;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.trace.TraceOrderUploadRequest;
import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.basic.BasicUdiRelResponse;
@ -36,8 +39,6 @@ import java.util.List;
public class UdiTraceController extends BaseController {
@Resource
TraceRecordService traceRecordService;
@Resource
TraceProductDetailService traceProductDetailService;
@Resource
@ -50,6 +51,10 @@ public class UdiTraceController extends BaseController {
RabbitPushService rabbitPushService;
@Resource
TraceOrderService traceOrderService;
@Resource
TraceRecordService traceRecordService;
@Resource
UdiTraceService udiTraceService;
/**
@ -61,116 +66,104 @@ public class UdiTraceController extends BaseController {
@AuthRuleAnnotation("udi/trace/source/search")
@GetMapping("udi/trace/source/search")
public BaseResponse createTrace(TraceRecordRequest traceRecordRequest) {
TraceRecordLogEntity traceRecordLogEntity = null;
TraceProductDetailEntity traceProductDetailEntity = null;
BasicUdiRelResponse basicUdiRelResponse = null;
UdiEntity udiEntity = null;
UserCompanyEntity userCompanyEntity = null;
if (traceRecordRequest.getTraceType() == Constant.UDI_TRACE) {
//1.校验UDI码格式
UdiEntity udiEntity = FilterUdiUtils.getUdi(traceRecordRequest.getUdiCode());
udiEntity = FilterUdiUtils.getUdi(traceRecordRequest.getUdiCode());
if (udiEntity == null) {
return ResultVOUtils.error(500, "UDI码格式错误");
}
//2.查询源头企业
UserCompanyEntity userCompanyEntity = basicUdiRelService.findByNameCode(udiEntity.getUdi());
userCompanyEntity = basicUdiRelService.findByNameCode(udiEntity.getUdi());
if (userCompanyEntity == null) {
return ResultVOUtils.error(500, "生产企业未关联该产品信息!");
}
//3.查询产品信息
BasicUdiRelResponse basicUdiRelResponse = basicUdiRelService.findByProductNameCode(traceRecordRequest.getNameCode());
basicUdiRelResponse = basicUdiRelService.findByProductNameCode(udiEntity.getUdi());
if (basicUdiRelResponse == null) {
return ResultVOUtils.error(500, "未查询到产品信息");
}
//4.生成查询记录
String userId = getUserId() + "";
TraceRecordLogEntity traceRecordLogEntity = new TraceRecordLogEntity();
traceRecordLogEntity.setId(IdUtil.getSnowflakeNextId());
traceRecordLogEntity.setRecordCode(gennerOrderUtils.getRecordNo());
traceRecordLogEntity.setCreateTime(new Date());
traceRecordLogEntity.setUpdateTime(new Date());
traceRecordLogEntity.setStatus(1);
traceRecordLogEntity.setCreateUser(userId);
traceRecordLogEntity.setFromType(traceRecordRequest.getFromType());
traceRecordLogEntity.setTraceType(traceRecordRequest.getTraceType());
//4.创建查询详情记录,若存在相同查询记录则直接获取
TraceProductDetailEntity traceProductDetailEntity = null;
if (traceRecordRequest.getTraceType() == 1) {//按UDI码查询
traceProductDetailEntity = traceProductDetailService.findUniqueByCode(1, traceRecordRequest.getUdiCode());
if (traceProductDetailEntity == null) {
traceProductDetailEntity.setId(IdUtil.getSnowflakeNextId());
traceProductDetailEntity.setTraceSource(1);
traceProductDetailEntity.setTraceType(traceRecordRequest.getTraceType());
traceProductDetailEntity.setUdiCode(traceRecordRequest.getUdiCode());
traceProductDetailEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceProductDetailEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceProductDetailEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceProductDetailEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceProductDetailEntity.setNameCode(basicUdiRelResponse.getNameCode());
traceProductDetailEntity.setBatchNo(udiEntity.getBatchNo());
traceProductDetailEntity.setProduceDate(udiEntity.getProduceDate());
traceProductDetailEntity.setExpireDate(udiEntity.getExpireDate());
traceProductDetailEntity.setSerialNo(udiEntity.getSerialNo());
traceProductDetailEntity.setStatus(1);
traceProductDetailService.save(traceProductDetailEntity);
}
} else { //按批次号查询
traceProductDetailEntity = traceProductDetailService.findUniqueByData(1, traceRecordRequest.getYlqxzcrbarmc(),
traceRecordRequest.getCpmctymc(), traceRecordRequest.getGgxh(), traceRecordRequest.getNameCode(), traceRecordRequest.getBatchNo());
traceRecordLogEntity = traceRecordService.getById(traceRecordRequest.getRecordCode());
if (traceRecordLogEntity == null)
traceRecordLogEntity = udiTraceService.createRecordLog(userId, traceRecordRequest.getFromType(), traceRecordRequest.getTraceType());
//5.创建查询详情记录,若存在相同查询记录则直接获取
if (traceRecordLogEntity.getTraceProductIdFk() != null) {
traceProductDetailEntity = traceProductDetailService.getById(traceRecordLogEntity.getTraceProductIdFk());
if (traceProductDetailEntity == null) {
traceProductDetailEntity.setId(IdUtil.getSnowflakeNextId());
traceProductDetailEntity.setTraceSource(1);
traceProductDetailEntity.setTraceType(traceRecordRequest.getTraceType());
traceProductDetailEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceProductDetailEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceProductDetailEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceProductDetailEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceProductDetailEntity.setNameCode(basicUdiRelResponse.getNameCode());
traceProductDetailEntity.setBatchNo(traceRecordRequest.getBatchNo());
traceProductDetailEntity.setStatus(1);
traceProductDetailService.save(traceProductDetailEntity);
traceProductDetailEntity = udiTraceService.createTracerProductByUdiCode(traceRecordRequest.getUdiCode(), 1, 1, basicUdiRelResponse, udiEntity);
traceRecordLogEntity.setTraceProductIdFk(traceProductDetailEntity.getId());
traceRecordService.updateById(traceRecordLogEntity);
}
} else {
traceProductDetailEntity = udiTraceService.createTracerProductByUdiCode(traceRecordRequest.getUdiCode(), 1, 1, basicUdiRelResponse, udiEntity);
}
} else {
//1:校验参数是否正确
if (StrUtil.isEmpty(traceRecordRequest.getYlqxzcrbarmc())) {
return ResultVOUtils.error(500, "医疗器械注册人不能为空!");
}
if (StrUtil.isEmpty(traceRecordRequest.getCpmctymc())) {
return ResultVOUtils.error(500, "产品通用名称不能为空!");
}
if (StrUtil.isEmpty(traceRecordRequest.getGgxh())) {
return ResultVOUtils.error(500, "规格型号不能为空!");
}
//5.创建查询任务表
TraceTaskNoticeEntity traceTaskNoticeEntity = new TraceTaskNoticeEntity();
traceTaskNoticeEntity.setId(IdUtil.getSnowflakeNextId());
traceTaskNoticeEntity.setRecordCode(traceRecordLogEntity.getId());
traceTaskNoticeEntity.setTaskType(1);
traceTaskNoticeEntity.setStatus(1);
traceTaskNoticeEntity.setCompanyIdFk(basicUdiRelResponse.getCompanyIdFk());
traceTaskNoticeEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceTaskNoticeEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceTaskNoticeEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceTaskNoticeEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceTaskNoticeEntity.setBatchNo(udiEntity.getBatchNo());
traceTaskNoticeEntity.setProduceDate(udiEntity.getProduceDate());
traceTaskNoticeEntity.setExpireDate(udiEntity.getExpireDate());
traceTaskNoticeEntity.setSerialNo(udiEntity.getSerialNo());
traceTaskNoticeEntity.setCreateTime(new Date());
List<String> diList = basicUdiRelService.getBaseMapper().findDiList(basicUdiRelResponse.getUuid());
traceTaskNoticeEntity.setDiList(diList);
traceTaskNoticeEntity.setTaskType(1);
traceTaskNoticeService.save(traceTaskNoticeEntity);
//6.构建MQ推送消息
MqTraceMessage mqTraceMessage = new MqTraceMessage();
mqTraceMessage.setCreateTime(new Date());
mqTraceMessage.setTaskType(1);
mqTraceMessage.setCompanyId(basicUdiRelResponse.getCompanyIdFk());
mqTraceMessage.setCerditNo(userCompanyEntity.getCreditNum());
rabbitPushService.send(mqTraceMessage);
return ResultVOUtils.success("创建查询成功,请稍后刷新查看查询结果!");
//2.查询源头企业
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setYlqxzcrbarmc(traceRecordRequest.getYlqxzcrbarmc());
filterUdiRelRequest.setCpmctymc(traceRecordRequest.getCpmctymc());
filterUdiRelRequest.setGgxh(traceRecordRequest.getGgxh());
userCompanyEntity = basicUdiRelService.findByProduct(filterUdiRelRequest);
if (userCompanyEntity == null) {
return ResultVOUtils.error(500, "生产企业未关联该产品信息!");
}
//3.查询产品信息
basicUdiRelResponse = basicUdiRelService.findByProductName(filterUdiRelRequest);
if (basicUdiRelResponse == null) {
return ResultVOUtils.error(500, "未查询到产品信息");
}
//4.生成查询记录
String userId = getUserId() + "";
traceRecordLogEntity = udiTraceService.createRecordLog(userId, traceRecordRequest.getFromType(), traceRecordRequest.getTraceType());
//5.创建查询详情记录,若存在相同查询记录则直接获取
traceProductDetailEntity = udiTraceService.createTracerProductByBatchNo(traceRecordRequest, 1, 2, basicUdiRelResponse);
}
return ResultVOUtils.error(500, "查询失败");
}
//5.创建查询任务表
TraceTaskNoticeEntity traceTaskNoticeEntity = udiTraceService.createTraceNotice(1, traceProductDetailEntity, basicUdiRelResponse, udiEntity);
//6.构建MQ推送消息
MqTraceMessage mqTraceMessage = new MqTraceMessage();
mqTraceMessage.setCreateTime(new Date());
mqTraceMessage.setTaskType(1);
mqTraceMessage.setCompanyId(basicUdiRelResponse.getCompanyIdFk());
mqTraceMessage.setCerditNo(userCompanyEntity.getCreditNum());
mqTraceMessage.setTaskId(traceTaskNoticeEntity.getId());
rabbitPushService.send(mqTraceMessage);
return ResultVOUtils.success(traceRecordLogEntity);
}
/**
*

@ -19,5 +19,8 @@ public interface BasicUdiRelMapper extends BaseMapper<BasicUdiRelEntity> {
UserCompanyEntity findByNameCode(@Param("nameCode") String nameCode);
List<String> findDiList(@Param("nameCode") String uuid);
UserCompanyEntity findByProduct(FilterUdiRelRequest filterUdiRelRequest);
List<String> findDiList(@Param("uuid") String uuid);
}

@ -28,7 +28,7 @@ public class MqTraceMessage {
/**
* ID()
*/
private String taskId;
private Long taskId;
}

@ -7,13 +7,14 @@ import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import com.glxp.api.annotation.RepeatSubmit;
import lombok.Data;
/**
*
*/
@Data
@TableName(value = "trace_record_detail")
@TableName(value = "trace_product_record")
public class TraceProductDetailEntity implements Serializable {
@TableId(value = "id", type = IdType.INPUT)
private Long id;
@ -96,5 +97,7 @@ public class TraceProductDetailEntity implements Serializable {
@TableField(value = "status")
private Integer status;
private static final long serialVersionUID = 1L;
}

@ -68,6 +68,12 @@ public class TraceRecordLogEntity implements Serializable {
@TableField(value = "traceType")
private Integer traceType;
/**
*
*/
@TableField(value = "traceProductIdFk")
private Long traceProductIdFk;
private static final long serialVersionUID = 1L;
}

@ -37,11 +37,23 @@ public class BasicUdiRelService extends ServiceImpl<BasicUdiRelMapper, BasicUdiR
return basicUdiRelMapper.findByNameCode(nameCode);
}
public UserCompanyEntity findByProduct(FilterUdiRelRequest filterUdiRelRequest) {
return basicUdiRelMapper.findByProduct(filterUdiRelRequest);
}
public BasicUdiRelResponse findByProductNameCode(String namCode) {
if (StrUtil.isEmpty(namCode))
return null;
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setNameCode(namCode);
List<BasicUdiRelResponse> udiRelResponses = basicUdiRelMapper.filterList(filterUdiRelRequest);
if (CollUtil.isNotEmpty(udiRelResponses))
return udiRelResponses.get(0);
return null;
}
public BasicUdiRelResponse findByProductName(FilterUdiRelRequest filterUdiRelRequest) {
List<BasicUdiRelResponse> udiRelResponses = basicUdiRelMapper.filterList(filterUdiRelRequest);
if (CollUtil.isNotEmpty(udiRelResponses))
return udiRelResponses.get(0);

@ -1,12 +1,21 @@
package com.glxp.api.service.trace;
import cn.hutool.core.util.IdUtil;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.sup.UserCompanyEntity;
import com.glxp.api.entity.trace.TraceProductDetailEntity;
import com.glxp.api.entity.trace.TraceRecordLogEntity;
import com.glxp.api.entity.trace.TraceTaskNoticeEntity;
import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.basic.BasicUdiRelResponse;
import com.glxp.api.service.basic.BasicUdiProductService;
import com.glxp.api.service.basic.BasicUdiRelService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.udi.FilterUdiUtils;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Resource
public class UdiTraceService {
@ -16,23 +25,108 @@ public class UdiTraceService {
BasicUdiProductService basicUdiProductService;
@Resource
BasicUdiRelService basicUdiRelService;
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
TraceOrderService traceOrderService;
@Resource
TraceRecordService traceRecordService;
@Resource
TraceProductDetailService traceProductDetailService;
@Resource
TraceTaskNoticeService traceTaskNoticeService;
//创建查询日志
public TraceRecordLogEntity createRecordLog(String userId, Integer fromType, Integer traceType) {
TraceRecordLogEntity traceRecordLogEntity = new TraceRecordLogEntity();
traceRecordLogEntity.setId(IdUtil.getSnowflakeNextId());
traceRecordLogEntity.setRecordCode(gennerOrderUtils.getRecordNo());
traceRecordLogEntity.setCreateTime(new Date());
traceRecordLogEntity.setUpdateTime(new Date());
traceRecordLogEntity.setStatus(1);
traceRecordLogEntity.setCreateUser(userId);
traceRecordLogEntity.setFromType(fromType);
traceRecordLogEntity.setTraceType(traceType);
traceRecordService.save(traceRecordLogEntity);
return traceRecordLogEntity;
}
//创建追溯产品详情
public TraceProductDetailEntity createTracerProductByUdiCode(String udiCode, Integer traceSource, Integer traceType, BasicUdiRelResponse basicUdiRelResponse, UdiEntity udiEntity) {
TraceProductDetailEntity traceProductDetailEntity = null;
traceProductDetailEntity = traceProductDetailService.findUniqueByCode(1, udiCode);
if (traceProductDetailEntity == null) {
traceProductDetailEntity.setId(IdUtil.getSnowflakeNextId());
traceProductDetailEntity.setTraceSource(traceSource);
traceProductDetailEntity.setTraceType(traceType);
traceProductDetailEntity.setUdiCode(udiCode);
traceProductDetailEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceProductDetailEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceProductDetailEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceProductDetailEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceProductDetailEntity.setNameCode(basicUdiRelResponse.getNameCode());
traceProductDetailEntity.setBatchNo(udiEntity.getBatchNo());
traceProductDetailEntity.setProduceDate(udiEntity.getProduceDate());
traceProductDetailEntity.setExpireDate(udiEntity.getExpireDate());
traceProductDetailEntity.setSerialNo(udiEntity.getSerialNo());
traceProductDetailEntity.setStatus(1);
traceProductDetailService.save(traceProductDetailEntity);
return traceProductDetailEntity;
}
return traceProductDetailEntity;
}
//创建追溯产品详情
public TraceProductDetailEntity createTracerProductByBatchNo(TraceRecordRequest traceRecordRequest, Integer traceSource, Integer traceType, BasicUdiRelResponse basicUdiRelResponse) {
public String vailUdiCode(String udiCode) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(udiCode);
if (udiEntity == null) {
return "UDI码格式错误";
TraceProductDetailEntity traceProductDetailEntity = null;
traceProductDetailEntity = traceProductDetailService.findUniqueByData(1, traceRecordRequest.getYlqxzcrbarmc(),
traceRecordRequest.getCpmctymc(), traceRecordRequest.getGgxh(), traceRecordRequest.getNameCode(), traceRecordRequest.getBatchNo());
if (traceProductDetailEntity == null) {
traceProductDetailEntity.setId(IdUtil.getSnowflakeNextId());
traceProductDetailEntity.setTraceSource(traceSource);
traceProductDetailEntity.setTraceType(traceType);
traceProductDetailEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceProductDetailEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceProductDetailEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceProductDetailEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceProductDetailEntity.setNameCode(basicUdiRelResponse.getNameCode());
traceProductDetailEntity.setBatchNo(traceRecordRequest.getBatchNo());
traceProductDetailEntity.setStatus(1);
traceProductDetailService.save(traceProductDetailEntity);
}
return null;
return traceProductDetailEntity;
}
/**
*
*
* @param udiEntity
*/
public UserCompanyEntity findSourceCompamy(UdiEntity udiEntity) {
String nameCode = udiEntity.getUdi();
UserCompanyEntity userCompanyEntity = basicUdiRelService.findByNameCode(nameCode);
return userCompanyEntity;
//创建任务列表
public void createTraceTask() {
}
//创建任务列表
public TraceTaskNoticeEntity createTraceNotice(Integer taskType, TraceProductDetailEntity traceProductDetailEntity, BasicUdiRelResponse basicUdiRelResponse, UdiEntity udiEntity) {
TraceTaskNoticeEntity traceTaskNoticeEntity = new TraceTaskNoticeEntity();
traceTaskNoticeEntity.setId(IdUtil.getSnowflakeNextId());
traceTaskNoticeEntity.setRecordCode(traceProductDetailEntity.getId());
traceTaskNoticeEntity.setTaskType(taskType);
traceTaskNoticeEntity.setStatus(1);
traceTaskNoticeEntity.setCompanyIdFk(basicUdiRelResponse.getCompanyIdFk());
traceTaskNoticeEntity.setYlqxzcrbarmc(basicUdiRelResponse.getYlqxzcrbarmc());
traceTaskNoticeEntity.setCreditNum(basicUdiRelResponse.getTyshxydm());
traceTaskNoticeEntity.setCpmctymc(basicUdiRelResponse.getCpmctymc());
traceTaskNoticeEntity.setGgxh(basicUdiRelResponse.getGgxh());
traceTaskNoticeEntity.setBatchNo(udiEntity.getBatchNo());
traceTaskNoticeEntity.setProduceDate(udiEntity.getProduceDate());
traceTaskNoticeEntity.setExpireDate(udiEntity.getExpireDate());
traceTaskNoticeEntity.setSerialNo(udiEntity.getSerialNo());
traceTaskNoticeEntity.setCreateTime(new Date());
List<String> diList = basicUdiRelService.getBaseMapper().findDiList(basicUdiRelResponse.getUuid());
traceTaskNoticeEntity.setDiList(diList);
traceTaskNoticeService.save(traceTaskNoticeEntity);
return traceTaskNoticeEntity;
}
}

@ -4,55 +4,55 @@
<select id="filterList" parameterType="com.glxp.api.req.basic.FilterUdiRelRequest"
resultType="com.glxp.api.res.basic.BasicUdiRelResponse">
select bur.*,
uc.companyName,
nameCode,
packRatio,
packLevel,
bhxjsl,
bhzxxsbzsl,
zxxsbzbhsydysl,
bhxjcpbm,
sjcpbm,
bzcj,
thirdProductNo,
thirdProductName,
addType,
deviceRecordKey,
isUseDy,
cpmctymc,
cplb,
flbm,
ggxh,
qxlb,
tyshxydm,
ylqxzcrbarmc,
zczbhhzbapzbh,
ylqxzcrbarywmc,
sydycpbs,
versionNumber,
diType,
scbssfbhph,
scbssfbhxlh,
scbssfbhscrq,
scbssfbhsxrq,
ybbm,
spmc,
cphhhbh,
cpms,
cpbsbmtxmc,
cplx,
hchzsb,
sfwblztlcp,
cgzmraqxgxx,
sfbjwycxsy,
zdcfsycs,
sfwwjbz,
syqsfxyjxmj,
qtxxdwzlj,
mjfs
uc.companyName,
nameCode,
packRatio,
packLevel,
bhxjsl,
bhzxxsbzsl,
zxxsbzbhsydysl,
bhxjcpbm,
sjcpbm,
bzcj,
thirdProductNo,
thirdProductName,
addType,
deviceRecordKey,
isUseDy,
cpmctymc,
cplb,
flbm,
ggxh,
qxlb,
tyshxydm,
ylqxzcrbarmc,
zczbhhzbapzbh,
ylqxzcrbarywmc,
sydycpbs,
versionNumber,
diType,
scbssfbhph,
scbssfbhxlh,
scbssfbhscrq,
scbssfbhsxrq,
ybbm,
spmc,
cphhhbh,
cpms,
cpbsbmtxmc,
cplx,
hchzsb,
sfwblztlcp,
cgzmraqxgxx,
sfbjwycxsy,
zdcfsycs,
sfwwjbz,
syqsfxyjxmj,
qtxxdwzlj,
mjfs
FROM basic_udi_rel bur
left JOIN basic_udi_product p on bur.uuid = p.uuid
left join user_company uc on bur.companyIdFk = uc.id
left JOIN basic_udi_product p on bur.uuid = p.uuid
left join user_company uc on bur.companyIdFk = uc.id
<where>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc LIKE concat('%', #{ylqxzcrbarmc}, '%')
@ -99,12 +99,25 @@
resultType="com.glxp.api.entity.sup.UserCompanyEntity">
select user_company.*
from basic_udi_rel
INNER JOIN basic_udi_product on basic_udi_rel.uuid = basic_udi_product.uuid
INNER JOIN user_company on basic_udi_rel.companyIdFk = user_company.id
INNER JOIN basic_udi_product on basic_udi_rel.uuid = basic_udi_product.uuid
INNER JOIN user_company on basic_udi_rel.companyIdFk = user_company.id
where basic_udi_product.nameCode = #{nameCode}
limit 1
</select>
<select id="findByProduct"
resultType="com.glxp.api.entity.sup.UserCompanyEntity">
select user_company.*
from basic_udi_rel
INNER JOIN basic_udi_product on basic_udi_rel.uuid = basic_udi_product.uuid
INNER JOIN user_company on basic_udi_rel.companyIdFk = user_company.id
where basic_udi_product.ylqxzcrbarmc = #{ylqxzcrbarmc}
and basic_udi_product.cpmctymc = #{cpmctymc}
and basic_udi_product.ggxh = #{ggxh}
limit 1
</select>
<select id="findDiList" parameterType="java.lang.String"
resultType="java.lang.String">
select nameCode

@ -8,7 +8,7 @@
LEFT JOIN user_company uc ON uc.id = tmo.companyIdFk
LEFT JOIN (SELECT tr.recordCode,tr.createUser,tr.remark,trd.batchNo,trd.traceType
FROM trace_record_log tr
LEFT JOIN trace_record_detail trd ON trd.recordIdFk = tr.id) mid ON mid.recordCode = tmo.recordCode
LEFT JOIN trace_product_record trd ON trd.recordIdFk = tr.id) mid ON mid.recordCode = tmo.recordCode
<where>
<if test="recordCode != '' and recordCode != null">
and recordCode = #{recordCode}

@ -9,7 +9,7 @@
LEFT JOIN user_company uc ON uc.id = tor.companyIdFk
LEFT JOIN (SELECT tr.recordCode, trd.*
FROM trace_record_log tr
LEFT JOIN trace_record_detail trd ON trd.recordIdFk = tr.id) trmid
LEFT JOIN trace_product_record trd ON trd.recordIdFk = tr.id) trmid
ON trmid.recordCode = tor.recordCode
<where>
<if test="udiCode != '' and udiCode != null">

@ -5,7 +5,7 @@
resultType="com.glxp.api.res.trace.TraceRecordResponse">
SELECT tr.recordCode, tr.remark, trd.*, mid.*
FROM trace_record_log tr
LEFT JOIN trace_record_detail trd ON trd.recordIdFk = tr.id
LEFT JOIN trace_product_record trd ON trd.recordIdFk = tr.id
LEFT JOIN (SELECT tor.billNo, tor.fromCorp, tor.toCorp, tor.createUser, uc.companyName
FROM trace_order tor
LEFT JOIN user_company uc ON uc.id = tor.companyIdFk) mid

Loading…
Cancel
Save