##### Coverage Report - jp.co.y_net.amm.dao.UsrDao

Classes in this File | Line Coverage | Branch Coverage | Complexity

UsrDao

0% | 0/44

0% | 0/12

0.0;0

1

0

     package jp.co.y_net.amm.dao;

2

     import java.util.List;

3

4

     import org.hibernate.criterion.DetachedCriteria;

5

     import org.hibernate.criterion.Example;

6

     import org.hibernate.criterion.Restrictions;

7

     import org.springframework.orm.hibernate3.HibernateTemplate;

8

     import org.springframework.stereotype.Component;

9

10

11

     @Component("usrDao")

12

0

     public class UsrDao extends AbstractDao {

13

14

         /* 参照形処理 ------------------------------------------------------------------------------------------------ */

15

         /** ユニークキーを使用した取得 */

16

         public Usr getByUsrid(Integer usrid) {

17

0

             Usr cnd = new Usr();

18

0

             cnd.setUsrid(usrid);

19

0

             List<Usr> usrs = get(cnd);

20

0

             if(usrs.size() == 1) {

21

0

                 return usrs.get(0);

22

             }

23

0

             return null;

24

         }

25

         /** 全件取得(論理削除除外) */

26

         public List<Usr> get() {

27

0

             Usr cnd = new Usr();

28

0

             cnd.setDeleted(AppDef.FLASE); // 論理削除考慮

29

0

             return get(cnd);

30

         }

31

         /** 条件付き取得(論理削除除外) */

32

         public List<Usr> get(Usr cnd) {

33

0

             if(cnd != null) {

34

0

                 cnd.setDeleted(AppDef.FLASE); // 論理削除考慮

35

             }

36

0

             HibernateTemplate hibernateTemplate = getHibernateTemplate();

37

0

             DetachedCriteria dc = DetachedCriteria.forClass(Usr.class);

38

0

             dc.add(Example.create(cnd));

39

             @SuppressWarnings("unchecked")

40

0

             List<Usr> list = (List<Usr>) hibernateTemplate.findByCriteria(dc);

41

0

             hibernateTemplate.clear();

42

0

             return list;

43

         }

44

45

         /* 登録系 ----------------------------------------------------------------------------------------------------*/

46

         private static final String ENTITYNAME = "Usr";

47

         private static final String PKEYNAME = "usrid";

48

         /**

49

          * 登録処理

50

          * ・必要なカラムを自動採番する

51

          * ・共通処理を実施する。

52

          * @param item

53

          */

54

         public void add(Usr item, Integer updateusrid) {

55

             /* 自動採番 */

56

0

             item.setUsrid(getNextId(ENTITYNAME, PKEYNAME));

57

             /* Insert実施 */

58

0

             super.add(item, updateusrid);

59

0

         }

60

         public void update(Usr item, Integer updateusrid) {

61

0

             super.update(item, updateusrid);

62

0

         }

63

         public void removeLogical(Usr item, Integer updateusrid) {

64

0

             super.removeLogical(item, updateusrid);

65

0

         }

66

67

         /* entity固有のユーティリティ ----------------------------------------------------------------------------------- */

68

         /**

69

          * ログインIDによる検索

70

          * ・論理削除は除く

71

          * ・複数件取得できる場合は、退会していないレコード

72

          * @param loginid

73

          * @return

74

          */

75

         public Usr getByLoginid(String loginid) {

76

0

             Usr cnd = new Usr();

77

0

             cnd.setLoginid(loginid);

78

0

             List<Usr> usrs = get(cnd);

79

80

0

             if(usrs.size() == 1) {

81

0

                 return usrs.get(0);

82

             }

83

             /* 複数件取得できる場合は、退会していないレコード */

84

0

             for(Usr usr: usrs) {

85

0

                 if(Usr.STATUS_退会 != usr.getStatus()) {

86

0

                     return usr;

87

                 }

88

             }

89

0

             return null;

90

         }

91

         /**

92

          * 条件を指定した検索

93

          * ・論理削除は除く

94

          * @param cnd 絞り込み条件

95

          * @param cndNot 否定条件

96

          * @return 検索結果

97

          */

98

         public List<Usr> get(Usr cnd, Usr cndNot) {

99

0

             if(cnd != null) {

100

0

                 cnd.setDeleted(AppDef.FLASE); // 論理削除考慮

101

             }

102

0

             HibernateTemplate hibernateTemplate = getHibernateTemplate();

103

0

             DetachedCriteria dc = DetachedCriteria.forClass(Usr.class);

104

0

             dc.add(Example.create(cnd));

105

0

             dc.add(Restrictions.not(Example.create(cndNot)));

106

             @SuppressWarnings("unchecked")

107

0

             List<Usr> list = (List<Usr>) hibernateTemplate.findByCriteria(dc);

108

0

             hibernateTemplate.clear();

109

0

             return list;

110

         }

111

     }