zzq
2023-09-26 25b727a5dc28f3c2d225c5e017da58f35c6b84b3
src/views/overview/AddOverviewDialog.vue
@@ -8,7 +8,7 @@
    >
      <!-- 头 -->
      <div slot="title" class="dialog-header">
        <span>{{ editCommonConfig.title + addName }}</span>
        <span>{{ editCommonConfig.title === "查看" ? editCommonConfig.title : editCommonConfig.title + addName }}</span>
        <div class="header_btns">
          <span class="btn">
            <i class="el-icon-printer"></i>
@@ -109,7 +109,18 @@
              </el-col>
              <el-col :span="12">
                <el-form-item label="入库类型">
                  <el-input v-model="receiptType" disabled style="width: 90%"></el-input>
                  <el-select
                    v-if="showOperationType"
                    v-model="editConfig.infomation.operationTypeId"
                    placeholder="请选择"
                    size="mini"
                    style="width: 90%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in operationTypeOptions" :key="item.id" :label="item.name" :value="item.id">
                    </el-option>
                  </el-select>
                  <el-input v-else v-model="receiptType" disabled style="width: 90%"></el-input>
                </el-form-item>
              </el-col>
              <el-col :span="12">
@@ -160,7 +171,7 @@
                <div class="purchase-view">
                  <div class="left">
                    <div class="second-label">其他信息</div>
                    <el-form-item v-if="workType !== 1" label="送货策略" prop="client_name">
                    <!-- <el-form-item v-if="workType !== 1" label="送货策略" prop="client_name">
                      <el-select
                        v-model="editConfig.infomation.memberId"
                        placeholder="请选择"
@@ -171,7 +182,7 @@
                        <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                        </el-option>
                      </el-select>
                    </el-form-item>
                    </el-form-item> -->
                    <el-form-item label="负责人" prop="contacterName">
                      <el-select
                        v-model="editConfig.infomation.contacterName"
@@ -260,7 +271,14 @@
<script>
import CommonFormTableView from "@/components/makepager/CommonFormTableView"
import { getLocationList, addOperation, updateOperation, updateStatus, deleteOperation } from "@/api/overview/overview"
import {
  getLocationList,
  addOperation,
  updateOperation,
  updateStatus,
  deleteOperation,
  getOperationType
} from "@/api/overview/overview"
import { getCompanyList } from "@/api/common/other"
export default {
  name: "AddOverviewDialog",
@@ -283,6 +301,10 @@
    addName: {
      type: String,
      default: "调拨"
    },
    showOperationType: {
      type: Boolean,
      default: false
    }
  },
  components: { CommonFormTableView },
@@ -321,10 +343,11 @@
      detailId: 0,
      isNoDetail: false, // 添加详情明细行时是否未选择
      tableColumn: [],
      receiptType: this.addName, // 入库类型
      receiptType: "", // 入库类型
      companyObj: {},
      contacterObj: {},
      isValidateClick: false // 验证是否显示
      isValidateClick: false, // 验证是否显示
      operationTypeOptions: [] // 入库类型列表
    }
  },
  created() {
@@ -333,6 +356,10 @@
    this.setDetailTableForm()
    this.getCompanyList()
    this.getLocationList()
    this.receiptType = this.editConfig.title === "查看" ? this.editConfig.infomation.operationTypeName : this.addName
    if (this.showOperationType) {
      this.getOperationType()
    }
  },
  methods: {
    // 获取公司列表
@@ -357,6 +384,25 @@
        }
      })
    },
    // 获取仓库类型
    async getOperationType() {
      await getOperationType({
        keyword: "",
        page: 0,
        pageSize: 0
      }).then((res) => {
        console.log(res.data.data)
        if (res.data.code === 200) {
          const list = res.data.data.map((item) => {
            return {
              name: item.name,
              id: item.id
            }
          })
          this.operationTypeOptions = list || []
        }
      })
    },
    // 设置删除/打印/编辑是否显示
    setBottonView() {
      if (this.editConfig.title === "新建") {
@@ -364,13 +410,13 @@
        this.showEdit = false
        this.showFooter = true
        this.isValidateClick = false
      } else if (this.editConfig.infomation.status === "完成") {
      } else if (this.editConfig.infomation.status === 4) {
        this.showButton = true
        this.showEdit = false
        this.isDelClick = true
        this.showFooter = false
        this.isValidateClick = false
      } else if (this.editConfig.infomation.status === "已取消") {
      } else if (this.editConfig.infomation.status === 5) {
        this.showButton = true
        this.showEdit = false
        this.showFooter = false
@@ -442,15 +488,15 @@
      let contacterID = 0
      let contacterName = ""
      if (this.editConfig.title === "新建") {
        companyID = this.companyObj.length === 0 ? 0 : this.companyObj.value
        companyName = this.companyObj.length === 0 ? 0 : this.companyObj.label
        contacterID = this.contacterObj.length === 0 ? 0 : this.contacterObj.value
        contacterName = this.contacterObj.length === 0 ? 0 : this.contacterObj.label
        companyID = Object.keys(this.companyObj).length === 0 ? 0 : this.companyObj.value
        companyName = Object.keys(this.companyObj).length === 0 ? "" : this.companyObj.label
        contacterID = Object.keys(this.contacterObj).length === 0 ? 0 : this.contacterObj.value
        contacterName = Object.keys(this.contacterObj).length === 0 ? "" : this.contacterObj.label
      } else {
        companyID = this.companyObj.length === 0 ? data.companyID : this.companyObj.value
        companyName = this.companyObj.length === 0 ? data.companyName : this.companyObj.label
        contacterID = this.contacterObj.length === 0 ? data.contacterID : this.contacterObj.value
        contacterName = this.contacterObj.length === 0 ? data.contacterName : this.contacterObj.label
        companyID = Object.keys(this.companyObj).length === 0 ? data.companyID : this.companyObj.value
        companyName = Object.keys(this.companyObj).length === 0 ? data.companyName : this.companyObj.label
        contacterID = Object.keys(this.contacterObj).length === 0 ? data.contacterID : this.contacterObj.value
        contacterName = Object.keys(this.contacterObj).length === 0 ? data.contacterName : this.contacterObj.label
      }
      let params = {
        comment: data.comment || "",
@@ -461,9 +507,10 @@
        details: this.tableData,
        fromLocationId: data.fromLocationId || 0,
        id: data.id,
        number: "",
        number: data.number || "",
        operationDate: data.operationDate || "",
        operationTypeId: this.editConfig.operationTypeId,
        operationTypeId: this.showOperationType ? data.operationTypeId : this.editConfig.operationTypeId,
        operationTypeName: this.receiptType,
        sourceNumber: data.sourceNumber || "",
        status: 3,
        toLocationId: data.toLocationId || 0
@@ -483,7 +530,19 @@
    },
    // 操作列表
    setTableForm() {
      this.tableData = this.editConfig.title !== "新建" ? this.editConfig.infomation.details : []
      if (this.editConfig.title !== "新建") {
        const list = this.editConfig.infomation.details.map((item) => {
          return {
            ...item,
            productName: item.product.name,
            unit: item.product.unit
          }
        })
        this.tableData = list
      } else {
        this.tableData = []
      }
      // this.tableData = this.editConfig.title !== "新建" ? list : []
      this.productTableList = {
        tableData: this.tableData,
        tableColumn: [
@@ -667,7 +726,7 @@
::v-deep {
  .el-dialog__headerbtn {
    position: absolute;
    top: 18px;
    top: 15px;
  }
  .el-button {
    &:hover {