IT-KIMI_SHI\SINOIT.KIMI
2018-12-07 50eb1d766c470dc6ff927199eaee934f972a8b70
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
package web.connectionManage;
 
import model.connectionManage.ConnectionManage;
import model.connectionManage.SqlRecordingManage;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import service.connectionManage.ConnectionManageService;
import service.connectionManage.SqlRecordingManageService;
 
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
 
/**
 * Created by yx on 16/8/11.
 */
@Controller
@RequestMapping("/sqlRecordingManage")
public class SqlRecordingManageController {
 
    @Resource
    private ConnectionManageService connectionManageService;
 
    @Resource
    private SqlRecordingManageService sqlRecordingManageService;
 
    @RequestMapping("/crud")
    @ResponseBody
    public Object crud(@RequestHeader(required = true) String oper, SqlRecordingManage sqlRecordingManage){
        int res = -1;
        if("save".equals(oper)){
            res =  sqlRecordingManageService.add(sqlRecordingManage);
        }else if("update".equals(oper)){
            res =  sqlRecordingManageService.update(sqlRecordingManage);
        }else if("delete".equals(oper)){
            res = sqlRecordingManageService.delete(sqlRecordingManage);
        }
        return res;
    }
 
 
    @RequestMapping("/query")
    @ResponseBody
    public Object query(SqlRecordingManage sqlRecordingManage){
        return sqlRecordingManageService.query(sqlRecordingManage);
    }
 
    @RequestMapping("/queryAsObject")
    @ResponseBody
    public Object queryAsObject(SqlRecordingManage sqlRecordingManage){
        return sqlRecordingManageService.queryAsObject(sqlRecordingManage);
    }
 
    @RequestMapping("/queryTree")
    @ResponseBody
    @SuppressWarnings("unchecked")
    public Object queryTree(SqlRecordingManage sqlRecordingManage) throws Exception {
        String lv = sqlRecordingManage.getLv();
        List<ConnectionManage> treeNodes = new ArrayList();
        if("0".equals(lv)){
            String[] queryParams = sqlRecordingManage.getQueryParam().split(",");
            String connectionId = queryParams[0];
            sqlRecordingManage.setConnectionId(connectionId);
            sqlRecordingManage.setPaging(false);
            List<SqlRecordingManage> sqlRecordingManages = sqlRecordingManageService.query(sqlRecordingManage);
            for(SqlRecordingManage srm : sqlRecordingManages){
                ConnectionManage treeNode = new ConnectionManage();
                treeNode.setDbName(srm.getRecordingName());
                treeNode.setId(srm.getId());
                treeNode.setIsParent("false");
                treeNode.setSql(srm.getSqlRecording());
                treeNode.setType("sql");
                treeNodes.add(treeNode);
            }
        }else{
            ConnectionManage connectionManage = new ConnectionManage();
            BeanUtils.copyProperties(sqlRecordingManage,connectionManage);
            List<ConnectionManage> connectionManageList = connectionManageService.query(connectionManage);
            for(ConnectionManage cm : connectionManageList){
                String connectionId = cm.getId();
                sqlRecordingManage.setConnectionId(connectionId);
                sqlRecordingManage.setPaging(false);
                List<SqlRecordingManage> sqlRecordingManages = sqlRecordingManageService.query(sqlRecordingManage);
                if(sqlRecordingManages.size()>0){
                    treeNodes.add(cm);
                }
            }
        }
       return treeNodes;
    }
}