Browse Source

2025-10-17

过站采集报工增加上下岗操作
master
fengyuan_yang 3 months ago
parent
commit
5c068d684c
  1. 6
      src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java
  2. 38
      src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java
  3. 26
      src/main/resources/mapper/schedule/ScheduleMapper.xml

6
src/main/java/com/gaotao/modules/schedule/mapper/ScheduleMapper.java

@ -120,6 +120,12 @@ public interface ScheduleMapper {
**/
void updateOperatorTime(Map<String, Object> inData);
/**
* 只更新操作员上岗时间
* @param inData
**/
void updateOnDutyTime(Map<String, Object> inData);
/**
* TODO 按照派工单号查询派工单的数据
* @author LR

38
src/main/java/com/gaotao/modules/schedule/service/impl/ScheduleServiceImpl.java

@ -187,15 +187,37 @@ public class ScheduleServiceImpl implements ScheduleService {
@Override
@Transactional(rollbackFor = Exception.class)
public void batchUpdateOperatorTime(Map<String, Object> inData) {
String site = (String) inData.get("site");
String orderNo = (String) inData.get("orderNo");
Integer itemNo = (Integer) inData.get("itemNo");
// seqNo 可能是 String Integer需要安全转换
Object seqNoObj = inData.get("seqNo");
String seqNo = seqNoObj != null ? String.valueOf(seqNoObj) : null;
// 处理需要下岗的人员设置 is_on_duty = 'N'
@SuppressWarnings("unchecked")
List<Map<String, Object>> operatorList = (List<Map<String, Object>>) inData.get("operatorList");
if (operatorList != null && !operatorList.isEmpty()) {
for (Map<String, Object> operator : operatorList) {
operator.put("site", inData.get("site"));
operator.put("orderNo", inData.get("orderNo"));
operator.put("itemNo", inData.get("itemNo"));
operator.put("seqNo", inData.get("seqNo"));
scheduleMapper.updateOperatorTime(operator);
List<Map<String, Object>> offDutyList = (List<Map<String, Object>>) inData.get("offDutyList");
if (offDutyList != null && !offDutyList.isEmpty()) {
for (Map<String, Object> operator : offDutyList) {
operator.put("site", site);
operator.put("orderNo", orderNo);
operator.put("itemNo", itemNo);
operator.put("seqNo", seqNo);
operator.put("isOnDuty", "N");
scheduleMapper.removeOperatorOnDuty(operator);
}
}
// 处理只需要更新上岗时间的人员
@SuppressWarnings("unchecked")
List<Map<String, Object>> updateOnDutyList = (List<Map<String, Object>>) inData.get("updateOnDutyList");
if (updateOnDutyList != null && !updateOnDutyList.isEmpty()) {
for (Map<String, Object> operator : updateOnDutyList) {
operator.put("site", site);
operator.put("orderNo", orderNo);
operator.put("itemNo", itemNo);
operator.put("seqNo", seqNo);
scheduleMapper.updateOnDutyTime(operator);
}
}
}

26
src/main/resources/mapper/schedule/ScheduleMapper.xml

@ -514,6 +514,32 @@
</where>
</update>
<!--只更新操作员上岗时间-->
<update id="updateOnDutyTime" parameterType="java.util.Map">
UPDATE sfdc_operator_list
SET on_duty_time = #{onDutyTime}
<where>
<if test="id != null">
AND id = #{id}
</if>
<if test="site != null and site != ''">
AND site = #{site}
</if>
<if test="orderNo != null and orderNo != ''">
AND order_no = #{orderNo}
</if>
<if test="itemNo != null">
AND item_no = #{itemNo}
</if>
<if test="seqNo != null and seqNo != ''">
AND seq_no = #{seqNo}
</if>
<if test="operator != null and operator != ''">
AND operator = #{operator}
</if>
</where>
</update>
<!--按照派工单号查询派工单的数据-->
<select id="getScheduleDataBySeqNo" parameterType="java.lang.String" resultType="ScheduleData">
Select

Loading…
Cancel
Save