luodangjia
2024-12-28 07af48ff180060f0ed20129563890ed854cbdc74
merge
7个文件已修改
95 ■■■■ 已修改文件
medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCollectRecordController.java 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/java/com/sinata/system/domain/MwCollectRecord.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectDto.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCollectRecordMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/java/com/sinata/system/service/MwCollectRecordService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCollectRecordServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-system/src/main/resources/mapper/system/MwCollectRecordMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppMwCollectRecordController.java
@@ -48,6 +48,8 @@
    private final MwCheckoutRecordService checkoutRecordService;
    private final MwCheckoutRecordItemService checkoutRecordItemService;
    private final SysDepartmentService departmentService;
    private final MwDisposalRecordService disposalRecordService;
    private final MwDisposalRecordItemService disposalRecordItemService;
    @ApiOperation("新增医废记录")
@@ -171,7 +173,7 @@
    @ApiOperation(value = "确认接受",tags = "处置人员")
    @PostMapping("/end/down/collect/confirm")
    public R<List<HospitalCollectTotalUpDto>> tanscollecttotal4(String boxNum) {
    public R tanscollecttotal4(String boxNum) {
        SysUser  sysUser = SecurityUtils.getLoginUser().getUser();
        SysDepartment byId = departmentService.getById(sysUser.getDepartmentId());
        //将record变为已接受
@@ -183,7 +185,8 @@
            boxes.add(mwCollectRecord.getBoxNumber());
            receiveQuantity = receiveQuantity.add(mwCollectRecord.getWeight());
        }
        //插入处置记录以及子表
        collectRecordService.updateBatchById(list);
        //插入接收记录以及子表
        MwDisposalRecord mwDisposalRecord = new MwDisposalRecord();
        mwDisposalRecord.setDepartmentId(sysUser.getDepartmentId());
        mwDisposalRecord.setDisposalUnitName(byId.getDepartmentName());
@@ -193,16 +196,50 @@
        mwDisposalRecord.setReceiverId(sysUser.getUserId());
        mwDisposalRecord.setUnloadQuantity(boxes.size());
        mwDisposalRecord.setUnloadWeight(receiveQuantity);
        mwDisposalRecord.setTotalHandledQuantity(0);
        mwDisposalRecord.setTotalHandledQuantity(list.size());
        mwDisposalRecord.setDisposalFlag(0);
        mwDisposalRecord.setTotalHandledWeight(new BigDecimal("0"));
        return null;
        mwDisposalRecord.setTotalHandledWeight(receiveQuantity);
        disposalRecordService.save(mwDisposalRecord);
        //插入子表
        List<MwDisposalRecordItem> items = new ArrayList<>();
        for (MwCollectRecord mwCollectRecord : list) {
            MwDisposalRecordItem mwDisposalRecordItem = new MwDisposalRecordItem();
            mwDisposalRecordItem.setCollectRecordId(mwCollectRecord.getId());
            mwDisposalRecordItem.setDisposalRecordId(mwDisposalRecord.getId());
            items.add(mwDisposalRecordItem);
        }
        disposalRecordItemService.saveBatch(items);
        return R.ok();
    }
    @ApiOperation(value = "待处置列表",tags = "处置人员")
    @PostMapping("/wait/list")
    public R<List<CollectDto>> list1(String boxNumber) {
        SysUser  sysUser = SecurityUtils.getLoginUser().getUser();
        List<CollectDto> collectDtos =  collectRecordService.getGroupWithStatus(boxNumber,sysUser.getDepartmentId(),3);
        return R.ok(collectDtos);
    }
    @ApiOperation(value = "处置操作",tags = "处置人员")
    @PostMapping("/wait/out")
    public R<List<CollectDto>> list2(String boxNumber) {
        SysUser  sysUser = SecurityUtils.getLoginUser().getUser();
        SysDepartment byId = departmentService.getById(sysUser.getDepartmentId());
        //新增处置记录
        MwDisposalHandleRecord mwDisposalHandleRecord  = new MwDisposalHandleRecord();
        mwDisposalHandleRecord.setDepartmentId(byId.getId());
        mwDisposalHandleRecord.setDisposalUnitName(byId.getDepartmentName());
        mwDisposalHandleRecord.setDisposalTime(new Date());
        mwDisposalHandleRecord.setDisposalUserId(sysUser.getUserId());
        //将收集记录以及子表改变为已处置
        //将接收记录以及子表变为已处置
        return R.ok();
    }
    @ApiOperation(value = "已装车列表",tags = "运输人员")
medicalWaste-system/src/main/java/com/sinata/system/domain/MwCollectRecord.java
@@ -93,6 +93,11 @@
    @TableField("COLLECT_TIME")
    private Date collectTime;
    @ApiModelProperty("接收时间")
    @TableField("RECEIVE_TIME")
    private Date receiveTime;
    @ApiModelProperty("处置记录id")
    @TableField("DISPOSAL_HANDLE_RECORD_ID")
    private Long disposalHandleRecordId;
medicalWaste-system/src/main/java/com/sinata/system/domain/dto/CollectDto.java
@@ -1,11 +1,14 @@
package com.sinata.system.domain.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;
@Data
public class CollectDto {
    @ApiModelProperty("箱子编号")
@@ -17,6 +20,10 @@
    @ApiModelProperty("总重量")
    private BigDecimal weight;
    @ApiModelProperty("封箱时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime lastTime;
    @ApiModelProperty("接收时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date receiveTime;
}
medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCollectRecordMapper.java
@@ -60,6 +60,8 @@
    List<CollectDto> getGroup(@Param("boxNumber")String boxNumber,@Param("departmentId")Long departmentId);
    List<CollectDto> getGroup1(@Param("boxNumber")String boxNumber,@Param("departmentId")Long departmentId);
    List<CollectDto> getGroupWithStatus(@Param("boxNumber")String boxNumber, @Param("departmentId")Long departmentId, @Param("status")Integer status);
    List<CollectTotalUpDto> collectTotal(@Param("date")LocalDate date,@Param("departmentId")Long departmentId);
    List<CollectTotalUpDto> collectTotal1(@Param("date")LocalDate date,@Param("checkOutUserId")Long checkOutUserId,@Param("id") Long id);
@@ -74,4 +76,5 @@
     * @return
     */
    List<MwCollectRecordVO> getRegulationReportList(@Param("query") DisposalReportQuery query, @Param("treeCode") String treeCode);
}
medicalWaste-system/src/main/java/com/sinata/system/service/MwCollectRecordService.java
@@ -50,6 +50,7 @@
     */
    void edit(MwCollectRecordDTO dto);
    List<CollectDto> getGroup(String boxNumber,Long departmentId);
    List<CollectDto> getGroupWithStatus(String boxNumber,Long departmentId,Integer status);
    List<CollectDto> getGroup1(String boxNumber,Long departmentId);
    /**
medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCollectRecordServiceImpl.java
@@ -85,7 +85,13 @@
    @Override
    public List<CollectDto> getGroup(String boxNumber,Long departmentId) {
        return this.baseMapper.getGroup(boxNumber,departmentId);
    }   @Override
    }
    @Override
    public List<CollectDto> getGroupWithStatus(String boxNumber,Long departmentId,Integer status) {
        return this.baseMapper.getGroupWithStatus(boxNumber,departmentId,status);
    }
    @Override
    public List<CollectDto> getGroup1(String boxNumber,Long departmentId) {
        return this.baseMapper.getGroup1(boxNumber,departmentId);
    }
medicalWaste-system/src/main/resources/mapper/system/MwCollectRecordMapper.xml
@@ -230,6 +230,22 @@
        GROUP BY BOX_ID
    </select>
    <select id="getGroupWithStatus" resultType="com.sinata.system.domain.dto.CollectDto">
        SELECT BOX_NUMBER as boxNumber,
               WASTE_TYPE as wasteType,COUNT(1) as num ,
               sum(WEIGHT) as weight,
               BOX_TIME as lastTime ,
        RECEIVE_TIME as receiveTime
        from MEDICAL_WASTE.MW_COLLECT_RECORD
        <where>
            STATUS = #{status} AND DEPARTMENT_ID = #{departmentId}
            <if test="boxNumber != null and boxNumber != ''">
                and boxNumber like concat('%',#{boxNumber},'%')
            </if>
        </where>
        GROUP BY BOX_ID
    </select>
    <select id="collectTotal" 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>