UI-Project/src/views/ReportWork/reportWork.vue
@@ -36,15 +36,15 @@ <el-table height="700" ref="table" :data="reportData" :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }"> <el-table-column prop="teamsGroupsName" align="center" :label="$t('reportmanage.reporteam')" min-width="135" /> min-width="100" /> <el-table-column prop="deviceName" align="center" :label="$t('reportmanage.reportingequipment')" min-width="156" /> min-width="100" /> <el-table-column prop="line" align="center" :label="$t('reportmanage.line')" min-width="120" /> <el-table-column prop="workingProcedure" align="center" :label="$t('reportmanage.process')" min-width="120" /> <el-table-column prop="glassId" align="center" :label="$t('reportmanage.glassID')" min-width="130" /> <el-table-column prop="engineerId" align="center" :label="$t('reportmanage.projectnumber')" min-width="120" /> <el-table-column prop="workingProcedure" align="center" :label="$t('reportmanage.process')" min-width="100" /> <el-table-column prop="glassId" align="center" :label="$t('reportmanage.glassID')" min-width="100" /> <el-table-column prop="engineerId" align="center" :label="$t('reportmanage.projectnumber')" min-width="100" /> <el-table-column prop="temperingLayoutId" align="center" :label="$t('reportmanage.layoutID')" min-width="120" /> min-width="100" /> <el-table-column prop="formattedCreateTime" align="center" :label="$t('reportmanage.productiontime')" min-width="230" /> <el-table-column @@ -71,10 +71,12 @@ </el-tag> </template> </el-table-column> <el-table-column prop="processId" align="center" :label="$t('reportmanage.processcards')" min-width="140" /> <el-table-column prop="orderNumber" align="center" :label="$t('reportmanage.number')" min-width="120" /> <el-table-column prop="technologyNumber" align="center" :label="$t('reportmanage.layer')" min-width="120" /> <el-table-column prop="breakageType" align="center" :label="$t('reportmanage.typebreakage')" min-width="180"> <el-table-column prop="processId" align="center" :label="$t('reportmanage.processcards')" min-width="100" /> <el-table-column prop="orderNumber" align="center" :label="$t('reportmanage.number')" min-width="100" /> <el-table-column prop="technologyNumber" align="center" :label="$t('reportmanage.layer')" min-width="50" /> <el-table-column prop="width" align="center" :label="$t('processCard.width')" min-width="70" /> <el-table-column prop="height" align="center" :label="$t('processCard.height')" min-width="70" /> <el-table-column prop="breakageType" align="center" :label="$t('reportmanage.typebreakage')" min-width="100"> <template #default="{ row }"> <el-select v-model="row.breakageType" filterable :placeholder="$t('reportmanage.pcausebreakage')" :disabled="selectedType" clearable @input="handleInputChangea($event, row.id)"> hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/controller/DamageController.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.mes.damage.entity.Damage; import com.mes.damage.entity.DamagePrint; import com.mes.damage.entity.dto.DamageDTO; import com.mes.damage.service.DamageService; import com.mes.opctask.entity.LoadGlassDeviceTaskHistory; import com.mes.utils.Result; @@ -34,7 +35,7 @@ @ApiOperation("报工数据查询") @PostMapping("/selectDamage") public Result<Page<Damage>> selectDamage(@RequestBody Map map) { public Result<Page<DamageDTO>> selectDamage(@RequestBody Map map) { String startTime = map.get("startTime").toString(); String endTime = map.get("endTime").toString(); int type = Integer.parseInt(map.get("type").toString()); hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/mapper/DamageMapper.java
@@ -3,6 +3,7 @@ import com.baomidou.dynamic.datasource.annotation.DS; import com.github.yulichang.base.MPJBaseMapper; import com.mes.damage.entity.Damage; import com.mes.damage.entity.dto.DamageDTO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -19,4 +20,12 @@ public interface DamageMapper extends MPJBaseMapper<Damage> { List<Damage> queryUnTempByFlowCardId(@Param("flowCardId") String flowCardId); List<DamageDTO> selectDamageList( @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("type") int type, @Param("status") int status, @Param("workingProcedure") String workingProcedure ); } hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/DamageService.java
@@ -4,6 +4,7 @@ import com.github.yulichang.base.MPJBaseService; import com.mes.damage.entity.Damage; import com.mes.damage.entity.DamagePrint; import com.mes.damage.entity.dto.DamageDTO; import com.mes.opctask.entity.LoadGlassDeviceTaskHistory; import com.mes.pp.entity.ReportingWork; import com.mes.pp.entity.ReportingWorkDetail; @@ -21,7 +22,7 @@ */ public interface DamageService extends MPJBaseService<Damage> { Page<Damage> selectDamage( Page<DamageDTO> selectDamage( String startTime, String endTime, int type, hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java
@@ -3,6 +3,7 @@ import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.databind.ObjectMapper; @@ -11,6 +12,7 @@ import com.mes.common.config.Const; import com.mes.damage.entity.Damage; import com.mes.damage.entity.DamagePrint; import com.mes.damage.entity.dto.DamageDTO; import com.mes.damage.mapper.DamageMapper; import com.mes.damage.service.DamageService; import com.mes.glassinfo.entity.GlassInfo; @@ -36,6 +38,7 @@ import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -67,17 +70,18 @@ /** * 分页查询损坏记录 * @param startTime 开始时间(格式:yyyy-MM-dd HH:mm:ss) * @param endTime 结束时间(格式:yyyy-MM-dd HH:mm:ss) * @param type 损坏类型(0表示查询所有类型) * @param status 状态(0表示查询所有状态) * * @param startTime 开始时间(格式:yyyy-MM-dd HH:mm:ss) * @param endTime 结束时间(格式:yyyy-MM-dd HH:mm:ss) * @param type 损坏类型(0表示查询所有类型) * @param status 状态(0表示查询所有状态) * @param workingProcedure 工序("0"表示查询所有工序) * @param pageNum 页码(从1开始) * @param pageSize 每页条数 * @param pageNum 页码(从1开始) * @param pageSize 每页条数 * @return 分页后的损坏记录列表 */ @Override public Page<Damage> selectDamage( public Page<DamageDTO> selectDamage( String startTime, String endTime, int type, @@ -86,15 +90,27 @@ int pageNum, // 新增:动态页码 int pageSize // 新增:动态每页条数 ) { Page<Damage> page = new Page<>(pageNum, pageSize); LambdaQueryWrapper<Damage> damageSelectWrapper = new LambdaQueryWrapper<>(); damageSelectWrapper.between(Damage::getDamageTime, startTime, endTime) .eq(type != 0, Damage::getType, type) .eq(status != 0, Damage::getStatus, status) .eq(!"0".equals(workingProcedure), Damage::getWorkingProcedure, workingProcedure); return this.page(page, damageSelectWrapper); if (workingProcedure == null || workingProcedure.trim().isEmpty() || "0".equals(workingProcedure)) { workingProcedure = null; } Page<DamageDTO> page = new Page<>(pageNum, pageSize); List<DamageDTO> damages = this.baseMapper.selectDamageList( startTime, endTime, type, status, workingProcedure ); page.setTotal(damages.size()); int startIndex = (int) ((pageNum - 1) * pageSize); int endIndex = Math.min((int) (pageNum * pageSize), damages.size()); if (startIndex < endIndex) { List<DamageDTO> pageRecords = damages.subList(startIndex, endIndex); page.setRecords(pageRecords); } else { page.setRecords(Collections.emptyList()); } return page; } /** @@ -432,7 +448,7 @@ } @Override public List<Damage> queryUnTempByFlowCardId(String flowCardId){ public List<Damage> queryUnTempByFlowCardId(String flowCardId) { return baseMapper.queryUnTempByFlowCardId(flowCardId); } }