Browse Source

--add pageQueryByDemander();add pageQuery();

zzy.zhiyuan.foxmail 8 years ago
parent
commit
af0970d638

+ 232 - 0
src/main/java/com/ekexiu/portal/dao/DemandDao.java

@ -5,6 +5,7 @@ import java.sql.PreparedStatement;
5 5
import java.sql.ResultSet;
6 6
import java.sql.SQLException;
7 7
import java.util.ArrayList;
8
import java.util.Collections;
8 9
import java.util.List;
9 10

10 11
import org.jfw.apt.annotation.Nullable;
@ -16,6 +17,7 @@ import org.jfw.apt.orm.annotation.dao.method.operator.SelectList;
16 17
import org.jfw.apt.orm.annotation.dao.method.operator.SelectOne;
17 18
import org.jfw.apt.orm.annotation.dao.method.operator.UpdateWith;
18 19
import org.jfw.apt.orm.annotation.dao.param.Set;
20
import org.jfw.util.PageQueryResult;
19 21

20 22
import com.ekexiu.portal.po.Demand;
21 23

@ -36,6 +38,236 @@ public abstract class DemandDao {
36 38
	@OrderBy("ORDER BY CREATE_TIME DESC")
37 39
	public abstract List<Demand> queryByDemander(Connection con,String demander)throws SQLException;
38 40
	
41
	public PageQueryResult<Demand> pageQueryByDemander(Connection con,String demander,String demandStatus,int sortType,int pageSize,int pageNo) throws SQLException{
42
        int _m_1 = 0;
43
        PageQueryResult<Demand> _result = new PageQueryResult<Demand>();
44
        int _m_2 = 1;
45
        boolean _m_3 = null == demandStatus;
46
        StringBuilder sql = new StringBuilder();
47
        sql.append(" WHERE DEMANDER = ?");
48
        if(!_m_3){
49
            sql.append(" AND DEMAND_STATUS = ?");
50
        }
51
        StringBuilder _m_4 = sql;
52
        sql = new StringBuilder();
53
        sql.append("SELECT COUNT(1) FROM DEMAND");
54
        sql.append(_m_4);
55
        PreparedStatement ps = con.prepareStatement(sql.toString());
56
        try{
57
            ps.setString(_m_2++,demander);
58
            if(!_m_3){
59
                ps.setString(_m_2++,demandStatus);
60
            }
61
            _result.setPageSize(pageSize);
62
            ResultSet _pageRs = ps.executeQuery();
63
            try{
64
                _pageRs.next();
65
                _m_1 = _pageRs.getInt(1);
66
            }finally{
67
                try{_pageRs.close();}catch(Exception _m_5){}
68
            }
69
        }finally{
70
            try{ps.close();}catch(Exception _m_6){}
71
        }
72
        _result.setTotal(_m_1);
73
        if(0== _m_1){
74
            _result.setPageNo(1);
75
            _result.setData(Collections.<Demand>emptyList());
76
            return _result;
77
        }
78
        _m_2 = 1;
79
        boolean _m_7 = (1 == pageNo);
80
        if(_m_7){
81
            _result.setPageNo(1);
82
            sql = new StringBuilder();
83
            sql.append("SELECT DEMAND_ID,DEMANDER,DEMAND_AIM,DEMAND_TYPE,DEMAND_TITLE,DEMAND_CONTENT,DEMAND_STATUS,CLOSE_TIME,ORDER_KEY,CREATE_TIME FROM DEMAND");
84
            sql.append(_m_4);
85
            sql.append(" ORDER BY CREATE_TIME");
86
            if(sortType == 0){
87
            	sql.append(" DESC ");
88
            }
89
            sql.append(" LIMIT ").append(pageSize);
90
        }else{
91
            int _m_8 = _m_1 / pageSize;
92
            if(_m_1 % pageSize != 0){
93
                ++_m_8;
94
            }
95
            if(pageNo > _m_8){
96
                pageNo = _m_8;
97
            }
98
            _result.setPageNo(pageNo);
99
            --pageNo;
100
            int _m_9 = (pageNo * pageSize);
101
            sql = new StringBuilder();
102
            sql.append("SELECT DEMAND_ID,DEMANDER,DEMAND_AIM,DEMAND_TYPE,DEMAND_TITLE,DEMAND_CONTENT,DEMAND_STATUS,CLOSE_TIME,ORDER_KEY,CREATE_TIME FROM DEMAND");
103
            sql.append(_m_4);
104
            sql.append(" ORDER BY CREATE_TIME");
105
            if(sortType == 0){
106
            	sql.append(" DESC ");
107
            }
108
            sql.append(" LIMIT ").append(pageSize).append(" OFFSET ").append(_m_9);
109
        }
110
        ps = con.prepareStatement(sql.toString());
111
        try{
112
            ps.setString(_m_2++,demander);
113
            if(!_m_3){
114
                ps.setString(_m_2++,demandStatus);
115
            }
116
            ResultSet rs = ps.executeQuery();
117
            try{
118
                List<Demand> _m_10 = new ArrayList<Demand>();
119
                _result.setData(_m_10);
120
                int _m_11 = 0;
121
                while((_m_11<pageSize) && rs.next()){
122
                    ++_m_11;
123
                    Demand _obj =  new Demand();
124
                    _obj.setDemandId(rs.getString(1));
125
                    _obj.setDemander(rs.getString(2));
126
                    _obj.setDemandAim(rs.getString(3));
127
                    _obj.setDemandType(rs.getString(4));
128
                    _obj.setDemandTitle(rs.getString(5));
129
                    String _m_12 = rs.getString(6);
130
                    if(rs.wasNull()){
131
                        _m_12 = null;
132
                    }
133
                    _obj.setDemandContent(_m_12);
134
                    _obj.setDemandStatus(rs.getString(7));
135
                    String _m_13 = rs.getString(8);
136
                    if(rs.wasNull()){
137
                        _m_13 = null;
138
                    }
139
                    _obj.setCloseTime(_m_13);
140
                    _obj.setOrderKey(rs.getLong(9));
141
                    _obj.setCreateTime(rs.getString(10));
142
                    _m_10.add(_obj);
143
                }
144
                return _result;
145
            }finally{
146
                try{rs.close();}catch(Exception _m_14){}
147
            }
148
        }finally{
149
            try{ps.close();}catch(Exception _m_15){}
150
        }
151
    }
152
	
153
	public PageQueryResult<Demand> pageQuery(Connection con,String demandStatus,String demandAim,int sortType,int pageSize,int pageNo) throws SQLException{
154
        int _m_1 = 0;
155
        PageQueryResult<Demand> _result = new PageQueryResult<Demand>();
156
        int _m_3 = 1;
157
        boolean _m_2 = null == demandAim;
158
        StringBuilder sql = new StringBuilder();
159
        sql.append(" WHERE DEMAND_STATUS = ?");
160
        if(!_m_2){
161
            sql.append(" AND DEMAND_AIM = ?");
162
        }
163
        StringBuilder _m_4 = sql;
164
        sql = new StringBuilder();
165
        sql.append("SELECT COUNT(1) FROM DEMAND");
166
        if(_m_4.length()>0){
167
            sql.append(_m_4);
168
        }
169
        PreparedStatement ps = con.prepareStatement(sql.toString());
170
        try{
171
        	ps.setString(_m_3++, demandStatus);
172
            if(!_m_2){
173
                ps.setString(_m_3++,demandAim);
174
            }
175
            _result.setPageSize(pageSize);
176
            ResultSet _pageRs = ps.executeQuery();
177
            try{
178
                _pageRs.next();
179
                _m_1 = _pageRs.getInt(1);
180
            }finally{
181
                try{_pageRs.close();}catch(Exception _m_5){}
182
            }
183
        }finally{
184
            try{ps.close();}catch(Exception _m_6){}
185
        }
186
        _result.setTotal(_m_1);
187
        if(0== _m_1){
188
            _result.setPageNo(1);
189
            _result.setData(Collections.<Demand>emptyList());
190
            return _result;
191
        }
192
        _m_3 = 1;
193
        boolean _m_7 = (1 == pageNo);
194
        if(_m_7){
195
            _result.setPageNo(1);
196
            sql = new StringBuilder();
197
            sql.append("SELECT DEMAND_ID,DEMANDER,DEMAND_AIM,DEMAND_TYPE,DEMAND_TITLE,DEMAND_CONTENT,DEMAND_STATUS,CLOSE_TIME,ORDER_KEY,CREATE_TIME FROM DEMAND");
198
            if(_m_4.length()>0){
199
                sql.append(_m_4);
200
            }
201
            sql.append(" ORDER BY CREATE_TIME");
202
            if(sortType == 0){
203
            	sql.append(" DESC ");
204
            }
205
            sql.append(" LIMIT ").append(pageSize);
206
        }else{
207
            int _m_8 = _m_1 / pageSize;
208
            if(_m_1 % pageSize != 0){
209
                ++_m_8;
210
            }
211
            if(pageNo > _m_8){
212
                pageNo = _m_8;
213
            }
214
            _result.setPageNo(pageNo);
215
            --pageNo;
216
            int _m_9 = (pageNo * pageSize);
217
            sql = new StringBuilder();
218
            sql.append("SELECT DEMAND_ID,DEMANDER,DEMAND_AIM,DEMAND_TYPE,DEMAND_TITLE,DEMAND_CONTENT,DEMAND_STATUS,CLOSE_TIME,ORDER_KEY,CREATE_TIME FROM DEMAND");
219
            if(_m_4.length()>0){
220
                sql.append(_m_4);
221
            }
222
            sql.append(" ORDER BY CREATE_TIME");
223
            if(sortType == 0){
224
            	sql.append(" DESC ");
225
            }
226
            sql.append(" LIMIT ").append(pageSize).append(" OFFSET ").append(_m_9);
227
        }
228
        ps = con.prepareStatement(sql.toString());
229
        try{
230
        	ps.setString(_m_3++, demandStatus);
231
            if(!_m_2){
232
                ps.setString(_m_3++,demandAim);
233
            }
234
            ResultSet rs = ps.executeQuery();
235
            try{
236
                List<Demand> _m_10 = new ArrayList<Demand>();
237
                _result.setData(_m_10);
238
                int _m_11 = 0;
239
                while((_m_11<pageSize) && rs.next()){
240
                    ++_m_11;
241
                    Demand _obj =  new Demand();
242
                    _obj.setDemandId(rs.getString(1));
243
                    _obj.setDemander(rs.getString(2));
244
                    _obj.setDemandAim(rs.getString(3));
245
                    _obj.setDemandType(rs.getString(4));
246
                    _obj.setDemandTitle(rs.getString(5));
247
                    String _m_12 = rs.getString(6);
248
                    if(rs.wasNull()){
249
                        _m_12 = null;
250
                    }
251
                    _obj.setDemandContent(_m_12);
252
                    _obj.setDemandStatus(rs.getString(7));
253
                    String _m_13 = rs.getString(8);
254
                    if(rs.wasNull()){
255
                        _m_13 = null;
256
                    }
257
                    _obj.setCloseTime(_m_13);
258
                    _obj.setOrderKey(rs.getLong(9));
259
                    _obj.setCreateTime(rs.getString(10));
260
                    _m_10.add(_obj);
261
                }
262
                return _result;
263
            }finally{
264
                try{rs.close();}catch(Exception _m_14){}
265
            }
266
        }finally{
267
            try{ps.close();}catch(Exception _m_15){}
268
        }
269
    }
270
	
39 271
	public List<Demand> queryByStatus(Connection con,String demandStatus,String demandAim,String subject,String industry,String createTime,long orderKey,int rows,int sortType) throws SQLException{
40 272
        StringBuilder sql = new StringBuilder();
41 273
        sql.append("SELECT DEMAND_ID,DEMANDER,DEMAND_AIM,DEMAND_TYPE,DEMAND_TITLE,DEMAND_CONTENT,DEMAND_STATUS,ORDER_KEY,CREATE_TIME FROM DEMAND ");

+ 25 - 0
src/main/java/com/ekexiu/portal/service/DemandService.java

@ -13,6 +13,7 @@ import org.jfw.apt.web.annotation.Path;
13 13
import org.jfw.apt.web.annotation.operate.Get;
14 14
import org.jfw.apt.web.annotation.operate.Post;
15 15
import org.jfw.apt.web.annotation.param.JdbcConn;
16
import org.jfw.util.PageQueryResult;
16 17
import org.jfw.util.StringUtil;
17 18

18 19
import com.ekexiu.portal.dao.DemandDao;
@ -107,6 +108,30 @@ public class DemandService {
107 108
		return demands;
108 109
	}
109 110
	
111
	@Get
112
	@Path("/pqDemander")
113
	public PageQueryResult<Demand> pageQueryByDemander(@JdbcConn Connection con,String demander,@Nullable String demandStatus,
114
			@DefaultValue("0") int sortType,@DefaultValue("5") int pageSize,@DefaultValue("1") int pageNo)throws SQLException{
115
		return this.demandDao.pageQueryByDemander(con, demander, demandStatus, sortType, pageSize, pageNo);
116
	}
117
	
118
	@Get
119
	@Path("/pq")
120
	public PageQueryResult<Demand> pageQuery(@JdbcConn Connection con,@Nullable String demandAim,
121
			@DefaultValue("0") int sortType,@DefaultValue("5") int pageSize,@DefaultValue("1") int pageNo)throws SQLException{
122
		PageQueryResult<Demand> queryResult = this.demandDao.pageQuery(con, "1", demandAim, sortType, pageSize, pageNo);
123
		List<Demand> demands = queryResult.getData();
124
		for (Demand demand : demands) {
125
			EditProfessor professor = this.professorDao.queryBaseInfo(con, demand.getDemander());
126
			if(professor != null){
127
				professor.setHasHeadImage(this.imageService.hasProfessorImage(demand.getDemander()));
128
			}
129
			demand.setProfessor(professor);
130
		}
131
		queryResult.setData(demands);
132
		return queryResult;
133
	}
134
	
110 135
	@Get
111 136
	@Path("/ql")
112 137
	public List<Demand> queryByStatus(@JdbcConn Connection con,@Nullable String demandAim,@Nullable String subject,