wangfei
2025-10-21 1496904805dff921b79504ed29a71d297a84e674
中空线-创建任务-领取任务确认按钮,前端限制避免多次调用接口
8个文件已修改
127 ■■■■ 已修改文件
UI-Project/src/lang/en.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/lang/kr.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/lang/py.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/lang/zh.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/ReportWork/reportWork.vue 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/hollow/hollowequipment.vue 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/hollow/hollowequipmenthree.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/views/hollow/hollowequipmenttwo.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI-Project/src/lang/en.js
@@ -804,7 +804,11 @@
        finegrinding: 'Fine grinding',
    },
    hellow: {
        Content:'内容',
        taskAlreadyClaimed: 'This task has already been claimed and cannot be performed again.',
        claimed: 'Already claimed',
        claimFailed: 'Failed to receive task',
        claimedTasksCleared: 'The received task status has been cleared',
        Content:'Content',
        idSame:'The glass ID for the entry task is the same',
        sizeSame:'There are glass pieces of the same specification inside the cage',
        projectMsg2:'Please select a label template',
UI-Project/src/lang/kr.js
@@ -805,6 +805,10 @@
          finegrinding: '정교하게 갈다',
      },
    hellow: {
        taskAlreadyClaimed: '이 작업은 이미 수령되었으며, 반복 수행할 수 없습니다.',
        claimed: '받음',
        claimFailed: '임무 받기 실패',
        claimedTasksCleared: '받은 임무 상태가 초기화되었습니다',
        content:'내용',
        idSame:'진입 작업 유리 ID가 동일합니다.',
        sizeSame:'우리 안에 동일한 규격의 유리가 존재합니다.',
UI-Project/src/lang/py.js
@@ -724,6 +724,10 @@
        finegrinding: '精磨',
    },
    hellow: {
        taskAlreadyClaimed: '该任务已领取,不可重复操作',
        claimed: '已领取',
        claimFailed: '领取任务失败',
        claimedTasksCleared: '已领取任务状态已清除',
        content:'内容',
        idSame:'进片任务玻璃ID相同',
        sizeSame:'笼内存在相同规格的玻璃',
UI-Project/src/lang/zh.js
@@ -809,6 +809,10 @@
          finegrinding: '精磨',
      },
    hellow: {
        taskAlreadyClaimed: '该任务已领取,不可重复操作',
        claimed: '已领取',
        claimFailed: '领取任务失败',
        claimedTasksCleared: '已领取任务状态已清除',
        content:'内容',
        idSame:'进片任务玻璃ID相同',
        sizeSame:'笼内存在相同规格的玻璃',
UI-Project/src/views/ReportWork/reportWork.vue
@@ -33,7 +33,7 @@
    </div>
    <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" >
      <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
        <el-table height="740" ref="table" :data="reportData"
        <el-table height="700" ref="table" :data="reportData"
          :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }">
          <el-table-column prop="teamsGroupsName" align="center" :label="$t('reportmanage.reporteam')"
            min-width="135" />
@@ -137,6 +137,18 @@
            </template>
          </el-table-column>
        </el-table>
      <div style="margin-top: 20px;margin-left: 40%;">
      <el-pagination
        v-model:current-page="currentPage"
        :page-size="pageSize"
        :size="large"
        :disabled="disabled"
        layout="prev, pager, next, jumper"
        :total="totalRecords"
        @current-change="handlePageChange"
        style="margin-top: 10px;"
    />
    </div>
      </div>
    </el-card>
  </div>
@@ -151,33 +163,11 @@
import { useI18n } from 'vue-i18n'
import { inject } from 'vue';
const globalDate = inject('globalDate');
const timeRange = ref([])
const currentPage = ref(1)
const totalRecords = ref(0)
const { t } = useI18n()
const report = ref({
  type: '8',
  status: '1',
  workingProcedure: '0',
});
const timeRange = ref([])
const reportData = ref([])
function formatTimestamp(timestamp) {
  const date = new Date(timestamp);
  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要加1,并补零
  const day = String(date.getDate()).padStart(2, '0'); // 补零
  const hours = String(date.getHours()).padStart(2, '0'); // 补零(如果需要显示时间)
  const minutes = String(date.getMinutes()).padStart(2, '0'); // 补零(如果需要显示时间)
  const seconds = String(date.getSeconds()).padStart(2, '0'); // 补零(如果需要显示时间)
  return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
// 格式化后端时间并计算一周前的时间
const defaultTime = ref<[Date, Date]>([new Date(), new Date()]);
function parseAndSetTime() {
  const backendTime = new Date(globalDate);
  const oneWeekAgo = new Date(backendTime.getTime() - 7 * 24 * 60 * 60 * 1000); // 减去7天
  oneWeekAgo.setHours(0, 0, 0, 0);
  timeRange.value = [formatTimestamp(oneWeekAgo), formatTimestamp(backendTime)];
  window.localStorage.setItem('startTime', formatTimestamp(oneWeekAgo))
}
// const timeRange = ref([formatTimestamp(startDate), formatTimestamp(globalDate)]);
const selectOptionsa = ref([]);
const selectOptionsb = ref([]);
@@ -192,6 +182,11 @@
const inputValuesb = reactive({});
const selectedType = ref(true);
const selectedStatus = ref(false);
const report = ref({
  type: '8',
  status: '1',
  workingProcedure: '0',
});
// 查询数据
const selectReportData = async () => {
  const response = await request.post("/cacheVerticalGlass/damage/selectDamage", {
@@ -271,6 +266,12 @@
    console.error('Error fetching options:', error);
  }
};
const handlePageChange = (newPage) => {
currentPage.value = newPage;
window.localStorage.setItem('pagenumber', currentPage.value)
historicala(currentPage.value);
Dailya(currentPage.value);
};
const handleInputChangea = (value, rowId) => {
  // 更新对应行的 select 值  
  selectValuesa[rowId] = value;
@@ -333,6 +334,25 @@
//     })); 
// };
// let socket;
function formatTimestamp(timestamp) {
  const date = new Date(timestamp);
  const year = date.getFullYear();
  const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要加1,并补零
  const day = String(date.getDate()).padStart(2, '0'); // 补零
  const hours = String(date.getHours()).padStart(2, '0'); // 补零(如果需要显示时间)
  const minutes = String(date.getMinutes()).padStart(2, '0'); // 补零(如果需要显示时间)
  const seconds = String(date.getSeconds()).padStart(2, '0'); // 补零(如果需要显示时间)
  return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
// 格式化后端时间并计算一周前的时间
const defaultTime = ref<[Date, Date]>([new Date(), new Date()]);
function parseAndSetTime() {
  const backendTime = new Date(globalDate);
  const oneWeekAgo = new Date(backendTime.getTime() - 7 * 24 * 60 * 60 * 1000); // 减去7天
  oneWeekAgo.setHours(0, 0, 0, 0);
  timeRange.value = [formatTimestamp(oneWeekAgo), formatTimestamp(backendTime)];
  window.localStorage.setItem('startTime', formatTimestamp(oneWeekAgo))
}
onUnmounted(() => {
  socket.close();
});
UI-Project/src/views/hollow/hollowequipment.vue
@@ -719,7 +719,7 @@
    </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="finisha">
        <el-button type="primary" @click="finisha" :disabled="isSubmitting">
          {{ $t('reportWork.sure') }}
        </el-button>
        <el-button @click="dialogFormVisiblec = false">{{ $t('reportWork.cancel') }}</el-button>
@@ -1057,6 +1057,7 @@
const dialogFormVisiblec = ref(false)
const dialogFormVisibled = ref(false)
const dialogFormVisiblee = ref(false)
const isSubmitting = ref(false)
const add = ref(false)
const adda = ref(false)
const currentRow = reactive({});
@@ -1823,9 +1824,15 @@
      cell.value = '';
      formulaName.value = '';
      totalPairQuantity.value = '';
      isSubmitting.value = true
    } else {
      ElMessage.error(response.message);
      isSubmitting.value = true
    }
  } catch (error) {
      ElMessage.error(response.message);
  } finally {
    isSubmitting.value = false
  }
}
// 强制出片
UI-Project/src/views/hollow/hollowequipmenthree.vue
@@ -322,7 +322,7 @@
    </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="finisha">
        <el-button type="primary" @click="finisha" :disabled="isSubmitting">
          {{ $t('reportWork.sure') }}
        </el-button>
        <el-button @click="dialogFormVisiblec = false">{{ $t('reportWork.cancel') }}</el-button>
@@ -554,6 +554,7 @@
const blindc = ref(false)
const mulan = ref(false)
const isLoading = ref(true)
const isSubmitting = ref(false)
const activeTab = ref('')
const tabList = ref([])
const internalInstance = getCurrentInstance()
@@ -1072,6 +1073,10 @@
    ElMessage.error(t('hellow.cpairQuantity'))
    return
  }
  if (isSubmitting.value) {
    return
  }
  isSubmitting.value = true
    try {
      var url="/hollowGlass/hollowGlassOutRelationInfo/receiveTask?cell="+ 932 + "&flowCardId=" + flowCardId + "&totalPairQuantity=" + totalPairQuantity.value+ "&formulaId=" + -1;
      const response = await request.post(url)
@@ -1081,10 +1086,16 @@
      cell.value = '';
      formulaName.value = '';
      totalPairQuantity.value = '';
      isSubmitting.value = true
    } else {
      ElMessage.error(response.message);
      isSubmitting.value = true
        }
      } catch (error) {
      }
      ElMessage.error(response.message);
      }finally {
    isSubmitting.value = false
  }
    }
// 强制出片
const finishb = async () => {
UI-Project/src/views/hollow/hollowequipmenttwo.vue
@@ -323,7 +323,7 @@
    </div>
    <template #footer>
      <div id="dialog-footer">
        <el-button type="primary" @click="finisha">
        <el-button type="primary" @click="finisha" :disabled="isSubmitting">
          {{ $t('reportWork.sure') }}
        </el-button>
        <el-button @click="dialogFormVisiblec = false">{{ $t('reportWork.cancel') }}</el-button>
@@ -523,6 +523,7 @@
const blindb = ref(false)
const blindc = ref(false)
const mulan = ref(false)
const isSubmitting = ref(false)
const isLoading = ref(true)
const activeTab = ref('')
const tabList = ref([])
@@ -1078,6 +1079,10 @@
    ElMessage.error(t('hellow.phollowformula'))
    return
  }
  if (isSubmitting.value) {
    return
  }
  isSubmitting.value = true
  try {
    var url = "/hollowGlass/hollowGlassOutRelationInfo/receiveTask?cell=" + 931 + "&flowCardId=" + flowCardId + "&totalPairQuantity=" + totalPairQuantity.value + "&formulaId=" + id;
    const response = await request.post(url)
@@ -1087,9 +1092,15 @@
      cell.value = '';
      formulaName.value = '';
      totalPairQuantity.value = '';
      isSubmitting.value = true
    } else {
      ElMessage.error(response.message);
      isSubmitting.value = true
    }
  } catch (error) {
      ElMessage.error(response.message);
  } finally {
    isSubmitting.value = false
  }
}