Преглед на файлове

产品分类-增加名称不唯一提示

jingbb преди 2 месеца
родител
ревизия
18e6fda3fe
променени са 1 файла, в които са добавени 29 реда и са изтрити 8 реда
  1. 29 8
      src/views/BasicData/components/productCassificationModel.vue

+ 29 - 8
src/views/BasicData/components/productCassificationModel.vue

@@ -9,8 +9,10 @@
   //引入依赖
   import { useForm, BasicForm, FormSchema } from '/@/components/Form';
   import { BasicModal, useModalInner } from '/@/components/Modal';
-  import { saveOrUpdateDict } from '../api/productCassification.api';
+  import { saveOrUpdateDict,list } from '../api/productCassification.api';
   import { defHttp } from '/@/utils/http/axios';
+  import { useMessage } from "/@/hooks/web/useMessage";
+  const { createConfirm } = useMessage();
   const emit = defineEmits(['register', 'success']); //定义emit
   const isUpdate = ref(true); //判断编辑还是新增
   const rowId = ref('');//获取主键
@@ -165,13 +167,32 @@
     try {
       let values = await validate();
       setModalProps({ confirmLoading: true });
-      //提交表单
-      await saveOrUpdateDict(values, isUpdate.value);
-      
-      //关闭弹窗
-      closeModal();
-      //刷新列表
-      emit('success', { isUpdate: unref(isUpdate), values: { ...values, id: rowId.value } });
+      var obj=await list({pageSize:-1,name:values.name})
+      if(obj.records.length==undefined||obj.records.length==0){
+         //提交表单
+        await saveOrUpdateDict(values, isUpdate.value);
+        
+        //关闭弹窗
+        closeModal();
+        //刷新列表
+        emit('success', { isUpdate: unref(isUpdate), values: { ...values, id: rowId.value } });
+      }else{
+        createConfirm({
+        iconType: 'warning',
+        title: '请确认',
+        content: '名称重复,是否继续执行',
+        okText: '确认',
+        cancelText: '取消',
+        onOk: async() => {
+          await saveOrUpdateDict(values, isUpdate.value);
+        
+        //关闭弹窗
+        closeModal();
+        //刷新列表
+        emit('success', { isUpdate: unref(isUpdate), values: { ...values, id: rowId.value } });
+        }
+  });
+      }     
     } finally {
       setModalProps({ confirmLoading: false });
     }