haoxuan
2024-04-17 1888b426ff2b6a529f5fdef0f0453dadef71824b
src/views/warehouseManage/position/index.vue
@@ -5,38 +5,48 @@
        :add-title="'新建'"
        :placeholder="'请输入单号'"
        :amount-view="false"
        :search-task-map="searchTaskMap"
        @addCommonClick="addBtnClick"
        @searchClick="getList"
        @delSelectClick="delSelectClick"
      />
    </div>
    <div class="list-view">
      <div class="table">
        <TableCommonView
          ref="tableListRef"
          :table-list="tableList"
          :show-checkcol="false"
          @tableRowClick="tableRowClick"
        ></TableCommonView>
        <TableCommonView ref="tableListRef" :table-list="tableList" :show-checkcol="false">
          <template slot="tableButton">
            <el-table-column label="操作" width="120" fixed="right">
              <template slot-scope="scope">
                <el-button @click="tableRowClick(scope.row, 'edit')" type="text" size="small">编辑</el-button>
                <el-button type="text" size="small" @click="tableRowClick(scope.row, 'look')">查看</el-button>
              </template>
            </el-table-column>
          </template>
        </TableCommonView>
      </div>
      <div class="btn-pager">
        <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
      </div>
    </div>
    <!-- 新建/编辑 -->
    <AddScrapDialog v-if="editConfig.visible" :edit-common-config="editConfig" />
    <AddDialog
      v-if="editConfig.visible"
      @refresh="refresh"
      :positionList="tableList.tableInfomation"
      :edit-common-config="editConfig"
    />
  </div>
</template>
<script>
import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
import { getProductList } from "@/api/product/product"
// import DetailProduct from "@/views/productManage/product/DetailProduct"
import AddScrapDialog from "@/views/operate/scrap/AddScrapDialog"
import { getLocationList } from "@/api/warehouseManage/warehouse"
import AddDialog from "@/views/warehouseManage/position/AddDialog"
import { getDataByType } from "@/api/data"
export default {
  name: "WarehouseView",
  props: {},
  components: { AddScrapDialog },
  components: { AddDialog },
  mixins: [pageMixin],
  computed: {},
  data() {
@@ -47,18 +57,23 @@
        visible: false,
        title: "新建",
        infomation: {}
      }
      },
      positionTypeList: getDataByType("positionType"),
      searchTaskMap: [],
      type: 3
    }
  },
  created() {
    this.setTable()
    this.searchTaskMap = [{ id: "3", title: "内部位置" }]
    this.getData()
  },
  methods: {
    setTable() {
      this.tableList = {
        tableInfomation: [],
        selectBox: true,
        selectBox: false,
        selectIndex: true,
        showcol: this.showcol,
        allcol: [],
        tableColumn: this.setTableColumn(this.showcol)
@@ -77,59 +92,92 @@
      let tableColumn = [
        {
          label: "位置",
          prop: "id",
          prop: "jointName",
          isShowColumn: true,
          default: true
        },
        {
          label: "位置类型",
          prop: "deviceName",
          prop: "type",
          isShowColumn: true,
          default: true
          default: true,
          conversion: true,
          getStatus: this.getTypesList
        }
      ]
      return tableColumn
    },
    getTypesList(val) {
      let string = "--"
      if (val) {
        for (let i in this.positionTypeList) {
          if (this.positionTypeList[i].id == val) {
            return this.positionTypeList[i].name
          }
        }
      }
      return string
    },
    selTableCol(val) {
      this.showcol = val
      this.tableList.tableColumn = this.setTableColumn(val)
    },
    // 请求数据
    async getData(val, content) {
      await getProductList({
        [val]: content,
    async getData() {
      let params={
        type: this.type,
        keyword: this.keyword,
        page: this.pagerOptions.currPage,
        pageSize: this.pagerOptions.pageSize
      }).then((res) => {
        if (res.data.code === 200) {
          const list = res.data.data.list.map((item) => {
            return {
              ...item,
              supplierNumber: item.supplier.number,
              status: "草稿",
              preTime: "2023-09-04 11:20:00"
            }
          })
          this.tableList.tableInfomation = list || []
          this.pagerOptions.totalCount = res.data.data.total
        pageSize: this.pagerOptions.pageSize,
      }
      await getLocationList(params).then((res) => {
        if (res.code === 200) {
          const list = res.data ? res.data : []
          this.tableList.tableInfomation = list
          this.pagerOptions.totalCount = res.total
        }
      })
    },
    refresh() {
      this.pagerOptions.currPage = 1
      this.getData()
    },
    // 搜索
    getList(val) {
      console.log(val)
      this.keyword = val
      this.pagerOptions.currPage = 1
      this.getData()
    },
    // 行点击
    tableRowClick(row) {
      console.log(row)
      this.editConfig.visible = true
      this.editConfig.title = "编辑"
    tableRowClick(row, val) {
      this.editConfig.title = val == "look" ? "查看" : "编辑"
      this.editConfig.infomation = { ...row }
      this.editConfig.infomation.parentId = this.editConfig.infomation.parentId
        ? Number(this.editConfig.infomation.parentId)
        : null
      this.editConfig.visible = true
    },
    // 新建
    addBtnClick() {
      this.editConfig.infomation = {
        name: "",
        parentId: null,
        type: 3,
        isScrapLocation: null,
        isReturnLocation: null,
        replenishLocation: null,
        countFrequency: 0,
        recentlyCount: "",
        nextCount: "",
        notes: ""
      }
      this.editConfig.visible = true
      this.editConfig.title = "新建"
    },
    // 删除位置
    delSelectClick() {
      this.type = 0
      this.getData()
    }
  }
}