mes_equipment_log mes_work_cell_scan_monitor_log 分表动态sql ; 支持云工厂分表

tags/yfai-pcn-ext-v2.3
王杰 7 months ago
parent cfed01aa5c
commit 2ef09dee56

@ -4,9 +4,11 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.daoimpl;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.dao.IMesEquipmentLogDao;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesEquipVariableCollectContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentVariable;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
@ -21,6 +23,9 @@ import java.util.stream.Collectors;
@Service
public class MesEquipmentLogDao implements IMesEquipmentLogDao {
@Value("${mes.sharding.append.org:}")
public String mesShardingAppendOrg;
@Autowired
private EntityManager entityManager;
@ -35,6 +40,7 @@ public class MesEquipmentLogDao implements IMesEquipmentLogDao {
builder.append(" select e.equip_variable_id, e.equip_variable_value, e.equip_variable_status, e.quality, e.modify_date_time, e.id ");
builder.append(" from mes_equipment_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(equipId);
builder.append(" e where e.organize_code = :organizeCode and e.variable_type = :variableType ");
@ -72,6 +78,7 @@ public class MesEquipmentLogDao implements IMesEquipmentLogDao {
for (int i = 0; i < equipmentLogIdMap.size(); i ++) {
builder.append(" update mes_equipment_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(equipId);
builder.append(" set equip_variable_status = :equipVariableStatus_");
builder.append(i);
@ -120,6 +127,7 @@ public class MesEquipmentLogDao implements IMesEquipmentLogDao {
builder.append(" select e.equip_variable_id, e.equip_variable_value, e.equip_variable_status, e.quality, e.modify_date_time, e.id ");
builder.append(" from mes_equipment_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(equipId);
builder.append(" e where e.organize_code = :organizeCode and e.variable_type = :variableType ");
if (equipVariableIdList.size() == 1) builder.append(" and e.equip_variable_id = :equipVariableId ");
@ -144,6 +152,7 @@ public class MesEquipmentLogDao implements IMesEquipmentLogDao {
builder.append(" select e.equip_variable_id, e.equip_variable_value, e.equip_variable_status, e.quality, e.modify_date_time, e.id ");
builder.append(" from mes_equipment_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(equipId);
builder.append(" e where e.organize_code = :organizeCode and e.variable_type = :variableType ");

@ -12,6 +12,7 @@ import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil;
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
@ -25,6 +26,9 @@ import java.util.stream.Collectors;
@Service
public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogDao {
@Value("${mes.sharding.append.org:}")
public String mesShardingAppendOrg;
@Autowired
private EntityManager entityManager;
@ -38,10 +42,11 @@ public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogD
StringBuffer builder = new StringBuffer();
builder.append(" insert into mes_work_cell_scan_monitor_");
builder.append(" insert into mes_work_cell_scan_monitor_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(resultBean.getOrganizeCode().toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(resultBean.getWorkCenterCode().toLowerCase());
builder.append("( id, organize_code, is_valid, is_deleted, create_user, create_date_time, modify_user, modify_date_time,");
builder.append("( description, remark, system_sync_date_time, system_sync_status,");
builder.append(" description, remark, system_sync_date_time, system_sync_status,");
builder.append(" area_code, work_center_code, work_cell_code, equipment_code, equipment_name, process_code, process_name, craft_code, craft_name,");
builder.append(" mould_record_id, scan_info, work_order_no, serial_number, product_sn, cust_sn, part_no, part_name,");
builder.append(" step_code, log_type, message, message_type, deal_status, org_work_code)");
@ -105,7 +110,8 @@ public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogD
StringBuffer builder = new StringBuffer();
builder.append(" update mes_work_cell_scan_monitor_");
builder.append(" update mes_work_cell_scan_monitor_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(workCenterCode.toLowerCase());
builder.append(" set system_sync_status = :systemSyncStatus , deal_status = :dealStatus1 ");
builder.append(" where organize_code = :organizeCode and deal_status = :dealStatus2 and work_cell_code = :workCellCode ");
@ -138,7 +144,8 @@ public class MesWorkCellScanMonitorLogDao implements IMesWorkCellScanMonitorLogD
StringBuffer builder = new StringBuffer();
builder.append(" update mes_work_cell_scan_monitor_");
builder.append(" update mes_work_cell_scan_monitor_log_");
if (!StringUtils.isEmpty(mesShardingAppendOrg) && mesShardingAppendOrg.toUpperCase().equals(CommonEnumUtil.TRUE_OR_FALSE.TRUE.name())) builder.append(organizeCode.toLowerCase()).append(MesPcnExtConstWords.E_UNDERLINE);
builder.append(workCenterCode.toLowerCase());
builder.append(" set work_order_no = :workOrderNo , serial_number = :serialNumber , product_sn = :productSn , cust_sn = :custSn , part_no = :partNo , part_name = :partName ,");
builder.append(" modify_user = :modifyUser , modify_date_time = :modifyDatetime , system_sync_status = :systemSyncStatus , deal_status = :dealStatus1 ");

Loading…
Cancel
Save