renkang
2025-01-24 d492850f1cc64ddcfaf43798af9c76c2505414fd
admin/src/views/stock/assetList.vue
@@ -7,19 +7,30 @@
      <el-button>导入</el-button>
    </div>
    <el-table v-loading="loading" :data="list" stripe>
      <el-table-column prop="platformName" label="资产编码" min-width="100" show-overflow-tooltip />
      <el-table-column prop="platformGroupName" label="资产名称" min-width="100" show-overflow-tooltip />
      <el-table-column prop="carCodeFront" label="条码" min-width="100" show-overflow-tooltip />
      <el-table-column prop="carCodeBack" label="品牌" min-width="100" show-overflow-tooltip />
      <el-table-column prop="param1" label="规格型号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="param2" label="单位" min-width="70" show-overflow-tooltip />
      <el-table-column prop="param2" label="安全库存(下限)" min-width="120" show-overflow-tooltip />
      <el-table-column prop="param2" label="安全库存(上限)" min-width="120" show-overflow-tooltip />
      <el-table-column prop="param2" label="状态" min-width="80" show-overflow-tooltip />
      <el-table-column prop="code" label="资产编码" min-width="100" show-overflow-tooltip />
      <el-table-column prop="name" label="资产名称" min-width="100" show-overflow-tooltip />
      <el-table-column prop="qrcode" label="条码" min-width="100" show-overflow-tooltip />
      <el-table-column prop="brand" label="品牌" min-width="100" show-overflow-tooltip />
      <el-table-column prop="attr" label="规格型号" min-width="100" show-overflow-tooltip />
      <el-table-column prop="unitName" label="单位" min-width="70" show-overflow-tooltip />
      <el-table-column prop="minStock" label="安全库存(下限)" min-width="120" show-overflow-tooltip />
      <el-table-column prop="maxStock" label="安全库存(上限)" min-width="120" show-overflow-tooltip />
      <el-table-column label="状态" min-width="80">
        <template v-slot="{ row }">
          <el-switch
            v-model="row.status"
            active-color="#13ce66"
            inactive-color="#ff4949"
            @change="changeStatus($event, row)"
            :active-value="0"
            :inactive-value="1">
          </el-switch>
        </template>
      </el-table-column>
      <el-table-column prop="workTime" label="操作" min-width="100" show-overflow-tooltip>
        <template v-slot="{ row }">
          <span class="primaryColor pointer">编辑</span>
          <span class="red pointer">删除</span>
          <el-button type="text" @click="$refs.newMaterial.open('编辑物料', {...row, cateArr: [row.parentCateId, row.cateId] })">编辑</el-button>
          <el-button type="text" @click="dele(row.id)">删除</el-button>
        </template>
      </el-table-column>
    </el-table>
@@ -37,7 +48,7 @@
import dayjs from 'dayjs'
import duration from 'dayjs/plugin/duration'
dayjs.extend(duration)
import { platformLogPage, getPlatformGroupList } from '@/api'
import { fetchList, updateStatus, deleteById } from '@/api/ywMaterial'
export default {
  components: {
    Pagination,
@@ -58,77 +69,61 @@
      queryFormConfig: {
        formItems: [
          {
            filed: 'carCodeFront',
            filed: 'code',
            type: 'input',
            label: '资产信息',
            placeholder: '请输入资产名称/编码'
            label: '名称/编码',
            placeholder: '请输入名称/编码'
          },
          {
            filed: 'carCodeFront',
            filed: 'attr',
            type: 'input',
            label: '规格型号',
          },
          {
            filed: 'platformGroupId',
            type: 'select',
            label: '所属项目',
            options: []
          }
        ],
        online: true
        ]
      }
    }
  },
  created() {
    // this.getList()
    // this.getGroupList()
    this.getList()
  },
  methods: {
    handleSub() {
      this.$refs.ruleForm.validate((valid) => {
        if (valid) {
          alert('submit!')
        }
      })
    },
    handleEx() { },
    getGroupList() {
      getPlatformGroupList({ queryData: 0, queryType: 0 }).then(res => {
        this.queryFormConfig.formItems[1].options = res.map(i => {
          return {
            value: i.id,
            label: i.name
          }
        })
        // this.queryFormConfig.formItems[1].options.unshift({ value: '', label: '全部月台组' })
      })
    },
    getList(page) {
      const { pagination, filters } = this
      this.loading = true
      platformLogPage({
      fetchList({
        model: {
          ...filters,
          queryStatus: '6,7,8',
          beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
          beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null,
          ...filters
        },
        sorts: [{ direction: 'DESC', property: 'param1' }],
        capacity: pagination.pageSize,
        page: page || pagination.page,
      }).then(res => {
        this.loading = false
        this.list = res.records || []
        this.list.forEach(item => {
          item.inTypeTemp = item.inType == 0 ? '整托盘' : '件烟'
          item.taskOrigin = 'WMS获取'
          item.workTime = dayjs.duration(item.param3, 'seconds').format('H时m分s秒')
        })
        this.pagination.total = res.total || 0
      }, () => {
        this.loading = false
      })
    },
    dele(id) {
      this.$confirm('是否确认删除该物料?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        deleteById(id)
          .then(res => {
            this.getList()
          })
      }).catch(() => {
      });
    },
    changeStatus(e, row) {
      updateStatus({ id: row.id, status: e })
        .then(res => {
          this.getList()
        })
    },
    clear() {
      this.filters = {}
      this.pagination.pageSize = 10