Merge remote-tracking branch 'origin/uat-temp-pzj-250123-Assembly-Report' into test

tags/yfai-mes-ext-v2.9
王杰 3 months ago
commit c147289e65

@ -13,7 +13,9 @@ import cn.estsh.impp.framework.boot.util.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description :
@ -25,13 +27,13 @@ import org.springframework.web.bind.annotation.*;
@Api("装配件报表")
@RestController
@RequestMapping(MesCommonConstant.MES_YANFEN + "/assembly-part-report")
public class AssemblyPartReportController {
public class MesAssemblyPartReportController {
@Autowired
private IAssemblyPartReportService assemblyPartReportService;
@ApiOperation(value = "装配件报表")
@PostMapping("/queryReport")
@GetMapping("/queryReport")
public ResultBean queryReport(AssemblyPartReportModel model, Pager pager) {
try {
model.setOrganizeCode(AuthUtil.getOrganize().getOrganizeCode());

@ -30,106 +30,107 @@ public class AssemblyPartReportDaoImpl implements IAssemblyPartReportDao {
public ListPager<AssemblyPartReportModel> queryReport(AssemblyPartReportModel model, Pager pager) {
StringBuilder dataQueryHql = new StringBuilder();
dataQueryHql.append("SELECT new ").append(AssemblyPartReportModel.class.getName()).append("(");
dataQueryHql.append("mes_production_assembly.serialNumber AS serialNumber,");
dataQueryHql.append("mes_production_assembly.workCenterCode AS workCenterCode,");
dataQueryHql.append("mes_production_assembly.workCellCode AS workCellCode,");
dataQueryHql.append("mes_production_assembly.partNo AS partNo,");
dataQueryHql.append("mes_production_assembly.partName AS partName,");
dataQueryHql.append("mes_production_assembly.matchType AS matchType,");
dataQueryHql.append("mes_production_assembly.matchRule AS matchRule,");
dataQueryHql.append("mes_production_assembly.assemblyPartNo AS assemblyPartNo,");
dataQueryHql.append("mes_production_assembly.assemblyPartName AS assemblyPartName,");
dataQueryHql.append("mes_production_assembly.assemblySn AS assemblySn,");
dataQueryHql.append("mes_production_assembly.productSn AS productSn,");
dataQueryHql.append("mes_production_assembly.isSkip AS isSkip,");
dataQueryHql.append("mes_production_assembly.createDatetime AS createDatetime,");
dataQueryHql.append("mes_production_assembly.createUser AS createUser,");
dataQueryHql.append("mes_production_record.workOrderNo AS workOrderNo,");
dataQueryHql.append("mes_production_record.lotNo AS lotNo,");
dataQueryHql.append("mes_equipment.equipmentName AS equipmentName,");
dataQueryHql.append("mes_equipment.equipId AS equipId ");
dataQueryHql.append("a.organizeCode,");
dataQueryHql.append("a.custSn,");
dataQueryHql.append("a.serialNumber,");
dataQueryHql.append("a.workCenterCode,");
dataQueryHql.append("a.workCellCode,");
dataQueryHql.append("a.partNo,");
dataQueryHql.append("a.partName,");
dataQueryHql.append("a.matchType,");
dataQueryHql.append("a.matchRule,");
dataQueryHql.append("a.assemblyPartNo,");
dataQueryHql.append("a.assemblyPartName,");
dataQueryHql.append("a.assemblySn,");
dataQueryHql.append("a.productSn,");
dataQueryHql.append("a.isSkip,");
dataQueryHql.append("a.createDatetime,");
dataQueryHql.append("a.createUser,");
dataQueryHql.append("b.workOrderNo,");
dataQueryHql.append("b.lotNo,");
dataQueryHql.append("c.equipmentName,");
dataQueryHql.append("c.equipId ");
dataQueryHql.append(") ");
StringBuilder countQueryHql= new StringBuilder();
countQueryHql.append("select count(1)");
StringBuilder commonQueryHql = new StringBuilder();
commonQueryHql.append("FROM MesProductionAssembly mes_production_assembly ");
commonQueryHql.append("JOIN MesProductionRecord mes_production_record ON mes_production_assembly.productionRecordId = mes_production_record.id ");
commonQueryHql.append("JOIN MesEquipment mes_equipment ON mes_production_record.equipmentCode = mes_equipment.equipmentCode ");
commonQueryHql.append("FROM MesProductionAssembly a ");
commonQueryHql.append("JOIN MesProductionRecord b ON a.productionRecordId = b.id AND a.organizeCode=b.organizeCode ");
commonQueryHql.append("JOIN MesEquipment c ON b.equipmentCode = c.equipmentCode AND c.organizeCode=b.organizeCode ");
commonQueryHql.append("WHERE 1=1 ");
commonQueryHql.append("AND mes_production_assembly.organizeCode = :organizeCode ");
commonQueryHql.append("AND mes_production_record.organizeCode = :organizeCode ");
commonQueryHql.append("AND mes_equipment.organizeCode = :organizeCode ");
commonQueryHql.append("AND mes_production_assembly.isDeleted = :isDeleted ");
commonQueryHql.append("AND mes_production_record.isDeleted = :isDeleted ");
commonQueryHql.append("AND mes_equipment.isDeleted = :isDeleted ");
commonQueryHql.append("AND mes_production_assembly.isValid = :isValid ");
commonQueryHql.append("AND mes_production_record.isValid = :isValid ");
commonQueryHql.append("AND mes_equipment.isValid = :isValid ");
commonQueryHql.append("AND a.organizeCode = :organizeCode ");
commonQueryHql.append("AND b.organizeCode = :organizeCode ");
commonQueryHql.append("AND c.organizeCode = :organizeCode ");
commonQueryHql.append("AND a.isDeleted = :isDeleted ");
commonQueryHql.append("AND b.isDeleted = :isDeleted ");
commonQueryHql.append("AND c.isDeleted = :isDeleted ");
commonQueryHql.append("AND a.isValid = :isValid ");
commonQueryHql.append("AND b.isValid = :isValid ");
commonQueryHql.append("AND c.isValid = :isValid ");
// like 条码
if(!StringUtils.isEmpty(model.getSerialNumber())){
commonQueryHql.append("AND mes_production_assembly.serialNumber like :serialNumber ");
commonQueryHql.append("AND a.serialNumber like :serialNumber ");
}
// = 装配件条码确认规则
if (!StringUtils.isEmpty(model.getMatchRule())){
commonQueryHql.append("AND mes_production_assembly.matchRule = :matchRule ");
commonQueryHql.append("AND a.matchRule = :matchRule ");
}
// like 零件号
if(!StringUtils.isEmpty(model.getPartNo())){
commonQueryHql.append("AND mes_production_assembly.partNo like :partNo ");
commonQueryHql.append("AND a.partNo like :partNo ");
}
//like 主零件号
if(!StringUtils.isEmpty(model.getPartName())){
commonQueryHql.append("AND mes_production_assembly.partName like :partName ");
commonQueryHql.append("AND a.partName like :partName ");
}
//like 装配零件号
if(!StringUtils.isEmpty(model.getAssemblyPartNo())){
commonQueryHql.append("AND mes_production_assembly.assemblyPartNo like :assemblyPartNo ");
commonQueryHql.append("AND a.assemblyPartNo like :assemblyPartNo ");
}
//like 装配件零件名称
if(!StringUtils.isEmpty(model.getAssemblyPartName())){
commonQueryHql.append("AND mes_production_assembly.assemblyPartName like :assemblyPartName ");
commonQueryHql.append("AND a.assemblyPartName like :assemblyPartName ");
}
//like 装配条码
if(!StringUtils.isEmpty(model.getAssemblySn())){
commonQueryHql.append("AND mes_production_assembly.assemblySn like :assemblySn ");
commonQueryHql.append("AND a.assemblySn like :assemblySn ");
}
// = 是否跳过
if(model.getIsSkip() != null){
commonQueryHql.append("AND mes_production_assembly.isSkip = :isSkip ");
commonQueryHql.append("AND a.isSkip = :isSkip ");
}
//like 创建人
if(!StringUtils.isEmpty(model.getCreateUser())){
commonQueryHql.append("AND mes_production_assembly.createUser like :createUser ");
commonQueryHql.append("AND a.createUser like :createUser ");
}
//范围时间 创建时间
if (!StringUtils.isEmpty(model.getCreateDateTimeStart()) && !StringUtils.isEmpty(model.getCreateDateTimeEnd())){
commonQueryHql.append("AND mes_production_assembly.createDatetime between :createDateTimeStart and :createDateTimeEnd ");
commonQueryHql.append("AND a.createDatetime between :createDateTimeStart and :createDateTimeEnd ");
}
//like 产线
if(!StringUtils.isEmpty(model.getWorkCenterCode())){
commonQueryHql.append("AND mes_production_assembly.workCenterCode like :workCenterCode ");
commonQueryHql.append("AND a.workCenterCode like :workCenterCode ");
}
//like 工位编号
if(!StringUtils.isEmpty(model.getWorkCellCode())){
commonQueryHql.append("AND mes_production_assembly.workCellCode like :workCellCode ");
commonQueryHql.append("AND a.workCellCode like :workCellCode ");
}
if (model.getMatchType()!=null){
commonQueryHql.append("AND mes_production_assembly.matchRule = :matchRule ");
commonQueryHql.append("AND a.matchRule = :matchRule ");
}
//like 加工单号
if(!StringUtils.isEmpty(model.getWorkOrderNo())){
commonQueryHql.append("AND mes_production_record.workOrderNo like :workOrderNo ");
commonQueryHql.append("AND b.workOrderNo like :workOrderNo ");
}
//like 设备名称
if(!StringUtils.isEmpty(model.getEquipmentName())){
commonQueryHql.append("AND mes_equipment.equipmentName like :equipmentName ");
commonQueryHql.append("AND c.equipmentName like :equipmentName ");
}
if (model.getEquipId()!=null){
commonQueryHql.append("AND mes_equipment.equipId = :equipId ");
commonQueryHql.append("AND c.equipId = :equipId ");
}
commonQueryHql.append("ORDER BY mes_production_assembly.createDatetime DESC ");
commonQueryHql.append("ORDER BY a.createDatetime DESC ");
Query dataQuery = entityManager.createQuery(dataQueryHql.append(commonQueryHql).toString(), AssemblyPartReportModel.class);
setQueryParams(dataQuery, model);
@ -139,9 +140,7 @@ public class AssemblyPartReportDaoImpl implements IAssemblyPartReportDao {
//本次查询满足条件的总数
int count = Integer.parseInt(String.valueOf(countQuery.getSingleResult()));
pager = PagerHelper.getPager(pager, count);
//查询本页数据
dataQuery.setMaxResults(pager.getPageSize());
dataQuery.setFirstResult(pager.getCurrentPage() * pager.getPageSize() - pager.getPageSize());
dataQuery.setFirstResult(pager.getStartRow()).setMaxResults(pager.getPageSize());
List<AssemblyPartReportModel> resultList = dataQuery.getResultList();
return new ListPager<>(resultList, pager);
}

Loading…
Cancel
Save