public OrgExtBusinessObject(OrgExtInfo _info, List <OrgExtFieldDefine> _cols) { infoData = _info; columns.Clear(); if (_cols != null) { foreach (OrgExtFieldDefine _item in _cols) { columns.Add(_item.FieldName, _item); } } else { columns = null; } }
public List <OrgExtInfo> GetOrgExtChildData(string _fid, List <OrgExtFieldDefine> PropertieDefines) { List <OrgExtInfo> _ret = new List <OrgExtInfo>(); StringBuilder _sb = new StringBuilder(); _sb.Append(" SELECT fj.ZZJGID, jg.jgqc, fj.JGXSMC, fj.ISDISPLAY, fj.DISPLAYORDER, jg.sjdwid"); foreach (OrgExtFieldDefine _field in PropertieDefines) { _sb.Append(string.Format(",fj.{0}", _field.FieldName)); } _sb.Append(" FROM qx2_zzjg jg "); _sb.Append(" join QX2_JGFJXX fj on jg.ZZJGID=fj.ZZJGID "); _sb.Append(" where level <= 2 "); _sb.Append(" START WITH (jg.ZZJGID = :nParent ) "); _sb.Append(" CONNECT BY prior jg.zzjgid=jg.SJDWID "); OracleParameter[] _param = { new OracleParameter(":nParent", OracleDbType.Decimal) }; _param[0].Value = decimal.Parse(_fid); OracleDataReader dr = OracleHelper.ExecuteReader(OracleHelper.ConnectionStringProfile, CommandType.Text, _sb.ToString(), _param); while (dr.Read()) { OrgExtInfo _item = new OrgExtInfo( dr.IsDBNull(0) ? "" : dr.GetDecimal(0).ToString(), dr.IsDBNull(1) ? "" : dr.GetString(1), dr.IsDBNull(2) ? "" : dr.GetString(2), dr.IsDBNull(3) ? (decimal)0 : dr.GetDecimal(3), dr.IsDBNull(4) ? (decimal)0 : dr.GetDecimal(4), dr.IsDBNull(5) ? "" : dr.GetDecimal(5).ToString() ); int _index = 6; foreach (OrgExtFieldDefine _field in PropertieDefines) { _item.SetValue(_field.FieldName, dr[_index++]); } _ret.Add(_item); } dr.Close(); return(_ret); }