📄 travelcorp.java
字号:
package org.tshs.entity;
import java.sql.SQLException;
import java.sql.Types;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Vector;
import org.tshs.core.CacheManager;
import org.tshs.core.Constant.ObjectType;
import org.tshs.core.Constant.Sex;
import org.tshs.storage.rdbms.ColumnInfo;
import org.tshs.storage.rdbms.DbManager;
import org.tshs.storage.rdbms.TableRow;
public class TravelCorp extends TshsObject {
public static final int propertyLength = 5;
private String name;
private String password;
private String email;
private String address;
private String description;
private List<Long> groupIds;
public TravelCorp(Long id){
super(id, ObjectType.CORP);
}
/**
* @param row
*/
public TravelCorp(TableRow row) {
super((Long)row.getColumn("id"), ObjectType.CORP);
setName((String)row.getColumn("name"));
setPassword((String)row.getColumn("password"));
setEmail((String)row.getColumn("email"));
setAddress((String)row.getColumn("address"));
setDescription((String)row.getColumn("description"));
List<Long> idlist = (List<Long>) row.getColumn("groupIds");
setGroupIds(idlist);
}
public void setName(String name){
this.name = name;
}
public String getName() {
return name;
}
public void setPassword(String password){
this.password = password;
}
public String getPassword(){
return password;
}
public void setEmail(String email){
this.email = email;
}
public String getEmail() {
return email;
}
public void setAddress(String address){
this.address = address;
}
public String getAddress(){
return address;
}
public void setDescription(String description){
this.description = description;
}
public String getDescription(){
return description;
}
public void setGroupIds(List<Long> groupIds){
this.groupIds = groupIds;
}
public List<Long> getGroupIds(){
return groupIds;
}
public List<TravelGroup> getGroups() throws Exception {
List<TravelGroup> groupList = new ArrayList<TravelGroup>();
Iterator<Long> i = groupIds.iterator();
while(i.hasNext()){
groupList.add((TravelGroup)CacheManager.retrieve(i.next()));
}
return groupList;
}
public boolean addGroup(Long id){
if(groupIds.contains(id)){
return false;
}
groupIds.add(id);
return true;
}
/**
* if groupIds contains the id, then remove
*
* @param id
* @return true if removed, false if the corpration doesn't maintain such a group
*/
public boolean deleteGroup(Long id){
if(!groupIds.contains(id)){
return false;
}
groupIds.remove(id);
return true;
}
/**
* @param password
* @return
*/
public boolean checkPassword(String password){
if(this.password.equals(password)){
return true;
}else{
return false;
}
}
/**
* @param group
* @throws
* @throws SQLException
*/
public void removeGroup(TravelGroup group) throws Exception {
groupIds.remove(group.getId());
String sql = "delete from travelgroup where id = " + group.getId();
DbManager.excute(sql);
sql = "delete from corp2group where groupId = " + group.getId();
DbManager.excute(sql);
}
public Vector selfList() throws Exception {
Vector<String> groupNames = new Vector<String>();
List<TravelGroup> groups = getGroups();
Iterator<TravelGroup> i = groups.iterator();
while (i.hasNext()) {
groupNames.add(i.next().getName());
}
Vector<Object> self = new Vector<Object>();
self.add(name);
self.add(password);
self.add(email);
self.add(address);
self.add(description);
self.add(groupNames);
return self;
}
public boolean modify(Vector data) {
if(data.size() != propertyLength){
System.out.println("Error from TravelCorp: data.size() != propertyLength");
return false;
}
setName((String) data.get(0));
setPassword((String)data.get(1));
setEmail((String)data.get(2));
setAddress((String)data.get(3));
setDescription((String)data.get(4));
try {
DbManager.update(buildTableRow());
} catch (Exception e) {
e.printStackTrace();
}
return true;
}
protected TableRow buildTableRow(){
List<String> names = new ArrayList<String>();
List<Integer> types = new ArrayList<Integer>();
names.add("id");
types.add(Types.BIGINT);
names.add("name");
types.add(Types.VARCHAR);
names.add("password");
types.add(Types.VARCHAR);
names.add("email");
types.add(Types.VARCHAR);
names.add("address");
types.add(Types.VARCHAR);
names.add("description");
types.add(Types.VARCHAR);
ColumnInfo info = null;
try {
info = new ColumnInfo(names, types);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", id);
map.put("name", name);
map.put("password", password);
map.put("email", email);
map.put("address", address);
map.put("description", description);
TableRow row = new TableRow("travelcorp", map, info);
return row;
}
/**
* @return
*/
public boolean update() {
try {
DbManager.update(this.buildTableRow());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -