diff --git a/pom.xml b/pom.xml
index 2e7cbac..2bdeb27 100644
--- a/pom.xml
+++ b/pom.xml
@@ -104,7 +104,7 @@
org.springframework.boot
spring-boot-starter-jdbc
-
+
@@ -137,7 +137,7 @@
org.springframework.boot
spring-boot-starter-undertow
-
+
digital.laboratory.platform
@@ -152,6 +152,13 @@
2022.10.11-snapshots
+
+
+ digital.laboratory.platform
+ dlp-common-aop
+ 2022.10.11-snapshots
+
+
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/DrugHandingOverApplyController.java b/src/main/java/digital/laboratory/platform/imr/controller/DrugHandingOverApplyController.java
new file mode 100644
index 0000000..e702417
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/controller/DrugHandingOverApplyController.java
@@ -0,0 +1,50 @@
+package digital.laboratory.platform.imr.controller;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import digital.laboratory.platform.common.core.util.R;
+import digital.laboratory.platform.imr.query.DrugHandingOverApplyQuery;
+import digital.laboratory.platform.imr.service.DrugHandingOverApplyService;
+import digital.laboratory.platform.imr.vo.DrugHandingOverApplyVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@RestController
+@RequestMapping("/handingOverApply")
+@Api(value = "DrugHandingOverApplyController", tags = "毒品送样申请相关接口")
+public class DrugHandingOverApplyController {
+
+ @Resource
+ private DrugHandingOverApplyService drugHandingOverApplyService;
+
+ @ApiOperation("创建毒品送缴申请-委托单位操作")
+ @PostMapping("/save")
+ public R save() {
+ DrugHandingOverApplyVO vo = drugHandingOverApplyService.create();
+ if (vo == null) {
+ return R.failed("保存数据失败!");
+ }
+ return R.ok(vo);
+ }
+
+ @ApiOperation("创建毒品送缴申请-委托单位操作")
+ @PostMapping("/page")
+ public R page(@RequestBody DrugHandingOverApplyQuery query) {
+ IPage voiPage = drugHandingOverApplyService.voPage(query);
+ return R.ok(voiPage);
+ }
+
+ @ApiOperation("删除毒品送缴申请-委托单位操作")
+ @PostMapping("/delete")
+ public R delete(@RequestBody List ids) {
+ boolean success = drugHandingOverApplyService.delete(ids);
+ return R.ok(success);
+ }
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/DrugUsageRecordController.java b/src/main/java/digital/laboratory/platform/imr/controller/DrugUsageRecordController.java
index 4fb4e20..36818c4 100644
--- a/src/main/java/digital/laboratory/platform/imr/controller/DrugUsageRecordController.java
+++ b/src/main/java/digital/laboratory/platform/imr/controller/DrugUsageRecordController.java
@@ -12,13 +12,12 @@ import digital.laboratory.platform.imr.entity.DrugMaterialInfo;
import digital.laboratory.platform.imr.entity.DrugUsageRecord;
import digital.laboratory.platform.imr.enums.DrugMaterialStatus;
import digital.laboratory.platform.imr.mapper.DrugMaterialInfoMapper;
-import digital.laboratory.platform.imr.query.DrugUsageRecordQuery;
+import digital.laboratory.platform.imr.query.BaseQuery;
import digital.laboratory.platform.imr.service.CommonFeignService;
import digital.laboratory.platform.imr.service.DrugUsageRecordService;
import digital.laboratory.platform.imr.vo.DrugMaterialInfoVO;
import digital.laboratory.platform.imr.vo.DrugUsageRecordVO;
import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
@@ -50,7 +49,7 @@ public class DrugUsageRecordController {
@ApiOperation("毒品检材领用记录分页列表")
@PostMapping("/page")
- public R> page(@RequestBody DrugUsageRecordQuery query) {
+ public R> page(@RequestBody BaseQuery query) {
String keywords = query.getKeywords();
IPage page = drugUsageRecordService.page(
new Page<>(query.getCurrent(), query.getSize()),
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/SamplePutInStorageController.java b/src/main/java/digital/laboratory/platform/imr/controller/SamplePutInStorageController.java
index 1da4a2a..658c8d2 100644
--- a/src/main/java/digital/laboratory/platform/imr/controller/SamplePutInStorageController.java
+++ b/src/main/java/digital/laboratory/platform/imr/controller/SamplePutInStorageController.java
@@ -2,7 +2,6 @@ package digital.laboratory.platform.imr.controller;
import cn.hutool.core.date.LocalDateTimeUtil;
-import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -14,22 +13,25 @@ import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.config.Configure;
import com.deepoove.poi.plugin.table.LoopRowTableRenderPolicy;
import digital.laboratory.platform.common.core.util.R;
-import digital.laboratory.platform.common.feign.RemoteWord2PDFService;
import digital.laboratory.platform.common.log.annotation.SysLog;
import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
import digital.laboratory.platform.common.oss.service.OssFile;
import digital.laboratory.platform.common.security.annotation.Inner;
import digital.laboratory.platform.common.security.util.SecurityUtils;
import digital.laboratory.platform.imr.dto.*;
-import digital.laboratory.platform.imr.entity.*;
-import digital.laboratory.platform.imr.mapper.*;
+import digital.laboratory.platform.imr.entity.SampleApply;
+import digital.laboratory.platform.imr.entity.SampleInboundRecord;
+import digital.laboratory.platform.imr.entity.SampleOutWarehouseApply;
+import digital.laboratory.platform.imr.entity.SampleStorage;
+import digital.laboratory.platform.imr.mapper.SampleApplyMapper;
+import digital.laboratory.platform.imr.mapper.SampleInboundAndOutboundTableMapper;
+import digital.laboratory.platform.imr.mapper.SampleOutWarehouseApplyMapper;
+import digital.laboratory.platform.imr.mapper.SampleStorageMapper;
import digital.laboratory.platform.imr.service.SamplePutInStorageService;
import digital.laboratory.platform.imr.vo.*;
-import feign.Response;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
-import org.springframework.mock.web.MockMultipartFile;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.security.oauth2.provider.OAuth2Authentication;
import org.springframework.web.bind.annotation.*;
@@ -70,8 +72,6 @@ public class SamplePutInStorageController {
private final SampleStorageMapper storageMapper;
- private final RemoteWord2PDFService remoteWord2PDFService;
-
private final SampleApplyMapper asMapper;
private final OssFile ossFile;
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/StorageCellController.java b/src/main/java/digital/laboratory/platform/imr/controller/StorageCellController.java
deleted file mode 100644
index 2261fb5..0000000
--- a/src/main/java/digital/laboratory/platform/imr/controller/StorageCellController.java
+++ /dev/null
@@ -1,274 +0,0 @@
-package digital.laboratory.platform.imr.controller;
-
-import cn.hutool.core.io.file.FileNameUtil;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import digital.laboratory.platform.common.core.util.R;
-import digital.laboratory.platform.common.log.annotation.SysLog;
-import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
-import digital.laboratory.platform.imr.dto.QueryStorageDTO;
-import digital.laboratory.platform.imr.entity.StorageCell;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-import digital.laboratory.platform.imr.mapper.StorageCellMapper;
-import digital.laboratory.platform.imr.mapper.StorageCupboardMapper;
-import digital.laboratory.platform.imr.service.StorageCellService;
-import org.springframework.security.access.prepost.PreAuthorize;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import org.springframework.security.oauth2.provider.OAuth2Authentication;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.activation.MimetypesFileTypeMap;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.security.Principal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import digital.laboratory.platform.common.oss.service.OssFile;
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 前端控制器
- *
- * 这是与表示层的接口, 不应该接业务逻辑写在这里, 业务逻辑应该写在 service 中
- * 这里写什么:
- * 为前端提供数据, 接受前端的数据
- * 为前端提供的数据, 从 service 取得后, 可以做一些适当的加工, 这种加工不是业务层面的, 只能是数据格式上, 为方便前端处理
- * 接受前端的数据, 每一个函数的参数可以先做一些整理后, 再调用 service 中的函数。这里对参数的整理, 应该只是格式上的, 而不能是业务上的
- * 数据层在 mapper 中, 数据层不涉及业务, 只管技术上的 对象<->表 之间的转换
- */
-@RestController
-@RequiredArgsConstructor
-@RequestMapping("/storage_cell" )
-@Api(value = "storage_cell", tags = "存储柜子对应格子管理")
-public class StorageCellController {
-
- private final StorageCellService storageCellService;
-
-
- private final StorageCellMapper cellMapper;
-
- private final StorageCupboardMapper cupboardMapper;
-
-
- private final OssFile ossFile;
-
- /**
- * 通过id查询
- * @param id id
- * @return R
- */
- @ApiOperation(value = "通过id查询", notes = "通过id查询")
- @GetMapping("/{id}" )
- @PreAuthorize("@pms.hasPermission('imr_storage_cell_get')" )
- public R getById(@PathVariable("id" ) String id, HttpServletRequest theHttpServletRequest) {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- StorageCell storageCell = storageCellService.getById(id);
- return R.ok(storageCell);
- //return R.ok(storageCellService.getById(id));
- }
-
- /**
- * 上传图片
- * @param cellId
- * @param file
- * @return
- * @throws Exception
- */
-
-
- @ApiOperation(value = "上传格子图片", notes = "上传格子图片")
- @PostMapping(value = " /{cellId}")
- //@PreAuthorize("@pms.hasPermission('roomUpload')")
- public R uploadAttachmentObj(@PathVariable("cellId") String cellId, @RequestPart("file") MultipartFile file) throws Exception {
-
- StorageCell storageCell = cellMapper.selectById(cellId);
- if (storageCell != null) {
-
- String path = "cell" + "/" + cellId;
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- Map ResultData = new HashMap<>();
- ResultData.put("fileName", fileName);
- ResultData.put("path", path);
-
- if (r) {
- //修改数据库
- storageCell.setCellPhoto(path);
- storageCell.setFileName(fileName);
- cellMapper.updateById(storageCell);
- return R.ok(ResultData, "上传成功");
- }
- return R.failed("上传失败");
- }
- return R.failed(null, "这个格子不存在");
- }
-
-
-
-
-
-
-
-
- /*HairSample hs = hairSampleService.getById(hairSampleId);
- if (hs != null) {
- try {
- // 获取样品所属的任务信息
- HairJob hairJob = hairJobService.getById(hs.getJobId());
- if (hairJob == null) {
- throw new RuntimeException(String.format("任务id为 %s 的任务不存在", hs.getJobId()));
- }
- String rootId;
- // 获取根任务id
- if (hairJob.getRootTaskId().equals("0")) {
- rootId = hairJob.getId();
- } else {
- rootId = hairJob.getRootTaskId();
- }
- ossFile.fileGet("hair_job" + "/" + rootId + "/" + hairSampleId + "/" + fileName, httpServletResponse.getOutputStream());
- httpServletResponse.setContentType(new MimetypesFileTypeMap().getContentType(hs.getPicture()));
- } catch (AmazonS3Exception s3e) {
- httpServletResponse.sendError(s3e.getStatusCode(), s3e.toString());
- } catch (Exception e) {
- httpServletResponse.sendError(501, e.toString());
- }
- }
- else {
- httpServletResponse.sendError(404, "不存在这个毛发样品");
- }*/
-
-
-
- @ApiOperation(value = "柜子列表查询接口--存储管理", notes = "柜子列表查询接口--存储管理")
- @GetMapping("/cell/list" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomPage(QueryStorageDTO dto){
-
-
- Page page = new Page<>();
-
- IPage storageList = cellMapper.getStorageCellPage(page,Wrappers.query()
- .eq(!dto.getId().isEmpty(),"id",dto.getId())
- .orderByDesc("create_time")
- );
- return R.ok(storageList,"查询成功");
- }
-
-
-
-
- /**
- *
- * @param dto
- * @return
- */
- @ApiOperation(value = "格子分页查询--入库模块使用", notes = "格子分页查询--入库模块使用")
- @GetMapping("/page" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomList(QueryStorageDTO dto) {
-
- Page page = new Page<>(dto.getCurrent(),dto.getSize());
-
- IPage storage = cellMapper.getStorageCellPage(page,Wrappers.query()
- .eq("cupboard_id",dto.getId())
- .orderByDesc("sort")
- );
- return R.ok(storage,"查询成功");
- }
-
-
- /**
- * 通过id删除
- * @return R
- */
- @ApiOperation(value = "通过格子id删除图片", notes = "通过格子id删除图片")
- @SysLog("通过id删除" )
- @DeleteMapping("/deletePicture/{cellId}" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_cell_del')" )
- public R deleteById(@PathVariable("cellId") String cellId) throws Exception {
-
-
- StorageCell storageCell = cellMapper.selectById(cellId);
- if(storageCell==null){
- throw new RuntimeException(String.format("当前格子数据不存在"));
- }
- if(storageCell.getCellPhoto()!=null && storageCell.getFileName()!=null ){
- //删除图片
- ossFile.fileDelete("cell" + "/" + storageCell.getId() + "/" + storageCell.getFileName());
- storageCell.setCellPhoto("");
- storageCell.setFileName("");
- cellMapper.updateById(storageCell);
- }
- return R.ok("删除成功");
- }
-
-
-
- /**
- * 通过id删除
- * @return R
- */
- @ApiOperation(value = "批量删除格子", notes = "批量删除格子")
- @SysLog("通过id删除" )
- @DeleteMapping("/deleteCell" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_cell_del')" )
- public R deleteById(@RequestBody List cellIds) throws Exception {
-
- List storageCells = cellMapper.selectBatchIds(cellIds);
-
- for (StorageCell storageCell : storageCells) {
- if(storageCell.getStatus()){
- throw new RuntimeException(String.format("编号为"+storageCell.getCellNo()+"的格子已存放东西"));
- }
- }
- for (StorageCell storageCell : storageCells) {
-
- //删除数据库数据
- cellMapper.deleteById(storageCell.getId());
- if(storageCell.getCellPhoto()!=null && storageCell.getFileName()!=null ){
- //删除图片
- ossFile.fileDelete("cell" + "/" + storageCell.getId() + "/" + storageCell.getFileName());
- }
- //更新对应格子的规格数据
- StorageCupboard storageCupboard = cupboardMapper.selectById(storageCell.getCupboardId());
- storageCupboard.setSpecifications(storageCupboard.getSpecifications()-1);//删除一个减-
- //获取对应格子数量
- /*QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.eq("cupboard_id",storageCell.getCupboardId());
- cellMapper.selectCount(wrapper);*/
- cupboardMapper.updateById(storageCupboard);
- }
- return R.ok("删除成功");
- }
-
-
- /**
- * 通过柜子id和文件名获取图片"/getRoomPicture/{roomId}/{fileName}"
- */
- @ApiOperation(value = "通过格子id和文件名获取图片--存储管理", notes = "通过格子id和文件名获取图片--存储管理")
- @GetMapping("/getCellPicture/{cellId}/{fileName}")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public void getRoomPicture (@PathVariable("cellId") String cellId,
- @PathVariable("fileName") String fileName,
- HttpServletResponse httpServletResponse) throws Exception {
- StorageCell storageCell = storageCellService.getById(cellId);
- if (storageCell == null) {
- throw new RuntimeException(String.format("当前柜子数据不存在"));
- }
- ossFile.fileGet("cell" + "/" + storageCell.getId() + "/" + fileName, httpServletResponse.getOutputStream());
- httpServletResponse.setContentType(new MimetypesFileTypeMap().getContentType(storageCell.getFileName()));
- }
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/StorageCupboardController.java b/src/main/java/digital/laboratory/platform/imr/controller/StorageCupboardController.java
deleted file mode 100644
index 5e14ad8..0000000
--- a/src/main/java/digital/laboratory/platform/imr/controller/StorageCupboardController.java
+++ /dev/null
@@ -1,354 +0,0 @@
-package digital.laboratory.platform.imr.controller;
-
-import cn.hutool.core.io.file.FileNameUtil;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import digital.laboratory.platform.common.core.util.R;
-import digital.laboratory.platform.common.log.annotation.SysLog;
-import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
-import digital.laboratory.platform.imr.dto.QueryStorageDTO;
-import digital.laboratory.platform.imr.entity.StorageCell;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-import digital.laboratory.platform.imr.entity.StorageRoom;
-import digital.laboratory.platform.imr.mapper.StorageCellMapper;
-import digital.laboratory.platform.imr.mapper.StorageCupboardMapper;
-import digital.laboratory.platform.imr.service.StorageCupboardService;
-import org.springframework.security.access.prepost.PreAuthorize;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import org.springframework.security.oauth2.provider.OAuth2Authentication;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.activation.MimetypesFileTypeMap;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.security.Principal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import digital.laboratory.platform.common.oss.service.OssFile;
-
-import static com.alibaba.fastjson.util.IOUtils.stringSize;
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 前端控制器
- *
- * 这是与表示层的接口, 不应该接业务逻辑写在这里, 业务逻辑应该写在 service 中
- * 这里写什么:
- * 为前端提供数据, 接受前端的数据
- * 为前端提供的数据, 从 service 取得后, 可以做一些适当的加工, 这种加工不是业务层面的, 只能是数据格式上, 为方便前端处理
- * 接受前端的数据, 每一个函数的参数可以先做一些整理后, 再调用 service 中的函数。这里对参数的整理, 应该只是格式上的, 而不能是业务上的
- * 数据层在 mapper 中, 数据层不涉及业务, 只管技术上的 对象<->表 之间的转换
- */
-@RestController
-@RequiredArgsConstructor
-@RequestMapping("/storage_cupboard" )
-@Api(value = "storage_cupboard", tags = "柜子管理")
-public class StorageCupboardController {
-
- private final StorageCupboardService storageCupboardService;
-
-
- private final StorageCupboardMapper cupboardMapper;
-
-
- private final StorageCellMapper cellMapper;
-
- private final OssFile ossFile;
-
- /**
- * 通过id查询
- * @param id id
- * @return R
- */
- @ApiOperation(value = "通过id查询", notes = "通过id查询")
- @GetMapping("/{id}" )
- @PreAuthorize("@pms.hasPermission('imr_storage_cupboard_get')" )
- public R getById(@PathVariable("id" ) String id, HttpServletRequest theHttpServletRequest) {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- StorageCupboard storageCupboard = storageCupboardService.getById(id);
- return R.ok(storageCupboard);
- //return R.ok(storageCupboardService.getById(id));
- }
-
-
-
-
-
-
- @ApiOperation(value = "柜子列表查询接口--存储管理", notes = "柜子列表查询接口--存储管理")
- @GetMapping("/cupboard/list" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomPage(QueryStorageDTO dto){
-
-
- Page page = new Page<>(dto.getCurrent(),dto.getSize());
-
- IPage storageCupboardList = cupboardMapper.getStorageCupboardPage(page,Wrappers.query()
- .eq(!dto.getId().isEmpty(),"id",dto.getId())
- .orderByDesc("create_time")
- );
- return R.ok(storageCupboardList,"查询成功");
- }
-
-
-
-/* @ApiOperation(value = "修改--上传柜子图片", notes = "修改--上传柜子图片")
- @PostMapping(value = "/uploadCupboard/{cupboardId}")
- //@PreAuthorize("@pms.hasPermission('roomUpload')")
- public R uploadAttachmentObj(@PathVariable("cupboardId") String cupboardId, @RequestPart("file") MultipartFile file) throws Exception {
-
- StorageCupboard storageCupboard = cupboardMapper.selectById(cupboardId);
- if (storageCupboard != null) {
-
- String path = "cupboard" + "/" + cupboardId;
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- Map ResultData = new HashMap<>();
- ResultData.put("fileName", fileName);
- ResultData.put("path", path);
-
- if (r) {
- //修改数据库
- storageCupboard.setCupboardPhoto(path);
- storageCupboard.setFileName(fileName);
- cupboardMapper.updateById(storageCupboard);
- return R.ok(ResultData, "上传成功");
- }
- return R.failed("上传失败");
- }
- return R.failed(null, "这个柜子不存在");
- }*/
-
-
- /**
- * 新增
- * @param storageCupboard
- * @return R
- */
- @ApiOperation(value = "添加存储柜--存储管理", notes = "添加存储柜--存储管理")
- @SysLog("添加存储柜--存储管理" )
- @PostMapping("/createStorageCupboard")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_add')" )
- public R postAddObject(StorageCupboard storageCupboard, HttpServletRequest theHttpServletRequest,@RequestPart(value = "file",required = false) MultipartFile file)throws Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- if (storageCupboard.getRoomId() == null) {
- throw new RuntimeException(String.format("柜子必须关联格子"));
- }
- if (storageCupboard.getSpecifications() == null) {
- throw new RuntimeException(String.format("柜子必须要填写规格"));
- }
- if (storageCupboard.getCupboardNo() == null) {
- throw new RuntimeException(String.format("柜子编号不能为空"));
- }
-
- storageCupboard.setId(IdWorker.get32UUID().toUpperCase());
-
- if (file != null) {
- String path = "cupboard" + "/" + storageCupboard.getId();
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- if (r) {
- storageCupboard.setCupboardPhoto(path);
- storageCupboard.setFileName(fileName);
- cupboardMapper.insert(storageCupboard);
- //根据柜子规格创建格子
- for (Integer a = 1; a <= storageCupboard.getSpecifications(); a++) {
- StorageCell storageCell = new StorageCell();
- storageCell.setId(IdWorker.get32UUID().toUpperCase());
- storageCell.setStatus(true);//默认未存入东西
- storageCell.setCupboardId(storageCupboard.getId());
- //取柜子的编号前几位
- String head = storageCupboard.getCupboardNo().substring(0, 3);
- //制定格子编号生成规则
- String str = "CL";
- String number = getNumber(a);
- storageCell.setCellNo(str + head + number);
- cellMapper.insert(storageCell);
- }
- return R.ok(storageCupboard, "创建成功");
- } else {
- //删除图片
- ossFile.fileDelete("cupboard" + "/" + storageCupboard.getId() + "/" + fileName);
- return R.failed("创建失败");
- }
- } else {
- cupboardMapper.insert(storageCupboard);
- return R.ok(storageCupboard, "创建成功");
- }
- }
-
-
- /**
- * 修改
- * @param storageCupboard
- * @return R
- */
- @ApiOperation(value = "修改--存储管理(数据修改+图片修改)", notes = "修改--存储管理")
- @SysLog("修改")
- @PutMapping("/updateCupboard")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_edit')" )
- public R putUpdateById (StorageCupboard storageCupboard, HttpServletRequest
- theHttpServletRequest, @RequestPart(value = "file", required = false) MultipartFile file)throws Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- StorageCupboard cupboard = storageCupboardService.getById(storageCupboard.getId());//数据库数据
-
- if(cupboard==null){
- throw new RuntimeException(String.format("当前修改数据不存在"));
- }
-
- if ((int)storageCupboard.getSpecifications()!=(int)cupboard.getSpecifications()) {
- throw new RuntimeException(String.format("不允许修改"));
- }
-
- if (file != null) {
- String path = "cupboard" + "/" + storageCupboard.getId();
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- if (r) {
- storageCupboard.setCupboardPhoto(path);
- storageCupboard.setFileName(fileName);
- cupboardMapper.updateById(storageCupboard);
- return R.ok(storageCupboard, "修改成功");
- } else {
- return R.failed("修改失败");
- }
- } else {
- if(cupboard.getCupboardPhoto()!=null && cupboard.getFileName()!=null) {
- //删除图片
- ossFile.fileDelete("cupboard" + "/" + cupboard.getId() + "/" + cupboard.getFileName());
- }
- storageCupboard.setFileName(null);
- storageCupboard.setCupboardPhoto(null);
- cupboardMapper.updateById(storageCupboard);
- return R.ok(storageCupboard, "修改成功");
- }
- }
-
- /**
- * 通过id删除
- * @param id id
- * @return R
- **/
- @ApiOperation(value = "通过id删除柜子--存储管理", notes = "通过id删除柜子--存储管理")
- @SysLog("通过id删除")
- @DeleteMapping("deleteCupboard/{id}")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_del')" )
- public R deleteById (@PathVariable String id, HttpServletRequest theHttpServletRequest) throws
- Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.eq("cupboard_id", id);
- List storageCells = cellMapper.selectList(wrapper);
- for (StorageCell storageCell : storageCells) {
- if (!storageCell.getStatus()) {
- throw new RuntimeException(String.format("当前柜子中"+storageCell.getCellNo()+"格子还存有物品"));
- }
- }
- //删除柜子
- StorageCupboard storageCupboard = storageCupboardService.getById(id);
- if (storageCupboard.getCupboardPhoto() != null && storageCupboard.getFileName() != null) {
- //删除图片
- ossFile.fileDelete("cupboard" + "/" + storageCupboard.getId() + "/" + storageCupboard.getFileName());
- }
-
- if (storageCupboardService.removeById(id)) {
-
- QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("cupboard_id",id);
- cellMapper.delete(queryWrapper);//删除格子
- //删除对应格子照片
- for (StorageCell storageCell : storageCells) {
- if (storageCell.getCellPhoto() != null && storageCell.getFileName() != null) {
- //删除图片
- ossFile.fileDelete("cell" + "/" + storageCell.getId() + "/" + storageCell.getFileName());
- }
- }
- return R.ok(storageCupboard, "对象删除成功");
- } else {
- return R.failed(storageCupboard, "对象删除失败");
- }
-
- }
-
- /**
- * 通过柜子id和文件名获取图片"/getRoomPicture/{roomId}/{fileName}"
- */
- @ApiOperation(value = "通过柜子id和文件名获取图片--存储管理", notes = "通过柜子id和文件名获取图片--存储管理")
- @GetMapping("/getCupboardPicture/{cupboardId}/{fileName}")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public void getRoomPicture (@PathVariable("cupboardId") String cupboardId,
- @PathVariable("fileName") String fileName,
- HttpServletResponse httpServletResponse) throws Exception {
- StorageCupboard storageCupboard = storageCupboardService.getById(cupboardId);
- if (storageCupboard == null) {
- throw new RuntimeException(String.format("当前柜子数据不存在"));
- }
- ossFile.fileGet("cupboard" + "/" + storageCupboard.getId() + "/" + fileName, httpServletResponse.getOutputStream());
- httpServletResponse.setContentType(new MimetypesFileTypeMap().getContentType(storageCupboard.getFileName()));
- }
-
-
- /**
- *
- * @param
- * @return
- **/
- @ApiOperation(value = "柜子列表查询--下拉框的", notes = "柜子列表查询--下拉框的")
- @GetMapping("/list/{roomId}")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomList (@PathVariable("roomId") String roomId ){
-
- List storage = cupboardMapper.getStorageCupboardList(Wrappers.query()
- .eq("room_id", roomId)
- .ne("status", 0)//排除不可用的柜子
- .orderByDesc("sort")
- );
- return R.ok(storage, "查询成功");
- }
-
-
-
-
- public static String getNumber(Integer a){
- String number = "";
- Integer i = stringSize(a);
- if(i==1){
- number="000"+a.toString();
- }else if(i==2){
- number="00"+a.toString();
- }else if(i==3){
- number="0"+a.toString();
- }
-
- return number;
- }
-
-
-
-
-
-
-
-
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/controller/StorageRoomController.java b/src/main/java/digital/laboratory/platform/imr/controller/StorageRoomController.java
deleted file mode 100644
index 2caab69..0000000
--- a/src/main/java/digital/laboratory/platform/imr/controller/StorageRoomController.java
+++ /dev/null
@@ -1,309 +0,0 @@
-package digital.laboratory.platform.imr.controller;
-
-import cn.hutool.core.io.file.FileNameUtil;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import digital.laboratory.platform.common.core.constant.OSSDirectoryConstants;
-import digital.laboratory.platform.common.core.util.R;
-import digital.laboratory.platform.common.log.annotation.SysLog;
-import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-import digital.laboratory.platform.imr.entity.StorageRoom;
-import digital.laboratory.platform.imr.mapper.StorageCupboardMapper;
-import digital.laboratory.platform.imr.mapper.StorageRoomMapper;
-import digital.laboratory.platform.imr.service.StorageRoomService;
-import digital.laboratory.platform.common.oss.service.OssFile;
-import digital.laboratory.platform.common.core.*;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import lombok.RequiredArgsConstructor;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.security.oauth2.provider.OAuth2Authentication;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.activation.MimetypesFileTypeMap;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.security.Principal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 前端控制器
- *
- * 这是与表示层的接口, 不应该接业务逻辑写在这里, 业务逻辑应该写在 service 中
- * 这里写什么:
- * 为前端提供数据, 接受前端的数据
- * 为前端提供的数据, 从 service 取得后, 可以做一些适当的加工, 这种加工不是业务层面的, 只能是数据格式上, 为方便前端处理
- * 接受前端的数据, 每一个函数的参数可以先做一些整理后, 再调用 service 中的函数。这里对参数的整理, 应该只是格式上的, 而不能是业务上的
- * 数据层在 mapper 中, 数据层不涉及业务, 只管技术上的 对象<->表 之间的转换
- */
-@RestController
-@RequiredArgsConstructor
-@RequestMapping("/storage_room" )
-@Api(value = "storage_room", tags = "房间管理")
-public class StorageRoomController {
-
-
-
- private final StorageRoomMapper roomMapper;
-
- private final StorageRoomService storageRoomService;
-
-
-
- private final StorageCupboardMapper cupboardMapper;
-
- private final OssFile ossFile;
-
-
-
-
-
-
-/* @ApiOperation(value = "上传房间图片", notes = "上传房间图片")
- @PostMapping(value = "/uploadRoom/{roomId}")
- @PreAuthorize("@pms.hasPermission('roomUpload')")
- public R uploadAttachmentObj(@PathVariable("roomId") String roomId, @RequestPart("file") MultipartFile file) throws Exception {
-
- StorageRoom storageRoom = roomMapper.selectById(roomId);
- if (storageRoom != null) {
-
- String path = "room" + "/" + roomId;
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- Map ResultData = new HashMap<>();
- ResultData.put("fileName", fileName);
- ResultData.put("path", path);
-
- if (r) {
- //修改数据库
- storageRoom.setRoomPhoto(path);
- storageRoom.setFileName(fileName);
- roomMapper.updateById(storageRoom);
- return R.ok(ResultData, "上传成功");
- }
- return R.failed("上传失败");
- }
- return R.failed(null, "这个房间不存在");
- }*/
-
-
-
-
- /**
- * 通过id查询
- * @param id id
- * @return R
- */
- @ApiOperation(value = "通过id查询", notes = "通过id查询")
- @GetMapping("/{id}" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R getById(@PathVariable("id" ) String id, HttpServletRequest theHttpServletRequest) {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- StorageRoom storageRoom = storageRoomService.getById(id);
- return R.ok(storageRoom);
- //return R.ok(storageRoomService.getById(id));
- }
-
- /**
- * 分页查询
- * @param roomName
- * @return
- */
- @ApiOperation(value = "存储室列表查询接口--存储管理", notes = "存储室列表查询接口--存储管理")
- @GetMapping("/room/list" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomPage(String roomName){
-
- List storageRoomList = roomMapper.getStorageRoomPage(Wrappers.query()
- .like(!roomName.isEmpty(),"name",roomName)
- .orderByDesc("create_time")
- );
- return R.ok(storageRoomList,"查询成功");
- }
-
- /**
- * 新增
- * @param storageRoom
- * @return R
- */
- @ApiOperation(value = "添加存储室--存储管理(上传或不上传图片)", notes = "添加存储室--存储管理")
- @SysLog("添加存储室" )
- @PostMapping("/createStorageRoom")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_add')" )
- public R postAddObject(StorageRoom storageRoom, HttpServletRequest theHttpServletRequest,@RequestPart(value = "file",required = false) MultipartFile file)throws Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
-
- storageRoom.setId(IdWorker.get32UUID().toUpperCase());
-
- if(file!=null){
- String path = "room" + "/" + storageRoom.getId();
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- if (r) {
- storageRoom.setRoomPhoto(path);
- storageRoom.setFileName(fileName);
- roomMapper.insert(storageRoom);
- return R.ok(storageRoom, "创建成功");
- }
- else {
- //删除图片
- ossFile.fileDelete("room" + "/" + storageRoom.getId() + "/" + fileName);
- return R.failed("创建失败");
- }
- }else {
- roomMapper.insert(storageRoom);
- return R.ok(storageRoom, "创建成功");
- }
- }
-
-
-
-
-
- /**
- * 修改
- * @return R
- */
- @ApiOperation(value = "修改--存储管理(数据修改+图片修改)", notes = "修改--存储管理")
- @SysLog("修改" )
- @PutMapping("/updateRoom")
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_edit')" )
- public R putUpdateById(StorageRoom storageRoom, HttpServletRequest theHttpServletRequest,@RequestPart(value = "file",required = false)MultipartFile file)throws Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
-
- StorageRoom room = roomMapper.selectById(storageRoom.getId());
- if(room==null){
- throw new RuntimeException(String.format("存储室数据不存在"));
- }
- if(file!=null){
- String path = "room" + "/" + storageRoom.getId();
- String fileName = FileNameUtil.getName(file.getOriginalFilename());
- boolean r = ossFile.fileUpload(file, path);
- if (r) {
- storageRoom.setRoomPhoto(path);
- storageRoom.setFileName(fileName);
- roomMapper.updateById(storageRoom);
- return R.ok(storageRoom, "修改成功");
- }
- else {
- return R.failed("修改失败");
- }
- }else {
- //判断数据库是否存储照片
- if(room.getRoomPhoto() != null && room.getFileName()!=null){
- //删除图片
- ossFile.fileDelete("room" + "/" + room.getId() + "/" + room.getFileName());
- }
- //修改数据
- storageRoom.setFileName("");
- storageRoom.setRoomPhoto("");
- roomMapper.updateById(storageRoom);
- return R.ok(storageRoom, "修改成功");
- }
- }
-
- /**
- * 通过id删除
- * @param id id
- * @return R
- */
- @ApiOperation(value = "通过id删除房间--存储管理", notes = "通过id删除--存储管理")
- @SysLog("通过id删除" )
- @DeleteMapping("deleteRoom/{id}" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_del')" )
- public R deleteById(@PathVariable String id, HttpServletRequest theHttpServletRequest) throws Exception {
- Principal principal = theHttpServletRequest.getUserPrincipal();
- DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal();
-
- QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.eq("room_id",id);
- List storageCupboards = cupboardMapper.selectList(wrapper);
-
- if (storageCupboards!=null){
- throw new RuntimeException(String.format("当前房间还存在柜子不允许删除"));
- }
-
- StorageRoom storageRoom = storageRoomService.getById(id);
- if(storageRoom.getRoomPhoto()!=null && storageRoom.getFileName()!=null){
- //删除图片
- ossFile.fileDelete("room" + "/" + storageRoom.getId() + "/" + storageRoom.getFileName());
- }
-
- if (storageRoomService.removeById(id)) {
- return R.ok(storageRoom, "对象删除成功");
- }
- else {
- return R.failed(storageRoom, "对象删除失败");
- }
-
- }
-
- /**
- * 通过房间id和文件名获取图片"/getRoomPicture/{roomId}/{fileName}"
- */
- @ApiOperation(value = "通过房间id和文件名获取图片", notes = "通过房间id和文件名获取图片")
- @GetMapping("/getRoomPicture/{roomId}/{fileName}" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public void getRoomPicture(@PathVariable("roomId") String roomId,
- @PathVariable("fileName") String fileName,
- HttpServletResponse httpServletResponse) throws Exception {
- StorageRoom storageRoom = roomMapper.selectById(roomId);
- if(storageRoom==null){
- throw new RuntimeException(String.format("当前房间数据不存在"));
- }
- ossFile.fileGet("room" + "/" + storageRoom.getId() + "/" + fileName, httpServletResponse.getOutputStream());
- httpServletResponse.setContentType(new MimetypesFileTypeMap().getContentType(storageRoom.getFileName()));
- }
-
-
-
- /*
- @ApiOperation(value = "删除图片", notes = "删除图片")
- @SysLog("通过id删除" )
- @DeleteMapping("deleteRoom/{id}" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_del')" )
- */
-
-
-
-
-
- /**
- * 列表
- * @param
- * @return
- */
- @ApiOperation(value = "房间列表查询--下拉框的", notes = "房间列表查询--下拉框的")
- @GetMapping("/list" )
- //@PreAuthorize("@pms.hasPermission('imr_storage_room_get')" )
- public R> getStorageRoomList() {
-
- List storage = roomMapper.getStorageRoomList(Wrappers.query()
- .orderByDesc("sort")
- );
- return R.ok(storage,"查询成功");
- }
-
-
-
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/convert/DrugCaseInfoConvert.java b/src/main/java/digital/laboratory/platform/imr/convert/DrugCaseInfoConvert.java
index 491c4ec..a54824d 100644
--- a/src/main/java/digital/laboratory/platform/imr/convert/DrugCaseInfoConvert.java
+++ b/src/main/java/digital/laboratory/platform/imr/convert/DrugCaseInfoConvert.java
@@ -22,9 +22,6 @@ public class DrugCaseInfoConvert {
drugCaseInfo.setId(dto.getId());
drugCaseInfo.setCaseName(dto.getCaseName());
drugCaseInfo.setCaseNo(dto.getCaseNo());
- drugCaseInfo.setHandingOverOrg(dto.getHandingOverOrg());
- drugCaseInfo.setHandingOverDate(dto.getHandingOverDate());
- drugCaseInfo.setFrontOrgIds(dto.getFrontOrgIds());
return drugCaseInfo;
}
@@ -37,9 +34,6 @@ public class DrugCaseInfoConvert {
drugCaseInfoVO.setId(entity.getId());
drugCaseInfoVO.setCaseName(entity.getCaseName());
drugCaseInfoVO.setCaseNo(entity.getCaseNo());
- drugCaseInfoVO.setHandingOverOrg(entity.getHandingOverOrg());
- drugCaseInfoVO.setHandingOverDate(entity.getHandingOverDate());
- drugCaseInfoVO.setFrontOrgIds(entity.getFrontOrgIds());
return drugCaseInfoVO;
}
diff --git a/src/main/java/digital/laboratory/platform/imr/convert/DrugHandingOverApplyConvert.java b/src/main/java/digital/laboratory/platform/imr/convert/DrugHandingOverApplyConvert.java
new file mode 100644
index 0000000..05cd397
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/convert/DrugHandingOverApplyConvert.java
@@ -0,0 +1,38 @@
+package digital.laboratory.platform.imr.convert;
+import cn.hutool.core.collection.CollUtil;
+import com.google.common.collect.Lists;
+
+import digital.laboratory.platform.imr.entity.DrugHandingOverApply;
+import digital.laboratory.platform.imr.enums.DrugHandingOverApplyStatus;
+import digital.laboratory.platform.imr.vo.DrugHandingOverApplyVO;
+
+import java.util.List;
+
+/**
+ * 送缴申请转换类
+ */
+public class DrugHandingOverApplyConvert {
+
+ public static DrugHandingOverApplyVO entityToVO(DrugHandingOverApply entity) {
+ if (entity == null) return null;
+ DrugHandingOverApplyVO drugHandingOverApplyVO = new DrugHandingOverApplyVO();
+ drugHandingOverApplyVO.setId(entity.getId());
+ drugHandingOverApplyVO.setHandingOverUser(entity.getHandingOverUser());
+ drugHandingOverApplyVO.setHandingOverOrg(entity.getHandingOverOrg());
+ drugHandingOverApplyVO.setHandingOverDate(entity.getHandingOverDate());
+ drugHandingOverApplyVO.setApplyDate(entity.getApplyDate());
+ drugHandingOverApplyVO.setStatus(entity.getStatus());
+ drugHandingOverApplyVO.setStatusName(DrugHandingOverApplyStatus.fromStatus(entity.getStatus()).getDesc());
+ drugHandingOverApplyVO.setRecipient(entity.getRecipient());
+ drugHandingOverApplyVO.setReason(entity.getReason());
+ return drugHandingOverApplyVO;
+ }
+
+ public static List entityToVOList(List entityList) {
+ List drugHandingOverApplyVOlist = CollUtil.newArrayList();
+ for (DrugHandingOverApply drugHandingOverApply :entityList) {
+ drugHandingOverApplyVOlist.add(entityToVO(drugHandingOverApply));
+ }
+ return drugHandingOverApplyVOlist;
+ }
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/convert/DrugMaterialInfoConvert.java b/src/main/java/digital/laboratory/platform/imr/convert/DrugMaterialInfoConvert.java
index 3d95034..30b5ebe 100644
--- a/src/main/java/digital/laboratory/platform/imr/convert/DrugMaterialInfoConvert.java
+++ b/src/main/java/digital/laboratory/platform/imr/convert/DrugMaterialInfoConvert.java
@@ -21,8 +21,8 @@ public class DrugMaterialInfoConvert {
drugMaterialInfo.setId(dto.getId());
drugMaterialInfo.setCaseId(dto.getCaseId());
drugMaterialInfo.setDrugName(dto.getDrugName());
- drugMaterialInfo.setMassVolume(dto.getMassVolume());
- drugMaterialInfo.setUnit(dto.getUnit());
+ drugMaterialInfo.setOriginMassVolume(dto.getMassVolume());
+ drugMaterialInfo.setOriginUnit(dto.getUnit());
drugMaterialInfo.setPackageComplete(dto.getPackageComplete());
return drugMaterialInfo;
}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/DrugCaseInfo.java b/src/main/java/digital/laboratory/platform/imr/entity/DrugCaseInfo.java
index 00a15b5..c0b9deb 100644
--- a/src/main/java/digital/laboratory/platform/imr/entity/DrugCaseInfo.java
+++ b/src/main/java/digital/laboratory/platform/imr/entity/DrugCaseInfo.java
@@ -8,9 +8,6 @@ import digital.laboratory.platform.common.mybatis.base.BaseEntity;
import lombok.Data;
import java.io.Serializable;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.Date;
/**
* 毒品库中关联的案事件信息
@@ -18,7 +15,7 @@ import java.util.Date;
*/
@TableName(value ="b_drug_case_info")
@Data
-public class DrugCaseInfo extends BaseEntity{
+public class DrugCaseInfo extends BaseEntity {
/**
* 主键标识
*/
@@ -36,75 +33,10 @@ public class DrugCaseInfo extends BaseEntity{
private String caseNo;
/**
- * 送缴单位
+ * 关联送缴申请的id
*/
- private String handingOverOrg;
-
- /**
- * 送缴日期
- */
- private LocalDate handingOverDate;
-
- /**
- * 前端需要展示的机构组件,保存了送缴单位的父级机构id和自己机构id
- */
- private String frontOrgIds;
+ private String applyId;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
-
- @Override
- public boolean equals(Object that) {
- if (this == that) {
- return true;
- }
- if (that == null) {
- return false;
- }
- if (getClass() != that.getClass()) {
- return false;
- }
- DrugCaseInfo other = (DrugCaseInfo) that;
- return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
- && (this.getCaseName() == null ? other.getCaseName() == null : this.getCaseName().equals(other.getCaseName()))
- && (this.getCaseNo() == null ? other.getCaseNo() == null : this.getCaseNo().equals(other.getCaseNo()))
- && (this.getHandingOverOrg() == null ? other.getHandingOverOrg() == null : this.getHandingOverOrg().equals(other.getHandingOverOrg()))
- && (this.getHandingOverDate() == null ? other.getHandingOverDate() == null : this.getHandingOverDate().equals(other.getHandingOverDate()))
- && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
- && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
- && (this.getCreateBy() == null ? other.getCreateBy() == null : this.getCreateBy().equals(other.getCreateBy()))
- && (this.getUpdateBy() == null ? other.getUpdateBy() == null : this.getUpdateBy().equals(other.getUpdateBy()));
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
- result = prime * result + ((getCaseName() == null) ? 0 : getCaseName().hashCode());
- result = prime * result + ((getCaseNo() == null) ? 0 : getCaseNo().hashCode());
- result = prime * result + ((getHandingOverOrg() == null) ? 0 : getHandingOverOrg().hashCode());
- result = prime * result + ((getHandingOverDate() == null) ? 0 : getHandingOverDate().hashCode());
- result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
- result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
- result = prime * result + ((getCreateBy() == null) ? 0 : getCreateBy().hashCode());
- result = prime * result + ((getUpdateBy() == null) ? 0 : getUpdateBy().hashCode());
- return result;
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append(getClass().getSimpleName());
- sb.append(" [");
- sb.append("Hash = ").append(hashCode());
- sb.append(", id=").append(id);
- sb.append(", caseName=").append(caseName);
- sb.append(", caseNo=").append(caseNo);
- sb.append(", handingOverOrg=").append(handingOverOrg);
- sb.append(", handingOverDate=").append(handingOverDate);
- sb.append(", serialVersionUID=").append(serialVersionUID);
- sb.append("]");
- return sb.toString();
- }
-}
\ No newline at end of file
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/DrugHandingOverApply.java b/src/main/java/digital/laboratory/platform/imr/entity/DrugHandingOverApply.java
new file mode 100644
index 0000000..a59b08c
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/entity/DrugHandingOverApply.java
@@ -0,0 +1,64 @@
+package digital.laboratory.platform.imr.entity;
+
+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 digital.laboratory.platform.common.mybatis.base.BaseEntity;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * 毒品库中关联的案事件信息
+ * @TableName b_drug_handing_over_apply
+ */
+@TableName(value ="b_drug_handing_over_apply")
+@Data
+public class DrugHandingOverApply extends BaseEntity {
+ /**
+ * 主键标识
+ */
+ @TableId(value = "id", type = IdType.ASSIGN_ID)
+ private String id;
+
+ /**
+ * 送缴用户
+ */
+ private String handingOverUser;
+
+ /**
+ * 送缴单位
+ */
+ private String handingOverOrg;
+
+ /**
+ * 送缴日期
+ */
+ private LocalDateTime handingOverDate;
+
+ /**
+ * 申请日期
+ */
+ private LocalDateTime applyDate;
+
+ /**
+ * 送缴申请状态,0 待送缴 | 3 待接收 | 5 同意接收 | -5 拒绝接收
+ */
+ private Integer status;
+
+ /**
+ * 处理该申请,决定是否接收的用户id
+ */
+ private String recipient;
+
+ /**
+ * 同意/拒绝 原因
+ */
+ private String reason;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/DrugMaterialInfo.java b/src/main/java/digital/laboratory/platform/imr/entity/DrugMaterialInfo.java
index f89b482..501b0ec 100644
--- a/src/main/java/digital/laboratory/platform/imr/entity/DrugMaterialInfo.java
+++ b/src/main/java/digital/laboratory/platform/imr/entity/DrugMaterialInfo.java
@@ -23,7 +23,7 @@ public class DrugMaterialInfo extends BaseEntity {
private String id;
/**
- * 关联的案件id
+ * 关联的案件id
*/
private String caseId;
@@ -38,14 +38,29 @@ public class DrugMaterialInfo extends BaseEntity {
private String drugName;
/**
- * 质量/体积
+ * 毒品类型
*/
- private String massVolume;
+ private String type;
/**
- * 质量/体积 单位
+ * 原质量/体积(委托单位填写)
*/
- private String unit;
+ private String originMassVolume;
+
+ /**
+ * 原质量/体积 单位 (委托单位填写)
+ */
+ private String originUnit;
+
+ /**
+ * 复称质量/体积(接收单位填写)
+ */
+ private String recheckMassVolume;
+
+ /**
+ * 复称质量/体积 单位 (接收单位填写)
+ */
+ private String recheckUnit;
/**
* 包装是否完整, 1 完整 | 0 不完整
@@ -53,68 +68,10 @@ public class DrugMaterialInfo extends BaseEntity {
private Boolean packageComplete;
/**
- * 毒品检材状态, 0 录入信息 | 3 待入库 | 5 已入库
+ * 毒品检材状态, 0 录入信息中 | 3 待入库 | 5 已入库
*/
private Integer status;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
-
- @Override
- public boolean equals(Object that) {
- if (this == that) {
- return true;
- }
- if (that == null) {
- return false;
- }
- if (getClass() != that.getClass()) {
- return false;
- }
- DrugMaterialInfo other = (DrugMaterialInfo) that;
- return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
- && (this.getCaseId() == null ? other.getCaseId() == null : this.getCaseId().equals(other.getCaseId()))
- && (this.getDrugNo() == null ? other.getDrugNo() == null : this.getDrugNo().equals(other.getDrugNo()))
- && (this.getDrugName() == null ? other.getDrugName() == null : this.getDrugName().equals(other.getDrugName()))
- && (this.getMassVolume() == null ? other.getMassVolume() == null : this.getMassVolume().equals(other.getMassVolume()))
- && (this.getPackageComplete() == null ? other.getPackageComplete() == null : this.getPackageComplete().equals(other.getPackageComplete()))
- && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
- && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
- && (this.getCreateBy() == null ? other.getCreateBy() == null : this.getCreateBy().equals(other.getCreateBy()))
- && (this.getUpdateBy() == null ? other.getUpdateBy() == null : this.getUpdateBy().equals(other.getUpdateBy()));
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
- result = prime * result + ((getCaseId() == null) ? 0 : getCaseId().hashCode());
- result = prime * result + ((getDrugNo() == null) ? 0 : getDrugNo().hashCode());
- result = prime * result + ((getDrugName() == null) ? 0 : getDrugName().hashCode());
- result = prime * result + ((getMassVolume() == null) ? 0 : getMassVolume().hashCode());
- result = prime * result + ((getPackageComplete() == null) ? 0 : getPackageComplete().hashCode());
- result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
- result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
- result = prime * result + ((getCreateBy() == null) ? 0 : getCreateBy().hashCode());
- result = prime * result + ((getUpdateBy() == null) ? 0 : getUpdateBy().hashCode());
- return result;
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append(getClass().getSimpleName());
- sb.append(" [");
- sb.append("Hash = ").append(hashCode());
- sb.append(", id=").append(id);
- sb.append(", caseId=").append(caseId);
- sb.append(", drugNo=").append(drugNo);
- sb.append(", drugName=").append(drugName);
- sb.append(", massVolume=").append(massVolume);
- sb.append(", packageComplete=").append(packageComplete);
- sb.append(", serialVersionUID=").append(serialVersionUID);
- sb.append("]");
- return sb.toString();
- }
-}
\ No newline at end of file
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/StorageCell.java b/src/main/java/digital/laboratory/platform/imr/entity/StorageCell.java
deleted file mode 100644
index 5aa9eb0..0000000
--- a/src/main/java/digital/laboratory/platform/imr/entity/StorageCell.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package digital.laboratory.platform.imr.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import digital.laboratory.platform.common.mybatis.base.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17 11:48:03
- * @describe 实体类
- */
-@Data
-@TableName(value = "storage_cell", autoResultMap = true)
-@EqualsAndHashCode(callSuper = true)
-@ApiModel(value = "存储格子")
-public class StorageCell extends BaseEntity {
-
- /**
- * 主键id
- */
- @TableId(value = "id", type = IdType.ASSIGN_UUID)
- @ApiModelProperty(value="主键id")
- private String id;
-
- /**
- * 格子编号
- */
- @ApiModelProperty(value="格子编号")
- private String cellNo;
-
- /**
- * 状态:可用/不可用
- */
- @ApiModelProperty(value="是否存放物品 true存放/false未存放")
- private Boolean status;
-
- /**
- * 排序
- */
- @ApiModelProperty(value="排序")
- private Long sort;
-
- /**
- * 柜子id
- */
- @ApiModelProperty(value="柜子id")
- private String cupboardId;
-
- /**
- * 格子照片
- */
- @ApiModelProperty(value="格子照片")
- private String cellPhoto;
-
- /**
- * 格子描述
- */
- @ApiModelProperty(value="格子描述")
- private String content;
-
-
- /**
- * 文件名称
- */
- @ApiModelProperty(value="文件名称")
- private String fileName;
-
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/StorageCupboard.java b/src/main/java/digital/laboratory/platform/imr/entity/StorageCupboard.java
deleted file mode 100644
index 99a3e65..0000000
--- a/src/main/java/digital/laboratory/platform/imr/entity/StorageCupboard.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package digital.laboratory.platform.imr.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import digital.laboratory.platform.common.mybatis.base.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import io.swagger.models.auth.In;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17 11:45:58
- * @describe 实体类
- */
-@Data
-@TableName(value = "storage_cupboard", autoResultMap = true)
-@EqualsAndHashCode(callSuper = true)
-@ApiModel(value = "")
-public class StorageCupboard extends BaseEntity {
-
- /**
- * 柜子id
- */
- @TableId(value = "id", type = IdType.ASSIGN_UUID)
- @ApiModelProperty(value="柜子id")
- private String id;
-
- /**
- * 柜子名称
- */
- @ApiModelProperty(value="柜子名称")
- private String name;
-
- /**
- * 柜子编号
- */
- @ApiModelProperty(value="柜子编号")
- private String cupboardNo;
-
- /**
- * 规格
- */
- @ApiModelProperty(value="规格")
- private Integer specifications;
-
- /**
- * 存储类型(测试)
- */
- @ApiModelProperty(value="存储类型(测试)")
- private String storageType;
-
- /**
- * 状态(存满/为存满)--测试数据
- */
- @ApiModelProperty(value="状态(true.正常使用;false停止使用)--测试数据")
- private Boolean status;
-
- /**
- * 房间id
- */
- @ApiModelProperty(value="房间id")
- private String roomId;
-
- /**
- * 柜子照片
- */
- @ApiModelProperty(value="柜子照片")
- private String cupboardPhoto;
-
-
-
- /**
- * updateBy
- */
- @ApiModelProperty(value="updateBy")
- private String updateBy;
-
-
- /**
- * 排序
- */
- @ApiModelProperty(value="排序")
- private Long sort;
-
-
- /**
- * 文件名称
- */
- @ApiModelProperty(value="文件名称")
- private String fileName;
-
-
- @ApiModelProperty(value="类型:柜子/货架")
- private String cupboardType;
-
-
- @ApiModelProperty(value="1规则/-1不规则")
- private Integer rule;
-
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/entity/StorageRoom.java b/src/main/java/digital/laboratory/platform/imr/entity/StorageRoom.java
deleted file mode 100644
index 9c62cee..0000000
--- a/src/main/java/digital/laboratory/platform/imr/entity/StorageRoom.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package digital.laboratory.platform.imr.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import digital.laboratory.platform.common.mybatis.base.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import java.io.Serializable;
-import java.time.LocalDateTime;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-
-/**
- *
- *
- * @author Zhang Xiaolong created at 2023-03-17 11:44:05
- * @describe 实体类
- */
-@Data
-@TableName(value = "storage_room", autoResultMap = true)
-@EqualsAndHashCode(callSuper = true)
-@ApiModel(value = "房间")
-public class StorageRoom extends BaseEntity {
-
- /**
- * 主键id
- */
- @TableId(value = "id", type = IdType.ASSIGN_UUID)
- @ApiModelProperty(value="主键id")
- private String id;
-
- /**
- * 房间名称(冷冻356)
- */
- @ApiModelProperty(value="房间名称(冷冻356)")
- private String name;
-
- /**
- * 房间位置(3楼356)
- */
- @ApiModelProperty(value="房间位置(3楼356)")
- private String roomLocation;
-
- /**
- * 房间照片
- */
- @ApiModelProperty(value="房间照片")
- private String roomPhoto;
-
-
-
- /**
- * updateBy
- */
- @ApiModelProperty(value="updateBy")
- private String updateBy;
-
-
- /**
- * 排序
- */
- @ApiModelProperty(value="排序")
- private Long sort;
-
-
- /**
- * 文件名称
- */
- @ApiModelProperty(value="文件名称")
- private String fileName;
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/enums/DrugHandingOverApplyStatus.java b/src/main/java/digital/laboratory/platform/imr/enums/DrugHandingOverApplyStatus.java
new file mode 100644
index 0000000..e0e816c
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/enums/DrugHandingOverApplyStatus.java
@@ -0,0 +1,32 @@
+package digital.laboratory.platform.imr.enums;
+
+import lombok.Getter;
+
+@Getter
+public enum DrugHandingOverApplyStatus {
+
+ WAIT_HANDING_OVER(0, "待送缴"),
+ WAIT_ACCEPT(3, "待接收"),
+ AGREE_ACCEPT(5, "同意接收"),
+ REJECT_ACCEPT(-5, "拒绝接收")
+ ;
+
+ private final Integer status;
+
+ private final String desc;
+
+ DrugHandingOverApplyStatus(Integer status, String desc) {
+ this.status = status;
+ this.desc = desc;
+ }
+
+ public static DrugHandingOverApplyStatus fromStatus(Integer status) {
+ for (DrugHandingOverApplyStatus drugHandingOverApplyStatus : values()) {
+ if (drugHandingOverApplyStatus.getStatus().equals(status)) {
+ return drugHandingOverApplyStatus;
+ }
+ }
+ throw new IllegalArgumentException("No enum constant with code: " + status);
+ }
+
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/mapper/DrugHandingOverApplyMapper.java b/src/main/java/digital/laboratory/platform/imr/mapper/DrugHandingOverApplyMapper.java
new file mode 100644
index 0000000..046e55c
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/mapper/DrugHandingOverApplyMapper.java
@@ -0,0 +1,20 @@
+package digital.laboratory.platform.imr.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import digital.laboratory.platform.imr.entity.DrugHandingOverApply;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @author ChenJiangBao
+* @description 针对表【b_drug_handing_over_apply(毒品库中关联的案事件信息)】的数据库操作Mapper
+* @createDate 2025-01-08 17:30:46
+* @Entity generator.entity.DrugHandingOverApply
+*/
+@Mapper
+public interface DrugHandingOverApplyMapper extends BaseMapper {
+
+}
+
+
+
+
diff --git a/src/main/java/digital/laboratory/platform/imr/mapper/StorageCellMapper.java b/src/main/java/digital/laboratory/platform/imr/mapper/StorageCellMapper.java
deleted file mode 100644
index 5c99ecd..0000000
--- a/src/main/java/digital/laboratory/platform/imr/mapper/StorageCellMapper.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package digital.laboratory.platform.imr.mapper;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.Constants;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import digital.laboratory.platform.imr.entity.StorageCell;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * Mapper 接口
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe Mapper 类
- */
-@Mapper
-public interface StorageCellMapper extends BaseMapper {
-
- /*
- 格子分页
- */
- IPage getStorageCellPage(@Param("page") Page page,@Param(Constants.WRAPPER) QueryWrapper qw);
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/mapper/StorageCupboardMapper.java b/src/main/java/digital/laboratory/platform/imr/mapper/StorageCupboardMapper.java
deleted file mode 100644
index fb4a2f0..0000000
--- a/src/main/java/digital/laboratory/platform/imr/mapper/StorageCupboardMapper.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package digital.laboratory.platform.imr.mapper;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.Constants;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * Mapper 接口
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe Mapper 类
- */
-@Mapper
-public interface StorageCupboardMapper extends BaseMapper {
-
- List getStorageCupboardList(@Param(Constants.WRAPPER)QueryWrapper orderByDesc);
-
- IPage getStorageCupboardPage(@Param("page") Page page,@Param(Constants.WRAPPER) QueryWrapper orderByDesc);
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/mapper/StorageRoomMapper.java b/src/main/java/digital/laboratory/platform/imr/mapper/StorageRoomMapper.java
deleted file mode 100644
index 0b43501..0000000
--- a/src/main/java/digital/laboratory/platform/imr/mapper/StorageRoomMapper.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package digital.laboratory.platform.imr.mapper;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.toolkit.Constants;
-import digital.laboratory.platform.imr.entity.StorageRoom;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * Mapper 接口
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe Mapper 类
- */
-@Mapper
-public interface StorageRoomMapper extends BaseMapper {
-
-
-
- List getStorageRoomList(@Param(Constants.WRAPPER) QueryWrapper qw);
-
- List getStorageRoomPage(@Param(Constants.WRAPPER)QueryWrapper orderByDesc);
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/query/DrugUsageRecordQuery.java b/src/main/java/digital/laboratory/platform/imr/query/BaseQuery.java
similarity index 86%
rename from src/main/java/digital/laboratory/platform/imr/query/DrugUsageRecordQuery.java
rename to src/main/java/digital/laboratory/platform/imr/query/BaseQuery.java
index c09863c..b427d19 100644
--- a/src/main/java/digital/laboratory/platform/imr/query/DrugUsageRecordQuery.java
+++ b/src/main/java/digital/laboratory/platform/imr/query/BaseQuery.java
@@ -12,8 +12,8 @@ import java.time.LocalDate;
* 毒品库领用记录信息查询对象 Query
*/
@Data
-@ApiModel(value = "DrugUsageRecordQuery", description = "毒品库领用记录信息查询对象 Query")
-public class DrugUsageRecordQuery {
+@ApiModel(value = "BaseQuery", description = "基础查询对象 Query")
+public class BaseQuery {
@ApiModelProperty(value = "分页参数,每页多少条, 默认10")
private Long size = 10L;
diff --git a/src/main/java/digital/laboratory/platform/imr/query/DrugDepotsQuery.java b/src/main/java/digital/laboratory/platform/imr/query/DrugDepotsQuery.java
index 505662f..de6a1c4 100644
--- a/src/main/java/digital/laboratory/platform/imr/query/DrugDepotsQuery.java
+++ b/src/main/java/digital/laboratory/platform/imr/query/DrugDepotsQuery.java
@@ -1,28 +1,15 @@
package digital.laboratory.platform.imr.query;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import digital.laboratory.platform.imr.component.DateUtils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import java.time.LocalDate;
-
/**
* 毒品库信息查询对象 Query
*/
@Data
@ApiModel(value = "DrugDepotsQuery", description = "毒品库信息查询对象 Query")
-public class DrugDepotsQuery {
-
- @ApiModelProperty(value = "分页参数,每页多少条, 默认10")
- private Long size = 10L;
-
- @ApiModelProperty(value = "分页参数, 当前页, 默认1")
- private Long current = 1L;
-
- @ApiModelProperty(value = "关键字,支持 案件名称, 毒品名称")
- private String keywords;
+public class DrugDepotsQuery extends BaseQuery{
@ApiModelProperty(value = "送缴单位id查询")
private String orgId;
@@ -32,12 +19,4 @@ public class DrugDepotsQuery {
@ApiModelProperty(value = "状态 0 录入信息 | 3 待入库 | 5 已入库")
private Integer status;
-
- @ApiModelProperty(value = "开始日期")
- @JsonFormat(pattern = DateUtils.yyyy_MM_dd)
- private LocalDate startDate;
-
- @ApiModelProperty(value = "结束日期")
- @JsonFormat(pattern = DateUtils.yyyy_MM_dd)
- private LocalDate endDate;
}
diff --git a/src/main/java/digital/laboratory/platform/imr/query/DrugHandingOverApplyQuery.java b/src/main/java/digital/laboratory/platform/imr/query/DrugHandingOverApplyQuery.java
new file mode 100644
index 0000000..bc1d085
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/query/DrugHandingOverApplyQuery.java
@@ -0,0 +1,23 @@
+package digital.laboratory.platform.imr.query;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "DrugHandingOverApplyQuery", description = "毒品库送缴申请信息查询对象 Query")
+public class DrugHandingOverApplyQuery extends BaseQuery{
+
+ @ApiModelProperty("时间范围查询类型,1 申请时间 | 2 送缴时间")
+ private Integer timeRangeType;
+
+
+ @ApiModelProperty("用户查询类型,1 送缴用户 | 2 接收用户")
+ private Integer userQueryType;
+ /**
+ * 用户
+ */
+ @ApiModelProperty("用户id")
+ private String userId;
+
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/DrugHandingOverApplyService.java b/src/main/java/digital/laboratory/platform/imr/service/DrugHandingOverApplyService.java
new file mode 100644
index 0000000..84feab1
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/service/DrugHandingOverApplyService.java
@@ -0,0 +1,34 @@
+package digital.laboratory.platform.imr.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import digital.laboratory.platform.imr.entity.DrugHandingOverApply;
+import digital.laboratory.platform.imr.query.DrugHandingOverApplyQuery;
+import digital.laboratory.platform.imr.vo.DrugHandingOverApplyVO;
+
+import java.util.List;
+
+/**
+* @author ChenJiangBao
+* @description 针对表【b_drug_handing_over_apply(毒品库中关联的案事件信息)】的数据库操作Service
+* @createDate 2025-01-08 17:30:46
+*/
+public interface DrugHandingOverApplyService extends IService {
+
+ /**
+ * 创建毒品送缴申请-委托单位操作
+ * @return
+ */
+ DrugHandingOverApplyVO create();
+
+
+ /**
+ * 根据毒品送缴申请查询条件分页查询毒品送缴申请VO对象
+ *
+ * @param query 查询条件
+ * @return 分页后的毒品送缴申请视图对象列表
+ */
+ IPage voPage(DrugHandingOverApplyQuery query);
+
+ boolean delete(List ids);
+}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/StorageCellService.java b/src/main/java/digital/laboratory/platform/imr/service/StorageCellService.java
deleted file mode 100644
index 66be785..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/StorageCellService.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package digital.laboratory.platform.imr.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import digital.laboratory.platform.imr.entity.StorageCell;
-
-/**
- * 服务类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务类
- */
-public interface StorageCellService extends IService {
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/StorageCupboardService.java b/src/main/java/digital/laboratory/platform/imr/service/StorageCupboardService.java
deleted file mode 100644
index f8bdc7a..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/StorageCupboardService.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package digital.laboratory.platform.imr.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-
-/**
- * 服务类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务类
- */
-public interface StorageCupboardService extends IService {
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/StorageRoomService.java b/src/main/java/digital/laboratory/platform/imr/service/StorageRoomService.java
deleted file mode 100644
index 193a6f1..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/StorageRoomService.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package digital.laboratory.platform.imr.service;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.extension.service.IService;
-import digital.laboratory.platform.imr.entity.StorageRoom;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * 服务类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务类
- */
-public interface StorageRoomService extends IService {
-
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverApplyServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverApplyServiceImpl.java
new file mode 100644
index 0000000..5a49d5d
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverApplyServiceImpl.java
@@ -0,0 +1,121 @@
+package digital.laboratory.platform.imr.service.impl;
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+//import com.lcsoft.dlp.common.aop.annotation.DlpResultProc;
+import digital.laboratory.platform.common.core.exception.ValidateCodeException;
+import digital.laboratory.platform.common.mybatis.security.service.DLPUser;
+import digital.laboratory.platform.common.security.util.SecurityUtils;
+import digital.laboratory.platform.imr.convert.DrugHandingOverApplyConvert;
+import digital.laboratory.platform.imr.entity.DrugHandingOverApply;
+import digital.laboratory.platform.imr.enums.DrugHandingOverApplyStatus;
+import digital.laboratory.platform.imr.query.DrugHandingOverApplyQuery;
+import digital.laboratory.platform.imr.service.DrugHandingOverApplyService;
+import digital.laboratory.platform.imr.mapper.DrugHandingOverApplyMapper;
+import digital.laboratory.platform.imr.vo.DrugHandingOverApplyVO;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+* @author ChenJiangBao
+* @description 针对表【b_drug_handing_over_apply(毒品库中关联的案事件信息)】的数据库操作Service实现
+* @createDate 2025-01-08 17:30:46
+*/
+@Service
+public class DrugHandingOverApplyServiceImpl extends ServiceImpl
+ implements DrugHandingOverApplyService{
+
+ /**
+ * 创建毒品送缴申请-委托单位操作
+ * @return
+ */
+ @Override
+// @DlpResultProc
+ public DrugHandingOverApplyVO create() {
+ DLPUser user = SecurityUtils.getUser();
+ DrugHandingOverApply entity = new DrugHandingOverApply();
+ entity.setHandingOverUser(user.getId());
+ entity.setHandingOverOrg(user.getOrgId());
+ entity.setApplyDate(LocalDateTime.now());
+ entity.setStatus(DrugHandingOverApplyStatus.WAIT_HANDING_OVER.getStatus());
+ if (super.save(entity)) {
+ return DrugHandingOverApplyConvert.entityToVO(entity);
+ }
+ return null;
+ }
+
+ /**
+ * 根据毒品送缴申请查询条件分页查询毒品送缴申请VO对象
+ *
+ * @param query 查询条件
+ * @return 分页后的毒品送缴申请视图对象列表
+ */
+ @Override
+ public IPage voPage(DrugHandingOverApplyQuery query) {
+ LambdaQueryWrapper lambdaQueryWrapper = appendQueryCriteria(query);
+ Page page = super.page(new Page<>(query.getCurrent(), query.getSize()), lambdaQueryWrapper);
+
+ IPage voPage = new Page<>();
+ BeanUtils.copyProperties(page, voPage, "records");
+ voPage.setRecords(DrugHandingOverApplyConvert.entityToVOList(page.getRecords()));
+ return voPage;
+ }
+
+ /**
+ * 删除送缴申请
+ * @param ids
+ * @return
+ */
+ @Override
+ public boolean delete(List ids) {
+ List drugHandingOverApplies = super.listByIds(ids);
+ for (DrugHandingOverApply drugHandingOverApply : drugHandingOverApplies) {
+ if (!drugHandingOverApply.getStatus().equals(DrugHandingOverApplyStatus.WAIT_HANDING_OVER.getStatus())) {
+ throw new ValidateCodeException(String.format("id为 %s 的申请已经送缴,不能删除!"));
+ }
+ }
+ return super.removeByIds(ids);
+ }
+
+ /**
+ * 根据给定的查询条件构建LambdaQueryWrapper查询对象
+ *
+ * @param query 查询条件对象,包含时间范围类型、用户查询类型等
+ * @return 构建的LambdaQueryWrapper查询对象
+ */
+ private LambdaQueryWrapper appendQueryCriteria(DrugHandingOverApplyQuery query) {
+ DLPUser user = SecurityUtils.getUser();
+ Integer timeRangeType = query.getTimeRangeType();
+ Integer userQueryType = query.getUserQueryType();
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+ lambdaQueryWrapper.eq(!user.isStaff(), DrugHandingOverApply::getHandingOverOrg, user.getOrgId());
+ if (timeRangeType != null) {
+ if (timeRangeType == 1) {
+ lambdaQueryWrapper.ge(query.getStartDate() != null, DrugHandingOverApply::getApplyDate, query.getStartDate())
+ .le(query.getEndDate() != null, DrugHandingOverApply::getApplyDate, query.getEndDate());
+ } else if (timeRangeType == 2) {
+ lambdaQueryWrapper.ge(query.getStartDate() != null, DrugHandingOverApply::getHandingOverDate, query.getStartDate())
+ .le(query.getEndDate() != null, DrugHandingOverApply::getHandingOverDate, query.getEndDate());
+ }
+ }
+
+ if (userQueryType != null) {
+ if (userQueryType == 1) {
+ lambdaQueryWrapper.eq(StrUtil.isNotBlank(query.getUserId()), DrugHandingOverApply::getHandingOverUser, query.getUserId());
+ } else if (userQueryType == 2) {
+ lambdaQueryWrapper.eq(StrUtil.isNotBlank(query.getUserId()), DrugHandingOverApply::getRecipient, query.getUserId());
+ }
+ }
+ return lambdaQueryWrapper;
+ }
+}
+
+
+
+
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverStatisticServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverStatisticServiceImpl.java
index 165e599..8f16512 100644
--- a/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverStatisticServiceImpl.java
+++ b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugHandingOverStatisticServiceImpl.java
@@ -5,15 +5,19 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import digital.laboratory.platform.imr.component.DateUtils;
import digital.laboratory.platform.imr.entity.DrugCaseInfo;
+import digital.laboratory.platform.imr.entity.DrugHandingOverApply;
import digital.laboratory.platform.imr.entity.DrugMaterialInfo;
+import digital.laboratory.platform.imr.mapper.DrugHandingOverApplyMapper;
import digital.laboratory.platform.imr.mapper.DrugMaterialInfoMapper;
import digital.laboratory.platform.imr.query.DrugStatisticQuery;
import digital.laboratory.platform.imr.service.CommonFeignService;
import digital.laboratory.platform.imr.service.DrugCaseInfoService;
+import digital.laboratory.platform.imr.service.DrugHandingOverApplyService;
import digital.laboratory.platform.imr.service.DrugHandingOverStatisticService;
import digital.laboratory.platform.imr.vo.DrugMaterialInfoVO;
import digital.laboratory.platform.imr.vo.DrugStatisticVO;
import digital.laboratory.platform.sys.entity.SysOrg;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -42,8 +46,13 @@ public class DrugHandingOverStatisticServiceImpl implements DrugHandingOverStati
@Resource
private DrugCaseInfoService drugCaseInfoService;
+ @Resource
+ private DrugHandingOverApplyService drugHandingOverApplyService;
+
@Resource
private CommonFeignService commonFeignService;
+ @Autowired
+ private DrugHandingOverApplyMapper drugHandingOverApplyMapper;
/**
* 获取统计图的数据, 根据时间范围, 送缴单位,毒品种类返回数据
@@ -88,11 +97,11 @@ public class DrugHandingOverStatisticServiceImpl implements DrugHandingOverStati
Map sysOrgMap = new HashMap<>();
// 根据案件表取所有的送缴单位
if (StrUtil.isBlank(query.getOrgId())) {
- List drugCaseInfoList = drugCaseInfoService.list();
- sysOrgMap = drugCaseInfoList.stream()
+ List drugHandingOverApplies = drugHandingOverApplyService.list();
+ sysOrgMap = drugHandingOverApplies.stream()
.collect(Collectors.toMap(
- DrugCaseInfo::getHandingOverOrg,
- drugCaseInfo -> commonFeignService.remoteGetSysOrg(drugCaseInfo.getHandingOverOrg()),
+ DrugHandingOverApply::getHandingOverOrg,
+ drugHandingOverApply -> commonFeignService.remoteGetSysOrg(drugHandingOverApply.getHandingOverOrg()),
(existing, replacement) -> existing
)
);
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/DrugMaterialInfoServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugMaterialInfoServiceImpl.java
index 572e68c..3ab108a 100644
--- a/src/main/java/digital/laboratory/platform/imr/service/impl/DrugMaterialInfoServiceImpl.java
+++ b/src/main/java/digital/laboratory/platform/imr/service/impl/DrugMaterialInfoServiceImpl.java
@@ -56,6 +56,9 @@ public class DrugMaterialInfoServiceImpl extends ServiceImpl batchBuildDrugMaterialNO(DrugCaseInfo drugCaseInfo, Integer number) {
- ;
+ DrugHandingOverApply handingOverApply = drugHandingOverApplyService.getById(drugCaseInfo.getApplyId());
Calendar calendar = Calendar.getInstance();
- String prefixNO = CommonConstants.CODE_PREFIX_IDENTIFICATION_MATERIAL + drugCaseInfo.getHandingOverOrg() + "00" + calendar.get(Calendar.YEAR);
+ String prefixNO = CommonConstants.CODE_PREFIX_IDENTIFICATION_MATERIAL + handingOverApply.getHandingOverOrg() + "00" + calendar.get(Calendar.YEAR);
List drugMaterialInfos = this.list(Wrappers.lambdaQuery()
.likeRight(DrugMaterialInfo::getDrugNo, prefixNO)
.orderByDesc(DrugMaterialInfo::getDrugNo));
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCellServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCellServiceImpl.java
deleted file mode 100644
index 60846ee..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCellServiceImpl.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package digital.laboratory.platform.imr.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import digital.laboratory.platform.imr.entity.StorageCell;
-import digital.laboratory.platform.imr.mapper.StorageCellMapper;
-import digital.laboratory.platform.imr.service.StorageCellService;
-import org.springframework.stereotype.Service;
-
-/**
- * 服务实现类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务实现类
- */
-@Service
-public class StorageCellServiceImpl extends ServiceImpl implements StorageCellService {
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCupboardServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCupboardServiceImpl.java
deleted file mode 100644
index d9b2905..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageCupboardServiceImpl.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package digital.laboratory.platform.imr.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import digital.laboratory.platform.imr.entity.StorageCupboard;
-import digital.laboratory.platform.imr.mapper.StorageCupboardMapper;
-import digital.laboratory.platform.imr.service.StorageCupboardService;
-import org.springframework.stereotype.Service;
-
-/**
- * 服务实现类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务实现类
- */
-@Service
-public class StorageCupboardServiceImpl extends ServiceImpl implements StorageCupboardService {
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageRoomServiceImpl.java b/src/main/java/digital/laboratory/platform/imr/service/impl/StorageRoomServiceImpl.java
deleted file mode 100644
index a26c7f7..0000000
--- a/src/main/java/digital/laboratory/platform/imr/service/impl/StorageRoomServiceImpl.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package digital.laboratory.platform.imr.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import digital.laboratory.platform.imr.entity.StorageRoom;
-import digital.laboratory.platform.imr.mapper.StorageRoomMapper;
-import digital.laboratory.platform.imr.service.StorageRoomService;
-import org.springframework.stereotype.Service;
-
-/**
- * 服务实现类
- *
- * @author Zhang Xiaolong created at 2023-03-17
- * @describe 服务实现类
- */
-@Service
-public class StorageRoomServiceImpl extends ServiceImpl implements StorageRoomService {
-
-}
diff --git a/src/main/java/digital/laboratory/platform/imr/vo/DrugHandingOverApplyVO.java b/src/main/java/digital/laboratory/platform/imr/vo/DrugHandingOverApplyVO.java
new file mode 100644
index 0000000..f9c76f5
--- /dev/null
+++ b/src/main/java/digital/laboratory/platform/imr/vo/DrugHandingOverApplyVO.java
@@ -0,0 +1,85 @@
+package digital.laboratory.platform.imr.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+//import com.lcsoft.dlp.common.aop.annotation.DlpFeign;
+import digital.laboratory.platform.imr.component.DateUtils;
+import digital.laboratory.platform.sys.feign.RemoteOrgService;
+import digital.laboratory.platform.sys.feign.RemoteUserService;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * 毒品库中关联的委托单位的送缴申请信息
+ * @TableName b_drug_handing_over_apply
+ */
+@Data
+@ApiModel(value = "DrugHandingOverApplyVO", description = "毒品库中关联的委托单位的送缴申请信息 VO")
+public class DrugHandingOverApplyVO {
+ /**
+ * 主键标识
+ */
+ @ApiModelProperty("主键标识")
+ private String id;
+
+ /**
+ * 送缴用户
+ */
+ @ApiModelProperty("送缴用户 id")
+ private String handingOverUser;
+
+ @ApiModelProperty("送缴用户 名称")
+// @DlpFeign(feignClient = RemoteUserService.class, methodName = "innerGetById", params = {"handingOverUser"}, resultField = "name")
+ private String handingOverUserName;
+
+ /**
+ * 送缴单位
+ */
+ @ApiModelProperty("送缴单位id")
+ private String handingOverOrg;
+
+ @ApiModelProperty("送缴单位名称")
+// @DlpFeign(feignClient = RemoteOrgService.class, methodName = "getById", params = {"handingOverOrg"}, resultField = "name")
+ private String handingOverOrgName;
+
+ /**
+ * 送缴日期
+ */
+ @ApiModelProperty("送缴时间")
+ @JsonFormat(pattern = DateUtils.yyyy_MM_dd_HH_mm_ss, timezone = DateUtils.TIME_ZONE)
+ private LocalDateTime handingOverDate;
+
+ /**
+ * 申请时间
+ */
+ @ApiModelProperty("申请时间")
+ @JsonFormat(pattern = DateUtils.yyyy_MM_dd_HH_mm_ss, timezone = DateUtils.TIME_ZONE)
+ private LocalDateTime applyDate;
+
+ /**
+ * 送缴申请状态,0 待送缴 | 3 待接收 | 5 同意接收 | -5 拒绝接收
+ */
+ @ApiModelProperty("送缴申请状态,0 待送缴 | 3 待接收 | 5 同意接收 | -5 拒绝接收")
+ private Integer status;
+
+ @ApiModelProperty("送缴申请状态,0 待送缴 | 3 待接收 | 5 同意接收 | -5 拒绝接收")
+ private String statusName;
+
+ /**
+ * 处理该申请,决定是否接收的用户id
+ */
+ @ApiModelProperty("处理该申请,决定是否接收的用户id")
+ private String recipient;
+
+ @ApiModelProperty("处理该申请,决定是否接收的用户 姓名")
+// @DlpFeign(feignClient = RemoteUserService.class, methodName = "innerGetById", params = {"recipient"}, resultField = "name")
+ private String recipientName;
+
+ /**
+ * 同意/拒绝 原因
+ */
+ @ApiModelProperty("同意/拒绝 原因")
+ private String reason;
+}
diff --git a/src/main/resources/mapper/DrugCaseInfoMapper.xml b/src/main/resources/mapper/DrugCaseInfoMapper.xml
index 0973894..204091e 100644
--- a/src/main/resources/mapper/DrugCaseInfoMapper.xml
+++ b/src/main/resources/mapper/DrugCaseInfoMapper.xml
@@ -8,9 +8,7 @@
-
-
-
+
@@ -19,16 +17,16 @@
id,case_name,case_no,
- handing_over_org,handing_over_date,front_org_ids,create_time,
- update_time,create_by,update_by
+ apply_id,create_time,update_time,
+ create_by,update_by
SELECT
- , handingOverCount
+ , handingOverCount
FROM b_drug_case_info
LEFT JOIN (
- SELECT COUNT(*) AS handingOverCount , case_id
+ SELECT COUNT(*) AS handingOverCount , case_id
FROM b_drug_material_info GROUP BY case_id
) AS t
ON b_drug_case_info.id = t.case_id
diff --git a/src/main/resources/mapper/DrugHandingOverApplyMapper.xml b/src/main/resources/mapper/DrugHandingOverApplyMapper.xml
new file mode 100644
index 0000000..92fa619
--- /dev/null
+++ b/src/main/resources/mapper/DrugHandingOverApplyMapper.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id,handing_over_user,handing_over_org,
+ handing_over_date,status,reason,
+ create_time,update_time,create_by,
+ update_by
+
+
diff --git a/src/main/resources/mapper/DrugMaterialInfoMapper.xml b/src/main/resources/mapper/DrugMaterialInfoMapper.xml
index 2e1022d..9731daa 100644
--- a/src/main/resources/mapper/DrugMaterialInfoMapper.xml
+++ b/src/main/resources/mapper/DrugMaterialInfoMapper.xml
@@ -9,8 +9,11 @@
-
-
+
+
+
+
+
@@ -21,9 +24,10 @@
id,case_id,drug_no,
- drug_name,mass_volume,unit,package_complete,status,
- create_time,update_time,create_by,
- update_by
+ drug_name,type,origin_mass_volume,
+ origin_unit,recheck_mass_volume,recheck_unit,
+ package_complete,status,create_time,
+ update_time,create_by,update_by
@@ -31,15 +35,16 @@
dm.*,
dc.case_name,
dc.case_no,
- dc.handing_over_org,
- dc.handing_over_date,
+ dhoa.handing_over_org,
+ dhoa.handing_over_date,
ss.id AS sampleStorageId,
ss.storage_location,
ss.box_id AS canineId,
ss.storage_cell_id
FROM b_drug_material_info dm
LEFT JOIN b_drug_case_info dc ON dm.case_id = dc.id
- LEFT JOIN b_sample_storage ss ON dm.id = ss.sample_id
+ LEFT JOIN b_drug_handin_over_apply dhoa ON dc.apply_id = dhoa.id
+ LEFT JOIN b_sample_storage ss ON dm.id = ss.sample_id