Explorar el Código

项目管理crud

hxf hace 2 años
padre
commit
713d8dd026

+ 18 - 11
neim-biz/src/main/java/com/jiayue/biz/controller/ProjectController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jiayue.biz.domain.Project;
 import com.jiayue.biz.domain.WindTowerInfo;
+import com.jiayue.biz.dto.ProjectDto;
 import com.jiayue.biz.eunms.ProvinceEnum;
 import com.jiayue.biz.service.ProjectService;
 import com.jiayue.biz.service.WindTowerInfoService;
@@ -54,10 +55,8 @@ public class ProjectController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('dataQuery:project:list')")
     @GetMapping("/list")
-    public TableDataInfo list(Project project) {
-        startPage();
-        LambdaQueryWrapper<Project> queryWrapper = this.buildQueryParams(project);
-        List<Project> list = iProjectService.list(queryWrapper);
+    public TableDataInfo list() {
+        List<ProjectDto> list = iProjectService.getProject();
         return getDataTable(list);
     }
 
@@ -105,8 +104,9 @@ public class ProjectController extends BaseController {
     @PreAuthorize("@ss.hasPermi('dataQuery:project:add')")
     @Log(title = "项目", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@RequestBody Project project) {
-        return toAjax(iProjectService.save(project) ? 1 : 0);
+    public AjaxResult add(@RequestBody ProjectDto projectDto) {
+        iProjectService.saveProject(projectDto);
+        return success("200");
     }
 
     /**
@@ -115,8 +115,11 @@ public class ProjectController extends BaseController {
     @PreAuthorize("@ss.hasPermi('dataQuery:project:edit')")
     @Log(title = "项目", businessType = BusinessType.UPDATE)
     @PutMapping
-    public AjaxResult edit(@RequestBody Project project) {
-        return toAjax(iProjectService.updateById(project) ? 1 : 0);
+    public AjaxResult edit(@RequestBody ProjectDto projectDto) {
+
+        iProjectService.updateProject(projectDto);
+
+        return success("200");
     }
 
     /**
@@ -125,8 +128,9 @@ public class ProjectController extends BaseController {
     @PreAuthorize("@ss.hasPermi('dataQuery:project:remove')")
     @Log(title = "项目", businessType = BusinessType.DELETE)
     @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable String[] ids) {
-        return toAjax(iProjectService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
+    public AjaxResult remove(@PathVariable String ids) {
+        iProjectService.delProject(ids);
+        return toAjax(1 );
     }
 
     /**
@@ -154,18 +158,21 @@ public class ProjectController extends BaseController {
         }
         return queryWrapper;
     }
+
     /*所有的项目列表*/
     @GetMapping("/listAll")
     public TableDataInfo listAll() {
         List<Project> list = iProjectService.lambdaQuery().orderByAsc(Project::getStartDate).list();
         return getDataTable(list);
     }
+
     /*根据项目名称模糊查询*/
     @GetMapping("/findByProjectName")
     public AjaxResult getByProjectName(Integer current, Integer size, String projectName) {
-        Page page = iProjectService.getByProjectName(current, size,projectName);
+        Page page = iProjectService.getByProjectName(current, size, projectName);
         return AjaxResult.success(page);
     }
+
     /*获取省份信息*/
     @GetMapping(value = "/getProvince")
     public AjaxResult getProvince() {

+ 3 - 0
neim-biz/src/main/java/com/jiayue/biz/domain/ProjectInfo.java

@@ -23,6 +23,9 @@ public class ProjectInfo {
     private List<Equipment> equipment;
     //拐点坐标
     private List<List<Coordinates>> coordinates;
+    //风机信息
+    private List<FanTower> fanTowerList;
+
 
 
 }

+ 34 - 0
neim-biz/src/main/java/com/jiayue/biz/dto/ProjectDto.java

@@ -0,0 +1,34 @@
+package com.jiayue.biz.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class ProjectDto {
+
+    private String id;
+    //项目全称
+    private String projectName;
+    //项目简称
+    private String projectNameEasy;
+    //项目状态
+    private String projectState;
+    //项目类别
+    private String projectType;
+    //项目类型
+    private String projectSort;
+    //经度
+    private String longitude;
+    //纬度
+    private String latitude;
+    //项目概述
+    private String projectOverview;
+    //项目风力概述
+    private String resourcesOverview;
+    //关联设备
+    private String equipment;
+
+}

+ 8 - 0
neim-biz/src/main/java/com/jiayue/biz/service/ProjectInfoService.java

@@ -8,4 +8,12 @@ public interface ProjectInfoService {
 
     //查询项目信息
     List<ProjectInfo> getProjectInfoList();
+    //根据id查询
+    ProjectInfo getOneProjectInfoById(String id);
+
+    /**
+     * 根据id删除
+     * @param id id
+     */
+    void delProjectInfo(String id);
 }

+ 12 - 0
neim-biz/src/main/java/com/jiayue/biz/service/ProjectService.java

@@ -3,6 +3,7 @@ package com.jiayue.biz.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jiayue.biz.domain.Project;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.biz.dto.ProjectDto;
 
 import java.util.List;
 
@@ -15,4 +16,15 @@ import java.util.List;
 public interface ProjectService extends IService<Project> {
     // 根据项目名称模糊查询
     Page getByProjectName(Integer current, Integer size,String projectName);
+
+    //查询组装项目列表
+    List<ProjectDto> getProject();
+
+    //修改项目
+    void updateProject(ProjectDto projectDto);
+    //新增项目
+    void saveProject(ProjectDto projectDto);
+
+    void delProject(String id);
+
 }

+ 9 - 3
neim-biz/src/main/java/com/jiayue/biz/service/impl/ProjectInfoServiceImpl.java

@@ -4,6 +4,7 @@ import com.jiayue.biz.domain.ProjectInfo;
 import com.jiayue.biz.service.ProjectInfoService;
 import lombok.AllArgsConstructor;
 import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 
@@ -18,8 +19,13 @@ public class ProjectInfoServiceImpl implements ProjectInfoService {
     public List<ProjectInfo> getProjectInfoList(){
         return mongoTemplate.find(new Query(),ProjectInfo.class,"project_info");
     }
-
-
-
+    //根据id查询
+    public ProjectInfo getOneProjectInfoById(String id){
+        return mongoTemplate.findOne(new Query(Criteria.where("_id").is(id)),ProjectInfo.class);
+    }
+    //删除
+    public void delProjectInfo(String id){
+        mongoTemplate.remove(new Query(Criteria.where("_id").is(id)),ProjectInfo.class);
+    }
 
 }

+ 157 - 3
neim-biz/src/main/java/com/jiayue/biz/service/impl/ProjectServiceImpl.java

@@ -1,32 +1,186 @@
 package com.jiayue.biz.service.impl;
 
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.jiayue.biz.domain.Project;
-import com.jiayue.biz.domain.WindTowerInfo;
+import com.jiayue.biz.domain.*;
+import com.jiayue.biz.dto.ProjectDto;
 import com.jiayue.biz.mapper.ProjectMapper;
+import com.jiayue.biz.service.ProjectInfoService;
 import com.jiayue.biz.service.ProjectService;
+import com.jiayue.biz.service.WindTowerInfoService;
+import com.jiayue.biz.util.CalculationUtil;
+import com.jiayue.common.utils.DateUtil;
+import lombok.AllArgsConstructor;
+import org.bson.json.JsonObject;
+import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+import java.util.stream.Collectors;
+
 /**
  * 项目Service业务层处理
  *
  * @author L.ym
  * @date 2022-12-22
  */
+@AllArgsConstructor
 @Service
 public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> implements ProjectService {
+
+    private final ProjectInfoService projectInfoService;
+
+    private final WindTowerInfoService windTowerInfoService;
+
+
+    private final MongoTemplate mongoTemplate;
+
     /*
      * 根据项目名称模糊查询
      */
     @Override
-    public Page getByProjectName(Integer current, Integer size,String projectName) {
+    public Page getByProjectName(Integer current, Integer size, String projectName) {
         QueryWrapper<Project> wrapper = new QueryWrapper<>();
         wrapper.like(projectName != null, "project_name", projectName);
         Page page = new Page(current, size);
         return page(page, wrapper);
     }
+
+
+    //查询组装项目列表
+    public List<ProjectDto> getProject() {
+        List<ProjectInfo> projectInfoList = projectInfoService.getProjectInfoList();
+        ArrayList<ProjectDto> projectList = new ArrayList<>();
+        for (ProjectInfo projectInfo : projectInfoList) {
+            StringBuilder builder = new StringBuilder();
+            ProjectDto projectDto = new ProjectDto();
+            projectDto.setId(projectInfo.getId());
+            if(projectInfo.getProjectBasicInfo() != null){
+                projectDto.setProjectSort(projectInfo.getProjectBasicInfo().getProjectSort());
+                projectDto.setProjectState(projectInfo.getProjectBasicInfo().getProjectState());
+                projectDto.setProjectType(projectInfo.getProjectBasicInfo().getProjectType());
+                projectDto.setProjectName(projectInfo.getProjectBasicInfo().getProjectName());
+                projectDto.setProjectOverview(projectInfo.getProjectBasicInfo().getProjectOverview());
+                projectDto.setResourcesOverview(projectInfo.getProjectBasicInfo().getResourcesOverview());
+                projectDto.setProjectNameEasy(projectInfo.getProjectBasicInfo().getProjectNameEasy());
+                if (projectInfo.getProjectBasicInfo().getPosition() != null && !projectInfo.getProjectBasicInfo().getPosition().equals("")) {
+                    String[] split = projectInfo.getProjectBasicInfo().getPosition().split(",");
+                    projectDto.setLongitude(split[0]);
+                    projectDto.setLatitude(split[1]);
+                }
+            }
+            List<String> collect = projectInfo.getEquipment().stream().map(Equipment::getName).collect(Collectors.toList());
+            for (String s : collect) {
+                builder.append(s).append(",");
+            }
+            if (builder.length() > 0) {
+                builder.delete(builder.length() - 1, builder.length());
+            }
+            projectDto.setEquipment(builder.toString());
+
+            projectList.add(projectDto);
+        }
+        return projectList;
+    }
+
+
+    public void delProject(String id){
+        projectInfoService.delProjectInfo(id);
+    }
+
+
+    //新增
+    public void saveProject(ProjectDto projectDto) {
+        List<WindTowerInfo> windTowerInfoList = windTowerInfoService.list();
+        ProjectInfo projectInfo = new ProjectInfo();
+        projectInfo.setId(UUID.randomUUID().toString());
+        ProjectBasicInfo projectBasicInfo = projectInfo.getProjectBasicInfo();
+        if(projectBasicInfo == null){
+            projectBasicInfo = new ProjectBasicInfo();
+            this.getProjectBasicInfo(projectBasicInfo, projectDto);
+        }
+        projectInfo.setProjectBasicInfo(projectBasicInfo);
+
+        if (projectDto.getEquipment() != null && !projectDto.getEquipment().equals("")) {
+            List<Equipment> equipment = getEquipment(windTowerInfoList, projectDto.getEquipment());
+            projectInfo.setEquipment(equipment);
+        }
+
+        mongoTemplate.save(projectInfo);
+
+
+    }
+
+
+    //修改
+    public void updateProject(ProjectDto projectDto) {
+        List<WindTowerInfo> windTowerInfoList = windTowerInfoService.list();
+
+        ProjectInfo projectInfo = projectInfoService.getOneProjectInfoById(projectDto.getId());
+
+        ProjectBasicInfo projectBasicInfo = projectInfo.getProjectBasicInfo();
+        //组装基本信息
+        this.getProjectBasicInfo(projectBasicInfo, projectDto);
+
+        if (projectDto.getEquipment() != null && !projectDto.getEquipment().equals("")) {
+            List<Equipment> equipment = getEquipment(windTowerInfoList, projectDto.getEquipment());
+            projectInfo.setEquipment(equipment);
+        }
+
+        mongoTemplate.save(projectInfo);
+
+
+    }
+
+
+    public List<Equipment> getEquipment(List<WindTowerInfo> windTowerInfoList, String equipmentStr) {
+        List<Equipment> equipmentList = new ArrayList<>();
+        String[] equipmentArr = equipmentStr.split(",");
+        for (String equipmentName : equipmentArr) {
+            List<WindTowerInfo> collect = windTowerInfoList.stream().filter(w -> w.getName().equals(equipmentName) || w.getEquipmentNo().equals(CalculationUtil.getNumberFromString(equipmentName))).collect(Collectors.toList());
+            if (collect.size() > 0) {
+                WindTowerInfo windTowerInfo = collect.get(0);
+                Equipment equipment = new Equipment();
+                equipment.setEquipmentNo(windTowerInfo.getEquipmentNo());
+                equipment.setId(windTowerInfo.getId());
+                equipment.setLatitude(windTowerInfo.getLatitude().toString());
+                equipment.setLongitude(windTowerInfo.getLongitude().toString());
+                equipment.setAltitude(windTowerInfo.getAltitude());
+                equipment.setHeights(windTowerInfo.getHeights());
+                equipment.setDisplayHeight(windTowerInfo.getDisplayHeight());
+                equipment.setInstallationTime(windTowerInfo.getInstallationTime() != null ? DateUtil.format(windTowerInfo.getInstallationTime(), "yyyy-MM-dd") : "");
+                equipment.setManufacturer(windTowerInfo.getManufacturer());
+                equipment.setModelNumber(windTowerInfo.getModelNumber());
+                equipment.setWdHeights(windTowerInfo.getWdHeights());
+                equipment.setType(windTowerInfo.getType());
+                equipment.setStatus(windTowerInfo.getStatus());
+                equipment.setPassword(windTowerInfo.getPassword());
+                equipment.setName(windTowerInfo.getName());
+                equipment.setRecorderNo(windTowerInfo.getRecorderNo());
+                equipment.setTerrainComplexity(windTowerInfo.getTerrainComplexity());
+                equipmentList.add(equipment);
+            }
+        }
+        return equipmentList;
+
+    }
+
+    public void getProjectBasicInfo(ProjectBasicInfo projectBasicInfo, ProjectDto projectDto) {
+        projectBasicInfo.setProjectName(projectDto.getProjectName());
+        projectBasicInfo.setProjectSort(projectDto.getProjectSort());
+        projectBasicInfo.setProjectState(projectDto.getProjectState());
+        projectBasicInfo.setProjectType(projectDto.getProjectType());
+        projectBasicInfo.setProjectNameEasy(projectDto.getProjectNameEasy());
+        projectBasicInfo.setPosition(projectDto.getLongitude() + "," + projectDto.getLatitude());
+        projectBasicInfo.setProjectOverview(projectDto.getProjectOverview());
+        projectBasicInfo.setResourcesOverview(projectBasicInfo.getResourcesOverview());
+    }
+
 }

+ 107 - 123
neim-ui/src/views/dataQuery/project/index.vue

@@ -3,7 +3,7 @@
     <el-card class="box-card">
       <span>项目名称:</span>
       <div style="display: inline-block">
-        <el-input v-model="projectName" placeholder="请输入项目关键字"  clearable size="small"/>
+        <el-input v-model="projectName" placeholder="请输入项目关键字" clearable size="small"/>
       </div>
       <el-button
         type="primary"
@@ -22,25 +22,15 @@
       >新增
       </el-button>
       <el-table v-loading="loading" border :data="projectList" @selection-change="handleSelectionChange">
-        <el-table-column label="项目名称" align="center" prop="projectName"/>
-        <el-table-column label="所属公司" align="center" prop="company"/>
-        <el-table-column label="省份" align="center" prop="province" :formatter="formatProvince"/>
-        <el-table-column label="开始日期" align="center" prop="startDate" width="180">
-          <template slot-scope="scope">
-            <span>{{ parseTime(scope.row.startDate, '{y}-{m}-{d}') }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column label="完工日期" align="center" prop="endDate" width="180">
-          <template slot-scope="scope">
-            <span>{{ parseTime(scope.row.endDate, '{y}-{m}-{d}') }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column label="项目状态" align="center" prop="status" :formatter="formatStatus"/>
-                <el-table-column label="关联设备" align="center" prop="relationEquipment">
-                  <template slot-scope="scope">
-                    <span>{{ formatEquipment(scope.row.relationEquipment) }}</span>
-                  </template>
-                </el-table-column>
+        <el-table-column label="项目全称" align="center" prop="projectName"/>
+        <el-table-column label="项目简称" align="center" prop="projectNameEasy"/>
+        <el-table-column label="项目状态" align="center" prop="projectState"/>
+        <el-table-column label="项目类别" align="center" prop="projectType"/>
+        <el-table-column label="项目类型" align="center" prop="projectSort" :formatter="formatSort"/>
+        <el-table-column label="经度" align="center" prop="longitude"/>
+        <el-table-column label="纬度" align="center" prop="latitude"/>
+        <el-table-column label="关联设备" align="center" prop="equipment"/>
+
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
           <template slot-scope="scope">
             <el-button
@@ -61,79 +51,69 @@
         </el-table-column>
       </el-table>
 
-      <pagination
-        v-show="total>0"
-        :total="total"
-        :page.sync="queryParams.pageNum"
-        :limit.sync="queryParams.pageSize"
-        @pagination="getList"
-      />
+      <!--      <pagination-->
+      <!--        v-show="total>0"-->
+      <!--        :total="total"-->
+      <!--        :page.sync="queryParams.pageNum"-->
+      <!--        :limit.sync="queryParams.pageSize"-->
+      <!--        @pagination="getList"-->
+      <!--      />-->
 
       <!-- 添加或修改项目对话框 -->
       <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
         <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-          <el-form-item label="项目称" prop="projectName">
+          <el-form-item label="项目称" prop="projectName">
             <el-input v-model="form.projectName" placeholder="请输入项目名称"/>
           </el-form-item>
-          <el-form-item label="所属公司" prop="company">
-            <el-input v-model="form.company" placeholder="请输入所属公司"/>
-            <!--            <el-select v-model="form.company" placeholder="请输入所属公司" style="width: 100%" clearable>-->
-            <!--              <el-option-->
-            <!--                v-for="item in companyData"-->
-            <!--                :key="item.name"-->
-            <!--                :label="item.name"-->
-            <!--                :value="item.name">-->
-            <!--              </el-option>-->
-            <!--            </el-select>-->
+          <el-form-item label="项目简称" prop="projectNameEasy">
+            <el-input v-model="form.projectNameEasy" placeholder="请输入项目简称"/>
           </el-form-item>
-          <el-form-item label="省份" prop="province">
-            <!--            <el-input v-model="form.province" placeholder="请输入省份"/>-->
-            <el-select v-model="form.province" placeholder="请选择省份" style="width: 100%" clearable>
+          <el-form-item label="项目状态" prop="projectName">
+            <el-input v-model="form.projectState" placeholder="请输入项目状态"/>
+          </el-form-item>
+          <el-form-item label="项目类别" prop="projectType">
+            <el-select v-model="form.projectType" placeholder="请选择" style="width: 100%" clearable>
               <el-option
-                v-for="(item,index) in provinceData"
-                :key="item.index"
+                v-for="(item,index) in statusType"
+                :key="index"
                 :label="item.label"
                 :value="item.value">
               </el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="开始日期" prop="startDate">
-            <el-date-picker clearable style="width: 100%"
-                            v-model="form.startDate"
-                            type="date"
-                            value-format="yyyy-MM-dd"
-                            placeholder="请选择开始日期">
-            </el-date-picker>
-          </el-form-item>
-          <el-form-item label="完工日期" prop="endDate">
-            <el-date-picker clearable style="width: 100%"
-                            v-model="form.endDate"
-                            type="date"
-                            value-format="yyyy-MM-dd"
-                            placeholder="请选择完工日期">
-            </el-date-picker>
-          </el-form-item>
-          <el-form-item label="项目状态" prop="status">
-            <el-select v-model="form.status" placeholder="请选择" style="width: 100%" clearable>
+          <el-form-item label="项目类型" prop="projectSort">
+            <el-select v-model="form.projectSort" placeholder="请选择" style="width: 100%" clearable>
               <el-option
-                v-for="(item,index) in statusData"
+                v-for="(item,index) in statusSort"
                 :key="index"
                 :label="item.label"
                 :value="item.value">
               </el-option>
             </el-select>
           </el-form-item>
-                    <el-form-item label="关联设备" prop="relationEquipment">
-                      <el-select v-model="form.relationEquipment" placeholder="请选择" style="width: 100%" multiple clearable>
-                        <el-option
-                          v-for="item in relationEquipmentData"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value"
-                          :disabled="item.disabled">
-                        </el-option>
-                      </el-select>
-                    </el-form-item>
+          <el-form-item label="经度" prop="longitude">
+            <el-input v-model="form.longitude" placeholder="请输入经度"/>
+          </el-form-item>
+          <el-form-item label="纬度" prop="latitude">
+            <el-input v-model="form.latitude" placeholder="请输入纬度"/>
+          </el-form-item>
+          <el-form-item label="关联设备" prop="equipment">
+            <el-select v-model="form.equipment" placeholder="请选择" style="width: 100%" multiple clearable>
+              <el-option
+                v-for="item in relationEquipmentData"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+                :disabled="item.disabled">
+              </el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="项目概述" prop="projectOverview">
+            <el-input v-model="form.projectOverview" placeholder="请输入项目概述"/>
+          </el-form-item>
+          <el-form-item label="项目风力概述" prop="resourcesOverview">
+            <el-input v-model="form.resourcesOverview" placeholder="请输入项目风力概述"/>
+          </el-form-item>
         </el-form>
         <div slot="footer" class="dialog-footer">
           <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -161,7 +141,7 @@ export default {
   name: "Project",
   data() {
     return {
-      projectName:null,
+      projectName: null,
       // 遮罩层
       loading: true,
       // 选中数组
@@ -181,16 +161,16 @@ export default {
       // 是否显示弹出层
       open: false,
       // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        projectName: null,
-        company: null,
-        province: null,
-        startDate: null,
-        endDate: null,
-        status: null
-      },
+      // queryParams: {
+      //   pageNum: 1,
+      //   pageSize: 10,
+      //   projectName: null,
+      //   company: null,
+      //   province: null,
+      //   startDate: null,
+      //   endDate: null,
+      //   status: null
+      // },
       // 表单参数
       form: {},
       // 表单校验
@@ -198,14 +178,16 @@ export default {
         projectName: [
           {required: true, message: '请填写项目名称'}
         ],
-        status: [
-          {required: true, message: '请选择场站状态'}
+        projectSort: [
+          {required: true, message: '请选择项目类型'}
         ],
       },
-      statusData: [{label: "立项", value: "0"},
-        {label: "运行", value: "1"},
-        {label: "终止", value: "2"},
-        {label: "结束", value: "3"}],
+      statusType: [{label: "风", value: "风"},
+        {label: "光", value: "光"}],
+      statusSort: [{label: "一类", value: "one"},
+        {label: "二类", value: "tow"},
+        {label: "三类", value: "three"},
+        {label: "其他", value: "four"}],
       relationEquipmentData: [],
       companyData: [],
       provinceData: [],
@@ -248,14 +230,14 @@ export default {
     },
     /*条件查询*/
     selectList() {
-      if (this.projectName !== null && this.projectList !== undefined && this.projectList !== '')
-        this.queryParams.projectName = this.projectName
+      // if (this.projectName !== null && this.projectList !== undefined && this.projectList !== '')
+      //   this.queryParams.projectName = this.projectName
       this.getList()
     },
     /** 查询项目列表 */
     getList() {
       this.loading = true;
-      listProject(this.queryParams).then(response => {
+      listProject().then(response => {
         this.projectList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -281,18 +263,21 @@ export default {
       this.form = {
         id: null,
         projectName: null,
-        company: null,
-        province: null,
-        startDate: null,
-        endDate: null,
-        status: null,
-        relationEquipment: null
+        projectNameEasy: null,
+        projectState: null,
+        projectType: null,
+        projectSort: null,
+        longitude: null,
+        latitude: null,
+        resourcesOverview: null,
+        projectOverview: null,
+        equipment: null
       };
       this.resetForm("form");
     },
     /** 搜索按钮操作 */
     handleQuery() {
-      this.queryParams.pageNum = 1;
+      // this.queryParams.pageNum = 1;
       this.getList();
     },
     /** 重置按钮操作 */
@@ -317,19 +302,22 @@ export default {
       this.reset();
       const id = row.id || this.ids
       var a = null
-      if(row.relationEquipment !== null){
-        a= row.relationEquipment.split(",")
-        a = a.length === 1 && a[0] === "" ? null : row.relationEquipment.split(",")
+      if (row.equipment !== null) {
+        a = row.equipment.split(",")
+        a = a.length === 1 && a[0] === "" ? null : row.equipment.split(",")
       }
       this.form = {
         id: row.id,
         projectName: row.projectName,
-        company: row.company,
-        province: row.province,
-        startDate: row.startDate,
-        endDate: row.endDate,
-        status: row.status,
-        relationEquipment: a
+        projectNameEasy: row.projectNameEasy,
+        projectState: row.projectState,
+        projectType: row.projectType,
+        projectSort: row.projectSort,
+        longitude: row.longitude,
+        latitude: row.latitude,
+        resourcesOverview: row.resourcesOverview,
+        projectOverview: row.projectOverview,
+        equipment: a
       }
       this.title = "修改&保存";
       this.open = true;
@@ -337,8 +325,8 @@ export default {
     /** 提交按钮 */
     submitForm() {
       this.$refs["form"].validate(valid => {
-        if (this.form.relationEquipment !== null) {
-          this.form.relationEquipment = this.form.relationEquipment.toString()
+        if (this.form.equipment !== null) {
+          this.form.equipment = this.form.equipment.toString()
         }
         if (valid) {
           if (this.form.id != null) {
@@ -369,18 +357,14 @@ export default {
       });
     },
     /** 导出按钮操作 */
-    handleExport() {
-      this.download('client/project/export', {
-        ...this.queryParams
-      }, `project_${new Date().getTime()}.xlsx`)
-    },
-    /*格式化省份*/
-    formatProvince(row) {
-      return this.provinceData.find(w => w.value === row.province).label
-    },
-    /*格式化项目状态*/
-    formatStatus(row) {
-      return this.statusData.find(w => w.value === row.status).label
+    // handleExport() {
+    //   this.download('client/project/export', {
+    //     ...this.queryParams
+    //   }, `project_${new Date().getTime()}.xlsx`)
+    // },
+
+    formatSort(row) {
+      return this.statusSort.find(w => w.value === row.projectSort).label
     }
   }
 };