xinyb
2024-07-18 80430d52f7716e3eb3e517dc96f94c4a6f9657bf
提交 | 用户 | age
a6a76f 1 package com.yc.sdk.shopping.service;
F 2
3 import java.util.ArrayList;
4 import java.util.Date;
5 import java.util.List;
6 import java.util.Map;
7
8 import org.springframework.context.annotation.Scope;
9 import org.springframework.dao.DataAccessException;
10 import org.springframework.dao.EmptyResultDataAccessException;
11 import org.springframework.stereotype.Service;
12
a92f52 13 import com.yc.action.grid.GridUtils;
a6a76f 14 import com.yc.sdk.shopping.entity.MatReviewEntity;
F 15 import com.yc.service.BaseService;
16
17 @Service("MatReviewImpl")
18 @Scope("prototype")
19 public class MatReviewImpl extends BaseService implements MatReviewIfc {
20
21     @Override
22     public List<MatReviewEntity> getMatReviews(String matCode) {
23         String sql = " set nocount on ;  \n"
24                 + " select ReviewId,MatCode,MatName,Special,CltCode,CltName,Text,Rating,DateAdded,DateModified  \n"
25                 + " from t710118 \n"
a92f52 26                 + " where matcode = "+GridUtils.prossSqlParm(matCode)+" and ISNULL(Status,0) = 1 \n"
a6a76f 27                 + " order by DateAdded desc ,ReviewId desc ; \n" ;
F 28
29         List<Map<String,Object>> list = null ;
30         try {
a92f52 31             list = this.jdbcTemplate.queryForList(sql) ;
a6a76f 32             List<MatReviewEntity> matReviewList = new ArrayList<MatReviewEntity>() ;
F 33             for (int i = 0 ; list != null && i < list.size();i++) {
34                 Map<String,Object> map = list.get(i) ;
35                 MatReviewEntity matReview = new MatReviewEntity(); 
36                 matReview.setReviewId(map.get("ReviewId") == null ? null: (Integer)map.get("ReviewId"));
37                 matReview.setMatCode(map.get("MatCode") == null ? "": (String)map.get("MatCode"));
38                 matReview.setMatName(map.get("MatName") == null ? "": (String)map.get("MatName"));
39                 matReview.setSpecial(map.get("Special") == null ? "": (String)map.get("Special"));
40                 matReview.setCltCode(map.get("CltCode") == null ? "": (String)map.get("CltCode"));
41                 matReview.setCltName(map.get("CltName") == null ? "": (String)map.get("CltName"));
42                 matReview.setText(map.get("Text") == null ? "": (String)map.get("Text"));
43                 matReview.setRating(map.get("Rating") == null ? null: (Integer)map.get("Rating"));
44                 matReview.setDateAdded(map.get("DateAdded") == null ? null: (Date)map.get("DateAdded"));
45                 matReview.setDateModified(map.get("DateModified") == null ? null: (Date)map.get("DateModified"));
46                 matReviewList.add(matReview);
47             }
48             return matReviewList;
49         }catch(DataAccessException e ) {
50             if (e instanceof EmptyResultDataAccessException){
51                 return null ;
52             }else {
53                 e.printStackTrace();
54                  throw e;
55             }
56         }catch(Exception e){
57             e.printStackTrace();
58             throw e;
59         }
60             
61     }
62
63
64
65     @Override
66     public Integer saveMatReview(MatReviewEntity matReviewEntity) {
67         String sql = " set nocount on ;  \n"
a92f52 68                 + " declare @DocCode varchar(50)="+GridUtils.prossSqlParm(matReviewEntity.getDocCode())+",@MatName varchar(200),@Special varchar(200) ;\n "
J 69                 + " declare @MatCode varchar(50) = "+GridUtils.prossSqlParm(matReviewEntity.getMatCode())+" ;\n"
a6a76f 70                 + " select @MatName = MatName,@Special = Special from t110503 where MatCode = @MatCode ; \n"
F 71                 + " insert into t710118 (DocCode,MatCode,MatName,Special,CltCode, \n"
72                 + "    CltName,Text,Rating,Status,DateAdded,DateModified)  \n"
a92f52 73                 + " values(@DocCode ,@MatCode,@MatName,@Special,"+GridUtils.prossSqlParm(matReviewEntity.getCltCode())+","+GridUtils.prossSqlParm(matReviewEntity.getCltName())+","+GridUtils.prossSqlParm(matReviewEntity.getText())+","+matReviewEntity.getRating() +",0,getdate(),getdate() ) ; \n"
a6a76f 74                 + " update a set Rating = isnull(Rating,0) + ? , RatingCount = isnull(RatingCount,0) + 1 \n"
a92f52 75                 + " from t110503 a where a.MatCode = @MatCode  \n"
a6a76f 76                 + " select @@rowcount ; \n";
F 77         Integer ret = null ;
78         try {
a92f52 79             ret =  this.jdbcTemplate.queryForObject(sql, Integer.class) ;
a6a76f 80         }catch(DataAccessException e ) {
F 81             if (e instanceof EmptyResultDataAccessException){
82                 return 0 ;
83             }else {
84                 e.printStackTrace();
85                  throw e;
86             }
87         }
88         return ret ;
89     }
90
91 }