yangys
2024-11-15 d66fe6d46cdbaeb88e68ad96da6deb0b35cd131b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.qianwen.smartman.modules.smis.service;
 
import com.baomidou.mybatisplus.extension.service.IService;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.qianwen.smartman.modules.smis.dto.CacheBuildDTO;
import com.qianwen.smartman.modules.smis.dto.CalendarCacheDTO;
import com.qianwen.smartman.modules.smis.dto.CalendarShiftDTO;
import com.qianwen.smartman.modules.smis.dto.CalendarShiftDetailDTO;
import com.qianwen.smartman.modules.smis.dto.CalendarShiftTimeSlicesDTO;
import com.qianwen.smartman.modules.smis.dto.CurShiftDTO;
import com.qianwen.smartman.modules.smis.dto.FactoryDayInfoDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftIndexInfoDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftInfoDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftSlicesCalendarCodeDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftSlicesClientCalendarCodesDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftSlicesClientDTO;
import com.qianwen.smartman.modules.smis.dto.ShiftSlicesDTO;
import com.qianwen.smartman.modules.smis.dto.TimestampToProductionTimeCacheDto;
import com.qianwen.smartman.modules.smis.entity.ProductionCalendar;
import com.qianwen.smartman.modules.smis.vo.CalendarAssociateWorkstationVO;
import com.qianwen.smartman.modules.smis.vo.CalendarCopyVO;
import com.qianwen.smartman.modules.smis.vo.CalendarSaveVO;
import com.qianwen.smartman.modules.smis.vo.CalendarSimpleVO;
import com.qianwen.smartman.modules.smis.vo.CalendarUpdateVO;
import com.qianwen.smartman.modules.smis.vo.CalendarVO;
import com.qianwen.smartman.modules.smis.vo.ShiftIndexNameVO;
import com.qianwen.smartman.modules.smis.vo.ShiftTimeDetailVO;
import com.qianwen.smartman.modules.mdc.dto.ShiftIndexNameDTO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
 
public interface ICalendarService extends IService<ProductionCalendar> {
    ProductionCalendar saveCalendar(CalendarSaveVO calendarSaveVO);
 
    CalendarVO getCalendar(Long valueOf);
 
    /**
     * 修改生产日历数据
     * @param calendarUpdateVO
     * @return
     */
    ProductionCalendar updateCalendar(CalendarUpdateVO calendarUpdateVO);
 
    ProductionCalendar copyCalendar(CalendarCopyVO calendarCopyVO);
 
    ProductionCalendar saveYearCalendar(CalendarSaveVO calendarSaveVO);
 
    /**
     * 构建生产日历切片缓存对象
     * @param cacheBuildDTO
     * @return
     */
    List<TimestampToProductionTimeCacheDto> buildProductionTimeCache(CacheBuildDTO cacheBuildDTO);
 
    List<CalendarSimpleVO> getCalendarList(@RequestParam("tenantId") String tenantId);
 
    List<CalendarShiftDetailDTO> getDaytimeList(@RequestParam("tenantId") String tenantId, @RequestParam("calendarCode") String calendarCode, @RequestParam("year") Integer year);
 
    List<CalendarCacheDTO> buildCalendarShift(@RequestBody CacheBuildDTO cacheBuildDTO);
 
    List<CurShiftDTO> getCurShift(@RequestParam("tenantId") String tenantId, @RequestParam("calendarCodeList") List<String> calendarCodeList);
 
    Map<String, FactoryDayInfoDTO> getFactoryDayInfo(@RequestParam("date") LocalDateTime date, @RequestParam("tenantId") String tenantId, @RequestParam("calendarCodeList") List<String> calendarCodeList);
 
    ShiftSlicesDTO getShiftSlices(@RequestBody ShiftSlicesClientDTO shiftSlicesClientDTO);
 
    List<ShiftSlicesCalendarCodeDTO> getShiftSlicesList(@RequestBody ShiftSlicesClientCalendarCodesDTO shiftSlicesClientCalendarCodesDTO);
 
    Long getShiftTimeWithoutRest(@RequestParam String calendarCode);
 
    ShiftIndexNameVO getShiftIndexName();
 
    String getShiftIndexNameByCodeAndYear(String calendarCode, CalendarShiftTimeSlicesDTO calendarShiftTimeSlicesDTO);
 
    String expireCalendarInfo();
 
    Boolean deleteCalendar(Long id);
 
    Long getShiftModelByFactoryDay(String calendarCode, LocalDate factoryDay);
 
    List<ShiftTimeDetailVO> getShiftDetailDates(String calendarCode, List<LocalDate> dates);
 
    List<CalendarShiftDTO> getTimeShiftAll(String calendarCode, Date startTime, Date endTime);
 
    List<ShiftIndexInfoDTO> getWorkstationShiftIndexListByDate(Long workstationId, LocalDate localDate);
 
    Boolean associateWorkstation(CalendarAssociateWorkstationVO calendarAssociateWorkstationVO);
 
    List<ShiftIndexNameDTO> queryShiftIndexName(String calendarCode, Integer year, String day);
 
    List<ShiftInfoDTO> listShiftInfo(List<Long> workstationIdList, LocalDate startDay, LocalDate endDay);
}