WaterDaoImpl.java 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. package com.happy.dao.impl;
  2. import com.happy.Model.*;
  3. import com.happy.dao.WaterDao;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.jdbc.core.BeanPropertyRowMapper;
  6. import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
  7. import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
  8. import org.springframework.stereotype.Repository;
  9. import java.util.List;
  10. @Repository("WaterDao")
  11. public class WaterDaoImpl implements WaterDao {
  12. @Autowired
  13. private NamedParameterJdbcTemplate namedParameterJdbcTemplate;
  14. public NamedParameterJdbcTemplate getNamedParameterJdbcTemplate() {
  15. return namedParameterJdbcTemplate;
  16. }
  17. public void setNamedParameterJdbcTemplate(
  18. NamedParameterJdbcTemplate namedParameterJdbcTemplate) {
  19. this.namedParameterJdbcTemplate = namedParameterJdbcTemplate;
  20. }
  21. /**
  22. * 根据当前页和每页显示行数实现分页查询订单
  23. */
  24. public List<Build_water> getbuild(int page, int rows) {
  25. int start = (page - 1) * rows;// 每页的起始下标
  26. String sql = "select * from build_water order by id asc limit :start,:rows ";
  27. MapSqlParameterSource sps = new MapSqlParameterSource();
  28. sps.addValue("start", start);
  29. sps.addValue("rows", rows);
  30. List<Build_water> list = namedParameterJdbcTemplate.query(sql, sps,
  31. new BeanPropertyRowMapper<Build_water>(Build_water.class));
  32. if (list != null && list.size() > 0) {
  33. return list;
  34. }
  35. return null;
  36. }
  37. // 查询表中的总记录数
  38. public int findPageTotal() {
  39. String sql = "select count(*) from build_water";
  40. MapSqlParameterSource sps = new MapSqlParameterSource();
  41. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  42. }
  43. // 有条件的查询
  44. public List<Build_water> findAll(String sqlx) {
  45. MapSqlParameterSource sps = new MapSqlParameterSource();
  46. List<Build_water> list = this.namedParameterJdbcTemplate.query(sqlx, sps, new BeanPropertyRowMapper(Build_water.class));
  47. return list != null && list.size() > 0 ? list : null;
  48. }
  49. // 查询总记录数
  50. public int total(String sqlx) {
  51. MapSqlParameterSource sps = new MapSqlParameterSource();
  52. return namedParameterJdbcTemplate.queryForInt(sqlx, sps);
  53. }
  54. public int updateBuild(Build_water build_water) {
  55. String sql = "update build_water set build=:build, dom=:dom, user_id=:user_id where id=:id";
  56. MapSqlParameterSource sps = new MapSqlParameterSource();
  57. sps.addValue("id", build_water.getId());
  58. sps.addValue("build", build_water.getBuild());
  59. sps.addValue("dom", build_water.getDom());
  60. sps.addValue("user_id", build_water.getUser_id());
  61. return namedParameterJdbcTemplate.update(sql, sps);
  62. }
  63. public int delBuild(int id) {
  64. String sql = "delete from build_water where id=:id";
  65. MapSqlParameterSource sps = new MapSqlParameterSource();
  66. sps.addValue("id", id);
  67. return namedParameterJdbcTemplate.update(sql, sps);
  68. }
  69. public int addBuild(Build_water build_water) {
  70. String sql = "insert into build_water(school, build, floors, dom, user_id) values(:school, :build, :floors, :dom, :user_id) ";
  71. MapSqlParameterSource sps = new MapSqlParameterSource();
  72. sps.addValue("school", build_water.getSchool());
  73. sps.addValue("build", build_water.getBuild());
  74. sps.addValue("dom", build_water.getDom());
  75. sps.addValue("floors", build_water.getFloors());
  76. sps.addValue("user_id", build_water.getUser_id());
  77. return namedParameterJdbcTemplate.update(sql, sps);
  78. }
  79. public List<Users> queryMoney(int page, int rows, String s1){
  80. int start = (page - 1) * rows;// 每页的起始下标
  81. String sql = "select * from users where 1=1 "+ s1 +" order by stu_number asc limit :start,:rows ";
  82. MapSqlParameterSource sps = new MapSqlParameterSource();
  83. sps.addValue("start", start);
  84. sps.addValue("rows", rows);
  85. List<Users> list = namedParameterJdbcTemplate.query(sql, sps,
  86. new BeanPropertyRowMapper<Users>(Users.class));
  87. if (list != null && list.size() > 0) {
  88. return list;
  89. }
  90. return null;
  91. }
  92. // 查询用户表中的总记录数
  93. public int findUsersTotal(String s1) {
  94. String sql = "select count(*) from users where 1=1 "+s1;
  95. MapSqlParameterSource sps = new MapSqlParameterSource();
  96. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  97. }
  98. public List<Recharge> chargeRecord(String sqlx){
  99. MapSqlParameterSource sps = new MapSqlParameterSource();
  100. List<Recharge> list = this.namedParameterJdbcTemplate.query(sqlx, sps, new BeanPropertyRowMapper(Recharge.class));
  101. return list != null && list.size() > 0 ? list : null;
  102. }
  103. public int chargeTotal(String sqlx) {
  104. MapSqlParameterSource sps = new MapSqlParameterSource();
  105. return namedParameterJdbcTemplate.queryForInt(sqlx, sps);
  106. }
  107. // 查询消费总记录数
  108. public int findComTotal(String sqlx) {
  109. MapSqlParameterSource sps = new MapSqlParameterSource();
  110. return namedParameterJdbcTemplate.queryForInt(sqlx, sps);
  111. }
  112. // 消费记录
  113. public List<Consume> findCom(String sqlx) {
  114. MapSqlParameterSource sps = new MapSqlParameterSource();
  115. List<Consume> list = this.namedParameterJdbcTemplate.query(sqlx, sps, new BeanPropertyRowMapper(Consume.class));
  116. return list != null && list.size() > 0 ? list : null;
  117. }
  118. public int insertPrice(Price price){
  119. String sql = "insert into price(name, price, state, time, time2) values (:name, :price, :state, :time, :time2)";
  120. MapSqlParameterSource sps = new MapSqlParameterSource();
  121. sps.addValue("name", price.getName());
  122. sps.addValue("price", price.getPrice());
  123. sps.addValue("state", price.getState());
  124. sps.addValue("time", price.getTime());
  125. sps.addValue("time2", price.getTime2());
  126. return namedParameterJdbcTemplate.update(sql, sps);
  127. }
  128. public int passPrice(String time2){
  129. String sql = "update price set state=0, time2=:time2 where time in ( select time from(select MAX(time) as time from `price` where name='热水') a )";
  130. MapSqlParameterSource sps = new MapSqlParameterSource();
  131. sps.addValue("time2", time2);
  132. return namedParameterJdbcTemplate.update(sql, sps);
  133. }
  134. public List<Price> queryPrice(int page, int rows){
  135. int start = (page - 1) * rows;// 每页的起始下标
  136. String sql = "select * from price where name='热水' order by id desc limit :start,:rows ";
  137. MapSqlParameterSource sps = new MapSqlParameterSource();
  138. sps.addValue("start", start);
  139. sps.addValue("rows", rows);
  140. List<Price> list = namedParameterJdbcTemplate.query(sql, sps,
  141. new BeanPropertyRowMapper<Price>(Price.class));
  142. if (list != null && list.size() > 0) {
  143. return list;
  144. }
  145. return null;
  146. }
  147. // 查询表中的总记录数
  148. public int findPriceTotal() {
  149. String sql = "select count(*) from price where name='热水'";
  150. MapSqlParameterSource sps = new MapSqlParameterSource();
  151. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  152. }
  153. public List<Admin> queryAdmin(int page, int rows, String s1){
  154. int start = (page - 1) * rows;// 每页的起始下标
  155. String sql = "select * from admin where 1=1 "+s1+" order by id desc limit :start,:rows ";
  156. MapSqlParameterSource sps = new MapSqlParameterSource();
  157. sps.addValue("start", start);
  158. sps.addValue("rows", rows);
  159. List<Admin> list = namedParameterJdbcTemplate.query(sql, sps,
  160. new BeanPropertyRowMapper<Admin>(Admin.class));
  161. if (list != null && list.size() > 0) {
  162. return list;
  163. }
  164. return null;
  165. }
  166. // 查询表中的总记录数
  167. public int findAdminTotal(String s1) {
  168. String sql = "select count(*) from admin where 1=1 "+s1;
  169. MapSqlParameterSource sps = new MapSqlParameterSource();
  170. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  171. }
  172. public List<Admin> queryAdminByNum(String number){
  173. String sql = "select * from `admin` where `number`=:number order by id desc ";
  174. MapSqlParameterSource sps = new MapSqlParameterSource();
  175. sps.addValue("number", number);
  176. List<Admin> list = namedParameterJdbcTemplate.query(sql, sps,
  177. new BeanPropertyRowMapper<Admin>(Admin.class));
  178. if (list != null && list.size() > 0) {
  179. return list;
  180. }
  181. return null;
  182. }
  183. public int addAdmin(Admin admin){
  184. String sql = "insert into admin(name, number, password) values (:name, :number, :password)";
  185. MapSqlParameterSource sps = new MapSqlParameterSource();
  186. sps.addValue("name", admin.getName());
  187. sps.addValue("number", admin.getNumber());
  188. sps.addValue("password", admin.getPassword());
  189. return namedParameterJdbcTemplate.update(sql, sps);
  190. }
  191. public int delAdmin(int id){
  192. String sql = "delete from admin where id=:id";
  193. MapSqlParameterSource sps = new MapSqlParameterSource();
  194. sps.addValue("id", id);
  195. return namedParameterJdbcTemplate.update(sql, sps);
  196. }
  197. public int updateAdmin(Admin admin){
  198. String sql = "update `admin` set `name`=:name, `number`=:number, `password`=:password where `id`=:id";
  199. MapSqlParameterSource sps = new MapSqlParameterSource();
  200. sps.addValue("name", admin.getName());
  201. sps.addValue("number", admin.getNumber());
  202. sps.addValue("password", admin.getPassword());
  203. sps.addValue("id", admin.getId());
  204. return namedParameterJdbcTemplate.update(sql, sps);
  205. }
  206. public List<Admin> login(String number, String password){
  207. String sql = "select * from `admin` where `number`=:number and `password`=:password ";
  208. MapSqlParameterSource sps = new MapSqlParameterSource();
  209. sps.addValue("number", number);
  210. sps.addValue("password", password);
  211. List<Admin> list = namedParameterJdbcTemplate.query(sql, sps,
  212. new BeanPropertyRowMapper<Admin>(Admin.class));
  213. if (list != null && list.size() > 0) {
  214. return list;
  215. }
  216. return null;
  217. }
  218. // 查看水费异常充值
  219. public List<Recharge> findErrorPayByNo(int page, int rows) {
  220. int start = (page - 1) * rows;// 每页的起始下标
  221. String sql = "select id, user_name, stu_number, account, SUBSTR(re_time, 1, 10) as re_time, case handler_state when 0 then '未处理' when 1 then '已处理' end as handler_state from recharge where pay_state=1 order by id desc limit :start,:rows ";
  222. MapSqlParameterSource sps = new MapSqlParameterSource();
  223. sps.addValue("start", start);
  224. sps.addValue("rows", rows);
  225. List<Recharge> list = namedParameterJdbcTemplate.query(sql, sps,
  226. new BeanPropertyRowMapper<Recharge>(Recharge.class));
  227. if (list != null && list.size() > 0) {
  228. return list;
  229. }
  230. return null;
  231. }
  232. // 查询水费异常总记录数
  233. public int findErrorPayTotal() {
  234. String sql = "select count(*) from recharge where pay_state=1 ";
  235. MapSqlParameterSource sps = new MapSqlParameterSource();
  236. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  237. }
  238. // 处理异常水费充值
  239. public int updateErrorWaterPay(int id){
  240. String sql = "update recharge set `handler_state`=1 where id=:id";
  241. MapSqlParameterSource sps = new MapSqlParameterSource();
  242. sps.addValue("id", id);
  243. return namedParameterJdbcTemplate.update(sql, sps);
  244. }
  245. // 查看电费异常充值
  246. public List<Recharge_elc> findErrorElcPayByNo(int page, int rows) {
  247. int start = (page - 1) * rows;// 每页的起始下标
  248. String sql = "select id, user_name, stu_number, room, account, SUBSTR(re_time, 1, 10) as re_time, case handler_state when 0 then '未处理' when 1 then '已处理' end as handler_state from recharge_elc where state=1 order by id desc limit :start,:rows ";
  249. MapSqlParameterSource sps = new MapSqlParameterSource();
  250. sps.addValue("start", start);
  251. sps.addValue("rows", rows);
  252. List<Recharge_elc> list = namedParameterJdbcTemplate.query(sql, sps,
  253. new BeanPropertyRowMapper<Recharge_elc>(Recharge_elc.class));
  254. if (list != null && list.size() > 0) {
  255. return list;
  256. }
  257. return null;
  258. }
  259. // 查询电费异常总记录数
  260. public int findErrorElecTotal() {
  261. String sql = "select count(*) from recharge_elc where state=1 ";
  262. MapSqlParameterSource sps = new MapSqlParameterSource();
  263. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  264. }
  265. // 处理异常电费充值
  266. public int updateErrorElecPay(int id){
  267. String sql = "update recharge_elc set `handler_state`=1 where id=:id";
  268. MapSqlParameterSource sps = new MapSqlParameterSource();
  269. sps.addValue("id", id);
  270. return namedParameterJdbcTemplate.update(sql, sps);
  271. }
  272. // 查询异常用水数据
  273. public List<ErrorWaterPay> queryErrorPay(String s1, String s2){
  274. String sql = "select * from ( select b.`build`, b.`dom`, a.`begin_time`, CONVERT(SUM(use_amount), decimal(10, 2)) as use_amount from `consume` a, `build_water` b where a.`device_code`=b.`user_id` "+s1 + " group by dom order by a.`begin_time` desc ) a where 1=1 "+s2;
  275. MapSqlParameterSource sps = new MapSqlParameterSource();
  276. List<ErrorWaterPay> list = namedParameterJdbcTemplate.query(sql, sps,
  277. new BeanPropertyRowMapper<ErrorWaterPay>(ErrorWaterPay.class));
  278. if (list != null && list.size() > 0) {
  279. return list;
  280. }
  281. return null;
  282. }
  283. // 查询异常用水总条数
  284. public int queryErrorwaterTotal(String s1, String s3) {
  285. String sql = "select count(*) from ( select b.`build`, b.`dom`, a.`begin_time`, SUM(a.`use_amount`) as use_amount from `consume` a, `build_water` b where a.`device_code`=b.`user_id` "+s1 + " group by dom order by a.`begin_time` desc ) a where 1=1 "+s3;
  286. MapSqlParameterSource sps = new MapSqlParameterSource();
  287. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  288. }
  289. public List<Build_water> queryByUserId(String sqlx){
  290. String sql = " select * from build_water where 1=1 " + sqlx;
  291. MapSqlParameterSource sps = new MapSqlParameterSource();
  292. List<Build_water> list = namedParameterJdbcTemplate.query(sql, sps,
  293. new BeanPropertyRowMapper<Build_water>(Build_water.class));
  294. if (list != null && list.size() > 0) {
  295. return list;
  296. }
  297. return null;
  298. }
  299. // 充值详情
  300. public List<Recharge> queryByTime(String sql){
  301. MapSqlParameterSource sps = new MapSqlParameterSource();
  302. List<Recharge> list = namedParameterJdbcTemplate.query(sql, sps,
  303. new BeanPropertyRowMapper<Recharge>(Recharge.class));
  304. if (list != null && list.size() > 0) {
  305. return list;
  306. }
  307. return null;
  308. }
  309. public int queryReTotal(String sql) {
  310. MapSqlParameterSource sps = new MapSqlParameterSource();
  311. return namedParameterJdbcTemplate.queryForInt(sql, sps);
  312. }
  313. public long queryReOther(String sql) {
  314. MapSqlParameterSource sps = new MapSqlParameterSource();
  315. return namedParameterJdbcTemplate.queryForLong(sql, sps);
  316. }
  317. }