荣鑫后端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

557 lines
16 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. package com.gaotao.modules.schedule.service;
  2. import com.gaotao.modules.schedule.data.*;
  3. import com.gaotao.modules.shopOrder.entity.OperatorData;
  4. import org.springframework.web.bind.annotation.RequestBody;
  5. import java.text.ParseException;
  6. import java.util.List;
  7. import java.util.Map;
  8. /**
  9. * @author LR
  10. * @Title: ScheduleService
  11. * 生产订单排产
  12. * @Date 2021/10/21 11:26
  13. */
  14. public interface ScheduleService {
  15. /**
  16. * TODO 查询工厂+排产日期下的休息信息
  17. * @author LR
  18. * @date 2021/10/21 13:08
  19. * @param inData
  20. * @return java.util.List<com.gaotao.modules.schedule.data.ShiftInfoData>
  21. **/
  22. List<ShiftInfoData> getResourceRestList(SearchScheduleData inData);
  23. /**
  24. * TODO 按照条件查询工单的数据
  25. * @author LR
  26. * @date 2021/10/25 14:23
  27. * @param inData
  28. * @return java.util.List<com.gaotao.modules.schedule.data.ShopOrderData>
  29. **/
  30. List<ShopOrderOutData> getShopOrderList(SearchScheduleData inData);
  31. /**
  32. * TODO 查询派工单的数据
  33. * @author LR
  34. * @date 2021/10/25 16:08
  35. * @param inData
  36. * @return java.util.List<com.gaotao.modules.schedule.data.ScheduleData>
  37. **/
  38. List<ScheduleData> getOrderScheduleList(SearchScheduleData inData);
  39. /**
  40. * TODO 查询-待生产工单
  41. * @author LR
  42. * @date 2021/10/28 16:50
  43. * @param inData
  44. * @return java.util.List<com.gaotao.modules.schedule.data.ScheduleData>
  45. **/
  46. List<ScheduleData> getProduceScheduleData(SearchScheduleData inData);
  47. /**
  48. * TODO 获取操作员的列表信息
  49. * @author LR
  50. * @date 2021/11/4 11:41
  51. * @param inData
  52. * @return java.util.List<com.gaotao.modules.shopOrder.entity.OperatorData>
  53. **/
  54. List<OperatorData> getOperatorList(OperatorData inData);
  55. /**
  56. * TODO 获取操作员的信息
  57. * @author LR
  58. * @date 2021/11/4 11:42
  59. * @param inData
  60. * @return com.gaotao.modules.shopOrder.entity.OperatorData
  61. **/
  62. OperatorOutData getOperatorData(OperatorOutData inData);
  63. /**
  64. * TODO 按照派工单号查询派工单的数据
  65. * @author LR
  66. * @date 2021/11/8 14:24
  67. * @param seqNo
  68. * @return com.gaotao.modules.schedule.data.ScheduleData
  69. **/
  70. ScheduleData getScheduleDataBySeqNo(String seqNo);
  71. /**
  72. * TODO 获取当前的上机卷信息
  73. * @author LR
  74. * @date 2021/11/9 16:03
  75. * @param inData
  76. * @return com.gaotao.modules.schedule.data.SfdcRollOpsData
  77. **/
  78. SfdcRollOpsData getCurrentRollOpsBySeqNo(BaseRollData inData);
  79. /**
  80. * TODO 查询派工单的时间记录
  81. * @author LR
  82. * @date 2021/11/10 17:59
  83. * @param inData
  84. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcTimeData>
  85. **/
  86. List<SfdcTimeData> getSfdcTimeByCon(SearchScheduleData inData);
  87. /**
  88. * TODO 查询工单的工具信息
  89. * @author LR
  90. * @date 2021/11/11 14:17
  91. * @param inData
  92. * @return java.util.List<com.gaotao.modules.schedule.data.ToolInstanceData>
  93. **/
  94. List<ToolInstanceData> getOrderToolByCon(SearchScheduleData inData);
  95. /**
  96. * TODO 查询派工单工具的数据
  97. * @author LR
  98. * @date 2021/11/10 18:00
  99. * @param inData
  100. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcToolData>
  101. **/
  102. List<SfdcToolData> getSfdcToolByCon(SearchScheduleData inData);
  103. /**
  104. * TODO 获取工单的BOM信息
  105. * @author LR
  106. * @date 2021/11/11 17:20
  107. * @param inData
  108. * @return java.util.List<com.gaotao.modules.schedule.data.OrderBomData>
  109. **/
  110. List<OrderBomData> getOrderBomByCon(SearchScheduleData inData);
  111. /**
  112. * TODO 查询派工单材料上机的数据
  113. * @author LR
  114. * @date 2021/11/10 18:01
  115. * @param inData
  116. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcMaterialData>
  117. **/
  118. List<SfdcMaterialData> getSfdcMaterialByCon(SearchScheduleData inData);
  119. /**
  120. * TODO 查询上机卷的记录数据
  121. * @author LR
  122. * @date 2021/11/9 16:25
  123. * @param inData
  124. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcRollOpsData>
  125. **/
  126. List<SfdcRollOpsData> getSfdcRollOpsByCon(SearchScheduleData inData);
  127. /**
  128. * TODO 查询派工单的不良卷信息
  129. * @author LR
  130. * @date 2021/11/10 18:01
  131. * @param inData
  132. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcDefectData>
  133. **/
  134. List<SfdcDefectData> getSfdcDefectByCon(SearchScheduleData inData);
  135. /**
  136. * TODO 查询派工单的下机卷数据
  137. * @author LR
  138. * @date 2021/11/10 18:03
  139. * @param inData
  140. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcRollData>
  141. **/
  142. List<SfdcRollData> getSfdcRollByCon(SearchScheduleData inData);
  143. /**
  144. * TODO 获取卷的报工数据
  145. * @author LR
  146. * @date 2021/11/25 18:03
  147. * @param inData
  148. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcData>
  149. **/
  150. List<SfdcData> getSfdcDataByCon(SearchScheduleData inData);
  151. /**
  152. * TODO 查询sfdc_rolls表中的汇总报工数据
  153. * @author LR
  154. * @date 2021/11/26 16:13
  155. * @param inData
  156. * @return java.lang.Float
  157. **/
  158. Float getSfdcRollReportedQty(SearchScheduleData inData);
  159. /**
  160. * TODO 查询当前是否存在报工的数据
  161. * @author LR
  162. * @date 2021/11/26 16:15
  163. * @param inData
  164. * @return java.lang.Integer
  165. **/
  166. Integer countSfdcRollByRollNo(SearchScheduleData inData);
  167. /**
  168. * TODO 查询报告的不良数据
  169. * @author LR
  170. * @date 2021/11/26 16:18
  171. * @param inData
  172. * @return java.lang.Float
  173. **/
  174. Float getSfdcDefectDefectedQty(SearchScheduleData inData);
  175. /**
  176. * TODO 查询sfdc_time的时间汇总数据
  177. * @author LR
  178. * @date 2021/11/26 16:20
  179. * @param inData
  180. * @return java.util.Map<java.lang.String, java.lang.Object>
  181. **/
  182. Map<String, Object> countSfdcTimeQty(SearchScheduleData inData);
  183. /**
  184. * TODO 查询sfdc_time的最大和最小以及一些汇总数据
  185. * @author LR
  186. * @date 2021/11/26 16:22
  187. * @param inData
  188. * @return java.util.Map<java.lang.String, java.lang.Object>
  189. **/
  190. Map<String, Object> getSfdcTimeMaxAndMinTime(SearchScheduleData inData);
  191. /**
  192. * TODO 获取上机卷的报工数据
  193. * @author LR
  194. * @date 2021/11/29 17:12
  195. * @param inData
  196. * @return java.util.Map<java.lang.String, java.lang.Object>
  197. **/
  198. Map<String, Object> getSfdcRollOpsReportedQty(SearchScheduleData inData);
  199. /**
  200. * TODO 获取当前的报工汇总信息
  201. * @author LR
  202. * @date 2021/11/30 13:32
  203. * @param inData
  204. * @return java.util.Map<java.lang.String, java.lang.Object>
  205. **/
  206. Map<String, Object> getCurrentRollReportedQty(SearchScheduleData inData);
  207. /**
  208. * TODO 获取派工单的班次信息
  209. * @author LR
  210. * @date 2021/12/1 10:11
  211. * @param inData
  212. * @return java.util.Map<java.lang.String, java.lang.Object>
  213. **/
  214. Map<String, Object> getScheduleShiftData(SearchScheduleData inData) throws ParseException;
  215. /**
  216. * TODO 获取sfdc表的时间汇总
  217. * @author LR
  218. * @date 2021/12/1 15:30
  219. * @param inData
  220. * @return java.util.Map<java.lang.String, java.lang.Object>
  221. **/
  222. Map<String, Object> getSfdcTimeData(SearchScheduleData inData);
  223. /**
  224. * TODO 获取sfdc的报工数据以及时间的数据
  225. * @author LR
  226. * @date 2021/12/7 9:19
  227. * @param inData
  228. * @return com.gaotao.modules.schedule.data.SfdcData
  229. **/
  230. SfdcData getSfdcReportedData(SearchScheduleData inData);
  231. /**
  232. * TODO 查询当前卷的材料上机记录--在线的
  233. * @author LR
  234. * @date 2021/12/7 10:22
  235. * @param inData
  236. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcMaterialData>
  237. **/
  238. List<SfdcMaterialData> getSfdcMaterialByRollNo(SearchScheduleData inData);
  239. /**
  240. * TODO 刷新页面的按钮的控制
  241. * @author LR
  242. * @date 2021/12/10 16:42
  243. * @param inData
  244. * @return java.util.Map<java.lang.String, java.lang.Object>
  245. **/
  246. Map<String, Object> refreshWorkPlatformButtons(SearchScheduleData inData);
  247. /**
  248. * TODO检查工作台的各种按钮
  249. * @author LR
  250. * @date 2021/12/12 10:02
  251. * @param inData
  252. * @return java.util.Map<java.lang.String, java.lang.Object>
  253. **/
  254. Map<String, Object> checkScheduleButton(SearchScheduleData inData);
  255. /**
  256. * TODO 创建新卷的功能
  257. * @author LR
  258. * @date 2021/12/13 9:33
  259. * @param inData
  260. * @return void
  261. **/
  262. void createNewRoll(SearchScheduleData inData);
  263. /**
  264. * TODO 添加注释
  265. * @author LR
  266. * @date 2021/12/27 14:54
  267. * @param inData
  268. * @return void
  269. **/
  270. void startTuning(SearchScheduleData inData);
  271. /**
  272. * TODO 检查停机代码
  273. * @author LR
  274. * @date 2021/12/27 11:42
  275. * @param inData
  276. * @return java.util.Map<java.lang.String, java.lang.Object>
  277. **/
  278. Map<String, Object> checkDownTimeCode(SearchScheduleData inData);
  279. /**
  280. * TODO 报告停机代码
  281. * @author LR
  282. * @date 2021/12/27 17:16
  283. * @param inData
  284. * @return void
  285. **/
  286. void reportDownTime(SearchScheduleData inData);
  287. /**
  288. * TODO 检查不良代码
  289. * @author LR
  290. * @date 2021/12/28 11:31
  291. * @param inData
  292. * @return java.util.Map<java.lang.String, java.lang.Object>
  293. **/
  294. Map<String, Object> checkDefectCode(SearchScheduleData inData);
  295. /**
  296. * TODO 查询派工单的不良记录
  297. * @author LR
  298. * @date 2021/12/28 15:09
  299. * @param inData
  300. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcDefectData>
  301. **/
  302. List<SfdcDefectData> getScheduleDefectHist(SearchScheduleData inData);
  303. /**
  304. * TODO 报告不良代码
  305. * @author LR
  306. * @date 2021/12/28 16:47
  307. * @param inData
  308. * @return void
  309. **/
  310. void reportDefectCode(SearchScheduleData inData);
  311. /**
  312. * TODO 检查工具实例的编码
  313. * @author LR
  314. * @date 2021/12/28 18:33
  315. * @param inData
  316. * @return java.util.Map<java.lang.String, java.lang.Object>
  317. **/
  318. Map<String, Object> checkToolInstanceId(SearchScheduleData inData);
  319. /**
  320. * TODO 添加工具实例
  321. * @author LR
  322. * @date 2021/12/28 18:46
  323. * @param inData
  324. * @return void
  325. **/
  326. void addToolInstanceId(SearchScheduleData inData);
  327. /**
  328. * @Author LR
  329. * @Description 根据工单和物料自动获取bom行数据
  330. * @DateTime 2021/12/20 11:07
  331. * @Param [inData]
  332. * @return java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
  333. **/
  334. List<Map<String, Object>> getBomItemNosByPartNo(SearchScheduleData inData);
  335. /**
  336. * TODO 检查是否可以上当前的材料卷
  337. * @author LR
  338. * @date 2021/12/30 11:49
  339. * @param inData
  340. * @return java.util.Map<java.lang.String, java.lang.Object>
  341. **/
  342. Map<String, Object> checkFeedingMaterialRoll(SearchScheduleData inData);
  343. /**
  344. * @Author LR
  345. * @Description 保存材料上机的记录数据
  346. * @DateTime 2021/12/20 16:35
  347. * @Param [inData]
  348. * @return void
  349. **/
  350. void feedingMaterialRoll(SearchScheduleData inData);
  351. /**
  352. * TODO 检查是否可以开始生产
  353. * @author LR
  354. * @date 2021/12/31 11:23
  355. * @param inData
  356. * @return java.util.Map<java.lang.String, java.lang.Object>
  357. **/
  358. Map<String, Object> checkStartProduce(SearchScheduleData inData);
  359. /**
  360. * TODO 开始生产的业务
  361. * @author LR
  362. * @date 2022/1/6 17:24
  363. * @param inData
  364. * @return void
  365. **/
  366. void startProduce(SearchScheduleData inData);
  367. /**
  368. * TODO 结束调机和开始生产
  369. * @author LR
  370. * @date 2022/1/12 14:02
  371. * @param inMap
  372. * @return void
  373. **/
  374. void endTuningAndStartProduce(Map<String, Object> inMap);
  375. /**
  376. * TODO 工具的使用的数量
  377. * @author LR
  378. * @date 2022/1/18 14:14
  379. * @param inData
  380. * @return java.lang.Float
  381. **/
  382. Float countToolUsedQty(SearchScheduleData inData);
  383. /**
  384. * TODO 刀模切换检查
  385. * @author LR
  386. * @date 2022/1/19 10:32
  387. * @param inData
  388. * @return java.util.Map<java.lang.String, java.lang.Object>
  389. **/
  390. Map<String, Object> checkConnectToolInstanceId(SearchScheduleData inData);
  391. /**
  392. * TODO 换刀操作
  393. * @author LR
  394. * @date 2022/1/19 14:47
  395. * @param inData
  396. * @return void
  397. **/
  398. void connectToolInstanceId(SearchScheduleData inData);
  399. /**
  400. * @Author LR
  401. * @Description 材料切换检查
  402. * @DateTime 2022/1/20 10:36
  403. * @Param [inData]
  404. * @return java.util.Map<java.lang.String,java.lang.Object>
  405. **/
  406. Map<String, Object> checkConnectMaterialRoll(SearchScheduleData inData);
  407. /**
  408. * @Author LR
  409. * @Description 换料操作
  410. * @DateTime 2022/1/20 10:37
  411. * @Param [inData]
  412. * @return void
  413. **/
  414. void connectMaterialRoll(SearchScheduleData inData);
  415. /**
  416. * @Author LR 结束卷校验--非FQC和最后一道
  417. * @Description
  418. * @DateTime 2022/1/25 13:32
  419. * @Param [inMap]
  420. * @return java.util.Map<java.lang.String,java.lang.Object>
  421. **/
  422. Map<String, Object> checkFinishRollWithNoFqc(Map<String, Object> inMap);
  423. /**
  424. * @Author LR
  425. * @Description 结束卷操作--非FQC和最后一道
  426. * @DateTime 2022/1/25 13:33
  427. * @Param [inMap]
  428. * @return void
  429. **/
  430. void finishRollWithNoFqc(Map<String, Object> inMap);
  431. /**
  432. * @Author LR
  433. * @Description 获取关单页面的参数数据
  434. * @DateTime 2022/2/4 12:00
  435. * @Param [inData]
  436. * @return java.util.Map<java.lang.String,java.lang.Object>
  437. **/
  438. Map<String, Object> getFinishSchedulePageData(SearchScheduleData inData);
  439. /**
  440. * @Author LR
  441. * @Description 获取派工单的时间记录的数据
  442. * @DateTime 2022/2/4 15:30
  443. * @Param [inData]
  444. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcTimeData>
  445. **/
  446. List<SfdcTimeData> getSfdcTimeHistBySeqNo(SearchScheduleData inData);
  447. /**
  448. * @Author LR
  449. * @Description 获取派工单的工具记录的数据
  450. * @DateTime 2022/2/4 15:31
  451. * @Param [inData]
  452. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcToolData>
  453. **/
  454. List<SfdcToolData> getSfdcToolHistBySeqNo(SearchScheduleData inData);
  455. /**
  456. * @Author LR
  457. * @Description 获取派工单的材料记录的数据
  458. * @DateTime 2022/2/4 15:31
  459. * @Param [inData]
  460. * @return java.util.List<com.gaotao.modules.schedule.data.SfdcToolData>
  461. **/
  462. List<SfdcMaterialData> getSfdcMaterialHistBySeqNo(SearchScheduleData inData);
  463. /**
  464. * @Author LR
  465. * @Description 派工单结束检查
  466. * @DateTime 2022/2/8 10:01
  467. * @Param [inData]
  468. * @return java.util.Map<java.lang.String,java.lang.Object>
  469. **/
  470. Map<String, Object> checkFinishScheduleWithNoFqc(SearchScheduleData inData);
  471. /**
  472. * @Author LR
  473. * @Description 结束非FQC的派工单
  474. * @DateTime 2022/2/8 11:24
  475. * @Param [inData]
  476. * @return void
  477. **/
  478. void finishScheduleWithNoFqc(SearchScheduleData inData);
  479. /**
  480. * @Author LR
  481. * @Description 查询校验是否可以下料功能
  482. * @DateTime 2022/2/15 16:41
  483. * @Param [inData]
  484. * @return java.util.Map<java.lang.String,java.lang.Object>
  485. **/
  486. Map<String, Object> checkCuttingMaterial(SearchScheduleData inData);
  487. /**
  488. * @Author LR
  489. * @Description 处理材料下料功能
  490. * @DateTime 2022/2/15 17:13
  491. * @Param [inData]
  492. * @return void
  493. **/
  494. void processCuttingMaterialRoll(SearchScheduleData inData);
  495. }