廖井涛
2024-10-14 6ac9391135ded7e668d2d42f408f4a6c59b27d23
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintFlowCard.vue
@@ -12,19 +12,29 @@
import TagStyleDesigner from "@/components/pp/TagStyleDesigner.vue"
import OrderSortDetail from '@/components/pp/OrderSortDetail.vue'
import companyInfo from "@/stores/sd/companyInfo"
import useUserInfoStore from "@/stores/userInfo";
import useOrderInfoStore from "@/stores/sd/order/orderInfo"
//语言获取
const {t} = useI18n()
const company = companyInfo()
let router = useRouter()
const printVisible= ref(false)
const orderInfo = useOrderInfoStore()
const userStore = useUserInfoStore()
const userId = userStore.user.userId
let inquiryMode = company.printLabel.getSelectFlowCard;
let isChecked= ref(true)
// let checkedValue = inquiryMode
const checkedValue = ref(inquiryMode)
const checkedValue = ref("")
if (userId==="A071" || userId==="A107"){
   checkedValue.value = ref(2)
}
else {
   checkedValue.value = ref(inquiryMode)
}
//排序
let editRow = ref({
  orderId:null,
@@ -87,9 +97,11 @@
}
//第一次加载获取近七天时间和默认状态
form.date1 = getNowTime()
let startTime = form.date1[0]
let endTime = form.date1[1]
if (orderInfo.workOrderDate[0]=="" && orderInfo.workOrderDate[1]==""){
  orderInfo.workOrderDate=getNowTime()
}
let startTime = orderInfo.workOrderDate[0]
let endTime = orderInfo.workOrderDate[1]
let orderId=form.orderId
let project=form.project
@@ -99,12 +111,19 @@
if (project==''){
  project=null
}
//第一次加载数据
request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}`, filterData.value).then((res) => {
request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}/${userId}`, filterData.value).then((res) => {
  if (res.code == 200) {
    produceList = produceList.value.concat(deepClone(res.data.data))
    gridOptions.toolbarConfig.buttons[2].visible=false
    let roleId=res.data.user
    if (roleId=='1' || roleId=='17'){
      gridOptions.toolbarConfig.buttons[2].visible=true
    }
    xGrid.value.reloadData(produceList)
    gridOptions.loading = false
  } else {
@@ -115,8 +134,8 @@
//点击查询
const getWorkOrder = () => {
  let startTime = form.date1[0]
  let endTime = form.date1[1]
  let startTime = orderInfo.workOrderDate[0]
  let endTime = orderInfo.workOrderDate[1]
  let orderId=form.orderId
  let project=form.project
@@ -126,7 +145,7 @@
  if (project==''){
    project=null
  }
  request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}`, filterData.value).then((res) => {
  request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}/${userId}`, filterData.value).then((res) => {
    if (res.code == 200) {
      xGrid.value.loadData(res.data.data)
@@ -211,6 +230,8 @@
    buttons: [
      {code: 'editCheckbox', name: t('basicData.edit'), status: 'primary'},
      {'code': 'titleStyle', 'name': t('processCard.labelStyle'),status: 'primary'},
      {code: 'detailsPrint', name: '明细打印', status: 'primary'},
      {code: 'detailsProcessPrint', name: '明细分架打印', status: 'primary'},
    ],
@@ -261,10 +282,51 @@
            }
          }
          let array = orderIdList.split('|');
         router.push({path: '/main/processCard/PrintFlowCard', query: {printList: JSON.stringify(selectRecords),checkedValue:checkedValue.value}})
         router.push({path: '/main/processCard/PrintFlowCard', query: {printList: JSON.stringify(selectRecords),checkedValue:checkedValue.value.value}})
          return;
        }
        case 'detailsPrint': {
          const selectRecords = $grid.getCheckboxRecords()
          if(selectRecords===null ||selectRecords===''||selectRecords.length===0){
            ElMessage.warning(t('searchOrder.msgList.checkOrder'))
            return
          }
          let orderIdList = ""
          for (let i = 0; i < selectRecords.length; i++) {
            if (i + 1 === selectRecords.length) {
              orderIdList += selectRecords[i].order_id
            } else {
              orderIdList += selectRecords[i].order_id + "|"
            }
          }
          let array = orderIdList.split('|');
          router.push({path: '/main/processCard/PrintFlowCardDetails', query: {printList: JSON.stringify(selectRecords),checkedValue:checkedValue.value.value,type:1}})
          return;
        }
        case 'detailsProcessPrint': {
          const selectRecords = $grid.getCheckboxRecords()
          if(selectRecords===null ||selectRecords===''||selectRecords.length===0){
            ElMessage.warning(t('searchOrder.msgList.checkOrder'))
            return
          }
          let orderIdList = ""
          for (let i = 0; i < selectRecords.length; i++) {
            if (i + 1 === selectRecords.length) {
              orderIdList += selectRecords[i].order_id
            } else {
              orderIdList += selectRecords[i].order_id + "|"
            }
          }
          let array = orderIdList.split('|');
          router.push({path: '/main/processCard/PrintFlowCardDetails', query: {printList: JSON.stringify(selectRecords),checkedValue:checkedValue.value.value,type:2}})
          return;
        }
      }
    }
  }
@@ -277,7 +339,7 @@
    <div id="selectForm">
      <el-row :gutter="0">
        <el-date-picker
            v-model="form.date1"
            v-model="orderInfo.workOrderDate"
            :start-placeholder="$t('basicData.startDate')"
            :end-placeholder="$t('basicData.endDate')"
            format="YYYY/MM/DD"
@@ -295,7 +357,7 @@
            :icon="Search"
            type="primary" @click="getWorkOrder">{{ $t('basicData.search') }}
        </el-button>
        <vxe-checkbox style="margin-top:6px;margin-left:10px " v-if="!(checkedValue === 2 && inquiryMode === 2)" v-model="checkedValue"  content="合并" :checked-value="1" :unchecked-value="2" ></vxe-checkbox>
        <vxe-checkbox style="margin-top:6px;margin-left:10px " v-if="!(checkedValue.value === 2 && inquiryMode === 2)" v-model="checkedValue.value"  content="合并" :checked-value="1" :unchecked-value="3" ></vxe-checkbox>
      </el-row>
    </div>
    <vxe-grid
@@ -326,7 +388,9 @@
      <template #num1_filter="{ column, $panel }">
        <div>
          <div v-for="(option, index) in column.filters" :key="index">
            <input v-model="option.data" type="text" @input="changeFilterEvent($event, option, $panel)"/>
            <input v-model="option.data" type="text"
                   @keyup.enter.native="$panel.confirmFilter()"
                   @input="changeFilterEvent($event, option, $panel)"/>
          </div>
        </div>
      </template>