From 70584075b3953045342a513bf3372efb204c9d5c Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期三, 25 十二月 2024 10:36:42 +0800
Subject: [PATCH] merge

---
 medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwWarningRecordController.java  |   39 +++++++++
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectTotalDto.java                  |    1 
 medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCheckoutRecordController.java |   84 +++++++++++++++++++++
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java    |   12 +++
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CheckOutDto.java                      |   21 +++++
 medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java             |    6 +
 medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml                      |   14 +++
 medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java               |    5 +
 8 files changed, 182 insertions(+), 0 deletions(-)

diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCheckoutRecordController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCheckoutRecordController.java
new file mode 100644
index 0000000..0ff945a
--- /dev/null
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCheckoutRecordController.java
@@ -0,0 +1,84 @@
+package com.sinata.web.controller.applet;
+import com.google.common.collect.Lists;
+import java.util.Date;
+
+import com.sinata.common.core.domain.R;
+import com.sinata.common.core.domain.entity.SysUser;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.common.utils.SecurityUtils;
+import com.sinata.system.domain.MwCheckoutRecord;
+import com.sinata.system.domain.MwTransitCar;
+import com.sinata.system.domain.dto.CheckOutDto;
+import com.sinata.system.domain.dto.CollectTotalUpDto;
+import com.sinata.system.domain.query.CheckoutRecordQuery;
+import com.sinata.system.domain.query.MwCheckoutRecordItemQuery;
+import com.sinata.system.domain.query.MwTransitRecordQuery;
+import com.sinata.system.domain.vo.MwCheckoutRecordVO;
+import com.sinata.system.domain.vo.MwMedicalWasteBoxVO;
+import com.sinata.system.domain.vo.MwTransitRecordVO;
+import com.sinata.system.service.ISysUserService;
+import com.sinata.system.service.MwCheckoutRecordService;
+import com.sinata.system.service.MwTransitCarService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.naming.ldap.PagedResultsControl;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.io.IOException;
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ * 暂存间出库记录 前端控制器
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-12-02
+ */
+@Api(tags = {"医院工作人员"})
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/applet/mwCheckoutRecord")
+public class AppMwCheckoutRecordController {
+    private final MwCheckoutRecordService mwCheckoutRecordService;
+    private final ISysUserService userService;
+    private final MwTransitCarService carService;
+
+
+    @ApiOperation(value = "出库统计上")
+    @PostMapping("/total")
+    public R<List<CollectTotalUpDto>> total(LocalDate date) {
+        SysUser sysUser = SecurityUtils.getLoginUser().getUser();
+        return R.ok(mwCheckoutRecordService.totalUp(date,sysUser.getDepartmentId()));
+    }
+    @ApiOperation(value = "出库统计下")
+    @PostMapping("/record")
+    public R<List<CheckOutDto>> record() {
+        SysUser sysUser = SecurityUtils.getLoginUser().getUser();
+        LocalDate now = LocalDate.now();
+        List<MwCheckoutRecord> list = mwCheckoutRecordService.lambdaQuery().eq(MwCheckoutRecord::getCheckoutTime, now).eq(MwCheckoutRecord::getDepartmentId, sysUser.getDepartmentId()).orderByDesc(MwCheckoutRecord::getCheckoutTime).list();
+        List<CheckOutDto> backList = new ArrayList<>();
+        for (MwCheckoutRecord mwCheckoutRecord : list) {
+            CheckOutDto checkOutDto = new CheckOutDto();
+            SysUser byId = userService.getById(mwCheckoutRecord.getDriverId());
+            checkOutDto.setDriverName(byId.getNickName());
+            MwTransitCar byId1 = carService.getById(mwCheckoutRecord.getCarId());
+            checkOutDto.setLicensePlateNumber(byId1.getLicensePlateNumber());
+            checkOutDto.setCheckoutTime(mwCheckoutRecord.getCheckoutTime());
+            List<CollectTotalUpDto> records =  mwCheckoutRecordService.totalUp1(mwCheckoutRecord.getId());
+            checkOutDto.setRecords(records);
+            backList.add(checkOutDto);
+        }
+        return R.ok(backList);
+    }
+
+
+}
diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwWarningRecordController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwWarningRecordController.java
new file mode 100644
index 0000000..312aebf
--- /dev/null
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwWarningRecordController.java
@@ -0,0 +1,39 @@
+package com.sinata.web.controller.applet;
+
+import com.sinata.common.core.domain.R;
+import com.sinata.system.domain.dto.CollectTotalUpDto;
+import com.sinata.system.service.MwWarningRecordService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDate;
+import java.util.List;
+
+/**
+ * <p>
+ * 预警记录表 前端控制器
+ * </p>
+ *
+ * @author mitao
+ * @since 2024-12-02
+ */
+@RestController
+@RequestMapping("/applet/mwWarningRecord")
+@Api(tags = {"医院工作人员-预警"})
+@AllArgsConstructor
+public class AppMwWarningRecordController {
+    private  final MwWarningRecordService mwWarningRecordService;
+
+    @ApiOperation("记录")
+    @PostMapping("/record")
+    public R<List<CollectTotalUpDto>> record(@RequestParam Integer pageNum,@RequestParam Integer pageSize) {
+
+
+    }
+
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CheckOutDto.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CheckOutDto.java
new file mode 100644
index 0000000..dd28c65
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CheckOutDto.java
@@ -0,0 +1,21 @@
+package com.sinata.system.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.sinata.system.domain.MwCheckoutRecord;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class CheckOutDto {
+
+    @ApiModelProperty("运输人员姓名")
+    private String driverName;
+    @ApiModelProperty("出库时间")
+    private Date checkoutTime;
+    @ApiModelProperty("车牌号")
+    private String licensePlateNumber;
+    private List<CollectTotalUpDto> records;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectTotalDto.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectTotalDto.java
index 925e9f1..466aec9 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectTotalDto.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectTotalDto.java
@@ -7,6 +7,7 @@
 import java.time.LocalDateTime;
 @Data
 public class CollectTotalDto {
+
     @ApiModelProperty("箱")
     private Integer boxNum = 0;
     @ApiModelProperty("袋")
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
index f4c8c7e..8c3b7a4 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.sinata.system.domain.MwCheckoutRecord;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sinata.system.domain.dto.CollectTotalUpDto;
 import com.sinata.system.domain.query.CheckoutRecordQuery;
 import com.sinata.system.domain.query.MwTransitRecordQuery;
 import com.sinata.system.domain.vo.MwCheckoutRecordVO;
@@ -11,6 +12,7 @@
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.time.LocalDate;
 import java.util.List;
 
 /**
@@ -84,4 +86,7 @@
      * @param treeCode
      */
     List<MwCheckoutRecordVO> hospitalTransitList(@Param("query") CheckoutRecordQuery query, @Param("treeCode") String treeCode);
+
+    List<CollectTotalUpDto> totalUp(@Param("date") LocalDate date, @Param("departmentId")Long departmentId);
+    List<CollectTotalUpDto> totalUp1(@Param("outId")Long outId);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
index a504e7c..06f8cf2 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.sinata.common.entity.PageDTO;
 import com.sinata.system.domain.MwCheckoutRecord;
+import com.sinata.system.domain.dto.CollectTotalUpDto;
 import com.sinata.system.domain.query.CheckoutRecordQuery;
 import com.sinata.system.domain.query.MwCheckoutRecordItemQuery;
 import com.sinata.system.domain.query.MwTransitRecordQuery;
@@ -12,6 +13,8 @@
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.time.LocalDate;
+import java.util.List;
 
 /**
  * <p>
@@ -77,4 +80,7 @@
      * @param response
      */
     void checkoutRecordExport(CheckoutRecordQuery query, HttpServletResponse response) throws IOException;
+
+    List<CollectTotalUpDto> totalUp(LocalDate date, Long departmentId);
+    List<CollectTotalUpDto> totalUp1(Long outId);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
index 8ea4805..ba11eae 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
@@ -7,6 +7,7 @@
 import com.sinata.common.utils.BeanUtils;
 import com.sinata.common.utils.StringUtils;
 import com.sinata.system.domain.MwCheckoutRecord;
+import com.sinata.system.domain.dto.CollectTotalUpDto;
 import com.sinata.system.domain.query.CheckoutRecordQuery;
 import com.sinata.system.domain.query.MwCheckoutRecordItemQuery;
 import com.sinata.system.domain.query.MwTransitRecordQuery;
@@ -23,6 +24,8 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.net.URLEncoder;
+import java.time.LocalDate;
+import java.util.Collections;
 import java.util.List;
 
 /**
@@ -77,6 +80,15 @@
         EasyExcel.write(response.getOutputStream(), MwCheckoutRecordExcelVO.class).sheet("转运记录").doWrite(mwCheckoutRecordExcelVOS);
     }
 
+    @Override
+    public List<CollectTotalUpDto> totalUp(LocalDate date, Long departmentId) {
+        return this.baseMapper.totalUp(date,departmentId);
+    }
+    @Override
+    public List<CollectTotalUpDto> totalUp1( Long outId) {
+        return this.baseMapper.totalUp1(outId);
+    }
+
     /**
      * 转运记录详情
      *
diff --git a/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml b/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
index 9ba6ca1..04d0475 100644
--- a/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
+++ b/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
@@ -209,5 +209,19 @@
         </where>
         GROUP BY mcr.DEPARTMENT_ID
     </select>
+    <select id="totalUp" resultType="com.sinata.system.domain.dto.CollectTotalUpDto">
+        SELECT WASTE_TYPE as wasteType,COUNT(DISTINCT BOX_NUMBER ) as boxNum ,COUNT(1)as num,sum(WEIGHT) as weight from MEDICAL_WASTE.MW_COLLECT_RECORD
+        <where>
+            CHECKOUT_TIME is not null AND DEPARTMENT_ID = #{departmentId}
+        </where>
+        GROUP BY WASTE_TYPE
+    </select>
+    <select id="totalUp1" resultType="com.sinata.system.domain.dto.CollectTotalUpDto">
+        SELECT t2.WASTE_TYPE as wasteType,COUNT(DISTINCT t2.BOX_NUMBER ) as boxNum ,COUNT(t2.ID)as num,sum(t2.WEIGHT) as weight
+        from MEDICAL_WASTE.MW_CHECKOUT_RECORD_ITEM t1
+        left join MEDICAL_WASTE.MW_COLLECT_RECORD  t2 on t1.COLLECT_RECORD_ID = t2.ID
+        where  t2.CHECKOUT_RECORD_ID = #{outId}
+        GROUP BY t2.WASTE_TYPE
+    </select>
 
 </mapper>

--
Gitblit v1.7.1