地质所 沉降监测网建设项目
chenhuan
2024-05-21 259f95deb2ea38287d488d12060d7600c36cd92a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
package com.javaweb.geo.controller;
 
import java.util.List;
 
import com.javaweb.common.config.Global;
import com.javaweb.common.config.ServerConfig;
import com.javaweb.common.utils.IdGenerate;
import com.javaweb.common.utils.file.FileUploadUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*;
import com.javaweb.common.annotation.Log;
import com.javaweb.common.enums.BusinessType;
import com.javaweb.geo.domain.ProjectPerson;
import com.javaweb.geo.service.IProjectPersonService;
import com.javaweb.common.core.controller.BaseController;
import com.javaweb.common.core.domain.AjaxResult;
import com.javaweb.common.utils.poi.ExcelUtil;
import com.javaweb.common.core.page.TableDataInfo;
import org.springframework.web.multipart.MultipartFile;
 
import javax.servlet.http.HttpServletRequest;
 
/**
 * 项目人员Controller
 *
 * @author cxy
 * @date 2024-05-16
 */
@Controller
@RequestMapping("/geo/projectPerson")
public class ProjectPersonController extends BaseController {
 
    private String prefix = "geo/projectPerson";
 
    @Autowired
    private IProjectPersonService projectPersonService;
 
    @Autowired
    private ServerConfig serverConfig;
 
    @RequiresPermissions("geo:projectPerson:view")
    @GetMapping()
    public String projectPerson(String id, ModelMap mmap) {
        mmap.put("projectId", id);
        return prefix + "/projectPerson";
    }
 
    /**
     * 查询项目人员列表
     */
    @RequiresPermissions("geo:projectPerson:list")
    @PostMapping("/list")
    @ResponseBody
    public TableDataInfo list(ProjectPerson projectPerson) {
        startPage();
        List<ProjectPerson> list = projectPersonService.selectProjectPersonList(projectPerson);
        return getDataTable(list);
    }
 
    /**
     * 导出项目人员列表
     */
    @RequiresPermissions("geo:projectPerson:export")
    @Log(title = "项目人员", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    @ResponseBody
    public AjaxResult export(ProjectPerson projectPerson) {
        List<ProjectPerson> list = projectPersonService.selectProjectPersonList(projectPerson);
        ExcelUtil<ProjectPerson> util = new ExcelUtil<ProjectPerson>(ProjectPerson.class);
        return util.exportExcel(list, "projectPerson");
    }
 
    /**
     * 新增项目人员
     */
    @GetMapping("/add")
    public String add(String projectId, ModelMap mmap) {
        mmap.put("projectId", projectId);
        return prefix + "/add";
    }
 
    /**
     * 新增保存项目人员
     */
    @RequiresPermissions("geo:projectPerson:add")
    @Log(title = "项目人员", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    @ResponseBody
    public AjaxResult addSave(ProjectPerson projectPerson) {
 
        return toAjax(projectPersonService.insertProjectPerson(projectPerson));
    }
 
    /**
     * 修改项目人员
     */
    @GetMapping("/edit/{ids}")
    public String edit(@PathVariable("ids") String ids, ModelMap mmap) {
        ProjectPerson projectPerson = projectPersonService.selectProjectPersonById(ids);
        mmap.put("projectPerson", projectPerson);
        return prefix + "/edit";
    }
 
    /**
     * 修改保存项目人员
     */
    @RequiresPermissions("geo:projectPerson:edit")
    @Log(title = "项目人员", businessType = BusinessType.UPDATE)
    @PostMapping("/edit")
    @ResponseBody
    public AjaxResult editSave(ProjectPerson projectPerson) {
        return toAjax(projectPersonService.updateProjectPerson(projectPerson));
    }
 
    /**
     * 删除项目人员
     */
    @RequiresPermissions("geo:projectPerson:remove")
    @Log(title = "项目人员", businessType = BusinessType.DELETE)
    @PostMapping("/remove")
    @ResponseBody
    public AjaxResult remove(String ids) {
        return toAjax(projectPersonService.deleteProjectPersonByIds(ids));
    }
 
    /**
     * 上传图片
     */
    @PostMapping("/uploadPersonFile")
    @ResponseBody
    public AjaxResult uploadPersonFile(MultipartFile file, HttpServletRequest request){
        try
        {
            // 上传文件路径
            String filePath = Global.getUploadPath() +"/personfile";
            // 上传并返回新文件名称
            String fileName = FileUploadUtils.upload(filePath, file);
            String url = serverConfig.getUrl() + fileName;
            AjaxResult ajax = AjaxResult.success();
            ajax.put("fileName", fileName);
            ajax.put("url", url);
            return ajax;
        }
        catch (Exception e)
        {
            return AjaxResult.error(e.getMessage());
        }
    }
}