package com.chinaztt.mes.outsource.controller; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaztt.mes.common.wrapper.QueryWrapperUtil; import com.chinaztt.mes.outsource.dto.InspectionDeclarationDetailDTO; import com.chinaztt.mes.outsource.entity.InspectionDeclaration; import com.chinaztt.mes.outsource.entity.InspectionDeclarationDetail; import com.chinaztt.mes.outsource.service.InspectionDeclarationDetailService; import com.chinaztt.mes.outsource.service.InspectionDeclarationService; import com.chinaztt.ztt.common.core.util.R; import com.chinaztt.ztt.common.security.annotation.Inner; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.sql.Timestamp; import java.util.Date; import java.util.List; /** * @Author: Zero * @Date: 2022/9/28 14:45 * @Description: */ @RestController @RequestMapping("/outsource") @Api(value = "outsource", tags = "外协管理") public class OutsourceController { @Resource private InspectionDeclarationService inspectionDeclarationService; @Resource private InspectionDeclarationDetailService inspectionDeclarationDetailService; @ApiOperation(value = "外协成品操作", notes = "外协成品操作") @PostMapping("/insp/{event}") public R insp(@RequestBody List inspectionDeclarationDetailList, @PathVariable String event) { inspectionDeclarationService.insp(inspectionDeclarationDetailList, event); return R.ok(); } @ApiOperation(value = "分页查询", notes = "分页查询") @GetMapping("/page") public R page(Page page, InspectionDeclarationDetail inspectionDeclarationDetail) { return R.ok(inspectionDeclarationDetailService.page(page, QueryWrapperUtil.gen(inspectionDeclarationDetail))); } @ApiOperation(value = "外协成品稽查明细表", notes = "外协成品稽查明细表") @GetMapping("/detailReport") @Inner(false) public String detailReport(HttpServletRequest request) { String beginTime = request.getParameter("createtime_begin"); String endTime = request.getParameter("createtime_end"); if (StringUtils.isBlank(beginTime)) { beginTime = DateUtil.formatDate(new Date()); } if (StringUtils.isBlank(endTime)) { endTime = DateUtil.formatDate(new Date()); } List detailDTOList = inspectionDeclarationDetailService.getDetailReport(beginTime, endTime); JSONObject jo = new JSONObject(); jo.put("data", detailDTOList); return JSON.toJSONString(jo, SerializerFeature.WriteNullNumberAsZero); } @ApiOperation(value = "外协成品稽查总表", notes = "外协成品稽查总表") @GetMapping("/report") @Inner(false) public String report(HttpServletRequest request) { String beginTime = request.getParameter("createtime_begin"); String endTime = request.getParameter("createtime_end"); if (StringUtils.isBlank(beginTime)) { beginTime = DateUtil.formatDate(new Date()); } if (StringUtils.isBlank(endTime)) { endTime = DateUtil.formatDate(new Date()); } Timestamp begin = DateUtil.beginOfDay(DateUtil.parseDate(beginTime)).toTimestamp(); Timestamp end = DateUtil.endOfDay(DateUtil.parseDate(endTime)).toTimestamp(); List result = inspectionDeclarationService.list(Wrappers.lambdaQuery().between(InspectionDeclaration::getCreateTime, begin, end)); JSONObject jo = new JSONObject(); jo.put("data", result); return JSON.toJSONString(jo, SerializerFeature.WriteNullNumberAsZero); } }