wangfei
2024-08-23 051613aa73be3e75af5a6dfdb86a722bcb5af094
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
@@ -4,8 +4,9 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.query.MPJQueryWrapper;
import com.mes.damage.entity.Damage;
import com.mes.damage.service.DamageService;
import com.mes.downglassinfo.entity.DownGlassInfo;
import com.mes.downglassinfo.entity.DownGlassTask;
import com.mes.downglassinfo.mapper.DownGlassInfoMapper;
import com.mes.downglassinfo.service.DownGlassInfoService;
import com.mes.downglassinfo.service.DownGlassTaskService;
@@ -16,6 +17,7 @@
import com.mes.downworkstation.mapper.DownWorkstationTaskMapper;
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.downworkstation.service.DownWorkstationTaskService;
import com.mes.glassinfo.service.GlassInfoService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -32,7 +34,7 @@
    @Autowired
    private DownWorkstationMapper downWorkstationMapper;
    @Autowired(required=false)
    @Autowired(required = false)
    private DownWorkstationTaskMapper downWorkstationTaskMapper;
    @Autowired
    private DownGlassInfoService downGlassInfoService;
@@ -40,7 +42,10 @@
    private DownGlassInfoMapper downGlassInfoMapper;
    @Autowired
    private DownGlassTaskService downGlassTaskService;
    @Autowired
    private GlassInfoService glassInfoService;
    @Autowired
    private DamageService damageservice;
    @Autowired
    private DownWorkstationTaskService downWorkstationTaskService;
@@ -53,16 +58,16 @@
    @Override
    public int getTotalQuantity(int workstationId) {
        DownWorkstation result = baseMapper.selectOne(new QueryWrapper<DownWorkstation>().lambda()
                .select(DownWorkstation::getTotalquantity)
                .select(DownWorkstation::getTotalQuantity)
                .eq(DownWorkstation::getWorkstationId, workstationId));
        return result != null ? result.getTotalquantity() : 0;
        return result != null ? result.getTotalQuantity() : 0;
    }
    //工位显示
    @Override
    public List<Map<String, Object>> getTotalGlassDimensionsByWorkstation(int start,int end) {
    public List<Map<String, Object>> getTotalGlassDimensionsByWorkstation(int start, int end) {
        MPJQueryWrapper<DownWorkstation> queryWrapper = new MPJQueryWrapper<>();
        queryWrapper.select("t.workstation_id", "t.flow_card_id", "COALESCE(SUM(b.width), 0) AS totalwidth", "COALESCE(SUM(b.height), 0) AS totalheight")
                .leftJoin("down_glass_info b on t.flow_card_id = b.flow_card_id")
@@ -71,8 +76,8 @@
        ;
    List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
       // List<DownWorkstionAndDownGlassinfo> workstationList = null;
        List<DownWorkstionAndDownGlassinfo> workstationList = downWorkstationMapper.selectJoinList(DownWorkstionAndDownGlassinfo.class, queryWrapper);
        // List<DownWorkstionAndDownGlassinfo> workstationList = null;
        List<Map<String, Object>> result = new ArrayList<>();
        for (DownWorkstionAndDownGlassinfo downWorkstionAndDownGlassinfo : workstationList) {
            Map<String, Object> rack = new HashMap<>();
@@ -89,7 +94,7 @@
            List<DownGlassInfo> downGlassInfoList = downGlassInfoMapper.selectList(glassInfoQueryWrapper);
         if (!downGlassInfoList.isEmpty()) {
            if (!downGlassInfoList.isEmpty()) {
                item.put("downGlassInfoList", downGlassInfoList);
@@ -98,7 +103,7 @@
            rack.put("item", item);
            result.add(rack);
        }
        log.info("result"+(result));
        log.info("result" + (result));
        return result; // 返回最终结果
    }
@@ -111,7 +116,7 @@
                .eq("workstation_id", workstationId);
        DownWorkstation result = baseMapper.selectOne(queryWrapper);
        return result != null ? result.getRacksnumber() : 0;
        return result != null ? result.getRacksNumber() : 0;
    }
    //根据条件获取工位玻璃信息
@@ -136,14 +141,22 @@
    @Override
    public int updateFlowCardIdAndCount(String flowCardId, int glassInfoCount, int workstationId,int artificialnumber) {
    public void updateFlowCardIdAndCount(String flowCardId, int workstationId, int layer) {
        int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId, layer);
        QueryWrapper<Damage> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("process_id", flowCardId);
        queryWrapper.eq("technology_number", layer);
        int otherNumber = damageservice.count(queryWrapper);
        UpdateWrapper<DownWorkstation> updateWrapper = new UpdateWrapper<>();
        updateWrapper.set("total_quantity", glassInfoCount)
                .set("flow_card_id", flowCardId)
                .set("artificial_number", artificialnumber)
                .set("layer", layer)
                .set("other_number", otherNumber)
                .eq("workstation_id", workstationId);
        return baseMapper.update(new DownWorkstation(), updateWrapper);
        this.update(updateWrapper);
    }
    @Override
@@ -156,9 +169,6 @@
        baseMapper.update(new DownWorkstation(), updateWrapper);
    }
    @Override
@@ -181,6 +191,23 @@
    }
    @Override
    public boolean updateDownWorkstationstate(DownWorkstation downWorkstation) {
        DownWorkstation downWork = baseMapper.selectById(downWorkstation.getId());
        if (downWork != null) {
            downWork.setEnableState(downWorkstation.getEnableState());
            baseMapper.updateById(downWork);
            return true;
        } else {
            return false;
        }
    }
}