zss
2023-09-07 9fe4b53620f1ea0a4278240a7acee7bc4ef739c6
inspect-server/src/main/java/com/yuanchu/mom/controller/FinishedInspectController.java
@@ -2,9 +2,14 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.pojo.FinishedInspect;
import com.yuanchu.mom.pojo.ProcessInspect;
import com.yuanchu.mom.pojo.vo.FinishedInspectVo;
import com.yuanchu.mom.service.*;
import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.utils.Jwt;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -16,12 +21,11 @@
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * <p>
 *  前端控制器
 * 前端控制器
 * </p>
 *
 * @author 江苏鵷雏网络科技有限公司
@@ -35,84 +39,66 @@
    @Autowired
    private FinishedInspectService finishedInspectService;
    @Autowired
    private UserService userService;
    @Autowired
    private SpecificationsService specificationsService;
    Jwt jwt;
    @Autowired
    private MaterialService materialService;
    @ApiOperation(value = "新增按钮-->1、新增成品检验单")
    @PostMapping("/add_process_inspection_sheet")
    public Result<?> addProcessInspectionSheet(@Validated @RequestBody FinishedInspect finishedInspect){
        Integer isInsertSuccess = finishedInspectService.addProcessInspectionSheet(finishedInspect);
        if (isInsertSuccess == 1){
            return Result.success("新增成功!", finishedInspect.getId());
        }
        return Result.fail("新增失败!");
    }
    @ApiOperation(value = "新增按钮-->1、新增过程检验单-->主机工下拉框")
    @GetMapping("/list_user")
    public Result<?> selectUserIdAndName(){
        List<Map<String, Object>> maps = userService.listUserIdAndName();
        return Result.success(maps);
    }
    @ApiOperation(value = "新增按钮-->1、新增过程检验单-->2、规格型号下拉框:根据项目ID查询")
    @ApiOperation(value = "新增成品检验单-->根据订单号选择产品信息和工艺")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "materialId",value = "项目名称ID",dataTypeClass  = Integer.class,required = true)
            @ApiImplicitParam(name = "orderNumber", value = "订单编号", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/list_specification")
    public Result<?> selectSpecificationIdAndName(Integer materialId){
        List<Map<String, Object>> maps = specificationsService.selectSpecificationIdAndName(materialId);
        return Result.success(maps);
    @GetMapping("/chooseMater")
    public Result<?> chooseMater(String orderNumber) {
        return Result.success(finishedInspectService.chooseMater(orderNumber));
    }
    @ApiOperation(value = "新增按钮-->1、新增过程检验单-->1、项目名称下拉框")
    @GetMapping("/list_material")
    public Result<?> selectMaterialIdAndNameAndCode(){
        List<Map<String, Object>> maps = materialService.selectMaterialIdAndNameAndCode();
        return Result.success(maps);
    @ApiOperation(value = "新增成品检验单")
    @PostMapping("/addFinish")
    public Result<?> addFinish(@RequestHeader("token") String token, @Validated @RequestBody FinishedInspectVo finishedInspectVo) throws Exception {
        Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
        return Result.success(finishedInspectService.addProcessInspectionSheet(data.get("id").replaceAll("\"", ""), finishedInspectVo));
    }
    @ApiOperation(value = "新增按钮-->3、检验结论")
    @ApiOperation(value = "上报(更新检验状态)")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "finishedInspectId",value = "检验单Id",dataTypeClass  = Integer.class,required = true),
            @ApiImplicitParam(name = "result",value = "检验结论",dataTypeClass  = Integer.class,required = true),
            @ApiImplicitParam(name = "id", value = "检验单id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/inspection_conclusion")
    public Result<?> inspectionConclusion(Integer finishedInspectId, Integer result){
        Integer isInsertSuccess = finishedInspectService.inspectionConclusion(finishedInspectId, result);
        if (isInsertSuccess == 1){
            return Result.success("上报成功!");
    @PostMapping("/updateFinishInspectsById")
    public Result updateFinishInspectsById(@RequestHeader("token") String token, Integer id) throws Exception {
        //如果已经上报了不能再一次上报
        FinishedInspect finishedInspect = finishedInspectService.getById(id);
        if (ObjectUtils.isNotEmpty(finishedInspect.getResult())) {
            return Result.fail("已经上报过了,不能再次上报!");
        }
        return Result.fail("上报失败!");
        Map<String, String> data = JackSonUtil.unmarshal(jwt.readJWT(token).get("data"), Map.class);
        return Result.success(finishedInspectService.updateFinishInspectsById(data.get("name").replaceAll("\"", ""), id));
    }
    @ApiOperation(value = "4、主页分页")
    @ApiOperation(value = "根据检验单id查询成品检验单详情")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "pageNo", value = "条数/页", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "id", value = "检验单id", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/selectFinishInspectsListById")
    public Result selectFinishInspectsListById(Integer id) {
        return Result.success(finishedInspectService.selectFinishInspectsListById(id));
    }
    @ApiOperation(value = "分页查询成品检验单列表")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "countSize", value = "条数/页", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "pageSize", value = "页数", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "inspectResult", value = "检验结果", dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "inspectDate", value = "检验日期", dataTypeClass = Date.class, dataType = "date"),
            @ApiImplicitParam(name = "inspectUsername", value = "主机工", dataTypeClass = String.class)
            @ApiImplicitParam(name = "result", value = "检验结果(为空=全部)", dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "material", value = "产品名称", dataTypeClass = String.class)
    })
    @GetMapping("/list_page")
    public Result<?> selectFinishedInspectPage(Integer pageNo, Integer pageSize, Integer inspectResult, String inspectDate, String inspectUsername){
        IPage<Map<String, Object>> page = finishedInspectService.selectFinishedInspectPage(new Page<Object>(pageNo, pageSize), inspectResult, inspectDate, inspectUsername);
    public Result<?> list_page(Integer pageSize, Integer countSize, Integer result, String material) {
        IPage<Map<String, Object>> page = finishedInspectService.selectFinishedInspectPage(new Page<Object>(pageSize, countSize), result, material);
        Map<String, Object> map = new HashMap<>();
        map.put("total", page.getTotal());
        map.put("row", page.getRecords());
        return Result.success(map);
    }
    @ApiOperation(value = "4、主页分页-->主机工条件查询下拉框")
    @GetMapping("/page_user")
    public Result<?> selectPageUserIdAndName(){
        List<Map<String, Object>> maps = userService.listUserIdAndName();
        return Result.success(maps);
    }
}