📄 tf_organisecityrela.java
字号:
/*
* 创建日期 2005-8-1
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.doone.fj1w.fjmgr.sysmgr;
import com.doone.data.DacClient;
import com.doone.data.DataRow;
import com.doone.data.DataTable;
import com.doone.data.ObjectEntity;
import com.doone.util.FileLogger;
import com.doone.uurm.Sys_OrganiseType;
public class Tf_OrganiseCityRela extends ObjectEntity {
private static String _fieldNames = null;
private static String _tableName = "tf_organisecityrela";
private static DataTable _entityStruct = null;
/**
*
*/
private Tf_OrganiseCityRela() {
super();
}
/**
* @param db
* @param objId
*/
public Tf_OrganiseCityRela(DacClient db, long objId) {
super(db, objId);
}
/**
* @param db
*/
public Tf_OrganiseCityRela(DacClient db) {
super(db);
try {
this.setOrganiseCityRelaID(db.getSequence("SEQ_ORGANISECITYRELAID"));
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
}
/**
* @param dr
*/
public Tf_OrganiseCityRela(DataRow dr) {
super(dr);
}
public static boolean hasRelationByOrg(long orgId) {
boolean ret = false;
try {
String sql = "select count(organisecityrelaid) from tf_organisecityrela where organiseid=?";
Object[] aParam = new Object[1];
aParam[0] = new Long(orgId);
DacClient db = new DacClient();
String tmp = db.getStringFromSqlQuery(sql, aParam);
if (tmp.equals("1"))
ret = true;
} catch (Exception ex) {
FileLogger.getLogger().debug(ex);
}
return ret;
}
public static DataTable getCityListByStaff(String staffCode) {
DataTable ret = null;
try {
Object[] aParam = null;
StringBuffer sql = new StringBuffer();
sql.append("select distinct u.staffid, u.staffcode, u.name staffname, oc.citycode, oc.cityname from tf_staff u, tf_staffandorg uo, vf_orgcity oc");
sql.append(" where u.staffid = uo.staffid and uo.organiseid = oc.organiseid");
sql.append(" and u.state = 'E' and uo.state = 'E'");
sql.append(" and u.staffcode = ? ");
aParam = new Object[1];
aParam[0] = staffCode;
DacClient db = new DacClient();
ret = db.executeQuery(sql.toString(), aParam);
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
return ret;
}
/**
* 获取组织与城市的列表信息。
*
* @param startIndex
* @param count
* @return 返回使用DataTable结构的组织与城市的关系信息,主要字段包括:
* <li>organisecityrelaid: 组织与城市关系编号;</li>
* <li>organiseid: 组织编号</li>
* <li>organisename:组织名称,它只是当前组织名称,不包含父组织名称。</li>
* <li>areacode: 区域编号</li>
* <li>areaname:区域名称</li>
* <li>citycode: 城市编号</li>
* <li>cityname:城市名称</li>
* <li>OrgFullName: 使用“/”分隔的组织全路径,如:/福建省/福州市</li>
*/
public static DataTable getOrgCityList(int currPage, int pageSize) {
DataTable ret = null;
try {
if (currPage < 0) currPage = 0;
if (pageSize < 1) pageSize = 15;
int startRecord = currPage * pageSize;
int endRecord = (currPage + 1) * pageSize;
Object[] aParam = null;
StringBuffer sql = new StringBuffer();
sql.append("select * from (");
sql.append("SELECT AA1.Organisecityrelaid,");
sql.append(" bb1.organiseid,");
sql.append(" bb1.organisename,");
sql.append(" AA1.CITYCODE,");
sql.append(" AA1.CITYNAME,");
sql.append(" AA1.AREACODE,");
sql.append(" AA1.AREANAME,");
sql.append(" BB1.ORGFULLNAME,");
sql.append(" rownum num1");
sql.append(" FROM VF_Organisecityrela aa1,");
sql.append(" (SELECT ORGANISEID,");
sql.append(" name Organisename,");
sql.append(" SYS_CONNECT_BY_PATH(NAME, '-->') ORGFULLNAME");
sql.append(" FROM TF_ORGANISE");
sql.append(" START WITH UPORGANISEID = 0");
sql.append(" CONNECT BY PRIOR ORGANISEID = UPORGANISEID");
sql.append(" AND STATE = 'E') BB1");
sql.append(" WHERE BB1.ORGANISEID = AA1.ORGANISEID");
sql.append(" and rownum <= ?");
sql.append(" ) where num1 > ?");
aParam = new Object[2];
aParam[0] = new Integer(endRecord);
aParam[1] = new Integer(startRecord);
sql.append(" ORDER BY CITYCODE, AREACODE DESC");
DacClient db = new DacClient();
ret = db.executeQuery(sql.toString(), aParam);
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
return ret;
}
/**
* 根据城市编号获取所有组织列表信息。
*
* @param cityCode
* 城市编号。
* @param count
* 列表计数。
* @return 返回使用DataTable结构的组织与城市的关系信息,主要字段包括:
* <li>organiseid: 组织编号</li>
* <li>organisename:组织名称,它只是当前组织名称,不包含父组织名称。</li>
* <li>orgfullname: 组织全称,它是组织的完整路径名称。
* <li>citycode: 城市编号</li>
* <li>cityname:城市名称</li>
*/
public static DataTable getOrgCityList(String cityCode, int count) {
DataTable ret = null;
try {
Object[] aParam = null;
StringBuffer sql = new StringBuffer();
sql
.append("select t.organiseid, t.organisename, t.orgfullname, t.citycode, t.cityname");
sql.append(" from VF_ORGAREA t");
sql.append(" where t.citycode = ?");
if (count > 0) {
sql.append(" and rownum < ?");
aParam = new Object[2];
aParam[0] = cityCode;
aParam[1] = new Integer(count);
} else {
aParam = new Object[1];
aParam[0] = cityCode;
}
DacClient db = new DacClient();
ret = db.executeQuery(sql.toString(), aParam);
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
return ret;
}
/**
* 根据组织编号获取它和下属组织的区域信息
*
* @param cityCode
* 城市编号。
* @param count
* 列表计数。
* @return 返回使用DataTable结构的组织与城市的关系信息,主要字段包括:
* <li>organiseid: 组织编号</li>
* <li>organisename:组织名称,它只是当前组织名称,不包含父组织名称。</li>
* <li>areacode: 区域编号</li>
* <li>areaname:区域名称</li>
*/
public static DataTable getAreaList(long lOrganiseID, int count) {
DataTable ret = null;
try {
Object[] aParam = null;
StringBuffer sql = new StringBuffer();
sql.append("select t.organiseid, t.organisename, t.areacode, t.areaname");
sql.append(" from VF_ORGAREA t");
sql.append(" where t.organiseid = ?");
if (count > 0) {
sql.append(" and rownum <= ?");
aParam = new Object[2];
aParam[0] = new Long(lOrganiseID);
aParam[1] = new Integer(count);
} else {
aParam = new Object[1];
aParam[0] = new Long(lOrganiseID);
}
DacClient db = new DacClient();
ret = db.executeQuery(sql.toString(), aParam);
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
return ret;
}
public static int getOrganiseCityCount() {
int ret = 0;
try {
String sql = "select count(1) from tf_organisecityrela";
DacClient db = new DacClient();
String str = db.getStringFromSqlQuery(sql, null);
ret = Integer.parseInt(str);
} catch (Exception e) {
FileLogger.getLogger().info(e.getMessage(), e);
throw new RuntimeException(e);
}
return ret;
}
/**
* 获取指定员工工号及城市编号的组织信息列表。
*
* @param cityCode
* @param staffCode
* @return
*/
public static DataTable getPostListByStaff(String cityCode, long staffID) {
DataTable ret = null;
try {
Object[] aParam = null;
StringBuffer sql = new StringBuffer();
DacClient db = new DacClient();
if (cityCode != null) {
sql.append("select uo.staffid, uo.starttime, uo.endtime, oc.organiseid, oc.organisename,");
sql.append("oc.orgfullname, oc.citycode, oc.cityname from tf_staffandorg uo, tf_organise o, vf_orgarea oc");
sql.append(" where uo.organiseid = oc.organiseid");
sql.append(" and uo.organiseid = o.organiseid");
sql.append(" and o.organisemode = ?"); // 设置只输出岗位类型的组织。
sql.append(" and ( uo.starttime < sysdate or uo.starttime is null )");
sql.append(" and ( uo.endtime > sysdate or uo.endtime is null )");
sql.append(" and uo.state = 'E'");
sql.append(" and uo.staffid = ?");
sql.append(" and oc.citycode = ?");
aParam = new Object[3];
aParam[0] = Sys_OrganiseType.ORGTYPE_POST;
aParam[1] = new Long(staffID);
aParam[2] = cityCode;
} else {
sql.append("select uo.staffid, uo.starttime, uo.endtime, o.organiseid, o.name organisename");
sql.append(" from tf_staffandorg uo, tf_organise o");
sql.append(" where uo.organiseid = o.organiseid ");
sql.append(" and o.organisemode = ?");
sql.append(" and ( uo.starttime < sysdate or uo.starttime is null )");
sql.append(" and ( uo.endtime > sysdate or uo.endtime is null )");
sql.append(" and uo.state = 'E'");
sql.append(" and uo.staffid = ?");
sql.append(" and not exists ( select 1 from vf_orgcity oc where oc.organiseid = o.organiseid )");
aParam = new Object[2];
aParam[0] = Sys_OrganiseType.ORGTYPE_POST;
aParam[1] = new Long(staffID);
}
ret = db.executeQuery(sql.toString(), aParam);
} catch (Exception ex) {
FileLogger.getLogger().warn(ex);
throw new RuntimeException(ex);
}
return ret;
}
// [start] 获取与设置相关属性值。
private void setOrganiseCityRelaID(long ocrID) {
entityRow.setValue("organisecityrelaid", new Long(ocrID));
}
public long getOrganiseCityRelaID() {
return entityRow.getLong("organisecityrelaid");
}
public void setOrganiseID(long orgid) {
entityRow.setValue("organiseid", new Long(orgid));
}
public long getOrganiseID() {
return entityRow.getLong("organisecityrelaid");
}
public void setCityCode(String cityCode) {
entityRow.setValue("cityCode", cityCode);
}
public long getCityCode() {
return entityRow.getLong("cityCode");
}
public void setAreaCode(String areaCode) {
entityRow.setValue("areaCode", areaCode);
}
public long getAreaCode() {
return entityRow.getLong("areaCode");
}
public void setCityName(String cityName) {
entityRow.setValue("cityName", cityName);
}
public long getCityName() {
return entityRow.getLong("CityName");
}
public void setAreaName(String areaName) {
entityRow.setValue("AreaName", areaName);
}
public long getAreaName() {
return entityRow.getLong("AreaName");
}
protected String get_fieldNames() {
return _fieldNames;
}
protected void set_fieldNames(String names) {
_fieldNames = names;
}
protected String get_tableName() {
return _tableName;
}
protected void set_tableName(String name) {
_tableName = name;
}
protected DataTable get_entityStruct() {
return _entityStruct;
}
protected void set_entityStruct(DataTable struct) {
_entityStruct = struct;
}
// [end]
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -