1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.bestray.transtracking.dao.impl;
import com.bestray.transtracking.dao.TaskDao;
import com.bestray.transtracking.dao.mapper.TaskResulsetExtractor;
import com.bestray.transtracking.dto.TaskSearchResultDTO;
import com.bestray.trastrack.domain.ClientUser;
import com.bestray.trastrack.domain.Task;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.ResultSetExtractor;
/**
*
* @author user2
*/
public class TaskDaoImpl implements TaskDao{
private DataSource ds;
private static final String TASK_QUERY="SELECT * from task_master ";
private static final String ORDER_BY = "order by id desc";
private static final String TASK_RESULT_QRY = "select tsk.id,tsk.maintenance_name,tsk.job_frequency,tsk.reminder,tsk.lock,tsk.distance, "
+" cd.name as maintenancetype, co.name as jobbasis "
+" from task_master tsk, code co, code cd where "
+" tsk.maintenance_type_id = cd.id and tsk.job_basis_id = co.id order by tsk.id desc";
public TaskDaoImpl(DataSource ds){
this.ds=ds;
}
public void saveTask(Task task)throws Exception{
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
String sql = "INSERT INTO task_master (`maintenance_name`,`maintenance_type_id`,`job_basis_id`,`job_frequency`,`reminder`,`lock`,`distance`) values(?,?,?,?,?,?,?)";
jdbcTemplate.update(sql, task.getMaintenance_Name(), task.getJobTypeId(), task.getJobBasisId(), task.getJob_Frequency(), task.getRemind_Before(), task.getLock(),task.getDistance());
}
public void updateTask(Task task)throws Exception{
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
String sql = "update task_master set `maintenance_name` =? ,`maintenance_type_id` =?, `job_basis_id` =?,`job_frequency` =?,`reminder` =?,`lock` =?,`distance`=? where id = ?";
jdbcTemplate.update(sql, new Object[]{task.getMaintenance_Name(), task.getJobTypeId(), task.getJobBasisId(),task.getJob_Frequency(),task.getRemind_Before(),task.getLock(),task.getDistance(),task.getId()});
}
public List<Task> findAllTask() throws Exception{
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
StringBuffer queryString = new StringBuffer(TASK_QUERY).append(ORDER_BY);
List<Task> taskList = (List<Task>) jdbcTemplate.query(queryString.toString(), new TaskResulsetExtractor());
return taskList;
}
public Task findTaskRegistraion(Long taskId) throws Exception{
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
StringBuffer queryString = new StringBuffer(TASK_QUERY)
.append("where id =? ")
.append(ORDER_BY);
List<Task> taskList = (List<Task>) jdbcTemplate.query(queryString.toString(), new Object[]{taskId}, new TaskResulsetExtractor());
return taskList.size()>0?taskList.get(0):null;
}
public void delete(Long taskId) throws Exception {
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
jdbcTemplate.update("DELETE FROM task_master WHERE id = ?", new Object[]{taskId});
}
public List<TaskSearchResultDTO> findAllTasksList() throws Exception {
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);
List<TaskSearchResultDTO> taskList = (List<TaskSearchResultDTO>) jdbcTemplate.query(TASK_RESULT_QRY, new TaskSearchResultSetExtractor());
return taskList;
}
class TaskSearchResultSetExtractor implements ResultSetExtractor<Object>{
public Object extractData(ResultSet rs) throws SQLException, DataAccessException {
List <TaskSearchResultDTO> tasklist = new ArrayList<TaskSearchResultDTO>();
while (rs.next()) {
TaskSearchResultDTO task = new TaskSearchResultDTO();
task.setTaskId(rs.getString("id"));
task.setMaintenanceName(rs.getString("maintenance_name"));
task.setMaintenancetype(rs.getString("maintenancetype"));
task.setJobbasis(rs.getString("jobbasis"));
task.setJobfrequency(rs.getString("job_frequency"));
task.setReminder(rs.getString("reminder"));
task.setLock(rs.getString("lock"));
task.setDistance(rs.getString("distance"));
tasklist.add(task);
}
return tasklist;
}
}
}
|