荣鑫后端
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.

559 lines
18 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
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.controller;
  2. import com.gaotao.common.utils.R;
  3. import com.gaotao.modules.purchasingManagement.entity.ViewSapPoData;
  4. import com.gaotao.modules.schedule.data.*;
  5. import com.gaotao.modules.schedule.service.SchedulingService;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.beans.factory.annotation.Value;
  8. import org.springframework.web.bind.annotation.PostMapping;
  9. import org.springframework.web.bind.annotation.RequestBody;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RestController;
  12. import java.util.List;
  13. import java.util.Map;
  14. /**
  15. * @Author LR
  16. * @Description 排产的操作
  17. * @DateTime 2022/2/28 11:15
  18. * @Param
  19. * @return
  20. **/
  21. @RestController
  22. @RequestMapping(value = "/scheduling")
  23. public class SchedulingController {
  24. @Autowired
  25. private SchedulingService schedulingService;
  26. /**
  27. * @Author LR
  28. * @Description 获取当前的机台对应的加工中心
  29. * @DateTime 2022/2/28 14:39
  30. * @Param [inData]
  31. * @return com.gaotao.common.utils.R
  32. **/
  33. @PostMapping(value = "getCurrentWorkCenterNoByResourceId")
  34. public R getCurrentWorkCenterNoByResourceId(@RequestBody SearchScheduleData inData){
  35. String workCenterNo = schedulingService.getCurrentWorkCenterNoByResourceId(inData);
  36. return R.ok()
  37. .put("code", 200)
  38. .put("msg", "操作成功!")
  39. .put("workCenterNo", workCenterNo);
  40. }
  41. /**
  42. * @Author LR
  43. * @Description 排产生产工单
  44. * @DateTime 2022/3/1 11:08
  45. * @Param [inData]
  46. * @return com.gaotao.common.utils.R
  47. **/
  48. @PostMapping(value = "scheduleWorkOrder")
  49. public R scheduleWorkOrder(@RequestBody SearchScheduleData inData){
  50. schedulingService.scheduleWorkOrder(inData);
  51. return R.ok()
  52. .put("code", 200)
  53. .put("msg", "操作成功!");
  54. }
  55. /**
  56. * @Author LR
  57. * @Description 取消排产操作
  58. * @DateTime 2022/3/1 14:45
  59. * @Param [inData]
  60. * @return com.gaotao.common.utils.R
  61. **/
  62. @PostMapping(value = "cancelSoSchedule")
  63. public R cancelSoSchedule(@RequestBody SearchScheduleData inData){
  64. schedulingService.cancelSoSchedule(inData);
  65. return R.ok()
  66. .put("code", 200)
  67. .put("msg", "操作成功!");
  68. }
  69. /**
  70. * @Author LR
  71. * @Description 插入等待的派工单
  72. * @DateTime 2022/3/2 15:42
  73. * @Param [inData]
  74. * @return com.gaotao.common.utils.R
  75. **/
  76. @PostMapping(value = "addWaitSchedule")
  77. public R addWaitSchedule(@RequestBody SearchScheduleData inData){
  78. schedulingService.addWaitSchedule(inData);
  79. return R.ok()
  80. .put("code", 200)
  81. .put("msg", "操作成功!");
  82. }
  83. /**
  84. * @Author LR
  85. * @Description 重新排产
  86. * @DateTime 2022/3/2 15:52
  87. * @Param [inData]
  88. * @return com.gaotao.common.utils.R
  89. **/
  90. @PostMapping(value = "reScheduleWorkOrders")
  91. public R reScheduleWorkOrders(@RequestBody SearchScheduleData inData){
  92. schedulingService.reScheduleWorkOrders(inData);
  93. return R.ok()
  94. .put("code", 200)
  95. .put("msg", "操作成功!");
  96. }
  97. /**
  98. * TODO 向上移动派工单
  99. * @author LR
  100. * @date 2022/3/14 15:20
  101. * @Param [inData]
  102. * @return com.gaotao.common.utils.R
  103. **/
  104. @PostMapping(value = "moveUpSchedule")
  105. public R moveUpSchedule(@RequestBody SearchScheduleData inData){
  106. schedulingService.moveUpSchedule(inData);
  107. return R.ok()
  108. .put("code", 200)
  109. .put("msg", "操作成功!");
  110. }
  111. /**
  112. * TODO 向下移动派工单
  113. * @author LR
  114. * @date 2022/3/14 15:30
  115. * @Param [inData]
  116. * @return com.gaotao.common.utils.R
  117. **/
  118. @PostMapping(value = "moveDownSchedule")
  119. public R moveDownSchedule(@RequestBody SearchScheduleData inData){
  120. schedulingService.moveDownSchedule(inData);
  121. return R.ok()
  122. .put("code", 200)
  123. .put("msg", "操作成功!");
  124. }
  125. /**
  126. * TODO 获取FQC待排产的工单
  127. * @author LR
  128. * @date 2022/3/15 14:23
  129. * @Param [inData]
  130. * @return com.gaotao.common.utils.R
  131. **/
  132. @RequestMapping(value = "getShopOrderListWithFqc")
  133. public R getShopOrderListWithFqc(@RequestBody SearchScheduleData inData){
  134. List<ShopOrderOutData> resultList = schedulingService.getShopOrderListWithFqc(inData);
  135. return R.ok()
  136. .put("code", 200)
  137. .put("msg", "操作成功!")
  138. .put("rows", resultList)
  139. .put("total", resultList.size());
  140. }
  141. /**
  142. * TODO 获取FQC的操作员信息
  143. * @author LR
  144. * @date 2022/3/15 14:13
  145. * @Param [inData]
  146. * @return com.gaotao.common.utils.R
  147. **/
  148. @RequestMapping(value = "getOperatorListWithFqc")
  149. public R getOperatorListWithFqc(@RequestBody SearchScheduleData inData){
  150. List<OperatorOutData> resultList = schedulingService.getOperatorListWithFqc(inData);
  151. return R.ok()
  152. .put("code", 200)
  153. .put("msg", "操作成功!")
  154. .put("rows", resultList)
  155. .put("total", resultList.size());
  156. }
  157. /**
  158. * TODO 获取FQC的排产记录
  159. * @author LR
  160. * @date 2022/3/15 13:50
  161. * @Param [inData]
  162. * @return com.gaotao.common.utils.R
  163. **/
  164. @RequestMapping(value = "getOrderScheduleListWithFqc")
  165. public R getOrderScheduleListWithFqc(@RequestBody SearchScheduleData inData){
  166. List<ScheduleData> resultList = schedulingService.getOrderScheduleListWithFqc(inData);
  167. return R.ok()
  168. .put("code", 200)
  169. .put("msg", "操作成功!")
  170. .put("rows", resultList)
  171. .put("total", resultList.size());
  172. }
  173. /**
  174. * TODO FQC操作员排产
  175. * @author LR
  176. * @date 2022/3/16 10:11
  177. * @Param [inMap]
  178. * @return com.gaotao.common.utils.R
  179. **/
  180. @RequestMapping(value = "scheduleFqcOperators")
  181. public R scheduleFqcOperators(@RequestBody Map<String, Object> inMap){
  182. schedulingService.scheduleFqcOperators(inMap);
  183. return R.ok()
  184. .put("code", 200)
  185. .put("msg", "操作成功!");
  186. }
  187. /**
  188. * TODO 获取工单数的物料库存数据
  189. * @author LR
  190. * @date 2022/3/22 16:18
  191. * @Param [inData]
  192. * @return com.gaotao.common.utils.R
  193. **/
  194. @RequestMapping(value = "getOrderPartStockedQty")
  195. public R getOrderPartStockedQty(@RequestBody SearchScheduleData inData){
  196. List<Map<String, Object>> resultList = schedulingService.getOrderPartStockedQty(inData);
  197. return R.ok()
  198. .put("code", 200)
  199. .put("msg", "操作成功!")
  200. .put("rows", resultList)
  201. .put("total", resultList.size());
  202. }
  203. /**
  204. * TODO 修改等待派工单的等待时间
  205. * @author LR
  206. * @date 2022/3/23 13:11
  207. * @Param [inData]
  208. * @return com.gaotao.common.utils.R
  209. **/
  210. @PostMapping(value = "updateScheduleWaitTimes")
  211. public R updateScheduleWaitTimes(@RequestBody SearchScheduleData inData){
  212. schedulingService.updateScheduleWaitTimes(inData);
  213. return R.ok()
  214. .put("code", 200)
  215. .put("msg", "操作成功!");
  216. }
  217. /**
  218. * TODO 根据工艺路线刷新派工单数据
  219. * @author LR
  220. * @date 2022/3/23 13:31
  221. * @Param [inData]
  222. * @return com.gaotao.common.utils.R
  223. **/
  224. @PostMapping(value = "refreshScheduleByRouting")
  225. public R refreshScheduleByRouting(@RequestBody SearchScheduleData inData){
  226. schedulingService.refreshScheduleByRouting(inData);
  227. return R.ok()
  228. .put("code", 200)
  229. .put("msg", "操作成功!");
  230. }
  231. /**
  232. * TODO 根据工作日历刷新派工单
  233. * @author LR
  234. * @date 2022/3/23 13:30
  235. * @Param [inData]
  236. * @return com.gaotao.common.utils.R
  237. **/
  238. @PostMapping(value = "refreshScheduleByCalendar")
  239. public R refreshScheduleByCalendar(@RequestBody SearchScheduleData inData){
  240. schedulingService.refreshScheduleByCalendar(inData);
  241. return R.ok()
  242. .put("code", 200)
  243. .put("msg", "操作成功!");
  244. }
  245. /**
  246. * TODO 根据条件获取日历编码和日历的描述信息
  247. * @author LR
  248. * @date 2022/3/23 17:00
  249. * @Param [inData]
  250. * @return com.gaotao.common.utils.R
  251. **/
  252. @RequestMapping(value = "getCalendarMapByResourceId")
  253. public R getCalendarMapByResourceId(@RequestBody SearchScheduleData inData){
  254. Map<String, Object> resultMap = schedulingService.getCalendarMapByResourceId(inData);
  255. return R.ok()
  256. .put("code", 200)
  257. .put("msg", "操作成功!")
  258. .put("row", resultMap);
  259. }
  260. /**
  261. * TODO 刷新当前排产单的数据
  262. * @author LR
  263. * @date 2022/3/30 14:33
  264. * @Param [inData]
  265. * @return com.gaotao.common.utils.R
  266. **/
  267. @RequestMapping(value = "getShopOrderByCon")
  268. public R getShopOrderByCon(@RequestBody SearchScheduleData inData){
  269. ShopOrderOutData resultRow = schedulingService.getShopOrderByCon(inData);
  270. return R.ok()
  271. .put("code", 200)
  272. .put("msg", "操作成功!")
  273. .put("row", resultRow);
  274. }
  275. /**
  276. * TODO 获取待排产工单的列表
  277. * @author LR
  278. * @date 2022/3/31 18:12
  279. * @Param [inData]
  280. * @return com.gaotao.common.utils.R
  281. **/
  282. @RequestMapping(value = "getShopOrderList")
  283. public R getShopOrderList(@RequestBody SearchScheduleData inData){
  284. List<ShopOrderOutData> resultList = schedulingService.getShopOrderList(inData);
  285. return R.ok()
  286. .put("code", 200)
  287. .put("msg", "操作成功!")
  288. .put("rows", resultList)
  289. .put("total", resultList.size());
  290. }
  291. /**
  292. * TODO 获取可用的机台数据
  293. * @author LR
  294. * @date 2022/4/1 11:53
  295. * @Param [inData]
  296. * @return com.gaotao.common.utils.R
  297. **/
  298. @RequestMapping(value = "getOrderAvailableResource")
  299. public R getOrderAvailableResource(@RequestBody SearchScheduleData inData){
  300. List<ResourceOutData> resultList = schedulingService.getOrderAvailableResource(inData);
  301. return R.ok()
  302. .put("code", 200)
  303. .put("msg", "操作成功!")
  304. .put("rows", resultList)
  305. .put("total", resultList.size());
  306. }
  307. /**
  308. * TODO 执行扩展的排产操作
  309. * @author LR
  310. * @date 2022/4/1 15:52
  311. * @Param [inData]
  312. * @return com.gaotao.common.utils.R
  313. **/
  314. @RequestMapping(value = "scheduleOrderWithExpand")
  315. public R scheduleOrderWithExpand(@RequestBody SearchScheduleData inData){
  316. schedulingService.scheduleOrderWithExpand(inData);
  317. return R.ok()
  318. .put("code", 200)
  319. .put("msg", "操作成功!");
  320. }
  321. /**
  322. * TODO 刷新分切订单的菜单权限
  323. * @author LR
  324. * @date 2022/4/7 14:31
  325. * @Param [inData]
  326. * @return com.gaotao.common.utils.R
  327. **/
  328. @RequestMapping(value = "refreshWorkPlatformButtonsWithSplit")
  329. public R refreshWorkPlatformButtonsWithSplit(@RequestBody SearchScheduleData inData){
  330. Map<String, Object> resultMap = schedulingService.refreshWorkPlatformButtonsWithSplit(inData);
  331. return R.ok()
  332. .put("code", 200)
  333. .put("msg", "操作成功!")
  334. .put("resultMap", resultMap);
  335. }
  336. /**
  337. * TODO 获取分切派工单创建分卷的页面参数
  338. * @author LR
  339. * @date 2022/4/8 16:38
  340. * @Param [inData]
  341. * @return com.gaotao.common.utils.R
  342. **/
  343. @RequestMapping(value = "getSplitScheduleCreateRollPageData")
  344. public R getSplitScheduleCreateRollPageData(@RequestBody SearchScheduleData inData){
  345. Map<String, Object> pageMap = schedulingService.getSplitScheduleCreateRollPageData(inData);
  346. return R.ok()
  347. .put("code", 200)
  348. .put("msg", "操作成功!")
  349. .put("pageMap", pageMap);
  350. }
  351. /**
  352. * TODO 检查创建分切派工单的分卷
  353. * @author LR
  354. * @date 2022/4/8 17:53
  355. * @Param [inData]
  356. * @return com.gaotao.common.utils.R
  357. **/
  358. @RequestMapping(value = "checkCreateSplitScheduleSeparateRoll")
  359. public R checkCreateSplitScheduleSeparateRoll(@RequestBody SearchScheduleData inData){
  360. schedulingService.checkCreateSplitScheduleSeparateRoll(inData);
  361. return R.ok()
  362. .put("code", 200)
  363. .put("msg", "操作成功!");
  364. }
  365. /**
  366. * TODO 创建分切派工单的分卷
  367. * @author LR
  368. * @date 2022/4/8 17:52
  369. * @Param [inData]
  370. * @return com.gaotao.common.utils.R
  371. **/
  372. @RequestMapping(value = "createSplitScheduleSeparateRoll")
  373. public R createSplitScheduleSeparateRoll(@RequestBody SearchScheduleData inData){
  374. List<Map<String, Object>> printList = schedulingService.createSplitScheduleSeparateRoll(inData);
  375. return R.ok()
  376. .put("code", 200)
  377. .put("printList", printList)
  378. .put("msg", "操作成功!");
  379. }
  380. /**
  381. * @Author LR
  382. * @Description 获取分切订单的分卷数据
  383. * @DateTime 2022/4/12 14:32
  384. * @Param [inData]
  385. * @return com.gaotao.common.utils.R
  386. **/
  387. @RequestMapping(value = "getSplitScheduleSeparateRolls")
  388. public R getSplitScheduleSeparateRolls(@RequestBody SearchScheduleData inData){
  389. List<Map<String, Object>> resultList = schedulingService.getSplitScheduleSeparateRolls(inData);
  390. return R.ok()
  391. .put("code", 200)
  392. .put("msg", "操作成功!")
  393. .put("rows", resultList)
  394. .put("total", resultList.size());
  395. }
  396. /**
  397. * TODO 获取sap可以转换料号的工单信息
  398. * @author LR
  399. * @date 2022/4/27 9:01
  400. * @Param [inData]
  401. * @return com.gaotao.common.utils.R
  402. **/
  403. @RequestMapping(value = "searchSapTransformOrder")
  404. public R searchSapTransformOrder(@RequestBody ViewSapPoData inData){
  405. List<ViewSapPoData> resultList = schedulingService.searchSapTransformOrder(inData);
  406. return R.ok()
  407. .put("code", 200)
  408. .put("msg", "操作成功!")
  409. .put("rows", resultList)
  410. .put("total", resultList.size());
  411. }
  412. /**
  413. * TODO 获取转换工单的BOM信息
  414. * @author LR
  415. * @date 2022/4/27 11:06
  416. * @Param [inData]
  417. * @return com.gaotao.common.utils.R
  418. **/
  419. @RequestMapping(value = "getTransformOrderBomData")
  420. public R getTransformOrderBomData(@RequestBody SearchScheduleData inData){
  421. Map<String, Object> resultMap = schedulingService.getTransformOrderBomData(inData);
  422. return R.ok()
  423. .put("code", 200)
  424. .put("msg", "操作成功!")
  425. .put("row", resultMap);
  426. }
  427. /**
  428. * TODO 获取转换工单的扫描卷信息
  429. * @author LR
  430. * @date 2022/4/27 11:24
  431. * @Param [inData]
  432. * @return com.gaotao.common.utils.R
  433. **/
  434. @RequestMapping(value = "getTransformRollTable")
  435. public R getTransformRollTable(@RequestBody SearchScheduleData inData){
  436. List<CRollInfoOutData> resultList = schedulingService.getTransformRollTable(inData);
  437. return R.ok()
  438. .put("code", 200)
  439. .put("msg", "操作成功!")
  440. .put("rows", resultList)
  441. .put("total", resultList.size());
  442. }
  443. /**
  444. * TODO 扫描转换物料的卷
  445. * @author LR
  446. * @date 2022/4/27 13:38
  447. * @Param [inData]
  448. * @return com.gaotao.common.utils.R
  449. **/
  450. @RequestMapping(value = "scanTransformPartRollNo")
  451. public R scanTransformPartRollNo(@RequestBody SearchScheduleData inData){
  452. schedulingService.scanTransformPartRollNo(inData);
  453. return R.ok()
  454. .put("code", 200)
  455. .put("msg", "操作成功!");
  456. }
  457. /**
  458. * TODO 转换卷的物料编码
  459. * @author LR
  460. * @date 2022/4/27 15:13
  461. * @Param [inData]
  462. * @return com.gaotao.common.utils.R
  463. **/
  464. @RequestMapping(value = "transformRollPart")
  465. public R transformRollPart(@RequestBody SearchScheduleData inData){
  466. List<Map<String, Object>> printList = schedulingService.transformRollPart(inData);
  467. return R.ok()
  468. .put("code", 200)
  469. .put("printList", printList)
  470. .put("msg", "操作成功!");
  471. }
  472. /**
  473. * TODO 获取已经转换物料的卷列表
  474. * @author LR
  475. * @date 2022/4/28 15:11
  476. * @Param [inData]
  477. * @return com.gaotao.common.utils.R
  478. **/
  479. @RequestMapping(value = "getTransformedRollTable")
  480. public R getTransformedRollTable(@RequestBody SearchScheduleData inData){
  481. List<CRollInfoOutData> resultList = schedulingService.getTransformedRollTable(inData);
  482. return R.ok()
  483. .put("code", 200)
  484. .put("msg", "操作成功!")
  485. .put("rows", resultList)
  486. .put("total", resultList.size());
  487. }
  488. /**
  489. * TODO 获取流程标签的打印列表数据
  490. * @author LR
  491. * @date 2022/5/7 16:09
  492. * @Param [inData]
  493. * @return com.gaotao.common.utils.R
  494. **/
  495. @RequestMapping(value = "getSfdcFlowLabelData")
  496. public R getSfdcFlowLabelData(@RequestBody SearchScheduleData inData){
  497. List<Map<String, Object>> printList = schedulingService.getSfdcFlowLabelData(inData);
  498. return R.ok()
  499. .put("code", 200)
  500. .put("msg", "操作成功!")
  501. .put("printList", printList);
  502. }
  503. /**
  504. * TODO 获取派工单各种报工的特殊权限
  505. * @author LR
  506. * @date 2022/6/21 13:27
  507. * @Param [inData]
  508. * @return com.gaotao.common.utils.R
  509. **/
  510. @RequestMapping(value = "getScheduleMultiReportSpecialAuth")
  511. public R getScheduleMultiReportSpecialAuth(@RequestBody SearchScheduleData inData){
  512. Map<String, Object> authMap = schedulingService.getScheduleMultiReportSpecialAuth(inData);
  513. return R.ok()
  514. .put("code", 200)
  515. .put("msg", "操作成功!")
  516. .put("authMap", authMap);
  517. }
  518. }