dev
litao 3 years ago
parent 03b1cd4209
commit 1e95ac7366
  1. 5
      lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/Entrust.java
  2. 5
      lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/Examine.java
  3. 2
      lab-service/lab-capital/src/main/java/org/springblade/lims/capital/mapper/GoodsCheckLogMapper.xml
  4. 44
      lab-service/lab-capital/src/main/java/org/springblade/lims/goods/controller/GoodsController.java
  5. 335
      lab-service/lab-lims/src/main/java/org/springblade/lims/controller/EntrustController.java
  6. 6
      lab-service/lab-lims/src/main/java/org/springblade/lims/controller/EntrustCustomerController.java
  7. 14
      lab-service/lab-lims/src/main/java/org/springblade/lims/controller/ReagentUseLogController.java
  8. 13
      lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ExamineResultServiceImpl.java
  9. 14
      lab-service/lab-user/src/main/java/org/springblade/system/user/controller/TrainController.java

@ -3,6 +3,8 @@ package org.springblade.lims.entry;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;
@ -35,12 +37,14 @@ public class Entrust extends BaseEntity implements Serializable {
private Integer entrustType;
// 合同id
@JsonSerialize(nullsUsing = NullSerializer.class)
private Long contractId;
// 2.受理编号
public String acceptanceNum;
// 3.送检单位id
@JsonSerialize(nullsUsing = NullSerializer.class)
public Long entrustCustomerId;
// 3.送检单位
@ -143,6 +147,7 @@ public class Entrust extends BaseEntity implements Serializable {
private Date createTime;
// 采样单位id
@JsonSerialize(nullsUsing = NullSerializer.class)
public Long takeCompanyId;
// 采样单位
public String takeCompany;

@ -3,6 +3,8 @@ package org.springblade.lims.entry;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.core.mp.base.BaseEntity;
@ -60,16 +62,19 @@ public class Examine extends BaseEntity implements Serializable {
/**
* 检测项目表id
*/
@JsonSerialize(nullsUsing = NullSerializer.class)
private Long examineItemId;
/**
* 检测方法表id
*/
@JsonSerialize(nullsUsing = NullSerializer.class)
private Long examineWayId;
/**
* 检测依据表id
*/
@JsonSerialize(nullsUsing = NullSerializer.class)
private Long examineBasisId;
/**

@ -20,7 +20,7 @@
LEFT JOIN t_product_store_detial tpsd ON tgcl.detail_id = tpsd.id
AND tpsd.is_deleted = 0
and tpsd.status = 1
LEFT JOIN f_goods fg ON tpsd.goods_id = fg.id AND FG.is_deleted = 0
LEFT JOIN f_goods fg ON tpsd.goods_id = fg.id AND fg.is_deleted = 0
<where>
tgcl.status = 1
AND tgcl.is_deleted = 0

@ -115,12 +115,16 @@ public class GoodsController extends BladeController {
@PostMapping("/save")
public boolean save(@RequestBody Goods goods) throws Exception {
// 重名校验
String name = goods.getName();
QueryWrapper<Goods> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("name", name);
List<Goods> list2 = goodsService.list(queryWrapper1);
LambdaQueryWrapper<Goods> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(Goods::getName, goods.getName());
wrapper.eq(Goods::getCompanyId, goods.getCompanyId());
wrapper.eq(Goods::getBrand, goods.getBrand());
wrapper.eq(Goods::getBigClassId, goods.getBigClassId());
wrapper.eq(Goods::getXh, goods.getXh());
wrapper.eq(Goods::getRule, goods.getRule());
List<Goods> list2 = goodsService.list(wrapper);
if (list2 != null && list2.size() > 0) {
throw new Exception("名称重复!");
throw new Exception("数据重复!");
}
// goods.setDeactivate(1);
// 物品详情入库
@ -154,11 +158,17 @@ public class GoodsController extends BladeController {
@PostMapping("/update")
public boolean update(@RequestBody Goods goods) throws Exception {
// 重名校验
QueryWrapper<Goods> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("name", goods.getName());
List<Goods> list2 = goodsService.list(queryWrapper1);
if (list2 != null && list2.size() > 1) {
throw new Exception("名称重复!");
LambdaQueryWrapper<Goods> wrapper = new LambdaQueryWrapper<>();
wrapper.ne(Goods::getId, goods.getId());
wrapper.eq(Goods::getName, goods.getName());
wrapper.eq(Goods::getCompanyId, goods.getCompanyId());
wrapper.eq(Goods::getBrand, goods.getBrand());
wrapper.eq(Goods::getBigClassId, goods.getBigClassId());
wrapper.eq(Goods::getXh, goods.getXh());
wrapper.eq(Goods::getRule, goods.getRule());
List<Goods> list2 = goodsService.list(wrapper);
if (list2 != null && list2.size() > 0) {
throw new Exception("数据重复!");
}
if (goods.getBigClassId() != null) {
ProductClass productClass = productClassService.getById(goods.getBigClassId());
@ -181,7 +191,7 @@ public class GoodsController extends BladeController {
//复制
@PostMapping("/copy")
public void copy(@RequestParam String ids) {
public void copy(@RequestParam String ids) throws Exception {
List<Goods> products = goodsService.listByIds(Func.toLongList(ids));
if (products != null && products.size() > 0) {
for (Goods goods : products) {
@ -189,8 +199,18 @@ public class GoodsController extends BladeController {
goods.setWarnNum(null);
goods.setNum(0);
goods.setDeactivate(0);
// goods.setCode(OrderUtils.getProduct());
goods.setName(goods.getName() + "_Copy");
LambdaQueryWrapper<Goods> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(Goods::getName, goods.getName());
wrapper.eq(Goods::getCompanyId, goods.getCompanyId());
wrapper.eq(Goods::getBrand, goods.getBrand());
wrapper.eq(Goods::getBigClassId, goods.getBigClassId());
wrapper.eq(Goods::getXh, goods.getXh());
wrapper.eq(Goods::getRule, goods.getRule());
List<Goods> list = goodsService.list(wrapper);
if (list != null && list.size() > 0) {
throw new Exception("数据重复!");
}
goodsService.save(goods);
}
}

@ -815,179 +815,178 @@ public class EntrustController extends BladeController {
// map.put("jcz", eTaskService.count(eTaskQueryWrapper));
// }
// eTaskQueryWrapper.clear();
QueryWrapper<ETask> eTaskQueryWrapper = new QueryWrapper<>();
Integer dfp = 0;
Integer jcz = 0;
Integer jcwc = 0;
Integer shtg = 0;
Integer shbh = 0;
// Integer dfp = 0;
// Integer jcz = 0;
// Integer jcwc = 0;
// Integer shtg = 0;
// Integer shbh = 0;
//科室一
if (deptId.equals("1536303217085018114")) {
eTaskQueryWrapper.eq("dept_id", deptId);
List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
if (eTasks != null && eTasks.size() > 0) {
for (ETask eTask : eTasks) {
if (eTask != null) {
TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
if (taskBlueprint != null) {
Entrust entrust = service.getById(taskBlueprint.getEntrustId());
if (entrust != null) {
//待分配
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
dfp += 1;
}
//检测中
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
jcz += 1;
}
//待审核
if ("3".equals(entrust.getEntrustStatus())) {
jcwc += 1;
}
//通过
if ("4".equals(entrust.getEntrustStatus())) {
shtg += 1;
}
//驳回
if ("5".equals(entrust.getEntrustStatus())) {
shbh += 1;
}
}
}
}
}
}
map.put("dfp", dfp);
map.put("jcz", jcz);
map.put("jcwc", jcwc);
map.put("shtg", shtg);
map.put("shbh", shbh);
}
// if (deptId.equals("1536303217085018114")) {
// eTaskQueryWrapper.eq("dept_id", deptId);
// List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
// if (eTasks != null && eTasks.size() > 0) {
// for (ETask eTask : eTasks) {
// if (eTask != null) {
// TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
// if (taskBlueprint != null) {
// Entrust entrust = service.getById(taskBlueprint.getEntrustId());
// if (entrust != null) {
// //待分配
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
// dfp += 1;
// }
// //检测中
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
// jcz += 1;
// }
// //待审核
// if ("3".equals(entrust.getEntrustStatus())) {
// jcwc += 1;
// }
// //通过
// if ("4".equals(entrust.getEntrustStatus())) {
// shtg += 1;
// }
// //驳回
// if ("5".equals(entrust.getEntrustStatus())) {
// shbh += 1;
// }
// }
// }
// }
// }
// }
// map.put("dfp", dfp);
// map.put("jcz", jcz);
// map.put("jcwc", jcwc);
// map.put("shtg", shtg);
// map.put("shbh", shbh);
// }
//科室二
else if (deptId.equals("1536303261238456322")) {
eTaskQueryWrapper.eq("dept_id", deptId);
List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
if (eTasks != null && eTasks.size() > 0) {
for (ETask eTask : eTasks) {
if (eTask != null) {
TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
if (taskBlueprint != null) {
Entrust entrust = service.getById(taskBlueprint.getEntrustId());
if (entrust != null) {
//待分配
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
dfp += 1;
}
//检测中
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
jcz += 1;
}
//待审核
if ("3".equals(entrust.getEntrustStatus())) {
jcwc += 1;
}
//通过
if ("4".equals(entrust.getEntrustStatus())) {
shtg += 1;
}
//驳回
if ("5".equals(entrust.getEntrustStatus())) {
shbh += 1;
}
}
}
}
}
}
map.put("dfp", dfp);
map.put("jcz", jcz);
map.put("jcwc", jcwc);
map.put("shtg", shtg);
map.put("shbh", shbh);
}
// else if (deptId.equals("1536303261238456322")) {
// eTaskQueryWrapper.eq("dept_id", deptId);
// List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
// if (eTasks != null && eTasks.size() > 0) {
// for (ETask eTask : eTasks) {
// if (eTask != null) {
// TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
// if (taskBlueprint != null) {
// Entrust entrust = service.getById(taskBlueprint.getEntrustId());
// if (entrust != null) {
// //待分配
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
// dfp += 1;
// }
// //检测中
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
// jcz += 1;
// }
// //待审核
// if ("3".equals(entrust.getEntrustStatus())) {
// jcwc += 1;
// }
// //通过
// if ("4".equals(entrust.getEntrustStatus())) {
// shtg += 1;
// }
// //驳回
// if ("5".equals(entrust.getEntrustStatus())) {
// shbh += 1;
// }
// }
// }
// }
// }
// }
// map.put("dfp", dfp);
// map.put("jcz", jcz);
// map.put("jcwc", jcwc);
// map.put("shtg", shtg);
// map.put("shbh", shbh);
// }
//科室三
else if (deptId.equals("1536303317815422978")) {
eTaskQueryWrapper.eq("dept_id", deptId);
List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
if (eTasks != null && eTasks.size() > 0) {
for (ETask eTask : eTasks) {
if (eTask != null) {
TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
if (taskBlueprint != null) {
Entrust entrust = service.getById(taskBlueprint.getEntrustId());
if (entrust != null) {
//待分配
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
dfp += 1;
}
//检测中
if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
jcz += 1;
}
//待审核
if ("3".equals(entrust.getEntrustStatus())) {
jcwc += 1;
}
//通过
if ("4".equals(entrust.getEntrustStatus())) {
shtg += 1;
}
//驳回
if ("5".equals(entrust.getEntrustStatus())) {
shbh += 1;
}
}
}
}
}
}
map.put("dfp", dfp);
map.put("jcz", jcz);
map.put("jcwc", jcwc);
map.put("shtg", shtg);
map.put("shbh", shbh);
}
// else if (deptId.equals("1536303317815422978")) {
// eTaskQueryWrapper.eq("dept_id", deptId);
// List<ETask> eTasks = eTaskService.list(eTaskQueryWrapper);
// if (eTasks != null && eTasks.size() > 0) {
// for (ETask eTask : eTasks) {
// if (eTask != null) {
// TaskBlueprint taskBlueprint = blueprintService.getById(eTask.getTaskBlueprintId());
// if (taskBlueprint != null) {
// Entrust entrust = service.getById(taskBlueprint.getEntrustId());
// if (entrust != null) {
// //待分配
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 0) {
// dfp += 1;
// }
// //检测中
// if ("111".equals(entrust.getEntrustStatus()) && eTask.getStatus() == 1) {
// jcz += 1;
// }
// //待审核
// if ("3".equals(entrust.getEntrustStatus())) {
// jcwc += 1;
// }
// //通过
// if ("4".equals(entrust.getEntrustStatus())) {
// shtg += 1;
// }
// //驳回
// if ("5".equals(entrust.getEntrustStatus())) {
// shbh += 1;
// }
// }
// }
// }
// }
// }
// map.put("dfp", dfp);
// map.put("jcz", jcz);
// map.put("jcwc", jcwc);
// map.put("shtg", shtg);
// map.put("shbh", shbh);
// }
//质量管理室
else {
// TODO 有空再抽代码
QueryWrapper<Entrust> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("entrust_status", "0.5");
map.put("dtj", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "1");
map.put("djy", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "2");
map.put("djh", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "111").or();
queryWrapper.eq("entrust_status", "2.1");
map.put("jcz", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "3");
map.put("jcwc", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "4");
map.put("shtg", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "5");
map.put("shbh", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "6");
map.put("ywc", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "-1");
map.put("sb", service.count(queryWrapper));
}
// else {
// TODO 有空再抽代码
QueryWrapper<Entrust> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("entrust_status", "0.5");
map.put("dtj", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "1");
map.put("djy", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "2");
map.put("djh", service.count(queryWrapper));
queryWrapper.clear();
queryWrapper.eq("entrust_status", "111").or();
queryWrapper.eq("entrust_status", "2.1");
map.put("jcz", service.count(queryWrapper));
queryWrapper.clear();
// queryWrapper.eq("entrust_status", "3");
// map.put("jcwc", service.count(queryWrapper));
// queryWrapper.clear();
queryWrapper.eq("entrust_status", "4");
map.put("shtg", service.count(queryWrapper));
queryWrapper.clear();
// queryWrapper.eq("entrust_status", "5");
// map.put("shbh", service.count(queryWrapper));
// queryWrapper.clear();
queryWrapper.eq("entrust_status", "6");
map.put("ywc", service.count(queryWrapper));
queryWrapper.clear();
// queryWrapper.eq("entrust_status", "-1");
// map.put("sb", service.count(queryWrapper));
// }
return R.data(map);
}

@ -41,9 +41,11 @@ public class EntrustCustomerController extends BladeController {
LambdaQueryWrapper<EntrustCustomer> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(EntrustCustomer::getStatus,entry.getStatus());
if (entry.getName() != null && !"".equals(entry.getName())) {
wrapper.like(EntrustCustomer::getName, entry.getName()).or()
wrapper.and(wq -> wq
.like(EntrustCustomer::getName, entry.getName()).or()
.like(EntrustCustomer::getAddress, entry.getName()).or()
.like(EntrustCustomer::getFullName, entry.getName());
.like(EntrustCustomer::getFullName, entry.getName())
);
}
wrapper.orderByDesc(EntrustCustomer::getCreateTime);
IPage<EntrustCustomer> page = service.page(Condition.getPage(query), wrapper);

@ -1,6 +1,7 @@
package org.springblade.lims.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.Api;
@ -23,8 +24,6 @@ import java.util.Date;
/**
*
*
* @author swj
* @since 2022年6月1日19:49:10
*/
@ -35,13 +34,22 @@ import java.util.Date;
public class ReagentUseLogController extends BladeController {
private final IReagentUseLogService service;
/**
* 分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 2)
public R<IPage<ReagentUseLog>> list(ReagentUseLog entry, Query query) {
IPage<ReagentUseLog> page = service.page(Condition.getPage(query), Condition.getQueryWrapper(entry));
LambdaQueryWrapper<ReagentUseLog> wrapper = new LambdaQueryWrapper<>();
if (entry.getName() != null) {
wrapper.like(ReagentUseLog::getName, entry.getName()).or()
.like(ReagentUseLog::getForExamine, entry.getName()).or()
.like(ReagentUseLog::getBatchNo, entry.getName()).or()
.like(ReagentUseLog::getManufacturer, entry.getName());
}
wrapper.orderByDesc(ReagentUseLog::getCreateTime);
IPage<ReagentUseLog> page = service.page(Condition.getPage(query), wrapper);
return R.data(page);
}

@ -256,7 +256,6 @@ public class ExamineResultServiceImpl extends BaseServiceImpl<ExamineResultMappe
// 仪器设备记录表,试剂使用记录表 入库
private void saves(ExamineResult examineResult) {
// 仪器设备使用记录表 试剂使用记录表 入库
Examine examine = examineService.getById(examineResult.getExamineId());
String[] split = examineResult.getInstrumentId().split(",");
String[] split1 = examineResult.getReagentId().split(",");
@ -266,12 +265,12 @@ public class ExamineResultServiceImpl extends BaseServiceImpl<ExamineResultMappe
ExamineWay examineWay = examineWayService.getById(examine.getExamineWayId());
ExamineBasis examineBasis = examineBasisService.getById(examine.getExamineBasisId());
String s1 = "";
if (examineBasis != null) {
s1 = examineBasis.getName();
if (examineItem != null) {
s1 = examineItem.getName();
}
String s2 = "";
if (examineBasis != null) {
s2 = examineBasis.getName();
if (examineWay != null) {
s2 = examineWay.getName();
}
String s3 = "";
if (examineBasis != null) {
@ -296,7 +295,9 @@ public class ExamineResultServiceImpl extends BaseServiceImpl<ExamineResultMappe
reagentUseLog.setManufacturer(reagent.getManufacturer());
reagentUseLog.setBatchNo(reagent.getBatchNo());
reagentUseLog.setName(reagent.getName());
reagentUseLog.setForExamine(examineResult.getExamineId().toString());
if (examineItem != null) {
reagentUseLog.setForExamine(examineItem.getName());
}
reagentUseLog.setType(reagent.getType());
reagentUseLog.setApplicant(examine.getExamineBy());
reagentUseLog.setApplicationDate(new Date());

@ -82,6 +82,20 @@ public class TrainController extends BladeController {
}
LambdaQueryWrapper<TrainPerson> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(TrainPerson::getTrainId, train1.getId());
List<TrainPerson> personList = trainPersonService.list(queryWrapper);
StringBuilder personId = new StringBuilder();
if (personList != null && personList.size() > 0) {
for (int i = 0; i < personList.size(); i++) {
if (i < personList.size() - 1) {
personId.append(personList.get(i).getPersonId()).append(",");
} else {
personId.append(personList.get(i).getPersonId());
}
}
}
train1.setTrainPerson(personId.toString());
queryWrapper.clear();
queryWrapper.eq(TrainPerson::getTrainId, train1.getId());
queryWrapper.eq(TrainPerson::getPersonId, AuthUtil.getUserId());
TrainPerson trainPerson = trainPersonService.getOne(queryWrapper);
if (trainPerson != null) {

Loading…
Cancel
Save