/*
|
* Copyright (c) 2018-2025, ztt All rights reserved.
|
*
|
* Redistribution and use in source and binary forms, with or without
|
* modification, are permitted provided that the following conditions are met:
|
*
|
* Redistributions of source code must retain the above copyright notice,
|
* this list of conditions and the following disclaimer.
|
* Redistributions in binary form must reproduce the above copyright
|
* notice, this list of conditions and the following disclaimer in the
|
* documentation and/or other materials provided with the distribution.
|
* Neither the name of the pig4cloud.com developer nor the names of its
|
* contributors may be used to endorse or promote products derived from
|
* this software without specific prior written permission.
|
* Author: ztt
|
*/
|
|
package com.chinaztt.mes.production.service;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.chinaztt.mes.basic.entity.Workstation;
|
import com.chinaztt.mes.production.dto.DutyRecordDTO;
|
import com.chinaztt.mes.production.dto.PersonBoardDTO;
|
import com.chinaztt.mes.production.dto.ProductOutputDTO;
|
import com.chinaztt.mes.production.entity.DutyRecord;
|
import com.chinaztt.mes.production.excel.*;
|
|
import java.util.List;
|
|
/**
|
* 上班记录
|
*
|
* @author cxf
|
* @date 2021-01-20 09:11:25
|
*/
|
public interface DutyRecordService extends IService<DutyRecord> {
|
|
/**
|
* 分页查询
|
*
|
* @param page
|
* @param gen
|
* @return
|
*/
|
IPage getDutyRecordPage(Page page, QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 新增保存
|
*
|
* @param dutyRecordDTO
|
* @return
|
*/
|
DutyRecordDTO saveDto(DutyRecordDTO dutyRecordDTO);
|
|
/**
|
* 通过上班记录id查询人员List
|
*
|
* @param id
|
* @return
|
*/
|
List<PersonBoardDTO> getPersonByDutyRecordId(Long id);
|
|
/**
|
* 通过上班记录idList查询人员List
|
*
|
* @param idList
|
* @return
|
*/
|
List<PersonBoardDTO> getPersonByDutyRecordIdList(List<Long> idList);
|
|
/**
|
* 通过上班记录id查询产量
|
*
|
* @param id
|
* @return
|
*/
|
List<ProductOutputDTO> getOutputByDutyRecordId(Long id);
|
|
/**
|
* 通过上班记录idList查询产量
|
*
|
* @param idList
|
* @return
|
*/
|
List<ProductOutputDTO> getOutputByDutyRecordIdList(List<Long> idList);
|
|
/**
|
* 通过id查询上班记录
|
*
|
* @param id
|
* @return
|
*/
|
DutyRecordDTO getDtoById(Long id);
|
|
/**
|
* 删除上班记录
|
*
|
* @param id
|
* @return
|
*/
|
boolean deleteById(Long id);
|
|
/**
|
* 导出
|
*
|
* @param gen
|
* @return
|
*/
|
List<DutyRecordData> exportList(QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 导出
|
*
|
* @param gen
|
* @return
|
*/
|
List<PersonBoardData> exportPersonBoard(QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 通过工作站id查询班次
|
*
|
* @param id
|
* @return
|
*/
|
DutyRecordDTO getDutyRecordByWorkstationId(Long id);
|
|
/**
|
* 通过id查询操作记录
|
*
|
* @param id
|
* @return
|
*/
|
List<DutyRecordDTO> getOperatingRecord(Long id);
|
|
/**
|
* 分页查询人工记录
|
*
|
* @param page
|
* @param gen
|
* @return
|
*/
|
IPage getArtificialRecord(Page page, QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 导出
|
*
|
* @param gen
|
* @return
|
*/
|
List<AttendanceData> exportAttendance(QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 更新待处理字段
|
*
|
* @param dutyRecordId
|
*/
|
void refreshPendingById(Long dutyRecordId);
|
|
/**
|
* 批量新增
|
* @param dutyRecordDTO
|
* @return
|
*/
|
List<DutyRecordDTO> batchSave(DutyRecordDTO dutyRecordDTO);
|
|
/**
|
* 导出班次工资
|
*
|
* @param gen
|
* @return
|
*/
|
List<ShiftWageData> exportShiftWage(QueryWrapper<DutyRecordDTO> gen);
|
|
/**
|
* 根据班次id查询人员产量工资
|
* @param dutyRecordId
|
* @return
|
*/
|
List<ProductOutputDTO> getStaffProductionWage(Long dutyRecordId);
|
|
/**
|
* 展示该工作站对应的所有的机台
|
* @param workCenter
|
* @return
|
*/
|
List<Workstation> getWorkstationList(String workCenter);
|
|
/**
|
* 展示该工作中心对应的未提交班次信息
|
* @param workCenter
|
* @return
|
*/
|
List<DutyRecordDTO> getUnsubmitWorkstationList(String workCenter);
|
|
/**
|
* 班次批量提交
|
* @param ids
|
* @return
|
*/
|
boolean batchSubmit(List<Long> ids);
|
|
/**
|
* 工作台班次未提交提醒
|
* @return
|
*/
|
boolean sendUnsubmitMsg();
|
|
/**
|
* 班次批量更新
|
* @return
|
*/
|
boolean updateBatch(List<DutyRecordDTO> dutyRecordDTOList);
|
}
|