Browse Source

修改资源和图片更新接口。

zzy.zhiyuan.foxmail 8 years ago
parent
commit
4d95404eed

+ 4 - 0
src/main/java/com/ekexiu/portal/dao/ImageDao.java

@ -26,6 +26,10 @@ public abstract class ImageDao {
26 26
	@SelectList
27 27
	public abstract List<Image> query(Connection con) throws SQLException;
28 28
	
29
	@SelectOne
30
	@Nullable
31
	public abstract Image queryOne(Connection con, String resourceId) throws SQLException;
32
	
29 33
	@SelectList
30 34
	public abstract List<Image> queryRes(Connection con, String resourceId) throws SQLException;
31 35
	

+ 107 - 32
src/main/java/com/ekexiu/portal/dao/ResourceDao.java

@ -8,23 +8,34 @@ import java.util.ArrayList;
8 8
import java.util.Collections;
9 9
import java.util.List;
10 10

11
import org.jfw.apt.annotation.Autowrie;
11 12
import org.jfw.apt.orm.annotation.dao.DAO;
12 13
import org.jfw.apt.orm.annotation.dao.method.From;
13
import org.jfw.apt.orm.annotation.dao.method.OrderBy;
14 14
import org.jfw.apt.orm.annotation.dao.method.operator.DeleteWith;
15 15
import org.jfw.apt.orm.annotation.dao.method.operator.Insert;
16
import org.jfw.apt.orm.annotation.dao.method.operator.SelectList;
17 16
import org.jfw.apt.orm.annotation.dao.method.operator.Update;
18 17
import org.jfw.apt.orm.annotation.dao.method.operator.UpdateWith;
19 18
import org.jfw.apt.orm.annotation.dao.param.Set;
20 19
import org.jfw.util.PageQueryResult;
21 20

21
import com.ekexiu.portal.po.Image;
22 22
import com.ekexiu.portal.po.Professor;
23 23
import com.ekexiu.portal.po.Resource;
24 24
import com.ekexiu.portal.pojo.EditProfessor;
25 25

26 26
@DAO
27 27
public abstract class ResourceDao {
28
	@Autowrie
29
	private ImageDao imageDao;
30
	
31
	public ImageDao getImageDao() {
32
		return imageDao;
33
	}
34

35
	public void setImageDao(ImageDao imageDao) {
36
		this.imageDao = imageDao;
37
	}
38

28 39
	@Insert
29 40
	public abstract int insert(Connection con,Resource resource) throws SQLException;
30 41
	
@ -51,30 +62,31 @@ public abstract class ResourceDao {
51 62
	@From(Resource.class)
52 63
	public abstract int updateCooperationNotes(Connection con,String resourceId,@Set String cooperationNotes) throws SQLException;
53 64
	
54
	public com.ekexiu.portal.po.Resource query(java.sql.Connection con,java.lang.String resourceId) throws java.sql.SQLException{
55
        int _m_1 = 1;
65
	public Resource query(Connection con,String resourceId) throws SQLException{
66
        List<Image> images = this.imageDao.queryRes(con, resourceId);
67
		int _m_1 = 1;
56 68
        String sql = "SELECT RESOURCE_ID,RESOURCE_NAME,RESOURCE.SUBJECT,RESOURCE.INDUSTRY,SUPPORTED_SERVICES,RESOURCE.DESCP,PROFESSOR_ID,ASCRIPTION,HOPE_PAY_METHOD,COOPERATION_NOTES,RESOURCE.CREATE_TIME,RESOURCE.MODIFY_TIME,PROFESSOR.NAME FROM RESOURCE LEFT JOIN PROFESSOR ON PROFESSOR_ID = PROFESSOR.ID WHERE RESOURCE_ID = ?";
57
        java.sql.PreparedStatement ps = con.prepareStatement(sql);
69
        PreparedStatement ps = con.prepareStatement(sql);
58 70
        try{
59 71
            ps.setString(_m_1++,resourceId);
60
            java.sql.ResultSet rs = ps.executeQuery();
72
            ResultSet rs = ps.executeQuery();
61 73
            try{
62 74
                if(rs.next()){
63
                    com.ekexiu.portal.po.Resource _result = new com.ekexiu.portal.po.Resource();
75
                    Resource _result = new Resource();
64 76
                    _result.setResourceId(rs.getString(1));
65 77
                    _result.setResourceName(rs.getString(2));
66
                    java.lang.String _m_2 = rs.getString(3);
78
                    String _m_2 = rs.getString(3);
67 79
                    if(rs.wasNull()){
68 80
                        _m_2 = null;
69 81
                    }
70 82
                    _result.setSubject(_m_2);
71
                    java.lang.String _m_3 = rs.getString(4);
83
                    String _m_3 = rs.getString(4);
72 84
                    if(rs.wasNull()){
73 85
                        _m_3 = null;
74 86
                    }
75 87
                    _result.setIndustry(_m_3);
76 88
                    _result.setSupportedServices(rs.getString(5));
77
                    java.lang.String _m_4 = rs.getString(6);
89
                    String _m_4 = rs.getString(6);
78 90
                    if(rs.wasNull()){
79 91
                        _m_4 = null;
80 92
                    }
@ -83,7 +95,7 @@ public abstract class ResourceDao {
83 95
                    professor.setId(rs.getString(7));
84 96
                    _result.setAscription(rs.getString(8));
85 97
                    _result.setHopePayMethod(rs.getString(9));
86
                    java.lang.String _m_5 = rs.getString(10);
98
                    String _m_5 = rs.getString(10);
87 99
                    if(rs.wasNull()){
88 100
                        _m_5 = null;
89 101
                    }
@ -92,6 +104,7 @@ public abstract class ResourceDao {
92 104
                    _result.setModifyTime(rs.getString(12));
93 105
                    professor.setName(rs.getString(13));
94 106
                    _result.setProfessor(professor);
107
                    _result.setImages(images);
95 108
                    return _result;
96 109
                }else{
97 110
                    return null;
@ -198,6 +211,8 @@ public abstract class ResourceDao {
198 211
                    _obj.setModifyTime(rs.getString(12));
199 212
                    professor.setName(rs.getString(13));
200 213
                    _obj.setProfessor(professor);
214
                    List<Image> images = this.imageDao.queryRes(con, _obj.getResourceId());
215
                    _obj.setImages(images);
201 216
                    _m_8.add(_obj);
202 217
                }
203 218
                return _result;
@ -209,15 +224,15 @@ public abstract class ResourceDao {
209 224
        }
210 225
    }
211 226
	
212
//	public java.util.List<com.ekexiu.portal.po.Resource> query(java.sql.Connection con) throws java.sql.SQLException{
227
//	public List<Resource> query(Connection con) throws SQLException{
213 228
//        String sql = "SELECT RESOURCE_ID,RESOURCE_NAME,RESOURCE.SUBJECT,RESOURCE.INDUSTRY,SUPPORTED_SERVICES,RESOURCE.DESCP,PROFESSOR_ID,ASCRIPTION,HOPE_PAY_METHOD,COOPERATION_NOTES,RESOURCE.CREATE_TIME,RESOURCE.MODIFY_TIME,PROFESSOR.NAME FROM RESOURCE LEFT JOIN PROFESSOR ON PROFESSOR_ID = PROFESSOR.ID ORDER BY RESOURCE_NAME ";
214
//        java.sql.PreparedStatement ps = con.prepareStatement(sql);
229
//        PreparedStatement ps = con.prepareStatement(sql);
215 230
//        try{
216
//            java.sql.ResultSet rs = ps.executeQuery();
231
//            ResultSet rs = ps.executeQuery();
217 232
//            try{
218
//                java.util.List<com.ekexiu.portal.po.Resource> _result = new java.util.ArrayList<com.ekexiu.portal.po.Resource>();
233
//                List<Resource> _result = new ArrayList<Resource>();
219 234
//                while(rs.next()){
220
//                    com.ekexiu.portal.po.Resource _obj =  new com.ekexiu.portal.po.Resource();
235
//                    Resource _obj =  new Resource();
221 236
//                    _obj.setResourceId(rs.getString(1));
222 237
//                    _obj.setResourceName(rs.getString(2));
223 238
//                    String _m_1 = rs.getString(3);
@ -249,6 +264,8 @@ public abstract class ResourceDao {
249 264
//                    _obj.setModifyTime(rs.getString(12));
250 265
//                    professor.setName(rs.getString(13));
251 266
//                    _obj.setProfessor(professor);
267
//                    List<Image> images = this.imageDao.queryRes(con, _obj.getResourceId());
268
//                    _obj.setImages(images);
252 269
//                    _result.add(_obj);
253 270
//                }
254 271
//                return _result;
@ -260,9 +277,65 @@ public abstract class ResourceDao {
260 277
//        }
261 278
//    }
262 279
	
263
	@SelectList
264
	@OrderBy(" ORDER BY CREATE_TIME DESC ")
265
	public abstract List<Resource> queryPro(Connection con, String professorId) throws SQLException;
280
	public List<Resource> queryPro(Connection con,String professorId) throws SQLException{
281
        int _m_1 = 1;
282
        String sql = "SELECT RESOURCE_ID,RESOURCE_NAME,SUBJECT,INDUSTRY,SUPPORTED_SERVICES,DESCP,PROFESSOR_ID,ASCRIPTION,HOPE_PAY_METHOD,COOPERATION_NOTES,CREATE_TIME,MODIFY_TIME FROM RESOURCE WHERE PROFESSOR_ID = ? ORDER BY CREATE_TIME DESC";
283
        PreparedStatement ps = con.prepareStatement(sql);
284
        try{
285
            ps.setString(_m_1++,professorId);
286
            ResultSet rs = ps.executeQuery();
287
            try{
288
                List<Resource> _result = new ArrayList<Resource>();
289
                while(rs.next()){
290
                    Resource _obj =  new Resource();
291
                    _obj.setResourceId(rs.getString(1));
292
                    _obj.setResourceName(rs.getString(2));
293
                    String _m_2 = rs.getString(3);
294
                    if(rs.wasNull()){
295
                        _m_2 = null;
296
                    }
297
                    _obj.setSubject(_m_2);
298
                    String _m_3 = rs.getString(4);
299
                    if(rs.wasNull()){
300
                        _m_3 = null;
301
                    }
302
                    _obj.setIndustry(_m_3);
303
                    _obj.setSupportedServices(rs.getString(5));
304
                    String _m_4 = rs.getString(6);
305
                    if(rs.wasNull()){
306
                        _m_4 = null;
307
                    }
308
                    _obj.setDescp(_m_4);
309
                    _obj.setProfessorId(rs.getString(7));
310
                    String _m_5 = rs.getString(8);
311
                    if(rs.wasNull()){
312
                        _m_5 = null;
313
                    }
314
                    _obj.setAscription(_m_5);
315
                    String _m_6 = rs.getString(9);
316
                    if(rs.wasNull()){
317
                        _m_6 = null;
318
                    }
319
                    _obj.setHopePayMethod(_m_6);
320
                    String _m_7 = rs.getString(10);
321
                    if(rs.wasNull()){
322
                        _m_7 = null;
323
                    }
324
                    _obj.setCooperationNotes(_m_7);
325
                    _obj.setCreateTime(rs.getString(11));
326
                    _obj.setModifyTime(rs.getString(12));
327
                    List<Image> images = this.imageDao.queryRes(con, _obj.getResourceId());
328
                    _obj.setImages(images);
329
                    _result.add(_obj);
330
                }
331
                return _result;
332
            }finally{
333
                try{rs.close();}catch(Exception _m_8){}
334
            }
335
        }finally{
336
            try{ps.close();}catch(Exception _m_9){}
337
        }
338
    }
266 339
	
267 340
	@DeleteWith
268 341
	@From(Resource.class)
@ -276,11 +349,11 @@ public abstract class ResourceDao {
276 349
	 * @param pageSize 
277 350
	 * @param pageNo
278 351
	 * @return
279
	 * @throws java.sql.SQLException
352
	 * @throws SQLException
280 353
	 */
281
	public org.jfw.util.PageQueryResult<com.ekexiu.portal.po.Resource> queryPage(java.sql.Connection con,java.lang.String key,java.lang.String subject,java.lang.String industry,int pageSize,int pageNo) throws java.sql.SQLException{
354
	public org.jfw.util.PageQueryResult<Resource> queryPage(Connection con,String key,String subject,String industry,int pageSize,int pageNo) throws SQLException{
282 355
        int _m_1 = 0;
283
        org.jfw.util.PageQueryResult<com.ekexiu.portal.po.Resource> _result = new org.jfw.util.PageQueryResult<com.ekexiu.portal.po.Resource>();
356
        org.jfw.util.PageQueryResult<Resource> _result = new org.jfw.util.PageQueryResult<Resource>();
284 357
        int _m_3 = 1;
285 358
        boolean _m_2 = null == key;
286 359
        boolean _m_4 = null == subject;
@ -353,7 +426,7 @@ public abstract class ResourceDao {
353 426
        if(_m_6.length()>0){
354 427
            sql.append(_m_6);
355 428
        }
356
        java.sql.PreparedStatement ps = con.prepareStatement(sql.toString());
429
        PreparedStatement ps = con.prepareStatement(sql.toString());
357 430
        try{
358 431
            if(!_m_2){
359 432
                ps.setString(_m_3++,key);
@ -374,7 +447,7 @@ public abstract class ResourceDao {
374 447
                ps.setString(_m_3++,industry);
375 448
            }
376 449
            _result.setPageSize(pageSize);
377
            java.sql.ResultSet _pageRs = ps.executeQuery();
450
            ResultSet _pageRs = ps.executeQuery();
378 451
            try{
379 452
                _pageRs.next();
380 453
                _m_1 = _pageRs.getInt(1);
@ -387,7 +460,7 @@ public abstract class ResourceDao {
387 460
        _result.setTotal(_m_1);
388 461
        if(0== _m_1){
389 462
            _result.setPageNo(1);
390
            _result.setData(java.util.Collections.<com.ekexiu.portal.po.Resource>emptyList());
463
            _result.setData(Collections.<Resource>emptyList());
391 464
            return _result;
392 465
        }
393 466
        _m_3 = 1;
@ -440,28 +513,28 @@ public abstract class ResourceDao {
440 513
            if(!_m_5){
441 514
                ps.setString(_m_3++,industry);
442 515
            }
443
            java.sql.ResultSet rs = ps.executeQuery();
516
            ResultSet rs = ps.executeQuery();
444 517
            try{
445
                java.util.List<com.ekexiu.portal.po.Resource> _m_13 = new java.util.ArrayList<com.ekexiu.portal.po.Resource>();
518
                List<Resource> _m_13 = new ArrayList<Resource>();
446 519
                _result.setData(_m_13);
447 520
                int _m_14 = 0;
448 521
                while((_m_14<pageSize) && rs.next()){
449 522
                    ++_m_14;
450
                    com.ekexiu.portal.po.Resource _obj =  new com.ekexiu.portal.po.Resource();
523
                    Resource _obj =  new Resource();
451 524
                    _obj.setResourceId(rs.getString(1));
452 525
                    _obj.setResourceName(rs.getString(2));
453
                    java.lang.String _m_15 = rs.getString(3);
526
                    String _m_15 = rs.getString(3);
454 527
                    if(rs.wasNull()){
455 528
                        _m_15 = null;
456 529
                    }
457 530
                    _obj.setSubject(_m_15);
458
                    java.lang.String _m_16 = rs.getString(4);
531
                    String _m_16 = rs.getString(4);
459 532
                    if(rs.wasNull()){
460 533
                        _m_16 = null;
461 534
                    }
462 535
                    _obj.setIndustry(_m_16);
463 536
                    _obj.setSupportedServices(rs.getString(5));
464
                    java.lang.String _m_17 = rs.getString(6);
537
                    String _m_17 = rs.getString(6);
465 538
                    if(rs.wasNull()){
466 539
                        _m_17 = null;
467 540
                    }
@ -470,7 +543,7 @@ public abstract class ResourceDao {
470 543
                    professor.setId(rs.getString(7));
471 544
                    _obj.setAscription(rs.getString(8));
472 545
                    _obj.setHopePayMethod(rs.getString(9));
473
                    java.lang.String _m_18 = rs.getString(10);
546
                    String _m_18 = rs.getString(10);
474 547
                    if(rs.wasNull()){
475 548
                        _m_18 = null;
476 549
                    }
@ -483,6 +556,8 @@ public abstract class ResourceDao {
483 556
                    professor.setAddress(rs.getString(16));
484 557
                    professor.setOrgName(rs.getString(17));
485 558
                    _obj.setProfessor(professor);
559
                    List<Image> images = this.imageDao.queryRes(con, _obj.getResourceId());
560
                    _obj.setImages(images);
486 561
                    _m_13.add(_obj);
487 562
                }
488 563
                return _result;

+ 20 - 9
src/main/java/com/ekexiu/portal/service/ImagesService.java

@ -14,6 +14,7 @@ import org.jfw.apt.web.annotation.Path;
14 14
import org.jfw.apt.web.annotation.operate.Delete;
15 15
import org.jfw.apt.web.annotation.operate.Get;
16 16
import org.jfw.apt.web.annotation.operate.Post;
17
import org.jfw.apt.web.annotation.operate.Put;
17 18
import org.jfw.apt.web.annotation.param.JdbcConn;
18 19
import org.jfw.apt.web.annotation.param.PathVar;
19 20
import org.jfw.util.StringUtil;
@ -62,15 +63,25 @@ public class ImagesService {
62 63
		} finally {
63 64
			in.close();
64 65
		}
65
		String imageSrc = this.resourcePath + "/" + resourceId + ".jpg";
66
		System.out.println(imageSrc);
67
		Image image = new Image();
68
		String imageId = StringUtil.buildUUID();
69
		image.setImageId(imageId);
70
		image.setImageSrc(imageSrc);
71
		image.setResourceId(resourceId);
72
		this.imageDao.insert(con, image);
73
		return imageId;
66
		Image image1 = this.imageDao.queryOne(con, resourceId);
67
		if(null == image1){
68
			Image image = new Image();
69
			String imageId = StringUtil.buildUUID();
70
			image.setImageId(imageId);
71
			String imageSrc = this.resourcePath + "/" + resourceId + ".jpg";
72
			image.setImageSrc(imageSrc);
73
			image.setResourceId(resourceId);
74
			this.imageDao.insert(con, image);
75
			return imageId;
76
		} else {
77
			return null;
78
		}
79
	}
80
	
81
	@Put
82
	@Path
83
	public void update(@JdbcConn(true) Connection con, String resourceId) throws SQLException{
84
		
74 85
	}
75 86
	
76 87
	@Get

+ 8 - 4
src/main/java/com/ekexiu/portal/service/ResourceService.java

@ -79,10 +79,14 @@ public class ResourceService {
79 79

80 80
	@Put
81 81
	@Path
82
	public void update(@JdbcConn(true) Connection con, @RequestBody Resource resource, @Nullable String professorId) throws SQLException {
83
		if (resource.getProfessorId() != null)
84
			resource.setProfessorId(professorId);
85
		this.resourceDao.update(con, resource);
82
	public void update(@JdbcConn(true) Connection con, @RequestBody Resource resource, @Nullable String fn) throws SQLException {
83
		try {
84
			this.imagesService.insert(con, resource.getResourceId(), fn);
85
			this.resourceDao.update(con, resource);
86
		} catch (IOException e) {
87
			con.rollback();
88
			e.printStackTrace();
89
		}
86 90
	}
87 91

88 92
	@Get