sen
6 天以前 4a5d3433c6d69c08c2139067a8f8fc5fd9314fb3
添加订单类型选择的检验
1个文件已修改
37 ■■■■■ 已修改文件
ui/admin-ui3/src/views/tms/tmsDispatchOrder/index.vue 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ui/admin-ui3/src/views/tms/tmsDispatchOrder/index.vue
@@ -23,7 +23,7 @@
          <span>{{ dictFormat(order_type, row?.orderType || form?.orderType) }}</span>
        </template>
        <template v-else>
          <el-select v-model="form.orderType" placeholder="请选择订单类型" style="width: 100%" clearable>
          <el-select v-model="form.orderType" placeholder="请选择订单类型"  @change="(val) => handleOrderTypeChange(val)" style="width: 100%" clearable>
            <el-option v-for="item in order_type" :key="item.value" :label="item.label" :value="parseInt(item.value)" />
          </el-select>
        </template>
@@ -4955,6 +4955,41 @@
    // 取消操作
  });
}
const handleOrderTypeChange = (value: any) => {
  // 防止 value 为 null 或 undefined 时出错 (当清空选择时)
  if (value === null || value === undefined) {
     return;
  }
  option.value.group.forEach((item: any) => {
    if (item.prop == 'pcxx') {
      // 处理装货点必填规则
      if (item.column.shipperId && item.column.shipperId.rules) {
        item.column.shipperId.rules.forEach((cItem: any) => {
          cItem.required = !(value == 1);
        });
      }
      // 处理卸货点必填规则
      if (item.column.receiverId && item.column.receiverId.rules) {
        item.column.receiverId.rules.forEach((cItem: any) => {
          cItem.required = !(value == 1);
        });
      }
    }
  });
  // 【新增逻辑】如果切换到了非必填状态 (value == 1),则清除这两个字段的校验提示
  if (value == 1) {
    // 确保 crudRef 存在且暴露了 clearValidate 方法
    if (crudRef.value && typeof crudRef.value.clearValidate === 'function') {
      // 清除指定字段的校验状态
      crudRef.value.clearValidate(['shipperId', 'receiverId']);
    }
  }
};
</script>
<style lang="scss" scoped>
::v-deep .cydprint .el-dialog__body {