guoyuji
2024-04-19 5314634fbbe6fd099d9b134614dba450cba2b5b9
north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue
@@ -52,12 +52,24 @@
let total = reactive({
  pageTotal : 0,
  dataTotal : 0,
  pageSize : 2
  pageSize : 100
})
let filterData = ref({
})
const values = ref('')
const selectOptions = [
  {
    value: '库存',
    label: '库存'
  },
  {
    value: '工程',
    label: '工程',
  }
]
let selectDate = ref(["",""])
let BasicData = ref([])
@@ -72,9 +84,11 @@
  {field: 'materialCode', width: '150',title: '物料编码', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'producer', width: '100',title: '产地', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'id',width: '100', title: '库存编号', sortable: true,showOverflow:"ellipsis",filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'projectNo',width: '100', title: '工程号', sortable: true,showOverflow:"ellipsis",filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  //{field: 'safetyStock', width: '100',title: '安全库存', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'inventoryQuantity',width: '100', title: '库存数量', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'availableQuantity', width: '100',title: '可用库存', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'planQuantity', width: '100',title: '计划数量', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'totalArea',width: '100', title: '总面积', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
  {field: 'dateOfManufacture',width: '100', title: '生产日期', sortable: true},
  {field: 'qualityGuaranteePeriod',width: '100', title: '保质期', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
@@ -100,6 +114,7 @@
      gridOptions.columns.push(aa)
    }
    values.value='库存'
    getInventoryWorks()
  }else{
@@ -110,10 +125,10 @@
const getInventoryWorks = () => {
  request.post(`/MaterialInventory/getSelectMaterialInventoryDate/1/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
    if(res.code==200){
      console.log(res.data)
      materialStore.value=[]
      for (let i=0;i<res.data.data.length;i++){
        materialStore.value[i]=(res.data.data[i])
@@ -136,11 +151,9 @@
}
const getInventoryWorkPaging = () => {
  console.log(filterData.value)
  request.post(`/MaterialInventory/getSelectMaterialInventoryDate/${pageNum.value}/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
    if(res.code==200){
      console.log(res.data)
      materialStore.value=[]
      for (let i=0;i<res.data.data.length;i++){
        materialStore.value[i]=(res.data.data[i])
@@ -161,6 +174,42 @@
  })
}
const selectInventoryWork = () => {
  if(values.value==='库存'){
    getInventoryWorks()
  }else{
    getInventoryEngineeringWork()
  }
}
const getInventoryEngineeringWork = () => {
    request.post(`/MaterialInventory/getSelectMaterialInventoryEngineeringDate/${pageNum.value}/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
      if(res.code==200){
        materialStore.value=[]
        for (let i=0;i<res.data.data.length;i++){
          materialStore.value[i]=(res.data.data[i])
          materialStore.value[i].json=(JSON.parse(res.data.data[i].json))
        }
        total.dataTotal = res.data.total.total*1
        total.pageTotal= res.data.total.pageTotal
        pageNum.value=1
        selectDate.value = res.data.selectDate
        produceList = deepClone(materialStore.value)
        xGrid.value.loadData(produceList)
        gridOptions.loading=false
      }else{
        ElMessage.warning(res.msg)
        router.push("/login")
      }
    })
}
const selectOrderList = ()=>{
@@ -176,7 +225,11 @@
        gridOptions.columns.push(aa)
      }
      getInventoryWorkPaging()
      if(values.value==='库存'){
        getInventoryWorkPaging()
      }else{
        getInventoryEngineeringWork()
      }
    }else{
      ElMessage.warning(res.msg)
@@ -204,7 +257,7 @@
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  rowConfig: {isCurrent: true, isHover: true,height: 30},//鼠标移动或选择高亮
  id: 'CustomerList',
  showFooter: true,//显示脚
  printConfig: {},
@@ -273,16 +326,30 @@
          }
          let id = ""
          const array = [];
          for (let i = 0; i < selectRecords.length; i++) {
            array.push(selectRecords[i].id)
            if (i + 1 === selectRecords.length) {
              id += selectRecords[i].id
            } else {
              id += selectRecords[i].id + "|"
          if (values.value==='库存'){
            for (let i = 0; i < selectRecords.length; i++) {
              array.push(selectRecords[i].id)
              if (i + 1 === selectRecords.length) {
                id += selectRecords[i].id
              } else {
                id += selectRecords[i].id + "|"
              }
            }
          }else{
            for (let i = 0; i < selectRecords.length; i++) {
              array.push(selectRecords[i].useId)
              if (i + 1 === selectRecords.length) {
                id += selectRecords[i].useId
              } else {
                id += selectRecords[i].useId + "|"
              }
            }
          }
          router.push({path: '/main/ingredientsStock/CreateOutbound', query: {id: id}})
          router.push({path: '/main/ingredientsStock/CreateOutbound', query: {id: id,type:values.value}})
          break
@@ -296,7 +363,6 @@
          request.get(`/BasicWarehouse/BasicWarehouseType/${value.value}`).then((res) => {
            if(res.code==200){
              gridOption.columns.splice(0,gridOption.columns.length)
              console.log(res.data)
              BasicData.value = res.data
              //添加列
              gridOption.columns=arr.slice()
@@ -374,7 +440,7 @@
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  rowConfig: {isCurrent: true, isHover: true,height: 30},//鼠标移动或选择高亮
  id: 'CustomerList',
  showFooter: true,//显示脚
  printConfig: {},
@@ -451,11 +517,9 @@
//数据绑定
const getStoreWorks = () => {
  console.log(filterDatas.value)
  request.post(`/MaterialStore/getSelectMaterialStore/1/${total.pageSize}`,filterDatas.value).then((res) => {
    if(res.code==200){
      console.log(res.data)
      materialStores.value=[]
      for (let i=0;i<res.data.data.length;i++){
        materialStores.value[i]=JSON.parse(res.data.data[i].json)
@@ -482,7 +546,6 @@
      switch (code) {
        case 'add': {
          const selectRecords = $grid.getRadioRecord()
          console.log(selectRecords)
          if (selectRecords == null) {
            ElMessage.warning(t('productStock.unselectedData'))
            return
@@ -503,15 +566,9 @@
            ElMessage.error("请输入数量")
            return
          }
          const materialRequisitionTeam = titleUploadData.value.dateOfManufacture
          if(materialRequisitionTeam === null || materialRequisitionTeam === undefined || materialRequisitionTeam === ''){
            ElMessage.error("请选中生产日期")
            return
          }
          const orderId = titleUploadData.value.qualityGuaranteePeriod
          if(orderId === null || orderId === undefined || orderId === ''){
            ElMessage.error("请输入保质期")
            return
          const  dateOfManufacture= titleUploadData.value.dateOfManufacture
          if(dateOfManufacture === null || dateOfManufacture === undefined || dateOfManufacture === ''){
            titleUploadData.value.dateOfManufacture=null
          }
          const inventoryArea = titleUploadData.value.inventoryArea
@@ -529,10 +586,6 @@
          })
          console.log(flowData)
          request.post("/MaterialInventory/saveMaterialInventory", flowData.value).then((res) => {
            if(res.code==200){
              ElMessage.success('保存成功')
@@ -566,7 +619,18 @@
    />
    <el-button @click="changeDate" style="margin-top: -5px"  id="searchButton" type="primary" :icon="Search">查询</el-button>
    <div>
      <el-row>
        <el-select v-model="values" placeholder="请选择类别" @change="selectInventoryWork">
          <el-option
              v-for="item in selectOptions"
              :key="item.value"
              :label="item.label"
              :value="item.value"
          />
        </el-select>
      </el-row>
    </div>
    <vxe-grid
        max-height="100%"
@@ -670,9 +734,9 @@
            </el-select>
        </el-row>
      </div>
      <div class="main-div-customers">
      <div class="main-div-customers" style="height: 350px">
        <vxe-grid
            height="400px"
            height="100%"
            class="mytable-scrollbar"
            ref="xGrids"
            v-bind="gridOption"