package com.jcdm.main.da.paramCollection.controller; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jcdm.common.annotation.Log; import com.jcdm.common.core.controller.BaseController; import com.jcdm.common.core.domain.AjaxResult; import com.jcdm.common.core.page.TableDataInfo; import com.jcdm.common.enums.BusinessType; import com.jcdm.common.utils.DateUtils; import com.jcdm.common.utils.poi.ExcelUtil; import com.jcdm.main.bs.formulaChild.domain.PrintOfflineReportInfo; import com.jcdm.main.da.paramCollection.domain.DaParamCollection; import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService; import com.jcdm.main.da.testDeviceInterface.domain.DaTestDeviceInterface; import com.jcdm.main.da.testDeviceInterface.service.IDaTestDeviceInterfaceService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.List; import java.util.Map; /** * 设备产品过程参数采集Controller * * @author yyt * @date 2023-12-13 */ @RestController @RequestMapping("/main/paramCollection") public class DaParamCollectionController extends BaseController { @Autowired private IDaParamCollectionService daParamCollectionService; @Autowired private IDaTestDeviceInterfaceService daTestDeviceInterfaceService; /** * 查询设备产品过程参数采集列表 */ @GetMapping("/getPrintOfflineReportInfo") public AjaxResult getPrintOfflineReportInfo(DaParamCollection daParamCollection) { String result = "S"; PrintOfflineReportInfo info = new PrintOfflineReportInfo(); DaParamCollection OP130_InsulationResistance1 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_InsulationResistance1").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam18(OP130_InsulationResistance1.getParamValue()); DaParamCollection OP030_DifferenceProduct2_3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP030_DifferenceProduct2_3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP030_DifferenceProduct1_3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP030_DifferenceProduct1_3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP030_DifferenceProduct1_2 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP030_DifferenceProduct1_2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam19(OP030_DifferenceProduct2_3.getParamValue()+","+OP030_DifferenceProduct1_3.getParamValue()+","+OP030_DifferenceProduct1_2.getParamValue()); DaParamCollection OP130_InsulationResistance2 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_InsulationResistance2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam20(OP130_InsulationResistance2.getParamValue()); DaParamCollection OP130_TemperatureControlledWinding = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_TemperatureControlledWinding").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam21(OP130_TemperatureControlledWinding.getParamValue()); DaParamCollection OP130_WarmTransmission = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_WarmTransmission").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam22(OP130_WarmTransmission.getParamValue()); DaParamCollection OP130_InsulationResistance3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_InsulationResistance3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam23(OP130_InsulationResistance3.getParamValue()); DaParamCollection OP130_Casing = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_Casing").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam24(OP130_Casing.getParamValue()); DaParamCollection OP130_GroundWithstandVoltage = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_GroundWithstandVoltage").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam25(OP130_GroundWithstandVoltage.getParamValue()); DaParamCollection OP130_RotaryResistanceValue3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_RotaryResistanceValue3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_RotaryResistanceValue2 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_RotaryResistanceValue2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_RotaryResistanceValue1 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_RotaryResistanceValue1").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam26(OP130_RotaryResistanceValue3.getParamValue()+","+OP130_RotaryResistanceValue2.getParamValue()+","+OP130_RotaryResistanceValue1.getParamValue()); DaParamCollection OP130_ThreePhaseResistance3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_ThreePhaseResistance3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_BalanceDegree2 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_ThreePhaseResistance2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_BalanceDegree1 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_ThreePhaseResistance1").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam27(OP130_ThreePhaseResistance3.getParamValue()+","+OP130_BalanceDegree2.getParamValue()+","+OP130_BalanceDegree1.getParamValue()); DaParamCollection OP130_28_BalanceDegree1 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_BalanceDegree1").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_28_BalanceDegree2 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_BalanceDegree2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); DaParamCollection OP130_28_BalanceDegree3 = daParamCollectionService.getOne(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP130_BalanceDegree3").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); info.setParam28(OP130_28_BalanceDegree1.getParamValue()+","+OP130_28_BalanceDegree2.getParamValue()+","+OP130_28_BalanceDegree3.getParamValue()); info.setParam29(getParam29(daParamCollection.getProductNum())); List OP030_RotationDirection = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP030_RotationDirection").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP030_RotationDirection)){ //1√ 2× String paramValue = OP030_RotationDirection.get(OP030_RotationDirection.size() - 1).getParamValue(); if(paramValue.equals("1")){ info.setParam30("√"); }else if(paramValue.equals("2")){ info.setParam30("❌"); }else { info.setParam30("未知"); } }else { result = "F"; } List OP230_GroundingMohm = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP230_GroundingMohm").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP230_GroundingMohm)){ //取小数点后两位 mΩ String paramValue = OP230_GroundingMohm.get(OP230_GroundingMohm.size() - 1).getParamValue(); info.setParam31(paramValue.substring(0, 4)+"mΩ"); }else { result = "F"; } List OP220_Divulge1 = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP220_Divulge1").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP220_Divulge1)){ info.setParam32(OP220_Divulge1.get(OP220_Divulge1.size()-1).getParamValue()); }else { result = "F"; } List OP220_Divulge2 = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP220_Divulge2").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP220_Divulge2)){ info.setParam33(OP220_Divulge2.get(OP220_Divulge2.size()-1).getParamValue()); }else { result = "F"; } List OP230_WithstanduUA = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP230_WithstanduUA").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP230_WithstanduUA)){ DaParamCollection daParamCollection1 = OP230_WithstanduUA.get(OP230_WithstanduUA.size() - 1); String paramValue = daParamCollection1.getParamValue(); info.setParam34(OP230_WithstanduUA.get(OP230_WithstanduUA.size()-1).getParamValue()+"uA"); }else { result = "F"; } List OP230_InsulationMohm = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP230_InsulationMohm").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP230_InsulationMohm)){ info.setParam35(OP230_InsulationMohm.get(OP230_InsulationMohm.size()-1).getParamValue()); }else { result = "F"; } List OP120_2_RotatingAngle = daParamCollectionService.list(new LambdaQueryWrapper().eq(DaParamCollection::getParamCode, "OP120-2_RotatingAngle").eq(DaParamCollection::getSfcCode,daParamCollection.getProductNum())); if(ObjectUtil.isNotEmpty(OP120_2_RotatingAngle)){ info.setParam36(OP120_2_RotatingAngle.get(OP120_2_RotatingAngle.size()-1).getParamValue()); }else { result = "F"; } info.setParam37(getParam37(daParamCollection.getProductNum())); // info.setParam18(">500"); // info.setParam19("0.3%,0%,0.5%"); // info.setParam20(">600"); // info.setParam21(">700"); // info.setParam22("0.22"); // info.setParam23("362"); // info.setParam24("8.18"); // info.setParam25("0.1"); // info.setParam26("21.53,42.33,42.19"); // info.setParam27("49.20,49.34,49.15"); // info.setParam28("0.061%,0.163%,0.223%"); // info.setParam29("35.1,35.0,35.1"); // info.setParam30("√"); // info.setParam31("0.0041"); // info.setParam32("3.06"); // info.setParam33("o.48"); // info.setParam34("4.7uA"); // info.setParam35("562.1"); // info.setParam36("-137.1"); // info.setParam37("√"); info.setInspectionDate(getInspectionDate()); info.setReviewerDate(getReviewerDate()); info.setProductNum(daParamCollection.getProductNum().substring(13,26)); System.out.println(info); return AjaxResult.success(info); } public String getParam37(String productNum){ productNum = productNum.substring(13,26); List one = daTestDeviceInterfaceService.list(new LambdaQueryWrapper().like(DaTestDeviceInterface::getProductNum, productNum).eq(DaTestDeviceInterface::getStationCode,"OP240")); JSONArray jsonArray = new JSONArray(one.get(one.size()-1).getCheckList()); JSONObject item = jsonArray.getJSONObject(1); return item.getStr("itemValue"); } public String getParam29(String productNum){ List one = daTestDeviceInterfaceService.list(new LambdaQueryWrapper().eq(DaTestDeviceInterface::getProductNum, productNum).eq(DaTestDeviceInterface::getStationCode,"OP150")); JSONArray jsonArray = new JSONArray(one.get(one.size()-1).getCheckList()); JSONObject itemU = jsonArray.getJSONObject(0); JSONObject itemV = jsonArray.getJSONObject(1); JSONObject itemW = jsonArray.getJSONObject(2); return itemU.getStr("itemValue")+","+itemV.getStr("itemValue")+","+itemW.getStr("itemValue"); } public static String getInspectionDate(){ // 获取当前日期 LocalDate today = LocalDate.now(); // 定义日期格式(年.月.日) DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.M.d"); // 格式化当前日期 return today.format(formatter); } public static String getReviewerDate(){ // 获取当前日期 LocalDate today = LocalDate.now(); // 定义日期格式(年.月.日) DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); // 格式化当前日期 return today.format(formatter); } public static void main(String[] args) { String input = "4.257426"; // 确定起始位置和结束位置 int startIndex = 13; // 起始位置 int endIndex = 26; // 结束位置 // 截取字符串 String extracted = input.substring(0, 4); System.out.println(getReviewerDate()); } /** * 查询设备产品过程参数采集列表 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:list')") @GetMapping("/list") public TableDataInfo list(DaParamCollection daParamCollection) { startPage(); List list = daParamCollectionService.selectDaParamCollectionList(daParamCollection); return getDataTable(list); } /** * 查询设备产品过程参数采集列表 */ @PostMapping("/sendIMesData") public void sendIMesData(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.pushGeelycvMesFeedback(daParamCollection.getSfcCode(),daParamCollection.getLocationCode()); } /** * 导出设备产品过程参数采集列表 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:export')") @Log(title = "设备产品过程参数采集", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, DaParamCollection daParamCollection) { List list = daParamCollectionService.selectDaParamCollectionList(daParamCollection); ExcelUtil util = new ExcelUtil(DaParamCollection.class); util.exportExcel(response, list, "设备产品过程参数采集数据"); } /** * 获取设备产品过程参数采集详细信息 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return success(daParamCollectionService.selectDaParamCollectionById(id)); } /** * 新增设备产品过程参数采集 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:add')") @Log(title = "设备产品过程参数采集", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody DaParamCollection daParamCollection) { daParamCollection.setCreateBy(getUsername()); daParamCollection.setCreateTime(DateUtils.getNowDate()); return toAjax(daParamCollectionService.insertDaParamCollection(daParamCollection)); } /** * 基础参数增加 */ @PostMapping("/addBasicParameters") public void addBasicParameters(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.addBasicParameters(daParamCollection); } /** * 基础参数增加 */ @PostMapping("/yzAddBasicParameters") public void yzAddBasicParameters(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.yzAddBasicParameters(daParamCollection); } /** * 拧紧参数增加 */ @PostMapping("/addTighteningParameters") public void addTighteningParameters(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.addTighteningParameters(daParamCollection); } /** * 出战时间参数增加 */ @PostMapping("/saveCampaignTimeParameters") public void saveCampaignTimeParameters(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.saveCampaignTimeParameters(daParamCollection); } /** * 出战时间参数增加 */ @PostMapping("/preInstallOut") public void preInstallOut(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.preInstallOut(daParamCollection); } /** * 出战时间参数增加 */ @PostMapping("/checkRecordDataDone") public AjaxResult checkRecordDataDone(@RequestBody DaParamCollection daParamCollection) { return daParamCollectionService.checkRecordDataDone(daParamCollection); } /** * 出战时间参数增加 */ @PostMapping("/jrmSaveCampaignTimeParameters") public void jrmSaveCampaignTimeParameters(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.jrmSaveCampaignTimeParameters(daParamCollection); } /** * 更换总成号 */ @PostMapping("/replaceAssemblyCode") public void replaceAssemblyCode(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.replaceAssemblyCode(daParamCollection); } /** * 更换总成号 */ @PostMapping("/enterWeighing") public void enterWeighing(@RequestBody DaParamCollection daParamCollection) { daParamCollectionService.enterWeighing(daParamCollection); } /** * 修改设备产品过程参数采集 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:edit')") @Log(title = "设备产品过程参数采集", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody DaParamCollection daParamCollection) { daParamCollection.setUpdateBy(getUsername()); daParamCollection.setUpdateTime(DateUtils.getNowDate()); return toAjax(daParamCollectionService.updateDaParamCollection(daParamCollection)); } /** * 删除设备产品过程参数采集 */ @PreAuthorize("@ss.hasPermi('main:paramCollection:remove')") @Log(title = "设备产品过程参数采集", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(daParamCollectionService.deleteDaParamCollectionByIds(ids)); } }