Browse Source

2024-08-20 优化

master
fengyuan_yang 1 year ago
parent
commit
afe8226dc2
  1. 2
      src/main/java/com/spring/modules/part/mapper/RoutingManagementMapper.java
  2. 21
      src/main/java/com/spring/modules/part/service/impl/RoutingManagementServiceImpl.java
  3. 85
      src/main/resources/mapper/part/RoutingManagementMapper.xml

2
src/main/java/com/spring/modules/part/mapper/RoutingManagementMapper.java

@ -177,7 +177,7 @@ public interface RoutingManagementMapper extends BaseMapper<RoutingHeaderEntity>
void syncSaveWorkCenter(List<WorkCenter> subList); void syncSaveWorkCenter(List<WorkCenter> subList);
void syncUpdateWorkCenter(List<WorkCenter> toUpdate);
void syncUpdateWorkCenter(WorkCenter toUpdate);
RoutingComponentEntity getRoutingComponentRowKeyAndVersion(@Param("operationId") Integer operationId); RoutingComponentEntity getRoutingComponentRowKeyAndVersion(@Param("operationId") Integer operationId);

21
src/main/java/com/spring/modules/part/service/impl/RoutingManagementServiceImpl.java

@ -1364,6 +1364,9 @@ public class RoutingManagementServiceImpl extends ServiceImpl<RoutingManagementM
List<LocationInformationEntity> subList = toUpdate.subList(i, end); List<LocationInformationEntity> subList = toUpdate.subList(i, end);
routingManagementMapper.syncUpdateLocation(subList); routingManagementMapper.syncUpdateLocation(subList);
} }
// for (LocationInformationEntity locationInformationEntity : toUpdate) {
// routingManagementMapper.syncUpdateLocation(locationInformationEntity);
// }
} }
} }
@ -1439,6 +1442,9 @@ public class RoutingManagementServiceImpl extends ServiceImpl<RoutingManagementM
List<PersonnelLevel> subList = toUpdate.subList(i, end); List<PersonnelLevel> subList = toUpdate.subList(i, end);
routingManagementMapper.syncUpdateLaborClass(subList); routingManagementMapper.syncUpdateLaborClass(subList);
} }
// for (PersonnelLevel personnelLevel : toUpdate) {
// routingManagementMapper.syncUpdateLaborClass(personnelLevel);
// }
} }
} }
@ -1507,12 +1513,15 @@ public class RoutingManagementServiceImpl extends ServiceImpl<RoutingManagementM
} }
// 修改 // 修改
if (!toUpdate.isEmpty()) { if (!toUpdate.isEmpty()) {
// 分批修改
int batchSize = 100; // 假设每批100条记录
for (int i = 0; i < toUpdate.size(); i += batchSize) {
int end = Math.min(i + batchSize, toUpdate.size());
List<WorkCenter> subList = toUpdate.subList(i, end);
routingManagementMapper.syncUpdateWorkCenter(subList);
// // 分批修改
// int batchSize = 100; // 假设每批100条记录
// for (int i = 0; i < toUpdate.size(); i += batchSize) {
// int end = Math.min(i + batchSize, toUpdate.size());
// List<WorkCenter> subList = toUpdate.subList(i, end);
//
// }
for (WorkCenter workCenter : toUpdate) {
routingManagementMapper.syncUpdateWorkCenter(workCenter);
} }
} }
} }

85
src/main/resources/mapper/part/RoutingManagementMapper.xml

@ -1140,6 +1140,17 @@
</foreach> </foreach>
</update> </update>
<!-- &lt;!&ndash; 批量更新 &ndash;&gt;-->
<!-- <update id="syncUpdateLocation" parameterType="LocationInformationEntity">-->
<!-- UPDATE location SET-->
<!-- location_name = #{locationName},-->
<!-- active = #{active},-->
<!-- warehouse_id = #{warehouseId},-->
<!-- location_type = #{locationType},-->
<!-- ifs_row_version = #{ifsRowVersion}-->
<!-- WHERE location_id = #{locationId} AND site = #{site}-->
<!-- </update>-->
<select id="getPLMLaborClasss" resultType="PersonnelLevel"> <select id="getPLMLaborClasss" resultType="PersonnelLevel">
select select
site, site,
@ -1187,6 +1198,16 @@
</foreach> </foreach>
</update> </update>
<!-- &lt;!&ndash; 批量更新 &ndash;&gt;-->
<!-- <update id="syncUpdateLaborClass" parameterType="PersonnelLevel">-->
<!-- UPDATE labor_class SET-->
<!-- level_desc = #{levelDesc},-->
<!-- active = #{active},-->
<!-- level_cost = #{levelCost},-->
<!-- ifs_row_version = #{ifsRowVersion}-->
<!-- WHERE level_id = #{levelId} AND site = #{site}-->
<!-- </update>-->
<select id="getPLMWorkCenters" resultType="WorkCenter"> <select id="getPLMWorkCenters" resultType="WorkCenter">
select select
site, site,
@ -1232,30 +1253,50 @@
</foreach> </foreach>
</insert> </insert>
<!-- &lt;!&ndash; 批量更新 &ndash;&gt;-->
<!-- <update id="syncUpdateWorkCenter" parameterType="java.util.List">-->
<!-- UPDATE work_center SET-->
<!-- <foreach item="item" index="index" collection="list" separator=",">-->
<!-- work_center_desc = #{item.workCenterDesc},-->
<!-- work_center_type_db = #{item.workCenterTypeDB},-->
<!-- work_center_type = #{item.workCenterType},-->
<!-- average_capacity = #{item.averageCapacity,jdbcType=DECIMAL},-->
<!-- efficiency = #{item.efficiency,jdbcType=DECIMAL},-->
<!-- utilization = #{item.utilization,jdbcType=DECIMAL},-->
<!-- capacity_type_db = #{item.capacityTypeDB},-->
<!-- capacity_type = #{item.capacityType},-->
<!-- um_id = #{item.umId},-->
<!-- active = #{item.active},-->
<!-- remark = #{item.remark},-->
<!-- pro_line_no = #{item.proLineNo},-->
<!-- can_create_new_roll_flag = #{item.canCreateNewRollFlag},-->
<!-- need_setup_flag = #{item.needSetupFlag},-->
<!-- ifs_row_version = #{item.ifsRowVersion}-->
<!-- </foreach>-->
<!-- WHERE-->
<!-- <foreach item="item" index="index" collection="list" open="(" separator=") OR (" close=")">-->
<!-- work_center_no = #{item.workCenterNo} AND site = #{item.site}-->
<!-- </foreach>-->
<!-- </update>-->
<!-- 批量更新 --> <!-- 批量更新 -->
<update id="syncUpdateWorkCenter" parameterType="java.util.List">
<update id="syncUpdateWorkCenter" parameterType="WorkCenter">
UPDATE work_center SET UPDATE work_center SET
<foreach item="item" index="index" collection="list" separator=",">
work_center_desc = #{item.workCenterDesc},
work_center_type_db = #{item.workCenterTypeDB},
work_center_type = #{item.workCenterType},
average_capacity = #{item.averageCapacity,jdbcType=DECIMAL},
efficiency = #{item.efficiency,jdbcType=DECIMAL},
utilization = #{item.utilization,jdbcType=DECIMAL},
capacity_type_db = #{item.capacityTypeDB},
capacity_type = #{item.capacityType},
um_id = #{item.umId},
active = #{item.active},
remark = #{item.remark},
pro_line_no = #{item.proLineNo},
can_create_new_roll_flag = #{item.canCreateNewRollFlag},
need_setup_flag = #{item.needSetupFlag},
ifs_row_version = #{item.ifsRowVersion}
</foreach>
WHERE
<foreach item="item" index="index" collection="list" open="(" separator=") OR (" close=")">
work_center_no = #{item.workCenterNo} AND site = #{item.site}
</foreach>
work_center_desc = #{workCenterDesc},
work_center_type_db = #{workCenterTypeDB},
work_center_type = #{workCenterType},
average_capacity = #{averageCapacity,jdbcType=DECIMAL},
efficiency = #{efficiency,jdbcType=DECIMAL},
utilization = #{utilization,jdbcType=DECIMAL},
capacity_type_db = #{capacityTypeDB},
capacity_type = #{capacityType},
um_id = #{umId},
active = #{active},
remark = #{remark},
pro_line_no = #{proLineNo},
can_create_new_roll_flag = #{canCreateNewRollFlag},
need_setup_flag = #{needSetupFlag},
ifs_row_version = #{ifsRowVersion}
WHERE work_center_no = #{workCenterNo} AND site = #{site}
</update> </update>
<select id="getRoutingComponentRowKeyAndVersion" resultType="RoutingComponentEntity"> <select id="getRoutingComponentRowKeyAndVersion" resultType="RoutingComponentEntity">

Loading…
Cancel
Save