update一些接口的更新 以及提供了一些统计的接口
This commit is contained in:
-2
@@ -119,9 +119,7 @@ public class PurchaseCatalogueController {
|
||||
DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
|
||||
|
||||
if (startTime != null && endTime != null) {
|
||||
|
||||
IPage<PurchaseCatalogueVO> purchaseCatalogueVOPage1 = purchaseCatalogueService.getPurchaseCatalogueVOPage(page, Wrappers.<PurchaseCatalogue>query().ge("create_time", startTime).le("create_time", endTime).orderByDesc("create_time"));
|
||||
|
||||
return R.ok(purchaseCatalogueVOPage1);
|
||||
}
|
||||
|
||||
|
||||
+19
-91
@@ -16,6 +16,7 @@ import digital.laboratory.platform.reagent.dto.ReagentConsumableInventoryDTO;
|
||||
import digital.laboratory.platform.reagent.entity.BatchDetails;
|
||||
import digital.laboratory.platform.reagent.entity.ReagentConsumableInventory;
|
||||
import digital.laboratory.platform.reagent.entity.ReferenceMaterial;
|
||||
import digital.laboratory.platform.reagent.entity.StatisticalCornerMark;
|
||||
import digital.laboratory.platform.reagent.mapper.ReagentConsumableInventoryMapper;
|
||||
import digital.laboratory.platform.reagent.service.ReagentConsumableInventoryService;
|
||||
import digital.laboratory.platform.reagent.service.ReferenceMaterialService;
|
||||
@@ -71,11 +72,8 @@ public class ReagentConsumableInventoryController {
|
||||
@GetMapping("/{reagentConsumableInventoryId}")
|
||||
// @PreAuthorize("@pms.hasPermission('reagent_reagent_consumable_inventory_get')")
|
||||
public R<ReagentConsumableInventory> getById(@PathVariable("reagentConsumableInventoryId") String reagentConsumableInventoryId, HttpServletRequest theHttpServletRequest) {
|
||||
|
||||
|
||||
ReagentConsumableInventory reagentConsumableInventory = reagentConsumableInventoryService.getById(reagentConsumableInventoryId);
|
||||
return R.ok(reagentConsumableInventory);
|
||||
//return R.ok(reagentConsumableInventoryService.getById(reagentConsumableInventoryId));
|
||||
}
|
||||
|
||||
|
||||
@@ -86,111 +84,35 @@ public class ReagentConsumableInventoryController {
|
||||
@ApiOperation(value = "标准物质列表", notes = "标准物质列表")
|
||||
@GetMapping("/RList")
|
||||
// @PreAuthorize("@pms.hasPermission('reagent_reagent_consumable_inventory_get')")
|
||||
public R<IPage<ReferenceMaterialFullVO>> getReagentConsumableInventoryPage(Page page, String reagentConsumableName, Integer referenceMaterialStatus, HttpServletRequest theHttpServletRequest) {
|
||||
Principal principal = theHttpServletRequest.getUserPrincipal();
|
||||
DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
|
||||
|
||||
public R<IPage<ReferenceMaterialFullVO>> getReagentConsumableInventoryPage(Page page, String reagentConsumableName, Integer referenceMaterialStatus) {
|
||||
QueryWrapper<ReferenceMaterial> referenceMaterialQueryWrapper = new QueryWrapper<>();
|
||||
|
||||
String number = reagentConsumableName;
|
||||
|
||||
referenceMaterialQueryWrapper
|
||||
.and(qw -> qw
|
||||
.ne(referenceMaterialStatus == null, "status", -4)
|
||||
.eq(referenceMaterialStatus != null, "status", referenceMaterialStatus))
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.ne(referenceMaterialStatus == null, "status", -4)
|
||||
.eq(referenceMaterialStatus != null, "status", referenceMaterialStatus)
|
||||
.or()
|
||||
.ne(referenceMaterialStatus == null, "status", -4)
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "number", reagentConsumableName)
|
||||
.eq(referenceMaterialStatus != null, "status", referenceMaterialStatus);
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "number", reagentConsumableName);
|
||||
|
||||
IPage<ReferenceMaterialFullVO> allList = reagentConsumableInventoryService.getAllList(page, referenceMaterialQueryWrapper, referenceMaterialStatus, number);
|
||||
IPage<ReferenceMaterialFullVO> allList = reagentConsumableInventoryService.getStandardAllList(page, referenceMaterialQueryWrapper, referenceMaterialStatus, number);
|
||||
return R.ok(allList);
|
||||
// return R.ok(reagentConsumableInventoryService.page(page, Wrappers.query(reagentConsumableInventory)));
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "标准物质管理列表", notes = "标准物质管理列表")
|
||||
@GetMapping("/standardList")
|
||||
// @PreAuthorize("@pms.hasPermission('reagent_reagent_consumable_inventory_get')")
|
||||
public R<IPage<ReagentConsumableInventoryVO>> getReagentConsumableInventoryList(Page<ReagentConsumableInventory> page, Integer warning, String reagentConsumableName, HttpServletRequest theHttpServletRequest) {
|
||||
Principal principal = theHttpServletRequest.getUserPrincipal();
|
||||
DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryRMVOList = reagentConsumableInventoryService.getReagentConsumableInventoryRMVOList(page,
|
||||
Wrappers.<ReagentConsumableInventory>query()
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准物质").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准物质").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准储备溶液").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准储备溶液").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "species", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准物质").or().
|
||||
|
||||
like(StrUtil.isNotBlank(reagentConsumableName), "species", reagentConsumableName)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "标准储备溶液").or(), warning);
|
||||
|
||||
|
||||
public R<IPage<ReagentConsumableInventoryVO>> getStandardList(Page page, Integer warning, String keywords) {
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryRMVOList = reagentConsumableInventoryService.getReagentConsumableInventoryRMVOList(page, warning, keywords);
|
||||
return R.ok(reagentConsumableInventoryRMVOList);
|
||||
// return R.ok(reagentConsumableInventoryService.page(page, Wrappers.query(reagentConsumableInventory)));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "试剂耗材管理列表", notes = "试剂耗材管理列表")
|
||||
@GetMapping("/List")
|
||||
// @PreAuthorize("@pms.hasPermission('reagent_reagent_consumable_inventory_get')")
|
||||
public R<IPage<ReagentConsumableInventoryVO>> getList(Page page, String reagentConsumableName, Integer warning, String remark, String category, HttpServletRequest theHttpServletRequest) {
|
||||
Principal principal = theHttpServletRequest.getUserPrincipal();
|
||||
DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryRMVOList = reagentConsumableInventoryService.getReagentConsumableInventoryREVOList(page, Wrappers.<ReagentConsumableInventory>query()
|
||||
// .like(StrUtil.isNotBlank(category), "category", category)
|
||||
// .ne("category", "标准物质")
|
||||
// .ne("category", "标准储备溶液")
|
||||
// .and(qw -> qw.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
// .or().like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName))
|
||||
// .like(warning != null && warning == 1, "warning_information", "库存不足"), warning);
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "试剂").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "试剂").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "耗材").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "warning_information", "库存不足")
|
||||
.eq("category", "耗材").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "reagent_consumable_name", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "species", "库存不足")
|
||||
.eq("category", "试剂").or()
|
||||
|
||||
.like(StrUtil.isNotBlank(reagentConsumableName), "remark", reagentConsumableName)
|
||||
.like(StrUtil.isNotBlank(category), "category", category)
|
||||
.like(warning != null && warning == 1, "species", "库存不足")
|
||||
.eq("category", "耗材").or(), warning);
|
||||
public R<IPage<ReagentConsumableInventoryVO>> getList(Page page, Integer warning, String keywords) {
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryRMVOList = reagentConsumableInventoryService.getReagentConsumableInventoryREVOList(page, warning, keywords);
|
||||
return R.ok(reagentConsumableInventoryRMVOList);
|
||||
// return R.ok(reagentConsumableInventoryService.page(page, Wrappers.query(reagentConsumableInventory)));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -323,7 +245,7 @@ public class ReagentConsumableInventoryController {
|
||||
*
|
||||
* @param id id
|
||||
*/
|
||||
@ApiOperation(value = "", notes = "通过id,获取标准物质所有信息")
|
||||
@ApiOperation(value = "", notes = "通过id或者code(也就是标准物质编号),获取标准物质所有信息")
|
||||
@GetMapping("/getByCode")
|
||||
@PreAuthorize("@pms.hasPermission('reagent_reagent_consumable_inventory_get_by_code')")
|
||||
public R<ReagentConsumableInventoryFullVO> getByCode(String id, String number, HttpServletResponse httpServletResponse) {
|
||||
@@ -424,4 +346,10 @@ public class ReagentConsumableInventoryController {
|
||||
return R.failed("导出失败");
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/get/statistical/mark")
|
||||
public R<List<StatisticalCornerMark>> getStatisticalCornerMarkList() {
|
||||
return R.ok(reagentConsumableInventoryService.getStatisticalCornerMarkList());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -100,6 +100,7 @@ public class BatchDetails extends BaseEntity {
|
||||
@ApiModelProperty(value="batchDetailsId")
|
||||
private String batchDetailsId;
|
||||
|
||||
|
||||
@TableField(exist = false)
|
||||
private String supplierName;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
package digital.laboratory.platform.reagent.entity;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class StatisticalCornerMark {
|
||||
|
||||
private String markName;
|
||||
private Integer markQuantity;
|
||||
}
|
||||
+2
-1
@@ -9,6 +9,7 @@ import digital.laboratory.platform.reagent.entity.ReferenceMaterial;
|
||||
import digital.laboratory.platform.reagent.vo.*;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.security.core.parameters.P;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -21,7 +22,7 @@ import java.util.List;
|
||||
@Mapper
|
||||
public interface ReagentConsumableInventoryMapper extends BaseMapper<ReagentConsumableInventory> {
|
||||
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryVOPage(IPage<ReagentConsumableInventory> page, @Param(Constants.WRAPPER) QueryWrapper<ReagentConsumableInventory> qw);
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryVOPage(IPage<ReagentConsumableInventory> page, @Param("warning") Integer warning,@Param("keywords") String keywords,@Param("reagentCategory") Integer reagentCategory);
|
||||
|
||||
IPage<ReagentConsumableInventoryFullVO> getReagentConsumableInventoryFullVOPage(IPage<ReagentConsumableInventory> page, @Param(Constants.WRAPPER) QueryWrapper<ReagentConsumableInventory> qw);
|
||||
|
||||
|
||||
+7
-4
@@ -8,6 +8,7 @@ import digital.laboratory.platform.reagent.dto.ReagentConsumableInventoryDTO;
|
||||
import digital.laboratory.platform.reagent.entity.BatchDetails;
|
||||
import digital.laboratory.platform.reagent.entity.ReagentConsumableInventory;
|
||||
import digital.laboratory.platform.reagent.entity.ReferenceMaterial;
|
||||
import digital.laboratory.platform.reagent.entity.StatisticalCornerMark;
|
||||
import digital.laboratory.platform.reagent.vo.*;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -25,21 +26,21 @@ import java.util.Map;
|
||||
*/
|
||||
public interface ReagentConsumableInventoryService extends IService<ReagentConsumableInventory> {
|
||||
|
||||
//试剂耗材/标准物质标准物质管理列表
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryREVOList(IPage<ReagentConsumableInventory> page, QueryWrapper<ReagentConsumableInventory> qw, Integer warning);
|
||||
//试剂耗材列表
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryREVOList(IPage<ReagentConsumableInventory> page, Integer warning,String keywords);
|
||||
|
||||
ReagentConsumableInventory addById(String reagentConsumableId, Integer quantity);
|
||||
|
||||
ReagentConsumableInventory reduceById(String reagentConsumableId, Integer quantity);
|
||||
|
||||
IPage<ReferenceMaterialFullVO> getAllList(Page page, QueryWrapper<ReferenceMaterial> qw, Integer status, String number);
|
||||
IPage<ReferenceMaterialFullVO> getStandardAllList(Page page, QueryWrapper<ReferenceMaterial> qw, Integer status, String number);
|
||||
|
||||
ReagentConsumableInventoryFullVO getByCode(String id);
|
||||
|
||||
//分页查询试剂耗材
|
||||
IPage<ReagentConsumableInventoryFullVO> getAllRM(IPage<ReagentConsumableInventory> page, QueryWrapper<ReagentConsumableInventory> qw);
|
||||
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryRMVOList(IPage<ReagentConsumableInventory> page,QueryWrapper<ReagentConsumableInventory>qw,Integer warning);
|
||||
IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryRMVOList(IPage<ReagentConsumableInventory> page,Integer warning,String keywords);
|
||||
|
||||
List<ReagentConsumableInventoryFullVO> getReagentConsumableInventoryFull(QueryWrapper<ReagentConsumableInventory> qw);
|
||||
|
||||
@@ -75,5 +76,7 @@ public interface ReagentConsumableInventoryService extends IService<ReagentConsu
|
||||
@Transactional
|
||||
boolean checkObj(List<ReagentConsumableInventoryFullVO> reagentConsumableInventoryFullVOList);
|
||||
|
||||
List<StatisticalCornerMark> getStatisticalCornerMarkList();
|
||||
|
||||
// List<OrgFullVO> getOrgList();
|
||||
}
|
||||
|
||||
+67
-93
@@ -38,7 +38,6 @@ import org.apache.commons.io.output.ByteArrayOutputStream;
|
||||
import org.apache.poi.hssf.usermodel.*;
|
||||
import org.apache.poi.ss.usermodel.*;
|
||||
import org.apache.poi.ss.util.CellRangeAddress;
|
||||
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.mock.web.MockMultipartFile;
|
||||
@@ -49,7 +48,6 @@ import org.springframework.web.multipart.commons.CommonsMultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.swing.*;
|
||||
import java.io.*;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
@@ -112,82 +110,49 @@ public class ReagentConsumableInventoryServiceImpl extends ServiceImpl<ReagentCo
|
||||
private OssFile ossFile;
|
||||
|
||||
@Override//标准物质标准物质管理列表
|
||||
public IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryRMVOList(IPage<ReagentConsumableInventory> page, QueryWrapper<ReagentConsumableInventory> qw, Integer warning) {
|
||||
|
||||
|
||||
if (warning != null) {
|
||||
|
||||
if (warning == 2) {
|
||||
|
||||
List<ReagentConsumableInventoryVO> reagentConsumableInventoryVOList = new ArrayList<>();
|
||||
|
||||
List<BatchDetails> list = batchDetailsService.list(Wrappers.<BatchDetails>query().eq("warning_information", "即将过期").or().eq("warning_information", "已过期").or().eq("warning_information", "即将到达存储期限").or().eq("warning_information", "已超过存储期限"));
|
||||
|
||||
if (list.size() != 0) {
|
||||
for (BatchDetails batchDetails : list) {
|
||||
|
||||
ReagentConsumableInventory byId = this.getById(batchDetails.getReagentConsumableInventoryId());
|
||||
ReagentConsumableInventoryVO reagentConsumableInventoryVO = new ReagentConsumableInventoryVO();
|
||||
BeanUtils.copyProperties(byId, reagentConsumableInventoryVO);
|
||||
reagentConsumableInventoryVO.setBatchDetailsVOS(batchDetailsService.getBatchDetailsList(reagentConsumableInventoryVO.getReagentConsumableInventoryId()));
|
||||
if (!reagentConsumableInventoryVOList.contains(reagentConsumableInventoryVO)) {
|
||||
if (reagentConsumableInventoryVO.getCategory().equals("标准物质")) {
|
||||
reagentConsumableInventoryVOList.add(reagentConsumableInventoryVO);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
PageUtils pageUtils = new PageUtils();
|
||||
|
||||
return pageUtils.getPages((int) page.getCurrent(), (int) page.getSize(), reagentConsumableInventoryVOList);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryVOPage = baseMapper.getReagentConsumableInventoryVOPage(page, qw);
|
||||
|
||||
List<ReagentConsumableInventoryVO> records = reagentConsumableInventoryVOPage.getRecords();
|
||||
|
||||
for (ReagentConsumableInventoryVO reagentConsumableInventoryVO : records) {
|
||||
|
||||
List<BatchDetailsVO> batchDetailsVOList = batchDetailsService.getBatchDetailsList(reagentConsumableInventoryVO.getReagentConsumableInventoryId());
|
||||
//赋值试剂耗材批次明细
|
||||
reagentConsumableInventoryVO.setBatchDetailsVOS(batchDetailsVOList);
|
||||
public IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryRMVOList(IPage<ReagentConsumableInventory> page, Integer warning, String keywords) {
|
||||
Integer reagentCategory = 1;
|
||||
if (warning != null && warning == 2) {
|
||||
return this.getReagentConsumableInventoryWarningPage((Page) page, reagentCategory);
|
||||
}
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryVOPage = baseMapper.getReagentConsumableInventoryVOPage(page, warning, keywords, reagentCategory);
|
||||
return reagentConsumableInventoryVOPage;
|
||||
}
|
||||
|
||||
@Override//试剂耗材管理列表
|
||||
public IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryREVOList(IPage<ReagentConsumableInventory> page, QueryWrapper<ReagentConsumableInventory> qw, Integer warning) {
|
||||
public IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryREVOList(IPage<ReagentConsumableInventory> page, Integer warning, String keywords) {
|
||||
Integer reagentCategory = 0;
|
||||
if (warning != null && warning == 2) {
|
||||
List<ReagentConsumableInventoryVO> reagentConsumableInventoryVOList = new ArrayList<>();
|
||||
List<BatchDetails> list = batchDetailsService.list(Wrappers.<BatchDetails>query().eq("warning_information", "即将过期").or().eq("warning_information", "已过期").or().eq("warning_information", "即将到达存储期限").or().eq("warning_information", "已超过存储期限"));
|
||||
//查找具有到期批次物品的试剂耗材类信息
|
||||
if (list != null && list.size() != 0) {
|
||||
for (BatchDetails batchDetails : list) {
|
||||
ReagentConsumableInventory reagentConsumableInventory = this.getOne(new LambdaQueryWrapper<ReagentConsumableInventory>().eq(ReagentConsumableInventory::getReagentConsumableInventoryId, batchDetails.getReagentConsumableInventoryId()).ne(ReagentConsumableInventory::getCategory, "标准物质").ne(ReagentConsumableInventory::getCategory, "标准储备溶液"));
|
||||
if (reagentConsumableInventory != null) {
|
||||
ReagentConsumableInventoryVO reagentConsumableInventoryVO = new ReagentConsumableInventoryVO();
|
||||
BeanUtils.copyProperties(reagentConsumableInventory, reagentConsumableInventoryVO);
|
||||
reagentConsumableInventoryVO.setBatchDetailsVOS(batchDetailsService.getBatchDetailsList(reagentConsumableInventoryVO.getReagentConsumableInventoryId()));
|
||||
reagentConsumableInventoryVOList.add(reagentConsumableInventoryVO);
|
||||
}
|
||||
}
|
||||
}
|
||||
PageUtils pageUtils = new PageUtils();
|
||||
return pageUtils.getPages((int) page.getCurrent(), (int) page.getSize(), reagentConsumableInventoryVOList);
|
||||
}
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryVOPage = baseMapper.getReagentConsumableInventoryVOPage(page, qw);
|
||||
List<ReagentConsumableInventoryVO> records = reagentConsumableInventoryVOPage.getRecords();
|
||||
for (ReagentConsumableInventoryVO reagentConsumableInventoryVO : records) {
|
||||
List<BatchDetailsVO> batchDetailsVOList = batchDetailsService.getBatchDetailsList(reagentConsumableInventoryVO.getReagentConsumableInventoryId());
|
||||
//赋值试剂耗材批次明细
|
||||
reagentConsumableInventoryVO.setBatchDetailsVOS(batchDetailsVOList);
|
||||
return this.getReagentConsumableInventoryWarningPage((Page) page, reagentCategory);
|
||||
}
|
||||
IPage<ReagentConsumableInventoryVO> reagentConsumableInventoryVOPage = baseMapper.getReagentConsumableInventoryVOPage(page, warning, keywords, reagentCategory);
|
||||
return reagentConsumableInventoryVOPage;
|
||||
}
|
||||
|
||||
//查询即将到期的试剂耗材、标准物质:reagentCategory:0代表试剂耗材,1代表标准物质、标准储备溶液
|
||||
public IPage<ReagentConsumableInventoryVO> getReagentConsumableInventoryWarningPage(Page page, Integer reagentCategory) {
|
||||
List<ReagentConsumableInventoryVO> reagentConsumableInventoryVOList = new ArrayList<>();
|
||||
List<BatchDetails> list = batchDetailsService.list(Wrappers.<BatchDetails>query().eq("warning_information", "即将过期").or().eq("warning_information", "已过期").or().eq("warning_information", "即将到达存储期限").or().eq("warning_information", "已超过存储期限"));
|
||||
//查找具有到期批次物品的试剂耗材\标准物质类信息
|
||||
if (list != null && list.size() != 0) {
|
||||
for (BatchDetails batchDetails : list) {
|
||||
ReagentConsumableInventory reagentConsumableInventory = new ReagentConsumableInventory();
|
||||
if (reagentCategory == 0) {
|
||||
reagentConsumableInventory = this.getOne(new LambdaQueryWrapper<ReagentConsumableInventory>().eq(ReagentConsumableInventory::getReagentConsumableInventoryId, batchDetails.getReagentConsumableInventoryId()).ne(ReagentConsumableInventory::getCategory, "标准物质").ne(ReagentConsumableInventory::getCategory, "标准储备溶液"));
|
||||
} else {
|
||||
reagentConsumableInventory = this.getOne(new LambdaQueryWrapper<ReagentConsumableInventory>().eq(ReagentConsumableInventory::getReagentConsumableInventoryId, batchDetails.getReagentConsumableInventoryId()).ne(ReagentConsumableInventory::getCategory, "试剂").ne(ReagentConsumableInventory::getCategory, "耗材"));
|
||||
}
|
||||
if (reagentConsumableInventory != null) {
|
||||
ReagentConsumableInventoryVO reagentConsumableInventoryVO = new ReagentConsumableInventoryVO();
|
||||
BeanUtils.copyProperties(reagentConsumableInventory, reagentConsumableInventoryVO);
|
||||
reagentConsumableInventoryVO.setBatchDetailsVOS(batchDetailsService.getBatchDetailsList(reagentConsumableInventoryVO.getReagentConsumableInventoryId()));
|
||||
reagentConsumableInventoryVOList.add(reagentConsumableInventoryVO);
|
||||
}
|
||||
}
|
||||
}
|
||||
PageUtils pageUtils = new PageUtils();
|
||||
return pageUtils.getPages((int) page.getCurrent(), (int) page.getSize(), reagentConsumableInventoryVOList);
|
||||
}
|
||||
|
||||
@Override//入库增加库存
|
||||
public ReagentConsumableInventory addById(String reagentConsumableId, Integer quantity) {
|
||||
@@ -231,32 +196,21 @@ public class ReagentConsumableInventoryServiceImpl extends ServiceImpl<ReagentCo
|
||||
|
||||
|
||||
@Override//分页查询标准物质
|
||||
public IPage<ReferenceMaterialFullVO> getAllList(Page page, QueryWrapper<ReferenceMaterial> qw, Integer status, String number) {
|
||||
//如果扫码
|
||||
|
||||
if (StrUtil.isNotBlank(number)) {
|
||||
|
||||
ReferenceMaterial referenceMaterial = referenceMaterialService.getOne(Wrappers.<ReferenceMaterial>query().eq("number", number));
|
||||
|
||||
if (referenceMaterial != null) {
|
||||
|
||||
ReagentConsumableInventoryFullVO byCode = this.getByCode(referenceMaterial.getId());
|
||||
|
||||
List<ReagentConsumableInventoryFullVO> reagentConsumableInventoryFullVOS = new ArrayList<>();
|
||||
|
||||
reagentConsumableInventoryFullVOS.add(byCode);
|
||||
|
||||
PageUtils pageUtils = new PageUtils();
|
||||
|
||||
Page pages = pageUtils.getPages(page.getCurrent(), page.getSize(), reagentConsumableInventoryFullVOS);
|
||||
|
||||
return pages;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public IPage<ReferenceMaterialFullVO> getStandardAllList(Page page, QueryWrapper<ReferenceMaterial> qw, Integer status, String number) {
|
||||
// //如果扫码
|
||||
// if (StrUtil.isNotBlank(number)) {
|
||||
// ReferenceMaterial referenceMaterial = referenceMaterialService.getOne(Wrappers.<ReferenceMaterial>query().eq("number", number));
|
||||
// if (referenceMaterial != null) {
|
||||
// ReagentConsumableInventoryFullVO byCode = this.getByCode(referenceMaterial.getId());
|
||||
// List<ReagentConsumableInventoryFullVO> reagentConsumableInventoryFullVOS = new ArrayList<>();
|
||||
// reagentConsumableInventoryFullVOS.add(byCode);
|
||||
// PageUtils pageUtils = new PageUtils();
|
||||
// Page pages = pageUtils.getPages(page.getCurrent(), page.getSize(), reagentConsumableInventoryFullVOS);
|
||||
// return pages;
|
||||
//
|
||||
// }
|
||||
// }
|
||||
IPage<ReferenceMaterialFullVO> referenceMaterialPage = baseMapper.getReferenceMaterialPage(page, qw);
|
||||
|
||||
return referenceMaterialPage;
|
||||
}
|
||||
|
||||
@@ -1043,4 +997,24 @@ public class ReagentConsumableInventoryServiceImpl extends ServiceImpl<ReagentCo
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StatisticalCornerMark> getStatisticalCornerMarkList() {
|
||||
List<StatisticalCornerMark> statisticalCornerMarkList = new ArrayList<>();
|
||||
//到期标识
|
||||
Integer expireWarning = 2;
|
||||
//库存不足标识
|
||||
Integer understockWarning = 1;
|
||||
Page<ReagentConsumableInventory> page = new Page<>(9999, 9999);
|
||||
int understockReagentConsumableQuantity = (int) this.getReagentConsumableInventoryREVOList(page, 1, "").getTotal();
|
||||
statisticalCornerMarkList.add(new StatisticalCornerMark("库存不足的试剂耗材种类数量", understockReagentConsumableQuantity));
|
||||
int expireReagentConsumableQuantity = (int) this.getReagentConsumableInventoryREVOList(page, 2, "").getTotal();
|
||||
statisticalCornerMarkList.add(new StatisticalCornerMark("即将到期的试剂耗材种类数量", expireReagentConsumableQuantity));
|
||||
|
||||
int understockReferenceMaterialQuantity = (int) this.getReagentConsumableInventoryRMVOList(page, 1, "").getTotal();
|
||||
statisticalCornerMarkList.add(new StatisticalCornerMark("库存不足的标准物质种类数量", understockReferenceMaterialQuantity));
|
||||
int expireReferenceMaterialQuantity = (int) this.getReagentConsumableInventoryRMVOList(page, 2, "").getTotal();
|
||||
statisticalCornerMarkList.add(new StatisticalCornerMark("即将到期的标准物质种类数量", expireReferenceMaterialQuantity));
|
||||
|
||||
return statisticalCornerMarkList;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,13 +3,17 @@ package digital.laboratory.platform.reagent.vo;
|
||||
import digital.laboratory.platform.reagent.entity.BatchDetails;
|
||||
import digital.laboratory.platform.reagent.entity.ReferenceMaterial;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class BatchDetailsVO extends BatchDetails {
|
||||
|
||||
@ApiModelProperty(value="供应商名称")
|
||||
|
||||
@@ -42,7 +42,45 @@
|
||||
|
||||
<resultMap id="reagentConsumableInventoryVO"
|
||||
type="digital.laboratory.platform.reagent.vo.ReagentConsumableInventoryVO"
|
||||
extends="reagentConsumableInventoryMap"></resultMap>
|
||||
extends="reagentConsumableInventoryMap">
|
||||
<collection property="batchDetailsVOS" ofType="batchDetailsVOS" select="getBatchDetailsListForReagent" column="reagent_consumable_inventory_id"></collection>
|
||||
</resultMap>
|
||||
|
||||
<select id="getBatchDetailsListForReagent" resultMap="batchDetailsVOS" >
|
||||
select b.*,(select s.supplier_name from supplier_information s where s.id = b.supplier_id ) as supplier_name from batch_details b where b.reagent_consumable_inventory_id =#{reagent_consumable_inventory_id}
|
||||
</select>
|
||||
|
||||
<resultMap id="batchDetailsVOS" type="digital.laboratory.platform.reagent.entity.BatchDetails">
|
||||
<id property="batchDetailsId" column="batch_details_id"/>
|
||||
<result property="batch" column="batch"/>
|
||||
<result property="batchNumber" column="batch_number"/>
|
||||
<result property="complianceTestSituation" column="compliance_test_situation"/>
|
||||
<result property="dateOfLastCheck" column="date_of_last_check"/>
|
||||
<result property="dateOfProduction" column="date_of_production"/>
|
||||
<result property="deviationOrUncertainty" column="deviation_or_uncertainty"/>
|
||||
<result property="expirationDate" column="expiration_date"/>
|
||||
<result property="fixedResult" column="fixed_result"/>
|
||||
<result property="number" column="number"/>
|
||||
<result property="purchaseTime" column="purchase_time"/>
|
||||
<result property="quantity" column="quantity"/>
|
||||
<result property="reagentConsumableInventoryId" column="reagent_consumable_inventory_id"/>
|
||||
<result property="serviceStatus" column="service_status"/>
|
||||
<result property="supplierId" column="supplier_id"/>
|
||||
<result property="createTime" column="create_time"/>
|
||||
<result property="updateTime" column="update_time"/>
|
||||
<result property="createBy" column="create_by"/>
|
||||
<result property="updateBy" column="update_by"/>
|
||||
<result property="latticeId" column="lattice_id"/>
|
||||
<result property="location" column="location"/>
|
||||
<result property="limitDate" column="limit_date"/>
|
||||
<result property="boxId" column="box_id"/>
|
||||
<result property="warningInformation" column="warning_information"/>
|
||||
<result property="warehousingBatchListId" column="warehousing_batch_list_id"/>
|
||||
<result property="roomNo" column="room_no"/>
|
||||
<result property="reagentConsumableStashId" column="reagent_consumable_stash_id"/>
|
||||
<result property="supplierName" column="supplier_name"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
<select id="getReagentConsumableInventoryFullVOPage"
|
||||
resultType="digital.laboratory.platform.reagent.vo.ReagentConsumableInventoryFullVO">
|
||||
@@ -68,8 +106,21 @@
|
||||
|
||||
<select id="getReagentConsumableInventoryVOPage" resultMap="reagentConsumableInventoryVO"
|
||||
resultType="digital.laboratory.platform.reagent.vo.ReagentConsumableInventoryVO">
|
||||
select *
|
||||
from reagent_consumable_inventory ${ew.customSqlSegment}
|
||||
select r.* from reagent_consumable_inventory r
|
||||
where
|
||||
<if test="reagentCategory != null and reagentCategory == 0">
|
||||
r.category in ('试剂','耗材')
|
||||
</if>
|
||||
<if test="reagentCategory != null and reagentCategory == 1">
|
||||
r.category in ('标准物质','标准储备溶液')
|
||||
</if>
|
||||
<if test="warning != null and warning == 1">
|
||||
and r.warning_information = '库存不足'
|
||||
</if>
|
||||
<if test="keywords != null and keywords != ''">
|
||||
and r.reagent_consumable_name like concat('%',#{keywords},'%')
|
||||
or r.remark like like concat('%',#{keywords},'%')
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getUserList" resultType="digital.laboratory.platform.reagent.vo.UserVO">
|
||||
|
||||
Reference in New Issue
Block a user