src/views/warehouseManage/bussinessType/AddBussinessType.vue
@@ -49,17 +49,18 @@
            </el-row>
            <div class="purchase-view">
              <div class="left" style="margin-left: 20px">
                <el-form-item label="作业类型" prop="operate_type" :label-width="labelWidth">
                <el-form-item label="作业类型" prop="baseOperationType" :label-width="labelWidth">
                  <el-select
                    v-model="editConfig.infomation.operate_type"
                    v-model="editConfig.infomation.baseOperationType"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in operateTypeOptions" :key="item" :label="item" :value="item"> </el-option>
                    <el-option v-for="item in baseOperationTypeList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item label="序号前缀" prop="client_name" :label-width="labelWidth">
                  <el-input
                    v-model="editConfig.infomation.client_name"
@@ -68,37 +69,41 @@
                    style="width: 85%"
                  ></el-input>
                </el-form-item>
                <el-form-item label="仓库" prop="client_name" :label-width="labelWidth">
                <el-form-item label="仓库" prop="warehouseId" :label-width="labelWidth">
                  <el-select
                    v-model="editConfig.infomation.memberId"
                    multiple
                    v-model="editConfig.infomation.warehouseId"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                    <el-option v-for="item in warehouseList" :key="item.id" :label="item.name" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item
                  v-if="editConfig.infomation.operate_type !== '收货'"
                  v-if="editConfig.infomation.baseOperationType !== 1"
                  label="保留方式"
                  prop="resource"
                  prop="reservationMethod"
                  :label-width="labelWidth"
                >
                  <el-radio-group
                    v-model="editConfig.infomation.resource"
                    v-model="editConfig.infomation.reservationMethod"
                    @input="reserveMethodClick"
                    :disabled="!showFooter"
                  >
                    <div style="margin-top: 8px"><el-radio label="确认时"></el-radio></div>
                    <div style="margin-top: 10px"><el-radio label="手工"></el-radio></div>
                    <div style="margin-top: 10px"><el-radio label="在预定日期之前"></el-radio></div>
                    <div style="margin-top: 8px">
                      <el-radio v-for="item in reservationMethodList"
                      :key="item.id"
                      :value="item.id"
                      :label="item.name"
                       >
                      </el-radio>
                      </div>
                  </el-radio-group>
                </el-form-item>
                <el-form-item
                  v-if="editConfig.infomation.operate_type !== '收货'"
                <!-- <el-form-item
                  v-if="editConfig.infomation.resource == '在预定日期之前'"
                  label="在预定日期前预定"
                  prop="client_name"
                  :label-width="labelWidth"
@@ -109,44 +114,44 @@
                    :disabled="!showFooter"
                    style="width: 85%"
                  ></el-input>
                </el-form-item>
                </el-form-item> -->
              </div>
              <div class="right">
                <el-form-item label="退货类型" prop="client_name">
                <el-form-item label="退货类型" prop="returnOperationTypeID">
                  <el-select
                    v-model="editConfig.infomation.memberId"
                    multiple
                    v-model="editConfig.infomation.returnOperationTypeID"
                    v-if="editConfig.infomation.baseOperationType"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                    <el-option v-for="item in returnOperationTypeList" :key="item.id" :label="item.username" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item label="创建欠单" prop="client_name">
                <el-form-item label="创建欠单" prop="createBackorder">
                  <el-select
                    v-model="editConfig.infomation.memberId"
                    multiple
                    v-model="editConfig.infomation.createBackorder"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                    <el-option v-for="item in createBackorderList" :key="item.id" :label="item.name" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item label="显示作业详情" prop="showDetail">
                  <el-checkbox v-model="editConfig.infomation.showDetail"></el-checkbox>
                <el-form-item label="显示作业详情" prop="showOperations">
                  <el-checkbox v-model="editConfig.infomation.showOperations"></el-checkbox>
                </el-form-item>
                <el-form-item
                  v-if="editConfig.infomation.operate_type === '收货'"
                  v-if="editConfig.infomation.baseOperationType === 1"
                  label="预填写作业详情"
                  prop="showDetail"
                  prop="showOperations"
                >
                  <el-checkbox v-model="editConfig.infomation.showDetail"></el-checkbox>
                  <el-checkbox v-model="editConfig.infomation.showOperations"></el-checkbox>
                </el-form-item>
              </div>
            </div>
@@ -158,29 +163,27 @@
            <div class="purchase-view">
              <div class="left">
                <div class="second-label">位置</div>
                <el-form-item label="默认源位置" prop="client_name" style="margin-left: 20px">
                <el-form-item label="默认源位置" prop="defaultLocationSrcId" style="margin-left: 20px">
                  <el-select
                    v-model="editConfig.infomation.memberId"
                    multiple
                    v-model="editConfig.infomation.defaultLocationSrcId"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                    <el-option v-for="item in locationList" :key="item.id" :label="item.username" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item label="默认目的位置" prop="client_name" style="margin-left: 20px">
                <el-form-item label="默认目的位置" prop="defaultLocationDestId" style="margin-left: 20px">
                  <el-select
                    v-model="editConfig.infomation.memberId"
                    multiple
                    v-model="editConfig.infomation.defaultLocationDestId"
                    placeholder="请选择"
                    size="mini"
                    style="width: 85%"
                    :disabled="!showFooter"
                  >
                    <el-option v-for="item in memberOptions" :key="item.id" :label="item.username" :value="item.id">
                    <el-option v-for="item in locationList" :key="item.id" :label="item.username" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
@@ -201,6 +204,8 @@
</template>
<script>
import { addOperationType,updateOperationType,getWarehouseList,deleteOperationType} from "@/api/warehouseManage/warehouse"
import { getDataByType } from "@/api/data";
export default {
  name: "AddBussinessType",
  props: {
@@ -222,25 +227,50 @@
      dialogWidth: "50%",
      editConfig: this.editCommonConfig,
      rules: {
        client_name: [{ required: true, message: "请选择客户名称", trigger: "change" }],
        number: [{ required: true, message: "请输入退款单编号", trigger: "blur" }],
        refundDate: [{ required: true, message: "请选择退款日期", trigger: "change" }],
        memberId: [{ required: true, message: "请选择销售负责人", trigger: "change" }],
        sale_return_nunber: [{ required: true, message: "请选择销售退货单", trigger: "change" }]
        // 入库类型
        client_name: [{ required: true, message: "请输入", trigger: "change" }],
        // 前缀
        number: [{ required: true, message: "请输入", trigger: "change" }],
        baseOperationType: [{ required: true, message: "请选择", trigger: "change" }],
      },
      memberOptions: [],
      operateTypeOptions: ["收货", "发货", "内部调拨"], // 操作类型
      // 位置
      locationList: [],
      warehouseList:[],
      // 退货类型
      returnOperationTypeList:[],
      // 作业类型
      baseOperationTypeList:getDataByType('baseOperationType'),
      // 创建欠单
      createBackorderList:getDataByType('createBackorder'),
      // 保留方式
      reservationMethodList:getDataByType('reservationMethod'),
      showButton: true,
      showEdit: false, // 是否显示编辑按钮
      isDelClick: false, // 删除按钮是否可点击
      showFooter: false, // 是否显示取消保存
      labelWidth: "80px"
      labelWidth: "90px"
    }
  },
  created() {
    this.getList()
    this.setBottonView()
  },
  methods: {
    // 仓库
    async getWarehouse() {
      await getWarehouseList({
        keyword: '',
        page: 0,
        pageSize: 0
      }).then((res) => {
        if (res.data.code == 200) {
          this.warehouseList = res.data.data?res.data.data:[]
        }
      })
    },
    getList(){
      this.getWarehouse()
    },
    // 设置删除/打印/编辑是否显示
    setBottonView() {
      if (this.editConfig.title === "新建") {
@@ -256,14 +286,77 @@
    handleClose() {
      this.editConfig.visible = false
    },
    // 刪除
    deleteClick() {
      let data = JSON.parse(JSON.stringify(this.editConfig.infomation));
      deleteOperationType({ id: data.id }).then((res) => {
        if (res.code === 200) {
          this.editConfig.visible = false;
          this.$message.success("刪除成功");
          this.$emit("refresh");
        }
      });
    },
    // 编辑
    editClick() {
      this.showEdit = false
      this.showButton = false
      this.showFooter = true
    },
    saveParams() {
      let data =JSON.parse(JSON.stringify(this.editConfig.infomation));
      let params = {
        // 作业类型
        baseOperationType:data.baseOperationType,
        // 退货类型
        returnOperationTypeID:data.returnOperationTypeID,
        // 创建欠单
        createBackorder:data.createBackorder,
        // 仓库
        warehouseId:data.warehouseId,
        // 显示作业详情
        showOperations:data.showOperations,
        // 保留方式
        reservationMethod:data.reservationMethod,
        // 默认原位置
        defaultLocationSrcId:data.defaultLocationSrcId,
        // 默认目标位置
        defaultLocationDestId:data.defaultLocationDestId,
      }
      if(data.id){
        params.id=data.id
      }
      return params;
    },
    // 保存
    saveClick() {},
    saveClick(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          const params = this.saveParams();
            if (this.editConfig.title === "新建") {
              addOperationType(params).then((res) => {
                if (res.code === 200) {
                  this.editConfig.visible = false;
                  this.$message.success("添加成功");
                  this.$emit('refresh')
                }
              });
            } else {
              updateOperationType(params).then((res) => {
                if (res.code === 200) {
                  this.editConfig.visible = false;
                  this.$message.success("编辑成功");
                  this.$emit('refresh')
                }
              });
            }
        }else {
          console.log("error submit");
          return false;
        }
      });
    },
    // 删除
    delClick() {},
    // 产品