duy 5 月之前
父节点
当前提交
c5225a73b4
共有 3 个文件被更改,包括 71 次插入39 次删除
  1. 14 0
      src/views/project/detail/info.vue
  2. 54 39
      src/views/project/info/info.vue
  3. 3 0
      src/views/project/list/file-title-dialog.vue

+ 14 - 0
src/views/project/detail/info.vue

@@ -87,6 +87,18 @@
                             </div>
                         </el-form-item>
                     </el-col>
+                    <el-col :span="6">
+                        <el-form-item label="模板引用:" prop="templateType">
+                            <div class="form-item-div">
+                                <el-radio-group
+                                    v-model="contractForm.templateType"
+                                >
+                                    <el-radio :value="1">模板节点</el-radio>
+                                    <el-radio :value="2">底层节点</el-radio>
+                                </el-radio-group>
+                            </div>
+                        </el-form-item>
+                    </el-col>
                     <el-col :span="6">
                         <el-form-item label="计划开工日期:" prop="planStartTime">
                             <el-date-picker v-model="contractForm.planStartTime" class="block" format="YYYY 年 MM 月 DD 日" type="date" value-format="YYYY-MM-DD HH:mm:ss" clearable />
@@ -351,6 +363,8 @@ const formRules = {
     projectPlace: { required: true, trigger: 'blur', message: '请输入项目地址' },
     startStation: { required: true, trigger: 'blur', message: '请输入起始桩号' },
     endStation: { required: true, trigger: 'blur', message: '请输入结束桩号' },
+    templateType: { required: true, trigger: 'blur', message: '请选择模板引用' },
+
 }
 
 //文件上传

+ 54 - 39
src/views/project/info/info.vue

@@ -176,6 +176,16 @@
                             </el-radio-group>
                         </div>
                     </el-form-item>
+                    <el-form-item label="模板引用:" prop="templateType">
+                        <div class="form-item-div">
+                            <el-radio-group
+                                v-model="formModel.templateType"
+                            >
+                                <el-radio :value="1">模板节点</el-radio>
+                                <el-radio :value="2">底层节点</el-radio>
+                            </el-radio-group>
+                        </div>
+                    </el-form-item>
                 </el-col>
             </el-row>
         </el-form>
@@ -183,86 +193,91 @@
 </template>
 
 <script setup>
-import { onMounted, ref, watch } from "vue";
-import { getDictionaryData } from "~uti/tools";
-import { formValidate, getArrValue } from "js-fast-way";
-import measureApi from "~api/measure/template";
+import { onMounted, ref, watch } from 'vue'
+import { getDictionaryData } from '~uti/tools'
+import { formValidate, getArrValue } from 'js-fast-way'
+import measureApi from '~api/measure/template'
 
 //双向绑定
-const modelData = defineModel("modelValue", {
+const modelData = defineModel('modelValue', {
     default: {},
-});
+})
 
 //渲染完成
 onMounted(() => {
-    getHighwayGradeList();
-    getBusinessUserOpinion();
-});
+    getHighwayGradeList()
+    getBusinessUserOpinion()
+})
 
 //监听数据
-const formModel = ref({});
+const formModel = ref({})
 watch(
     () => modelData.value,
     (data) => {
-        data.radioType = data.radioType || "总里程";
-        formModel.value = data;
+        data.radioType = data.radioType || '总里程'
+        formModel.value = data
         formModel.value.projectAllMileage = Number(
-            formModel.value.projectAllMileage
-        );
+            formModel.value.projectAllMileage,
+        )
     },
-    { immediate: true, deep: true }
-);
+    { immediate: true, deep: true },
+)
 
 //监听表单数据
 watch(
     () => formModel.value,
     (data) => {
-        modelData.value = data;
+        modelData.value = data
     },
-    { deep: true }
-);
+    { deep: true },
+)
 
 //表单
-const formRef = ref(null);
+const formRef = ref(null)
 const formRules = {
-    projectName: { required: true, trigger: "blur", message: "请输入项目名称" },
+    projectName: { required: true, trigger: 'blur', message: '请输入项目名称' },
     projectAlias: {
         required: true,
-        trigger: "blur",
-        message: "请输入项目别名",
+        trigger: 'blur',
+        message: '请输入项目别名',
     },
     planStartTime: {
         required: true,
-        trigger: "blur",
-        message: "请选择计划开工日期",
+        trigger: 'blur',
+        message: '请选择计划开工日期',
     },
     actualStartTime: {
         required: true,
-        trigger: "blur",
-        message: "请选择实际开工日期",
+        trigger: 'blur',
+        message: '请选择实际开工日期',
+    },
+    remarkType: { required: true, trigger: 'blur', message: '请选择电签类别' },
+    templateType: {
+        required: true,
+        trigger: 'blur',
+        message: '请选择模板引用',
     },
-    remarkType: { required: true, trigger: "blur", message: "请选择电签类别" },
-};
+}
 
 //公路等级
-const highwayGradeList = ref([]);
+const highwayGradeList = ref([])
 const getHighwayGradeList = async () => {
-    highwayGradeList.value = await getDictionaryData("highway_grade");
-};
+    highwayGradeList.value = await getDictionaryData('highway_grade')
+}
 
 //系统计量单元
-const meterTemplateOption = ref([]);
+const meterTemplateOption = ref([])
 const getBusinessUserOpinion = async () => {
-    const { data } = await measureApi.queryBusinessUserOpinionList();
-    meterTemplateOption.value = getArrValue(data);
-};
+    const { data } = await measureApi.queryBusinessUserOpinionList()
+    meterTemplateOption.value = getArrValue(data)
+}
 
 //验证表单
 const isForm = async () => {
-    return await formValidate(formRef.value);
-};
+    return await formValidate(formRef.value)
+}
 
 defineExpose({
     isForm,
-});
+})
 </script>

+ 3 - 0
src/views/project/list/file-title-dialog.vue

@@ -298,6 +298,9 @@ const fileTreeLoading = ref(false)
 const fileDefaultProps = ref({
     children: 'children',
     label: 'nodeName',
+    disabled:function (data) {
+          return data.status === 11 
+        },
 })
 const checkFileSize = (data, { checkedNodes, checkedKeys }) => {
     let checkedTitles = checkedNodes.map(node => node.nodeName).join('、')