yrik il y a 4 ans
Parent
commit
e8aadd33f5

+ 824 - 0
ruoyi-ui/src/views/management/nstruction/index.vue

@@ -0,0 +1,824 @@
+<template>
+
+  <div class="app-conta">
+
+
+  <div class="nauer">
+
+
+
+     <!-- 在建项目 -->
+     <div>
+       <div class="nstruction">
+          <div class="nstruction_nav">
+            <p>
+              <span>*</span>
+              <span>合同约定开工时间:</span>
+            </p>
+            <p>23</p>
+          </div>
+          <div class="nstruction_navne">
+            <p>
+              <span>*</span>
+              <span>合同约定开工时间:</span>
+            </p>
+            <p></p>
+          </div>
+
+       </div>
+       <div class="naue_tab">
+        <p @click="tabClid(index)" v-for="(item,index) in tabNume"  :key="index" :class="[tab == index? 'p' : '']">{{item}}</p>
+       </div>
+       <!-- 内容 -->
+       <div class="namjeu" >
+         <el-form :model="queryParamstwr" ref="queryForm" :inline="true" v-show="showSearch" label-width="135px" label-position="center" class="manager_form">
+          <el-form-item label="施工许可证:" prop="configType" class="maget_ty">
+              <div class="forieu" style="width: 618px;">
+               <div class="bure burert">
+                 <el-upload
+                   action="#"
+                    list-type="picture-card"
+                    :auto-upload="false">
+                      <!-- <i slot="default" class="el-icon-plus"></i> -->
+                      <div slot="file" slot-scope="{file}" style="height: 78px;">
+                        <img
+                          class="el-upload-list__item-thumbnail"
+                          :src="file.url" alt=""
+                        >
+                        <span class="el-upload-list__item-actions">
+                          <span
+                            class="el-upload-list__item-preview"
+                            @click="handlePictureCardPreview(file)"
+                          >
+                            <i class="el-icon-zoom-in"></i>
+                          </span>
+                         <!-- <span
+                            v-if="!disabled"
+                            class="el-upload-list__item-delete"
+                            @click="handleDownload(file)"
+                          >
+                            <i class="el-icon-download"></i>
+                          </span> -->
+                          <span
+                            v-if="!disabled"
+                            class="el-upload-list__item-delete"
+                            @click="handleRemove(file)"
+                          >
+                            <i class="el-icon-delete"></i>
+                          </span>
+                        </span>
+
+                      </div>
+                   <div class="ijeut">
+                     <el-button plain slot="trigger" size="small" type="primary" >选择图片</el-button>
+                      <!-- margin-top: 15%; transform: translateY(-50%); -->
+                     <el-button style="margin-left: 10px;" size="small" type="primary" @click="submitUpload">开始上传</el-button>
+                   </div>
+                   <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
+                 </el-upload>
+               </div>
+              </div>
+            </el-form-item>
+            <el-form-item label="是否开工建设:" prop="configType">
+              <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 458px">
+                <el-option
+                  v-for="dict in typeOptions"
+                  :key="dict.dictValue"
+                  :label="dict.dictLabel"
+                  :value="dict.dictValue"
+                />
+              </el-select>
+            </el-form-item>
+             <el-form-item label=" 开工日期:">
+                  <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 335px"></el-date-picker>
+              </el-form-item>
+              <el-form-item label="预计完工日期:">
+                   <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 335px"></el-date-picker>
+               </el-form-item>
+               <el-form-item label="施工合同:" prop="configType" class="maget_ty">
+                   <div class="forieu" style="width: 618px;">
+                    <div class="bure burert">
+                      <el-upload
+                        action="#"
+                         list-type="picture-card"
+                         :auto-upload="false">
+                           <!-- <i slot="default" class="el-icon-plus"></i> -->
+                           <div slot="file" slot-scope="{file}" style="height: 78px;">
+                             <img
+                               class="el-upload-list__item-thumbnail"
+                               :src="file.url" alt=""
+                             >
+                             <span class="el-upload-list__item-actions">
+                               <span
+                                 class="el-upload-list__item-preview"
+                                 @click="handlePictureCardPreview(file)"
+                               >
+                                 <i class="el-icon-zoom-in"></i>
+                               </span>
+                              <!-- <span
+                                 v-if="!disabled"
+                                 class="el-upload-list__item-delete"
+                                 @click="handleDownload(file)"
+                               >
+                                 <i class="el-icon-download"></i>
+                               </span> -->
+                               <span
+                                 v-if="!disabled"
+                                 class="el-upload-list__item-delete"
+                                 @click="handleRemove(file)"
+                               >
+                                 <i class="el-icon-delete"></i>
+                               </span>
+                             </span>
+                    
+                           </div>
+                        <div class="ijeut">
+                          <el-button plain slot="trigger" size="small" type="primary" >选择图片</el-button>
+                           <!-- margin-top: 15%; transform: translateY(-50%); -->
+                          <el-button style="margin-left: 10px;" size="small" type="primary" @click="submitUpload">开始上传</el-button>
+                        </div>
+                        <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
+                      </el-upload>
+                    </div>
+                   </div>
+                 </el-form-item>
+          </el-form>
+          <p class="kaieu">开工照片:</p>
+          <p class="kaieu_tw"><i class="el-icon-circle-plus-outline"></i> 添加企业</p>
+          <el-table v-loading="loading" :data="configList" >
+            <!-- <el-table-column type="selection" width="55" align="center" /> -->
+            <el-table-column label="时间" align="center" prop="configId" />
+            <el-table-column label="进度" align="center" prop="configName" :show-overflow-tooltip="true" />
+            <el-table-column label="照片" align="center" >
+              <!-- class-name="small-padding fixed-width" -->
+              <template slot-scope="scope">
+                <el-button
+                  size="mini"
+                  type="warning"
+                  @click="handleUpdate(scope.row)"
+                  v-hasPermi="['system:config:edit']"
+                >上传</el-button>
+              </template>
+            </el-table-column>
+            <el-table-column label="操作" align="center" >
+              <!-- class-name="small-padding fixed-width" -->
+              <template slot-scope="scope">
+                <el-button
+                  size="mini"
+                  type="danger"
+                  @click="handleDelete(scope.row)"
+                  v-hasPermi="['system:config:remove']"
+                >删除</el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+
+       </div>
+
+       <div class="equipment" v-if="false">
+            <p class="kaieu_tw"><i class="el-icon-circle-plus-outline"></i> 添加设备安装信息</p>
+          <el-table v-loading="loading" :data="configList" >
+            <!-- <el-table-column type="selection" width="55" align="center" /> -->
+            <el-table-column label="时间" align="center" prop="configId" />
+            <el-table-column label="进度" align="center" prop="configName" :show-overflow-tooltip="true" />
+            <el-table-column label="照片" align="center" >
+              <!-- class-name="small-padding fixed-width" -->
+              <template slot-scope="scope">
+                <el-button
+                  size="mini"
+                  type="warning"
+                  @click="handleUpdate(scope.row)"
+                  v-hasPermi="['system:config:edit']"
+                >上传</el-button>
+              </template>
+            </el-table-column>
+            <el-table-column label="操作" align="center" >
+              <!-- class-name="small-padding fixed-width" -->
+              <template slot-scope="scope">
+                <el-button
+                  size="mini"
+                  type="danger"
+                  @click="handleDelete(scope.row)"
+                  v-hasPermi="['system:config:remove']"
+                >删除</el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+
+       </div>
+
+     <div class="funding" v-if="false">
+        <p class="kaieu">到资金额合计:  万元</p>
+          <p class="kaieu_tw"><i class="el-icon-circle-plus-outline"></i> 添加设备安装信息</p>
+        <el-table v-loading="loading" :data="configList" >
+          <!-- <el-table-column type="selection" width="55" align="center" /> -->
+          <el-table-column label="时间" align="center" prop="configId" />
+          <el-table-column label="进度" align="center" prop="configName" :show-overflow-tooltip="true" />
+          <el-table-column label="照片" align="center" >
+            <!-- class-name="small-padding fixed-width" -->
+            <template slot-scope="scope">
+              <el-button
+                size="mini"
+                type="warning"
+                @click="handleUpdate(scope.row)"
+                v-hasPermi="['system:config:edit']"
+              >上传</el-button>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="center" >
+            <!-- class-name="small-padding fixed-width" -->
+            <template slot-scope="scope">
+              <el-button
+                size="mini"
+                type="danger"
+                @click="handleDelete(scope.row)"
+                v-hasPermi="['system:config:remove']"
+              >删除</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+
+     </div>
+     </div>
+     <div class="namjeu" v-if="false">
+       <el-form :model="queryParamstwr" ref="queryForm" :inline="true" v-show="showSearch" label-width="135px" label-position="center" class="manager_form">
+           <el-form-item label=" 入统时间:">
+                <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 335px"></el-date-picker>
+            </el-form-item>
+             <el-form-item label="施工许可证:" prop="configType" class="maget_ty maget_tyty">
+                 <div class="forieu" style="width: 618px;">
+                  <div class="bure burert">
+                   <el-upload
+                     action="#"
+                      list-type="picture-card"
+                      :auto-upload="false">
+                        <!-- <i slot="default" class="el-icon-plus"></i> -->
+                        <div slot="file" slot-scope="{file}" style="height: 78px;">
+                          <img
+                            class="el-upload-list__item-thumbnail"
+                            :src="file.url" alt=""
+                          >
+                          <span class="el-upload-list__item-actions">
+                            <span
+                              class="el-upload-list__item-preview"
+                              @click="handlePictureCardPreview(file)"
+                            >
+                              <i class="el-icon-zoom-in"></i>
+                            </span>
+                           <!-- <span
+                              v-if="!disabled"
+                              class="el-upload-list__item-delete"
+                              @click="handleDownload(file)"
+                            >
+                              <i class="el-icon-download"></i>
+                            </span> -->
+                            <span
+                              v-if="!disabled"
+                              class="el-upload-list__item-delete"
+                              @click="handleRemove(file)"
+                            >
+                              <i class="el-icon-delete"></i>
+                            </span>
+                          </span>
+
+                        </div>
+                     <div class="ijeut">
+                       <el-button plain slot="trigger" size="small" type="primary" >选择图片</el-button>
+                        <!-- margin-top: 15%; transform: translateY(-50%); -->
+                       <el-button style="margin-left: 10px;" size="small" type="primary" @click="submitUpload">开始上传</el-button>
+                     </div>
+                     <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
+                   </el-upload>
+
+                  </div>
+                 </div>
+               </el-form-item>
+        </el-form>
+
+
+     </div>
+
+
+  </div>
+
+
+<el-dialog :visible.sync="dialogVisible">
+                     <img width="100%" :src="dialogImageUrl" alt="">
+                   </el-dialog>
+    <!-- 添加或修改参数配置对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="150px">
+        <el-form-item label="企业名称" prop="configName">
+          <el-input v-model="form.configName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="企业所在地" prop="configKey">
+          <el-input v-model="form.configKey" placeholder="请输入参数键名" />
+        </el-form-item>
+        <el-form-item label="法人代表姓名" prop="configValue">
+          <el-input v-model="form.configValue" placeholder="请输入参数键值" />
+        </el-form-item>
+        <el-form-item label="系统内置" prop="configType">
+          <el-radio-group v-model="form.configType">
+            <el-radio
+              v-for="dict in typeOptions"
+              :key="dict.dictValue"
+              :label="dict.dictValue"
+            >{{dict.dictLabel}}</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="联系方式" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入联系方式" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig, clearCache } from "@/api/system/config";
+export default {
+  name: "Config",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tab:1,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 参数表格数据
+      configList: [],
+      // 弹出层标题
+      title: "",
+      dialogImageUrl: '',
+      dialogVisible: false,
+      disabled: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        configName: undefined,
+        configKey: undefined,
+        configType: undefined
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        configName: [
+          { required: true, message: "参数名称不能为空", trigger: "blur" }
+        ],
+        configKey: [
+          { required: true, message: "参数键名不能为空", trigger: "blur" }
+        ],
+        configValue: [
+          { required: true, message: "参数键值不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("sys_yes_no").then(response => {
+      this.typeOptions = response.data;
+    });
+  },
+  methods: {
+    submitUpload() {
+      this.$refs.upload.submit();
+    },
+    handleRemove(file) {
+           console.log(file);
+         },
+         handlePictureCardPreview(file) {
+           this.dialogImageUrl = file.url;
+           this.dialogVisible = true;
+         },
+         handleDownload(file) {
+           console.log(file);
+         },
+    /** 查询参数列表 */
+    getList() {
+      this.loading = true;
+      listConfig(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+          this.configList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        }
+      );
+    },
+    // 参数系统内置字典翻译
+    typeFormat(row, column) {
+      return this.selectDictLabel(this.typeOptions, row.configType);
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        configId: undefined,
+        configName: undefined,
+        configKey: undefined,
+        configValue: undefined,
+        configType: "Y",
+        remark: undefined
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.dateRange = [];
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加参数";
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.configId)
+      this.single = selection.length!=1
+      this.multiple = !selection.length
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const configId = row.configId || this.ids
+      getConfig(configId).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改参数";
+      });
+    },
+    /** 提交按钮 */
+    submitForm: function() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.configId != undefined) {
+            updateConfig(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addConfig(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const configIds = row.configId || this.ids;
+      this.$confirm('是否确认删除参数编号为"' + configIds + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delConfig(configIds);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有参数数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportConfig(queryParams);
+        }).then(response => {
+          this.download(response.msg);
+        })
+    },
+    /** 清理缓存按钮操作 */
+    handleClearCache() {
+      clearCache().then(response => {
+        this.msgSuccess("清理成功");
+      });
+    },
+    //tab
+    tabClid(index){
+    this.tab = index
+    // this.$router.push('/tab');
+    }
+  }
+};
+</script>
+<style rel="stylesheet/scss" lang="scss">
+  .buiy{
+    // width: 75px !important;
+    // height: 30px !important;
+    // line-height: 30px !important;
+  }
+  .ijeut{
+    display: flex;
+    height: 78px;
+    align-items: center;
+  }
+
+  .burert{
+    .el-upload--picture-card{
+      height: 78px;
+      line-height: 78px;
+      width: 80px;
+      vertical-align:center;
+      border: 0 !important;
+      background-color: #fff;
+    }
+    .el-upload-list--picture-card .el-upload-list__item{
+      height: 78px !important;
+      width: 78px !important;
+    }
+  }
+
+  .manager_form{
+    .manager_lab{
+      .el-form-item__label{
+        width: 145px !important;
+      }
+    }
+    .maneg_lar{
+      position: relative;
+      .el-form-item__label{
+        width: 134px !important;
+      }
+      span{
+        position: absolute;
+        left: -95%;
+      }
+    }
+    .manager_labtwo{
+      .el-form-item__label{
+        width: 244px !important;
+      }
+    }
+    .manager_labthre{
+      // .el-form-item{
+        .el-form-item__label{
+          width: 130px !important;
+        }
+        margin-right: 40px !important;
+      // }
+    }
+    .ieuyr{
+      .el-textarea__inner{
+        height: 80px !important;
+      }
+    }
+    .mage_ter{
+      .el-form-item__label{
+        width: 513px !important;
+      }
+    }
+    .maget_ty{
+      .el-form-item__label{
+        width: 135px !important;
+      }
+    }
+    .forieu{
+     border: 1px solid #DCDFE6;
+     border-radius: 4px;
+     width: 480px;
+     height: 100px !important;
+     position: relative;
+
+     .bure{
+       display: flex;
+       // position: absolute;
+       // height: 100%;
+       // right: 20px;
+       // top: 50%;
+       // transform: translateY(-50%);
+       padding: 10px 0;
+     }
+     .burert{
+       display: flex;
+       position: absolute;
+       height: 100%;
+       left: 20px;
+       top: 50%;
+       transform: translateY(-50%);
+     }
+    }
+  }
+  .lage_div{
+    padding-left: 15px;
+    display: flex;
+    align-items: center;
+    margin-bottom: 22px;
+    .el-form-item{
+      margin-bottom: 0 !important;
+    }
+  }
+.app-conta{
+  .header{
+    padding-left: 22px;
+    height: 45px;
+    line-height: 40px;
+    background-color: #F1F1F1;
+    font-size: 18px;
+    color: #343434;
+    margin-bottom: 40px;
+  }
+  .nauer{
+    .nuae_wtu{
+      display: flex;
+      justify-content: center;
+      align-content: center;
+     .naue_one{
+       width: 30%;
+       p{
+         font-size: 12px;
+         font-family: PingFang SC;
+         font-weight: 400;
+         color: #343434;
+       }
+       .naue_name{
+         font-size: 14px;
+         font-family: PingFang SC;
+         font-weight: bold;
+         color: #0669B2;
+         margin-bottom: 30px;
+       }
+     }
+     .naue_two{
+       flex: 1;
+       padding-top: 20px;
+       // display: flex;
+       // align-items: center;
+       // justify-content: center;
+     }
+    }
+    //tab
+    .naue_tab{
+      border-bottom: 1px solid #CDCDCD;
+      display: flex;
+      margin-top: 30px;
+      padding: 0 10px;
+      margin-bottom: 30px;
+      p{
+        font-size: 12px;
+        font-family: PingFang SC;
+        font-weight: 400;
+        color: #343434;
+        padding: 11px 15px;
+        margin: 0;
+      }
+      .p{
+        border-bottom: 2px solid #1C84C6;
+        margin-bottom: -1px;
+      }
+    }
+    .mation{
+
+      .enterprise{
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: bold;
+        color: #1C84C6;
+        margin-top: 25px;
+        margin-bottom: 20px;
+      }
+      .enterprise_tw{
+        i{
+          margin-right: 5px;
+        }
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: 600;
+        color: #666666;
+      }
+    }
+
+  }
+  .nvestor{
+    margin-bottom: 10px;
+    p{
+      margin:0;
+      font-size: 14px;
+      font-family: PingFang SC;
+      font-weight: bold;
+      color: #343434;
+      height: 24px;
+      line-height: 24px;
+      border-left: 3px solid #1C84C6;
+      padding-left: 13px;
+      i{
+        color: red;
+      }
+    }
+  }
+  .souu{
+    font-size: 14px;
+    font-family: PingFang SC;
+    font-weight: 400;
+    color: #343434;
+    margin-left: 5px;
+  }
+}
+//在建项目
+.nstruction{
+  display: flex;
+  align-items: center;
+ .nstruction_nav{
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+     margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+ .nstruction_navne{
+   margin-left: 50px;
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+      margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+}
+.kaieu{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 800;
+  color: #343434;
+}
+.kaieu_tw{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 500;
+  color: #666666;
+}
+</style>

+ 606 - 0
ruoyi-ui/src/views/management/roduction/index.vue

@@ -0,0 +1,606 @@
+<template>
+
+  <div class="app-conta">
+
+
+  <div class="nauer">
+
+
+
+     <!-- 在建项目 -->
+     <div>
+       <div class="nstruction">
+
+       <!-- 内容 -->
+       <div class="namjeu" >
+         <el-form :model="queryParamstwr" ref="queryForm" :inline="true" v-show="showSearch" label-width="135px" label-position="center" class="manager_form">
+         <el-form-item label=" 已完成投资额:">
+              <el-input
+                v-model="queryParams.configName"
+                placeholder="请输入已完成投资额"
+                clearable
+                size="small"
+                style="width: 335px"
+                @keyup.enter.native="handleQuery"
+              />
+          </el-form-item>
+          <el-form-item label="设备投资额度:">
+               <el-input
+                 v-model="queryParams.configName"
+                 placeholder="请输入设备投资额度"
+                 clearable
+                 size="small"
+                 style="width: 335px"
+                 @keyup.enter.native="handleQuery"
+               />
+           </el-form-item>
+           <el-form-item label="投产时间:">
+                <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 335px"></el-date-picker>
+            </el-form-item>
+          <el-form-item label="施工许可证:" prop="configType" class="maget_ty">
+              <div class="forieu" style="width: 618px;">
+               <div class="bure burert">
+                 <el-upload
+                   action="#"
+                    list-type="picture-card"
+                    :auto-upload="false">
+                      <!-- <i slot="default" class="el-icon-plus"></i> -->
+                      <div slot="file" slot-scope="{file}" style="height: 78px;">
+                        <img
+                          class="el-upload-list__item-thumbnail"
+                          :src="file.url" alt=""
+                        >
+                        <span class="el-upload-list__item-actions">
+                          <span
+                            class="el-upload-list__item-preview"
+                            @click="handlePictureCardPreview(file)"
+                          >
+                            <i class="el-icon-zoom-in"></i>
+                          </span>
+                         <!-- <span
+                            v-if="!disabled"
+                            class="el-upload-list__item-delete"
+                            @click="handleDownload(file)"
+                          >
+                            <i class="el-icon-download"></i>
+                          </span> -->
+                          <span
+                            v-if="!disabled"
+                            class="el-upload-list__item-delete"
+                            @click="handleRemove(file)"
+                          >
+                            <i class="el-icon-delete"></i>
+                          </span>
+                        </span>
+
+                      </div>
+                   <div class="ijeut">
+                     <el-button plain slot="trigger" size="small" type="primary" >选择图片</el-button>
+                      <!-- margin-top: 15%; transform: translateY(-50%); -->
+                     <el-button style="margin-left: 10px;" size="small" type="primary" @click="submitUpload">开始上传</el-button>
+                   </div>
+                   <!-- <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> -->
+                 </el-upload>
+               </div>
+              </div>
+            </el-form-item>
+            <el-form-item label="是否开工建设:" prop="configType">
+              <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 458px">
+                <el-option
+                  v-for="dict in typeOptions"
+                  :key="dict.dictValue"
+                  :label="dict.dictLabel"
+                  :value="dict.dictValue"
+                />
+              </el-select>
+            </el-form-item>
+             <el-form-item label=" 项目入规(限):">
+                  <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 335px">
+                    <el-option
+                      v-for="dict in typeOptions"
+                      :key="dict.dictValue"
+                      :label="dict.dictLabel"
+                      :value="dict.dictValue"
+                    />
+                  </el-select>
+              </el-form-item>
+              <el-form-item label="项目入规时间:">
+                   <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 335px"></el-date-picker>
+               </el-form-item>
+          </el-form>
+
+
+       </div>
+
+</div>
+</div>
+  </div>
+
+
+<el-dialog :visible.sync="dialogVisible">
+                     <img width="100%" :src="dialogImageUrl" alt="">
+                   </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig, clearCache } from "@/api/system/config";
+export default {
+  name: "Config",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tab:1,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 参数表格数据
+      configList: [],
+      // 弹出层标题
+      title: "",
+      dialogImageUrl: '',
+      dialogVisible: false,
+      disabled: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        configName: undefined,
+        configKey: undefined,
+        configType: undefined
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        configName: [
+          { required: true, message: "参数名称不能为空", trigger: "blur" }
+        ],
+        configKey: [
+          { required: true, message: "参数键名不能为空", trigger: "blur" }
+        ],
+        configValue: [
+          { required: true, message: "参数键值不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("sys_yes_no").then(response => {
+      this.typeOptions = response.data;
+    });
+  },
+  methods: {
+    submitUpload() {
+      this.$refs.upload.submit();
+    },
+    handleRemove(file) {
+           console.log(file);
+         },
+         handlePictureCardPreview(file) {
+           this.dialogImageUrl = file.url;
+           this.dialogVisible = true;
+         },
+         handleDownload(file) {
+           console.log(file);
+         },
+    /** 查询参数列表 */
+    getList() {
+      this.loading = true;
+      listConfig(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+          this.configList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        }
+      );
+    },
+    // 参数系统内置字典翻译
+    typeFormat(row, column) {
+      return this.selectDictLabel(this.typeOptions, row.configType);
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        configId: undefined,
+        configName: undefined,
+        configKey: undefined,
+        configValue: undefined,
+        configType: "Y",
+        remark: undefined
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.dateRange = [];
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加参数";
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.configId)
+      this.single = selection.length!=1
+      this.multiple = !selection.length
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const configId = row.configId || this.ids
+      getConfig(configId).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改参数";
+      });
+    },
+    /** 提交按钮 */
+    submitForm: function() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.configId != undefined) {
+            updateConfig(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addConfig(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const configIds = row.configId || this.ids;
+      this.$confirm('是否确认删除参数编号为"' + configIds + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delConfig(configIds);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有参数数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportConfig(queryParams);
+        }).then(response => {
+          this.download(response.msg);
+        })
+    },
+    /** 清理缓存按钮操作 */
+    handleClearCache() {
+      clearCache().then(response => {
+        this.msgSuccess("清理成功");
+      });
+    },
+    //tab
+    tabClid(index){
+    this.tab = index
+    // this.$router.push('/tab');
+    }
+  }
+};
+</script>
+<style rel="stylesheet/scss" lang="scss">
+  .buiy{
+    // width: 75px !important;
+    // height: 30px !important;
+    // line-height: 30px !important;
+  }
+  .ijeut{
+    display: flex;
+    height: 78px;
+    align-items: center;
+  }
+
+  .burert{
+    .el-upload--picture-card{
+      height: 78px;
+      line-height: 78px;
+      width: 80px;
+      vertical-align:center;
+      border: 0 !important;
+      background-color: #fff;
+    }
+    .el-upload-list--picture-card .el-upload-list__item{
+      height: 78px !important;
+      width: 78px !important;
+    }
+  }
+
+  .manager_form{
+    .manager_lab{
+      .el-form-item__label{
+        width: 145px !important;
+      }
+    }
+    .maneg_lar{
+      position: relative;
+      .el-form-item__label{
+        width: 134px !important;
+      }
+      span{
+        position: absolute;
+        left: -95%;
+      }
+    }
+    .manager_labtwo{
+      .el-form-item__label{
+        width: 244px !important;
+      }
+    }
+    .manager_labthre{
+      // .el-form-item{
+        .el-form-item__label{
+          width: 130px !important;
+        }
+        margin-right: 40px !important;
+      // }
+    }
+    .ieuyr{
+      .el-textarea__inner{
+        height: 80px !important;
+      }
+    }
+    .mage_ter{
+      .el-form-item__label{
+        width: 513px !important;
+      }
+    }
+    .maget_ty{
+      .el-form-item__label{
+        width: 135px !important;
+      }
+    }
+    .forieu{
+     border: 1px solid #DCDFE6;
+     border-radius: 4px;
+     width: 480px;
+     height: 100px !important;
+     position: relative;
+
+     .bure{
+       display: flex;
+       // position: absolute;
+       // height: 100%;
+       // right: 20px;
+       // top: 50%;
+       // transform: translateY(-50%);
+       padding: 10px 0;
+     }
+     .burert{
+       display: flex;
+       position: absolute;
+       height: 100%;
+       left: 20px;
+       top: 50%;
+       transform: translateY(-50%);
+     }
+    }
+  }
+  .lage_div{
+    padding-left: 15px;
+    display: flex;
+    align-items: center;
+    margin-bottom: 22px;
+    .el-form-item{
+      margin-bottom: 0 !important;
+    }
+  }
+.app-conta{
+  .header{
+    padding-left: 22px;
+    height: 45px;
+    line-height: 40px;
+    background-color: #F1F1F1;
+    font-size: 18px;
+    color: #343434;
+    margin-bottom: 40px;
+  }
+  .nauer{
+    .nuae_wtu{
+      display: flex;
+      justify-content: center;
+      align-content: center;
+     .naue_one{
+       width: 30%;
+       p{
+         font-size: 12px;
+         font-family: PingFang SC;
+         font-weight: 400;
+         color: #343434;
+       }
+       .naue_name{
+         font-size: 14px;
+         font-family: PingFang SC;
+         font-weight: bold;
+         color: #0669B2;
+         margin-bottom: 30px;
+       }
+     }
+     .naue_two{
+       flex: 1;
+       padding-top: 20px;
+       // display: flex;
+       // align-items: center;
+       // justify-content: center;
+     }
+    }
+    //tab
+    .naue_tab{
+      border-bottom: 1px solid #CDCDCD;
+      display: flex;
+      margin-top: 30px;
+      padding: 0 10px;
+      margin-bottom: 30px;
+      p{
+        font-size: 12px;
+        font-family: PingFang SC;
+        font-weight: 400;
+        color: #343434;
+        padding: 11px 15px;
+        margin: 0;
+      }
+      .p{
+        border-bottom: 2px solid #1C84C6;
+        margin-bottom: -1px;
+      }
+    }
+    .mation{
+
+      .enterprise{
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: bold;
+        color: #1C84C6;
+        margin-top: 25px;
+        margin-bottom: 20px;
+      }
+      .enterprise_tw{
+        i{
+          margin-right: 5px;
+        }
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: 600;
+        color: #666666;
+      }
+    }
+
+  }
+  .nvestor{
+    margin-bottom: 10px;
+    p{
+      margin:0;
+      font-size: 14px;
+      font-family: PingFang SC;
+      font-weight: bold;
+      color: #343434;
+      height: 24px;
+      line-height: 24px;
+      border-left: 3px solid #1C84C6;
+      padding-left: 13px;
+      i{
+        color: red;
+      }
+    }
+  }
+  .souu{
+    font-size: 14px;
+    font-family: PingFang SC;
+    font-weight: 400;
+    color: #343434;
+    margin-left: 5px;
+  }
+}
+//在建项目
+.nstruction{
+  display: flex;
+  align-items: center;
+ .nstruction_nav{
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+     margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+ .nstruction_navne{
+   margin-left: 50px;
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+      margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+}
+.kaieu{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 800;
+  color: #343434;
+}
+.kaieu_tw{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 500;
+  color: #666666;
+}
+</style>

+ 567 - 0
ruoyi-ui/src/views/management/row/index.vue

@@ -0,0 +1,567 @@
+<template>
+
+  <div class="app-container">
+    <div class="header">
+      项目详情 >
+    </div>
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          @click="handleAdd"
+          v-hasPermi="['system:config:add']"
+        >提交</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          @click="handleUpdate"
+          v-hasPermi="['system:config:edit']"
+        >暂存</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+  <div class="naue">
+    <!-- //步骤条 -->
+    <div class="nuae_wtu">
+      <div class="naue_one">
+       <p class="naue_name">项目名称:电子类企业</p>
+       <p>返乡创业:是</p>
+       <p>所属产业:电子产业</p>
+      </div>
+      <div class="naue_two">
+        <el-steps :active="naueactive" align-center finish-status="success">
+          <el-step title="线索审核中"></el-step>
+          <el-step title="线索审核成功"></el-step>
+          <el-step title="签约审核成功"></el-step>
+          <el-step title="在建审核成功"></el-step>
+          <el-step title="结束"></el-step>
+        </el-steps>
+      </div>
+    </div>
+    <!-- //tab栏 -->
+    <!-- <div class="naue_tab">
+     <p @click="tabClid(index)" v-for="(item,index) in tabNume"  :key="index" :class="[tab == index? 'p' : '']">{{item}}</p>
+    </div> -->
+      <my-tabs :tabList="tabList" :tabIndex="tabIndex" @changeTab="changeTab">
+          <keep-alive>
+            <component :is="currentContent">
+            </component>
+          </keep-alive>
+        </my-tabs>
+
+    <!-- 内容的显示隐藏 -->
+
+
+
+     <!-- 在建项目 -->
+
+
+  </div>
+
+
+
+    <!-- 添加或修改参数配置对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="150px">
+        <el-form-item label="企业名称" prop="configName">
+          <el-input v-model="form.configName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="企业所在地" prop="configKey">
+          <el-input v-model="form.configKey" placeholder="请输入参数键名" />
+        </el-form-item>
+        <el-form-item label="法人代表姓名" prop="configValue">
+          <el-input v-model="form.configValue" placeholder="请输入参数键值" />
+        </el-form-item>
+        <el-form-item label="系统内置" prop="configType">
+          <el-radio-group v-model="form.configType">
+            <el-radio
+              v-for="dict in typeOptions"
+              :key="dict.dictValue"
+              :label="dict.dictValue"
+            >{{dict.dictLabel}}</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="联系方式" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入联系方式" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig, clearCache } from "@/api/system/config";
+import myTabs from '../../tab/index.vue'
+import One from '../../under/index.vue'
+import Two from '../nstruction/index.vue'
+import Three from '../roduction/index.vue'
+export default {
+  name: "Config",
+  components: {
+      myTabs,
+      'one': One,
+      'two': Two,
+      'three':Three
+},
+  data() {
+    return {
+      tabIndex: 0,
+            currentContent: 'one',
+            tabList: [
+              {
+                index: 0,
+                name: '线索信息',
+                component: 'one'
+              },
+              {
+                index: 1,
+                name: '在建信息',
+                component: 'two'
+              },
+              {
+                index: 2,
+                name: '投产信息',
+                component: 'three'
+              }
+            ],
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tab:1,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 参数表格数据
+      configList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 类型数据字典
+      typeOptions: [],
+      // 日期范围
+      dateRange: [],
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        configName: undefined,
+        configKey: undefined,
+        configType: undefined
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        configName: [
+          { required: true, message: "参数名称不能为空", trigger: "blur" }
+        ],
+        configKey: [
+          { required: true, message: "参数键名不能为空", trigger: "blur" }
+        ],
+        configValue: [
+          { required: true, message: "参数键值不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("sys_yes_no").then(response => {
+      this.typeOptions = response.data;
+    });
+  },
+  methods: {
+    /** 查询参数列表 */
+    getList() {
+      this.loading = true;
+      listConfig(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+          this.configList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        }
+      );
+    },
+    // 参数系统内置字典翻译
+    typeFormat(row, column) {
+      return this.selectDictLabel(this.typeOptions, row.configType);
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        configId: undefined,
+        configName: undefined,
+        configKey: undefined,
+        configValue: undefined,
+        configType: "Y",
+        remark: undefined
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.dateRange = [];
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加参数";
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.configId)
+      this.single = selection.length!=1
+      this.multiple = !selection.length
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const configId = row.configId || this.ids
+      getConfig(configId).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改参数";
+      });
+    },
+    /** 提交按钮 */
+    submitForm: function() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.configId != undefined) {
+            updateConfig(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addConfig(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const configIds = row.configId || this.ids;
+      this.$confirm('是否确认删除参数编号为"' + configIds + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delConfig(configIds);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有参数数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportConfig(queryParams);
+        }).then(response => {
+          this.download(response.msg);
+        })
+    },
+    /** 清理缓存按钮操作 */
+    handleClearCache() {
+      clearCache().then(response => {
+        this.msgSuccess("清理成功");
+      });
+    },
+    //tab
+    changeTab(index){
+      console.log(34)
+    this.tabIndex = index.index
+    this.currentContent = index.component
+    // this.$router.push('/tab');
+    }
+  }
+};
+</script>
+<style rel="stylesheet/scss" lang="scss">
+  .manager_form{
+    .manager_lab{
+      .el-form-item__label{
+        width: 145px !important;
+      }
+    }
+    .maneg_lar{
+      position: relative;
+      .el-form-item__label{
+        width: 134px !important;
+      }
+      span{
+        position: absolute;
+        left: -95%;
+      }
+    }
+    .manager_labtwo{
+      .el-form-item__label{
+        width: 244px !important;
+      }
+    }
+    .manager_labthre{
+      // .el-form-item{
+        .el-form-item__label{
+          width: 130px !important;
+        }
+        margin-right: 40px !important;
+      // }
+    }
+    .ieuyr{
+      .el-textarea__inner{
+        height: 80px !important;
+      }
+    }
+    .mage_ter{
+      .el-form-item__label{
+        width: 513px !important;
+      }
+    }
+    .maget_ty{
+      .el-form-item__label{
+        width: 135px !important;
+      }
+    }
+    .forieu{
+     border: 1px solid #DCDFE6;
+     border-radius: 4px;
+     width: 480px;
+     height: 90px;
+     position: relative;
+     .bure{
+       position: absolute;
+       right: 20px;
+       top: 50%;
+       transform: translateY(-50%);
+     }
+    }
+  }
+  .lage_div{
+    padding-left: 15px;
+    display: flex;
+    align-items: center;
+    margin-bottom: 22px;
+    .el-form-item{
+      margin-bottom: 0 !important;
+    }
+  }
+.app-container{
+  .header{
+    padding-left: 22px;
+    height: 45px;
+    line-height: 40px;
+    background-color: #F1F1F1;
+    font-size: 18px;
+    color: #343434;
+    margin-bottom: 40px;
+  }
+  .naue{
+    border: 1px solid #DADADA;
+    padding:  20px;
+    margin-top: 40px;
+    .nuae_wtu{
+      display: flex;
+      justify-content: center;
+      align-content: center;
+     .naue_one{
+       width: 30%;
+       p{
+         font-size: 12px;
+         font-family: PingFang SC;
+         font-weight: 400;
+         color: #343434;
+       }
+       .naue_name{
+         font-size: 14px;
+         font-family: PingFang SC;
+         font-weight: bold;
+         color: #0669B2;
+         margin-bottom: 30px;
+       }
+     }
+     .naue_two{
+       flex: 1;
+       padding-top: 20px;
+       // display: flex;
+       // align-items: center;
+       // justify-content: center;
+     }
+    }
+    //tab
+    .naue_tab{
+      border-bottom: 1px solid #CDCDCD;
+      display: flex;
+      margin-top: 30px;
+      padding: 0 10px;
+      margin-bottom: 30px;
+      p{
+        font-size: 12px;
+        font-family: PingFang SC;
+        font-weight: 400;
+        color: #343434;
+        padding: 11px 15px;
+        margin: 0;
+      }
+      .p{
+        border-bottom: 2px solid #1C84C6;
+        margin-bottom: -1px;
+      }
+    }
+    .mation{
+
+      .enterprise{
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: bold;
+        color: #1C84C6;
+        margin-top: 25px;
+        margin-bottom: 20px;
+      }
+      .enterprise_tw{
+        i{
+          margin-right: 5px;
+        }
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: 600;
+        color: #666666;
+      }
+    }
+
+  }
+  .nvestor{
+    margin-bottom: 10px;
+    p{
+      margin:0;
+      font-size: 14px;
+      font-family: PingFang SC;
+      font-weight: bold;
+      color: #343434;
+      height: 24px;
+      line-height: 24px;
+      border-left: 3px solid #1C84C6;
+      padding-left: 13px;
+      i{
+        color: red;
+      }
+    }
+  }
+  .souu{
+    font-size: 14px;
+    font-family: PingFang SC;
+    font-weight: 400;
+    color: #343434;
+    margin-left: 5px;
+  }
+}
+//在建项目
+.nstruction{
+  display: flex;
+  align-items: center;
+ .nstruction_nav{
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+     margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+ .nstruction_navne{
+   margin-left: 50px;
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+      margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+}
+.kaieu{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 800;
+  color: #343434;
+}
+.kaieu_tw{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 500;
+  color: #666666;
+}
+</style>

+ 63 - 0
ruoyi-ui/src/views/management/row/tab.vue

@@ -0,0 +1,63 @@
+<template>
+  <div>
+    <!-- //tab栏 -->
+    <div class="naue_tab">
+     <p @click="tabClid(index)" v-for="(item,index) in tabNume"  :key="index" :class="[tab == index? 'p' : '']">{{item}}</p>
+    </div>
+    <div>
+         <slot></slot>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "Config",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tab:1,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+    };
+  },
+  created() {
+  },
+  methods: {
+    //tab
+    tabClid(index){
+    this.tab = index
+    }
+  }
+};
+</script>
+
+<style rel="stylesheet/scss" lang="scss">
+  //tab
+  .naue_tab{
+    border-bottom: 1px solid #CDCDCD;
+    display: flex;
+    margin-top: 30px;
+    padding: 0 10px;
+    margin-bottom: 30px;
+    p{
+      font-size: 12px;
+      font-family: PingFang SC;
+      font-weight: 400;
+      color: #343434;
+      padding: 11px 15px;
+      margin: 0;
+    }
+    .p{
+      border-bottom: 2px solid #1C84C6;
+      margin-bottom: -1px;
+    }
+  }
+</style>

+ 67 - 0
ruoyi-ui/src/views/tab/index.vue

@@ -0,0 +1,67 @@
+<template>
+  <div>
+    <!-- //tab栏 -->
+    <div class="naue_tab">
+     <p @click="changeTab(tab)" v-for="tab in tabList"  :key="tab.index" :class="[tabIndex == tab.index? 'p' : '']">{{tab.name}}</p>
+    </div>
+    <div>
+         <slot></slot>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "'Mytabs'",
+  props:{
+    tabList: Array,
+    tabIndex: Number
+  },
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+    };
+  },
+  created() {
+  },
+  methods: {
+    //tab
+    changeTab(index){
+      this.$emit('changeTab', index)
+    // this.tab = index
+    }
+  }
+};
+</script>
+
+<style rel="stylesheet/scss" lang="scss">
+  //tab
+  .naue_tab{
+    border-bottom: 1px solid #CDCDCD;
+    display: flex;
+    margin-top: 30px;
+    padding: 0 10px;
+    margin-bottom: 30px;
+    p{
+      font-size: 12px;
+      font-family: PingFang SC;
+      font-weight: 400;
+      color: #343434;
+      padding: 11px 15px;
+      margin: 0;
+    }
+    .p{
+      border-bottom: 2px solid #1C84C6;
+      margin-bottom: -1px;
+    }
+  }
+</style>

+ 860 - 0
ruoyi-ui/src/views/under/index.vue

@@ -0,0 +1,860 @@
+<template>
+
+  <div class="app-cont">
+  <!-- <div class="naue"> -->
+    <!-- 内容的显示隐藏 -->
+<div class="mation" >
+       <div class="nvestor">
+         <p>投资方 <i>*</i></p>
+       </div>
+       <p class="enterprise">企业</p>
+       <p class="enterprise_tw"><i class="el-icon-circle-plus-outline"></i>添加企业</p>
+       <el-table v-loading="loading" :data="configList" >
+         <!-- <el-table-column type="selection" width="55" align="center" /> -->
+         <el-table-column label="企业名称" align="center" prop="configId" />
+         <el-table-column label="企业所在地" align="center" prop="configName" :show-overflow-tooltip="true" />
+         <el-table-column label="法人代表姓名" align="center" prop="configKey" :show-overflow-tooltip="true" />
+         <el-table-column label="统一社会信用代码" align="center" prop="configValue" />
+         <el-table-column label="联系方式" align="center" prop="configType" :formatter="typeFormat" />
+        <!-- <el-table-column label="操作" align="center" prop="remark" :show-overflow-tooltip="true" /> -->
+         <el-table-column label="操作" align="center" >
+           <!-- class-name="small-padding fixed-width" -->
+           <template slot-scope="scope">
+             <el-button
+               size="mini"
+               type="warning"
+               @click="handleUpdate(scope.row)"
+               v-hasPermi="['system:config:edit']"
+             >修改</el-button>
+             <el-button
+               size="mini"
+               type="danger"
+               @click="handleDelete(scope.row)"
+               v-hasPermi="['system:config:remove']"
+             >删除</el-button>
+           </template>
+         </el-table-column>
+       </el-table>
+       <p class="enterprise">自然人</p>
+       <p class="enterprise_tw"><i class="el-icon-circle-plus-outline"></i>添加自然人</p>
+  <el-table v-loading="loading" :data="configList" >
+   <!-- <el-table-column type="selection" width="55" align="center" /> -->
+   <el-table-column label="姓名" align="center" prop="configId" />
+   <el-table-column label="自然人所在地" align="center" prop="configName" :show-overflow-tooltip="true" />
+   <el-table-column label="身份证号码" align="center" prop="configKey" :show-overflow-tooltip="true" />
+   <el-table-column label="联系方式" align="center" prop="configValue" />
+   <!-- <el-table-column label="联系方式" align="center" prop="configType" :formatter="typeFormat" /> -->
+  <!-- <el-table-column label="操作" align="center" prop="remark" :show-overflow-tooltip="true" /> -->
+   <el-table-column label="操作" align="center" >
+     <!-- class-name="small-padding fixed-width" -->
+     <template slot-scope="scope">
+       <el-button
+         size="mini"
+         type="warning"
+         @click="handleUpdate(scope.row)"
+         v-hasPermi="['system:config:edit']"
+       >修改</el-button>
+       <el-button
+         size="mini"
+         type="danger"
+         @click="handleDelete(scope.row)"
+         v-hasPermi="['system:config:remove']"
+       >删除</el-button>
+     </template>
+   </el-table-column>
+ </el-table>
+       <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="115px" label-position="center" class="manager_form">
+         <el-form-item label="投资方联系人" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入投资方联系人"
+             clearable
+             size="small"
+             style="width: 223px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <el-form-item label="投资方联系方式:" prop="configKey">
+           <el-input
+             v-model="queryParams.configKey"
+             placeholder="请输入联系方式"
+             clearable
+             size="small"
+             style="width: 223px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <div class="nvestor">
+           <p>投资方 <i>*</i></p>
+         </div>
+         <el-form-item label="引荐单位:" prop="configType">
+           <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 188px">
+             <el-option
+               v-for="dict in typeOptions"
+               :key="dict.dictValue"
+               :label="dict.dictLabel"
+               :value="dict.dictValue"
+             />
+           </el-select>
+         </el-form-item>
+         <el-form-item label="投资分配额:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="输入数字"
+             clearable
+             size="small"
+             style="width: 98px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">%</span>
+         </el-form-item>
+         <el-form-item label="引荐方联系人:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 98px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+
+         <el-form-item label="引荐方联系方式:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入联系方式"
+             clearable
+             size="small"
+             style="width: 153px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <el-form-item label="引荐单位:" prop="configType">
+           <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 188px">
+             <el-option
+               v-for="dict in typeOptions"
+               :key="dict.dictValue"
+               :label="dict.dictLabel"
+               :value="dict.dictValue"
+             />
+           </el-select>
+         </el-form-item>
+         <el-form-item label="投资分配额:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="输入数字"
+             clearable
+             size="small"
+             style="width: 98px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">%</span>
+         </el-form-item>
+         <el-form-item label="引荐方联系人:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 98px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+
+         <el-form-item label="引荐方联系方式:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入联系方式"
+             clearable
+             size="small"
+             style="width: 153px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <div class="nvestor">
+           <p>项目基本信息 <i>*</i></p>
+         </div>
+         <el-form-item label="预计投资额" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入预计投资额"
+             clearable
+             size="small"
+             style="width: 223px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <el-form-item label="其中 固定资产投资:" prop="configKey" class="manager_lab" >
+           <el-input
+             v-model="queryParams.configKey"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 223px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <div class="lage_div">
+           <span>项目主营产品</span>
+           <el-form-item label="产品名称:" prop="configKey"  class="maneg_lar">
+
+             <el-input
+               v-model="queryParams.configKey"
+               placeholder="请输入产品名称"
+               clearable
+               size="small"
+               style="width: 470px"
+               @keyup.enter.native="handleQuery"
+             />
+
+           </el-form-item>
+         </div>
+         <el-form-item label="设计产能:" prop="configKey" class="manager_labtwo" >
+           <el-input
+             v-model="queryParams.configKey"
+             placeholder="请输入设计产能"
+             clearable
+             size="small"
+             style="width: 470px"
+             @keyup.enter.native="handleQuery"
+           />
+
+         </el-form-item>
+         <div class="lage_div">
+           <span>项目预计收益</span>
+           <el-form-item label="预计产值:" prop="configKey"  class="maneg_lar">
+
+             <el-input
+               v-model="queryParams.configKey"
+               placeholder="请输入预计产值"
+               clearable
+               size="small"
+               style="width: 470px"
+               @keyup.enter.native="handleQuery"
+             />
+
+           </el-form-item>
+         </div>
+         <el-form-item label="预计税收:" prop="configKey" class="manager_labtwo" >
+           <el-input
+             v-model="queryParams.configKey"
+             placeholder="请输入预计税收"
+             clearable
+             size="small"
+             style="width: 470px"
+             @keyup.enter.native="handleQuery"
+           />
+
+         </el-form-item>
+         <el-form-item label="预计用工:" prop="configKey" class="manager_labtwo" >
+           <el-input
+             v-model="queryParams.configKey"
+             placeholder="请输入预计用工"
+             clearable
+             size="small"
+             style="width: 470px"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+         <div class="nvestor">
+           <p>项目基本需求 </p>
+         </div>
+         <el-form-item label="项目计划用地:" prop="configName" class="manager_labthre">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 207px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">亩</span>
+         </el-form-item>
+         <el-form-item label="其中 独立供地:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 207px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">亩</span>
+         </el-form-item>
+        <el-form-item label="流转土地:" prop="configName" class="mage_ter">
+          <el-input
+            v-model="queryParams.configName"
+            placeholder="请输入"
+            clearable
+            size="small"
+            style="width: 207px"
+            @keyup.enter.native="handleQuery"
+          />
+          <span class="souu">亩</span>
+        </el-form-item>
+        <el-form-item label="项目计划租赁用房:" prop="configName" class="manager_labthre">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 207px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">亩</span>
+         </el-form-item>
+         <el-form-item label="其中 厂房:" prop="configName">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入"
+             clearable
+             size="small"
+             style="width: 207px"
+             @keyup.enter.native="handleQuery"
+           />
+           <span class="souu">亩</span>
+         </el-form-item>
+        <el-form-item label="办公生活用房:" prop="configName" class="mage_ter">
+          <el-input
+            v-model="queryParams.configName"
+            placeholder="请输入"
+            clearable
+            size="small"
+            style="width: 207px"
+            @keyup.enter.native="handleQuery"
+          />
+          <span class="souu">亩</span>
+        </el-form-item>
+        <el-form-item label="其他需求:" prop="configName" class="maget_ty">
+          <el-input
+            v-model="queryParams.configName"
+            placeholder="请输入项目概况"
+            clearable
+            type="textarea"
+            size="small"
+            style="width: 480px;height: 78px;"
+            class="ieuyr"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+       <el-form-item label="拟落户地点:" prop="configType">
+           <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 188px">
+             <el-option
+               v-for="dict in typeOptions"
+               :key="dict.dictValue"
+               :label="dict.dictLabel"
+               :value="dict.dictValue"
+             />
+           </el-select>
+         </el-form-item>
+         <el-form-item label="是否签订框架协议:" prop="configType" class="maget_ty">
+             <el-select v-model="queryParams.configType" placeholder="系统内置" clearable size="small" style="width: 298px">
+               <el-option
+                 v-for="dict in typeOptions"
+                 :key="dict.dictValue"
+                 :label="dict.dictLabel"
+                 :value="dict.dictValue"
+               />
+             </el-select>
+           </el-form-item>
+          <el-form-item label="添加附件:" prop="configType" class="maget_ty">
+              <div class="forieu">
+               <div class="bure">
+                 <el-button  type="primary" size="small" plain>选择图片</el-button>
+                 <el-button  type="primary" size="small">开始上传</el-button>
+               </div>
+              </div>
+            </el-form-item>
+         <el-form-item label="备注:" prop="configName" class="maget_ty">
+           <el-input
+             v-model="queryParams.configName"
+             placeholder="请输入备注"
+             clearable
+             type="textarea"
+             size="small"
+             style="width: 480px;height: 78px;"
+             class="ieuyr"
+             @keyup.enter.native="handleQuery"
+           />
+         </el-form-item>
+       </el-form>
+     </div>
+
+
+
+  <!-- </div> -->
+
+
+
+    <!-- 添加或修改参数配置对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="150px">
+        <el-form-item label="企业名称" prop="configName">
+          <el-input v-model="form.configName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="企业所在地" prop="configKey">
+          <el-input v-model="form.configKey" placeholder="请输入参数键名" />
+        </el-form-item>
+        <el-form-item label="法人代表姓名" prop="configValue">
+          <el-input v-model="form.configValue" placeholder="请输入参数键值" />
+        </el-form-item>
+        <el-form-item label="系统内置" prop="configType">
+          <el-radio-group v-model="form.configType">
+            <el-radio
+              v-for="dict in typeOptions"
+              :key="dict.dictValue"
+              :label="dict.dictValue"
+            >{{dict.dictLabel}}</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="联系方式" prop="remark">
+          <el-input v-model="form.remark"  placeholder="请输入联系方式" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listConfig, getConfig, delConfig, addConfig, updateConfig, exportConfig, clearCache } from "@/api/system/config";
+export default {
+  name: "Config",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      //步骤条
+      naueactive:2,
+      tab:1,
+      tabNume:['线索信息','签约信息','在建信息','投产信息'],
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 参数表格数据
+      configList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 类型数据字典
+      typeOptions: [],
+      // 日期范围
+      dateRange: [],
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        configName: undefined,
+        configKey: undefined,
+        configType: undefined
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        configName: [
+          { required: true, message: "参数名称不能为空", trigger: "blur" }
+        ],
+        configKey: [
+          { required: true, message: "参数键名不能为空", trigger: "blur" }
+        ],
+        configValue: [
+          { required: true, message: "参数键值不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("sys_yes_no").then(response => {
+      this.typeOptions = response.data;
+    });
+  },
+  methods: {
+    /** 查询参数列表 */
+    getList() {
+      this.loading = true;
+      listConfig(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+          this.configList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        }
+      );
+    },
+    // 参数系统内置字典翻译
+    typeFormat(row, column) {
+      return this.selectDictLabel(this.typeOptions, row.configType);
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        configId: undefined,
+        configName: undefined,
+        configKey: undefined,
+        configValue: undefined,
+        configType: "Y",
+        remark: undefined
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.dateRange = [];
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加参数";
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.configId)
+      this.single = selection.length!=1
+      this.multiple = !selection.length
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const configId = row.configId || this.ids
+      getConfig(configId).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改参数";
+      });
+    },
+    /** 提交按钮 */
+    submitForm: function() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.configId != undefined) {
+            updateConfig(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addConfig(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const configIds = row.configId || this.ids;
+      this.$confirm('是否确认删除参数编号为"' + configIds + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delConfig(configIds);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有参数数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportConfig(queryParams);
+        }).then(response => {
+          this.download(response.msg);
+        })
+    },
+    /** 清理缓存按钮操作 */
+    handleClearCache() {
+      clearCache().then(response => {
+        this.msgSuccess("清理成功");
+      });
+    },
+    //tab
+    tabClid(index){
+    this.tab = index
+    // this.$router.push('/tab');
+    }
+  }
+};
+</script>
+<style rel="stylesheet/scss" lang="scss">
+  .manager_form{
+    .manager_lab{
+      .el-form-item__label{
+        width: 145px !important;
+      }
+    }
+    .maneg_lar{
+      position: relative;
+      .el-form-item__label{
+        width: 134px !important;
+      }
+      span{
+        position: absolute;
+        left: -95%;
+      }
+    }
+    .manager_labtwo{
+      .el-form-item__label{
+        width: 244px !important;
+      }
+    }
+    .manager_labthre{
+      // .el-form-item{
+        .el-form-item__label{
+          width: 130px !important;
+        }
+        margin-right: 40px !important;
+      // }
+    }
+    .ieuyr{
+      .el-textarea__inner{
+        height: 80px !important;
+      }
+    }
+    .mage_ter{
+      .el-form-item__label{
+        width: 513px !important;
+      }
+    }
+    .maget_ty{
+      .el-form-item__label{
+        width: 135px !important;
+      }
+    }
+    .forieu{
+     border: 1px solid #DCDFE6;
+     border-radius: 4px;
+     width: 480px;
+     height: 90px;
+     position: relative;
+     .bure{
+       position: absolute;
+       right: 20px;
+       top: 50%;
+       transform: translateY(-50%);
+     }
+    }
+  }
+  .lage_div{
+    padding-left: 15px;
+    display: flex;
+    align-items: center;
+    margin-bottom: 22px;
+    .el-form-item{
+      margin-bottom: 0 !important;
+    }
+  }
+.app-cont{
+  .header{
+    padding-left: 22px;
+    height: 45px;
+    line-height: 40px;
+    background-color: #F1F1F1;
+    font-size: 18px;
+    color: #343434;
+    margin-bottom: 40px;
+  }
+  // .naue{
+    // border: 1px solid #DADADA;
+    // padding:  20px;
+    // margin-top: 40px;
+    .nuae_wtu{
+      display: flex;
+      justify-content: center;
+      align-content: center;
+     .naue_one{
+       width: 30%;
+       p{
+         font-size: 12px;
+         font-family: PingFang SC;
+         font-weight: 400;
+         color: #343434;
+       }
+       .naue_name{
+         font-size: 14px;
+         font-family: PingFang SC;
+         font-weight: bold;
+         color: #0669B2;
+         margin-bottom: 30px;
+       }
+     }
+     .naue_two{
+       flex: 1;
+       padding-top: 20px;
+       // display: flex;
+       // align-items: center;
+       // justify-content: center;
+     }
+    }
+    //tab
+    .naue_tab{
+      border-bottom: 1px solid #CDCDCD;
+      display: flex;
+      margin-top: 30px;
+      padding: 0 10px;
+      margin-bottom: 30px;
+      p{
+        font-size: 12px;
+        font-family: PingFang SC;
+        font-weight: 400;
+        color: #343434;
+        padding: 11px 15px;
+        margin: 0;
+      }
+      .p{
+        border-bottom: 2px solid #1C84C6;
+        margin-bottom: -1px;
+      }
+    }
+    .mation{
+
+      .enterprise{
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: bold;
+        color: #1C84C6;
+        margin-top: 25px;
+        margin-bottom: 20px;
+      }
+      .enterprise_tw{
+        i{
+          margin-right: 5px;
+        }
+        font-size: 14px;
+        font-family: PingFang SC;
+        font-weight: 600;
+        color: #666666;
+      }
+    }
+
+  // }
+  .nvestor{
+    margin-bottom: 10px;
+    p{
+      margin:0;
+      font-size: 14px;
+      font-family: PingFang SC;
+      font-weight: bold;
+      color: #343434;
+      height: 24px;
+      line-height: 24px;
+      border-left: 3px solid #1C84C6;
+      padding-left: 13px;
+      i{
+        color: red;
+      }
+    }
+  }
+  .souu{
+    font-size: 14px;
+    font-family: PingFang SC;
+    font-weight: 400;
+    color: #343434;
+    margin-left: 5px;
+  }
+}
+//在建项目
+.nstruction{
+  display: flex;
+  align-items: center;
+ .nstruction_nav{
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+     margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+ .nstruction_navne{
+   margin-left: 50px;
+   display: flex;
+   align-items: center;
+   p:nth-child(1){
+      margin-right: 10px;
+     span{
+       font-size: 14px;
+       font-family: PingFang SC;
+       font-weight: bold;
+       color: #343434;
+     }
+     span:nth-child(1){
+       color: #DF0024;
+     }
+   }
+   p:nth-child(2){
+     width: 233px;
+     height: 30px;
+     line-height: 30px;
+     border: 1px solid #CDCDCD;
+     border-radius: 3px;
+     padding-left: 14px;
+   }
+
+ }
+}
+.kaieu{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 800;
+  color: #343434;
+}
+.kaieu_tw{
+  padding-left: 60px;
+  font-size: 14px;
+  font-family: PingFang SC;
+  font-weight: 500;
+  color: #666666;
+}
+</style>