@@ 132-160 (lines=29) @@ | ||
129 | * @param \Eccube\Entity\ClassName $ClassName |
|
130 | * @return boolean 成功した場合 true |
|
131 | */ |
|
132 | public function save(\Eccube\Entity\ClassName $ClassName) |
|
133 | { |
|
134 | $em = $this->getEntityManager(); |
|
135 | $em->getConnection()->beginTransaction(); |
|
136 | try { |
|
137 | if (!$ClassName->getId()) { |
|
138 | $rank = $this->createQueryBuilder('cn') |
|
139 | ->select('MAX(cn.rank)') |
|
140 | ->getQuery() |
|
141 | ->getSingleScalarResult(); |
|
142 | if (!$rank) { |
|
143 | $rank = 0; |
|
144 | } |
|
145 | $ClassName->setRank($rank + 1); |
|
146 | $ClassName->setDelFlg(0); |
|
147 | } |
|
148 | ||
149 | $em->persist($ClassName); |
|
150 | $em->flush(); |
|
151 | ||
152 | $em->getConnection()->commit(); |
|
153 | } catch (\Exception $e) { |
|
154 | $em->getConnection()->rollback(); |
|
155 | ||
156 | return false; |
|
157 | } |
|
158 | ||
159 | return true; |
|
160 | } |
|
161 | ||
162 | /** |
|
163 | * 規格を削除する. |
@@ 115-142 (lines=28) @@ | ||
112 | * @param \Eccube\Entity\News $News |
|
113 | * @return boolean 成功した場合 true |
|
114 | */ |
|
115 | public function save(\Eccube\Entity\News $News) |
|
116 | { |
|
117 | $em = $this->getEntityManager(); |
|
118 | $em->getConnection()->beginTransaction(); |
|
119 | try { |
|
120 | if (!$News->getId()) { |
|
121 | $rank = $this->createQueryBuilder('n') |
|
122 | ->select('MAX(n.rank)') |
|
123 | ->getQuery() |
|
124 | ->getSingleScalarResult(); |
|
125 | if (!$rank) { |
|
126 | $rank = 0; |
|
127 | } |
|
128 | $News |
|
129 | ->setRank($rank + 1) |
|
130 | ->setDelFlg(0); |
|
131 | } |
|
132 | ||
133 | $em->persist($News); |
|
134 | $em->flush(); |
|
135 | $em->getConnection()->commit(); |
|
136 | } catch (\Exception $e) { |
|
137 | $em->getConnection()->rollback(); |
|
138 | return false; |
|
139 | } |
|
140 | ||
141 | return true; |
|
142 | } |
|
143 | ||
144 | /** |
|
145 | * News を削除する. |
@@ 205-234 (lines=30) @@ | ||
202 | * @param \Eccube\Entity\Member $Member |
|
203 | * @return bool |
|
204 | */ |
|
205 | public function save(\Eccube\Entity\Member $Member) |
|
206 | { |
|
207 | $em = $this->getEntityManager(); |
|
208 | $em->getConnection()->beginTransaction(); |
|
209 | try { |
|
210 | if (!$Member->getId()) { |
|
211 | $rank = $this->createQueryBuilder('m') |
|
212 | ->select('MAX(m.rank)') |
|
213 | ->getQuery() |
|
214 | ->getSingleScalarResult(); |
|
215 | if (!$rank) { |
|
216 | $rank = 0; |
|
217 | } |
|
218 | $Member |
|
219 | ->setRank($rank + 1) |
|
220 | ->setDelFlg(Constant::DISABLED); |
|
221 | } |
|
222 | ||
223 | $em->persist($Member); |
|
224 | $em->flush(); |
|
225 | ||
226 | $em->getConnection()->commit(); |
|
227 | } catch (\Exception $e) { |
|
228 | $em->getConnection()->rollback(); |
|
229 | ||
230 | return false; |
|
231 | } |
|
232 | ||
233 | return true; |
|
234 | } |
|
235 | ||
236 | /** |
|
237 | * @param \Eccube\Entity\Member $Member |