廖井涛
2025-03-21 b8982b86a15d186c4cf6144fface700d9769fa95
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue
@@ -36,8 +36,6 @@
  list: null,
})
const getTableRow = (row, type) => {
  let startTime = form.date1[0]
  let endTime = form.date1[1]
  switch (type) {
    case 'select' : {
      router.push({path: '/main/processCard/SelectDetailProcessCard', query: {processId: row.processId}})
@@ -114,55 +112,42 @@
let pageNum = ref(1)
let pageState = null
//获取七天前到当前时间
function getNowTime() {
  const start = new Date(new Date().getTime() - 3600 * 1000 * 24 * 15)
      .toISOString()
      .replace('T', ' ')
      .slice(0, 10) //默认开始时间7天前
  const end = new Date(new Date().getTime())
      .toISOString()
      .replace('T', ' ')
      .slice(0, 10)//默认结束时间当前时间
  return [start, end]
}
//第一次加载获取近七天时间和默认状态
if (orderInfo.workOrderDate[0]=="" && orderInfo.workOrderDate[1]==""){
  orderInfo.workOrderDate=getNowTime()
}
let startTime = orderInfo.workOrderDate[0]
let endTime = orderInfo.workOrderDate[1]
let total = reactive({
  pageTotal: 0,
  dataTotal: 0,
  pageSize: 100
})
const getFlowCardList = async () => {
//第一次加载数据
request.post(`/processCard/flowCard/1/${total.pageSize}/${startTime}/${endTime}`, filterData.value).then((res) => {
  await request.post(`/processCard/flowCard/1/${total.pageSize}/${orderInfo.workOrderDate}`, filterData.value).then((res) => {
  if (res.code == 200) {
    total.dataTotal = res.data.total.total * 1
    total.pageTotal = res.data.total.pageTotal
    pageTotal.value = res.data.total
    produceList = produceList.value.concat(deepClone(res.data.data))
    xGrid.value.reloadData(produceList)
    gridOptions.loading = false
  } else {
    ElMessage.warning(res.msg)
  }
    if (res.code == 200) {
      total.dataTotal = res.data.total.total * 1
      total.pageTotal = res.data.total.pageTotal
      orderInfo.workOrderDate = res.data.selectDate
      pageTotal.value = res.data.total
      produceList.value = produceList.value.concat(deepClone(res.data.data))
      xGrid.value.loadData(produceList.value)
    } else {
      ElMessage.warning(res.msg)
    }
  })
}
onMounted(async () => {
  filterData.value = orderInfo.selectProcessCardFilter.data
  await getFlowCardList()
  orderInfo.selectProcessCardFilter.list.forEach(item =>{
    xGrid.value.getColumnByField(item.field).filters = item.column.filters
  })
})
//页脚翻页查询
const selectPageList = () => {
  let startTime = orderInfo.workOrderDate[0]
  let endTime = orderInfo.workOrderDate[1]
  request.post(`/processCard/flowCard/${pageNum.value}/${total.pageSize}/${startTime}/${endTime}`, filterData.value).then((res) => {
  request.post(`/processCard/flowCard/${pageNum.value}/${total.pageSize}/${orderInfo.workOrderDate}`, filterData.value).then((res) => {
    if (res.code == 200) {
      produceList = deepClone(res.data.data)
      xGrid.value.reloadData(produceList)
      produceList.value = deepClone(res.data.data)
      xGrid.value.loadData(produceList.value)
    } else {
      ElMessage.warning(res.msg)
    }
@@ -172,9 +157,7 @@
//点击查询
const getWorkOrder = () => {
  let startTime = orderInfo.workOrderDate[0]
  let endTime = orderInfo.workOrderDate[1]
  request.post(`/processCard/flowCard/${pageNum.value}/${total.pageSize}/${startTime}/${endTime}`, filterData.value).then((res) => {
  request.post(`/processCard/flowCard/${pageNum.value}/${total.pageSize}/${orderInfo.workOrderDate}`, filterData.value).then((res) => {
    if (res.code == 200) {
      total.dataTotal = res.data.total.total * 1
      total.pageTotal = res.data.total.pageTotal
@@ -215,18 +198,17 @@
    filterData.value[column.property] = value
  }
//获取选中时间
  let startTime = orderInfo.workOrderDate[0]
  let endTime = orderInfo.workOrderDate[1]
  request.post(`/processCard/flowCard/1/${total.pageSize}/${startTime}/${endTime}`, filterData.value).then((res) => {
  request.post(`/processCard/flowCard/1/${total.pageSize}/${orderInfo.workOrderDate}`, filterData.value).then((res) => {
    if (res.code == 200) {
      total.dataTotal = res.data.total.total*1
      total.pageTotal=parseInt(res.data.total)
      pageNum.value=1
      produceList = deepClone(res.data.data)
      xGrid.value.reloadData(produceList)
      produceList.value = deepClone(res.data.data)
      xGrid.value.loadData(produceList.value)
      gridOptions.loading=false
      orderInfo.selectProcessCardFilter.list = xGrid.value.getCheckedFilters()
      orderInfo.selectProcessCardFilter.data = filterData.value
    } else {
      ElMessage.warning(res.msg)
    }
@@ -242,7 +224,6 @@
//子组件接收参数
const xGrid = ref()
const gridOptions = reactive({
  loading: true,
  border: "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
@@ -277,6 +258,8 @@
    {type: 'seq', fixed: "left", title: t('basicData.Number'), width: 50},
    {field: 'orderId', title: t('order.orderId'), filters: [{data: ''}], slots: {filter: 'num1_filter'}, width: 110},
    {field: 'order.customerName', title: t('processCard.customerName'), filters: [{data: ''}], slots: {filter: 'num1_filter'}, width: 110},
    {field: 'order.batch', title: t('order.batch'), filters: [{data: ''}], slots: {filter: 'num1_filter'}, width: 110},
    {
      field: 'processId',
      width: 140,
@@ -312,6 +295,7 @@
  toolbarConfig: {
    buttons: [
      {code: 'update', name: t('processCard.composing'), status: 'primary'},
      {code: 'revoke', name: t('processCard.revoke'), status: 'primary'},
      {code: 'delete', name: t('basicData.delete'), status: 'primary'},
      {code: 'rack', name: t('合架'), status: 'primary'},
    ],
@@ -376,6 +360,43 @@
              } else {
                ElMessage.warning(t('basicData.msg.saveFail'))
              }
            })
          }
          return;
        }
        case 'revoke': {
          const $table = xGrid.value
          if ($table) {
            const selectRecords = $table.getCheckboxRecords()
            if (selectRecords.length == 0) {
              ElMessage.warning(t('processCard.pleaseCheckTheRequiredData'))
              return;
            }
            let composingData = ref({
              composing: selectRecords,
            })
            selectRecords.forEach(item => {
                if (item.layoutStatus == "已排版"){
                  ElMessage.warning(t('processCard.notSelectTheOptionData'))
                  return;
                }
            });
            //撤销可排版状态
            request.post("/processCard/revokeComposing", composingData.value).then((res) => {
              if (res.code == 200 && res.data === true) {
                ElMessage.success(t('basicData.msg.saveSuccess'))
                router.push({
                  path: '/main/processCard/SelectProcessCard',
                  query: {random: Math.random()}
                })
              } else {
                ElMessage.warning("撤销失败,请检查是否已生成工程号")
              }
            })
@@ -537,9 +558,10 @@
        <template #num1_filter="{ column, $panel }">
          <div>
            <div v-for="(option, index) in column.filters" :key="index">
              <input v-model="option.data" type="text"
                     @keyup.enter.native="$panel.confirmFilter()"
                     @input="changeFilterEvent($event, option, $panel)"/>
              <input
                  v-model="option.data"
                  @keyup.enter.native="$panel.confirmFilter()"
                  @input="changeFilterEvent($event, option, $panel)"/>
            </div>
          </div>
        </template>