李林
2023-10-07 658d4927d468c47208fd012d9128b09249c07eff
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
/*
 *    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.warehouse.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.warehouse.dto.PackageReportDTO;
import com.chinaztt.mes.warehouse.dto.PackagingDTO;
import com.chinaztt.mes.warehouse.entity.Packaging;
import com.chinaztt.ztt.common.core.util.R;
 
import java.util.List;
 
/**
 * 包装主表
 *
 * @author sunxl
 * @date 2021-06-03 13:56:52
 */
public interface PackagingService extends IService<Packaging> {
    /**
     * 包装保存
     *
     * @param packagingDTO
     * @return
     */
    Packaging fullSave(PackagingDTO packagingDTO);
 
    /**
     * 添加包装的明细
     *
     * @param packagingDTO
     * @return
     */
    Packaging addPackagingStock(PackagingDTO packagingDTO);
 
    /**
     * 删除包装和包装明细
     *
     * @param id
     * @return
     */
    Boolean removePackagingById(Long id);
 
    /**
     * 分页查询包装
     *
     * @param page
     * @param gen
     * @return
     */
    IPage<PackagingDTO> getPackagingPage(Page page, QueryWrapper<PackagingDTO> gen);
 
    /**
     * 根据id查询包装
     *
     * @param id
     * @return
     */
    PackagingDTO getPackingById(Long id);
 
    /**
     * 包装修改
     *
     * @param packagingDTO
     * @return
     */
    boolean fullUpdate(PackagingDTO packagingDTO);
 
    /**
     * 创建分割包装任务
     *
     * @param packagingDTOList
     * @return
     * @throws Exception
     */
    boolean batchSave(List<PackagingDTO> packagingDTOList);
 
    /**
     * 提交分割任务
     *
     * @param id
     * @return
     */
    boolean submit(Long id);
 
    /**
     * 跳线包装称重防呆
     * @param packaging
     * @return
     */
    R weighVerifyCheck(PackagingDTO packaging);
 
    /**
     * 称重更新包装的重量
     * 移植跳线
     * @param packaging
     * @return
     */
    R getWeight(PackagingDTO packaging);
 
    /**
     * 每日的统计
     * 移植跳线
     * @param packageReportDTO
     * @return
     */
    IPage<PackageReportDTO> getEveryDayReport(Page page, PackageReportDTO packageReportDTO);
 
    /**
     * 根据报表code获取积木报表url
     * @param reportCode
     * @return
     */
    R getPackJmreportUrl(String reportCode);
 
    /**
     * 根据包装主表记录行id修改包装主表状态为:已确认
     * @param id 包装主表记录行id
     * @return
     */
    R packConfirm(Long id);
 
    /**
     * 根据包装主表记录行id修改包装主表状态为:未确认
     * @param id
     * @return
     */
    R packCancelConfirm(Long id);
 
    /**
     * 获取成品包装表头所需基础信息list
     * @return
     */
    R getPackHeadBasicInfoList();
 
    /**
     * 根据箱码得到包装sn号和包装明细数量
     * @param packagingNo
     * @return
     */
    R getPackagingAndSizeByPackagingNo(String packagingNo);
 
}