wuyouming666
2024-04-24 ee04d1ab881479ae30c8d5600d29ac56b70f751e
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/controller/DownWorkstationController.java
@@ -1,9 +1,19 @@
package com.mes.downworkstation.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.mes.downworkstation.entity.DownWorkstation;
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.glassinfo.service.GlassInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * <p>
@@ -13,9 +23,137 @@
 * @author zhoush
 * @since 2024-03-27
 */
@RestController
@RequestMapping("/downWorkstation")
@Api(tags = "工位")
@RequestMapping("/downWorkStation")
public class DownWorkstationController {
    @Autowired
    private DownWorkstationService downWorkstationService;
    @Autowired
    private GlassInfoService glassInfoService;
    @ApiOperation("获取工位信息")
    @GetMapping("/getone")
    public ResponseEntity<?> getOneDownWorkstations() {
        try {
            List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations(1,5);
            // 构建符合预期格式的响应数据
            Map<String, Object> responseData = new HashMap<>();
            responseData.put("code", 200);
            responseData.put("msg", "成功");
            responseData.put("data", data);
            // 返回 ResponseEntity 对象,包含响应数据和状态码
            return ResponseEntity.ok(responseData);
        } catch (Exception e) {
            e.printStackTrace();
            // 如果出现异常,返回错误信息
            Map<String, Object> errorResponse = new HashMap<>();
            errorResponse.put("code", 500);
            errorResponse.put("msg", "服务器内部错误");
            return ResponseEntity.status(500).body(errorResponse);
        }
    }
    @ApiOperation("获取流程卡号")
    @GetMapping("/getflowCardId")
    public ResponseEntity<Map<String, Object>> getflowCardId() {
        Map<String, Object> responseData = new HashMap<>();
        try {
            List<Map<String, Object>> data = glassInfoService.getFlowCardId();
            responseData.put("code", 200);
            responseData.put("msg", "成功");
            responseData.put("data", data);
            return ResponseEntity.ok(responseData);
        } catch (Exception e) {
            responseData.put("code", 500);
            responseData.put("msg", "失败");
            responseData.put("data", null);
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
        }
    }
//绑定架子
@ApiOperation("绑定架子")
    @PostMapping("/updateFlowCardId")
    public ResponseEntity<Map<String, Object>> updateFlowCardId(@RequestBody Map<String, Object> requestData) {
        // 从 requestData 中获取传入的 flowCardId
        String flowCardId = (String) requestData.get("flowCardId");
        int workstationId = (int) requestData.get("workstationId");
        // 查询对应 flowCardId 的玻璃信息总数量
        int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId);
        // 更新 down_workstation 表中的总数量
        downWorkstationService.updateFlowCardIdAndCount(flowCardId, glassInfoCount, workstationId);
        // 构建响应数据
        Map<String, Object> responseData = new HashMap<>();
        responseData.put("message", "updated successfully");
        responseData.put("code", 200);
        // 返回处理结果
        return ResponseEntity.ok(responseData);
    }
    @ApiOperation("清除工位信息")
    @PostMapping("/clear")
    public ResponseEntity<Map<String, Object>> clearWorkstationInfo(@RequestBody Map<String, Object> requestData) {
        // 调用 DownWorkstationService 中的方法清除指定工位ID的信息
        int workstationId = (int) requestData.get("workstationId");
        int totalWorkstations = downWorkstationService.getTotalQuantity(workstationId);
        int downWorkstations = downWorkstationService.getRacksNumber(workstationId);
        if (downWorkstations == totalWorkstations) {
            downWorkstationService.clearFlowCardId(workstationId);
            Map<String, Object> responseData = new HashMap<>();
            responseData.put("message", "cleared successfully");
            responseData.put("code", 200);
            // 返回处理结果
            return ResponseEntity.ok(responseData);
        }
        else {
            // 如果总数量和落架数量不一致,返回错误响应
            Map<String, Object> errorResponse = new HashMap<>();
            errorResponse.put("message", "Total workstations count does not match down workstations count.");
            errorResponse.put("code", 400);
            return ResponseEntity.badRequest().body(errorResponse);
        }
        // 构建响应数据
    }
    @ApiOperation("获取工位显示图")
    @GetMapping("/getwo")
    public ResponseEntity<Map<String, Object>> getwo() {
        Map<String, Object> responseData = new HashMap<>();
        try {
            List<Map<String, Object>> data = downWorkstationService.getTotalGlassDimensionsByWorkstation();
            responseData.put("code", 200);
            responseData.put("msg", "成功");
            responseData.put("data", data);
            return ResponseEntity.ok(responseData);
        } catch (Exception e) {
            responseData.put("code", 500);
            responseData.put("msg", "失败");
            responseData.put("data", null);
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
        }
    }
}