/// <summary> /// 定义状态属性清单 /// </summary> /// <param name="t5LeafID">状态叶标识</param> /// <param name="ordinal">状态属性序号</param> /// <param name="list">清单(删除后重新插入)</param> /// <returns></returns> public IRAPError DefineStatusList(int t5LeafID, int ordinal, List <TreeStatusModelRowDTO> list) { var thisState = GetStatus().FirstOrDefault(c => c.AttrIndex == ordinal); if (thisState == null) { throw new Exception($"第{ordinal}状态属性未定义!"); } IRAPTreeBase treeBase = new IRAPTreeBase(db, 0, 5, t5LeafID); var namespaces = IRAPNamespaceSetFactory.CreatInstance(Enums.NamespaceType.Sys); List <BaseRowAttrEntity> inputList = new List <BaseRowAttrEntity>(); foreach (TreeStatusModelRowDTO r in list) { ModelTreeStatusList e = new ModelTreeStatusList() { EntityID = t5LeafID, Ordinal = r.Ordinal, Status = r.Status, StatusNameID = namespaces.GetNameID(0, r.StatusName) }; inputList.Add(e); } return(treeBase.SaveRSAttr(typeof(ModelTreeStatusList), inputList)); }
/// <summary> /// 带数据库上下文的构造函数 /// </summary> /// <param name="db"></param> /// <param name="opID"></param> public IRAPBizModel(IDbContext db, int opID) { _opID = opID; this._db = db; _t4treeBase = new IRAPTreeBase(_db, 0, 4, opID); _leaf = _t4treeBase.Leaf; _namespaces = _db.Set <SysNameSpaceEntity>().Where(c => c.PartitioningKey == 0 && c.LanguageID == 30); }
/// <summary> /// 构造函数 /// </summary> /// <param name="opID"></param> public IRAPBizModel(int opID) { _opID = opID; _db = DBContextFactory.Instance.CreateContext("IRAPContext"); _t4treeBase = new IRAPTreeBase(_db, 0, 4, opID); _leaf = _t4treeBase.Leaf; _namespaces = _db.Set <SysNameSpaceEntity>().Where(c => c.PartitioningKey == 0 && c.LanguageID == 30); }
/// <summary> /// 获取一棵树,主数据库用这个类就可以了 /// </summary> /// <param name="communityID">社区</param> /// <param name="treeID">树标识</param> /// <param name="leafID">叶标识</param> /// <returns></returns> public IRAPTreeBase GetIRAPTreeBase(int communityID, int treeID, int leafID) { _communityID = communityID; _treeID = treeID; _leafID = leafID; _irapTreeBase = new IRAPTreeBase(_db, _communityID, _treeID, _leafID); return(_irapTreeBase); }
/// <summary> /// 新增树结点 /// </summary> /// <param name="nodeType">结点类型:3-结点 4-叶子</param> /// <param name="fatherNode">父结点</param> /// <param name="englishName">英文名称</param> /// <param name="createBy">创建人代码</param> /// <param name="nodeCode">结点代码</param> /// <param name="alterNateCode">替代代码</param> /// <param name="nodeName">结点名称</param> /// <param name="udfOrdinal">结点所在位置序号</param> /// <returns></returns> public NewTreeNodeDTO AddNode(int nodeType, int fatherNode, string englishName, string createBy, string nodeCode, string alterNateCode, string nodeName, float udfOrdinal = 0F) { fatherNode = Math.Abs(fatherNode); IRAPTreeBase tree = new IRAPTreeBase(context, _communityID, _treeID); return(tree.NewTreeNode(nodeType, fatherNode, nodeName, nodeCode, createBy, alterNateCode, englishName, udfOrdinal)); }
/// <summary> /// 定义操作类型 /// </summary> /// <param name="opType">操作类型序号</param> /// <param name="optypeName">操作类型名</param> /// <param name="optypeCode">操作类型代码</param> /// <param name="auxFactTBLName">一般属性表</param> /// <param name="auxTranTBLName">辅助交易表</param> /// <param name="oltpTempFactTBLName">临时业务流水表</param> /// <param name="oltpFixedFactTBLName">固化业务流水表</param> /// <param name="isValid">是否有效</param> /// <returns></returns> public IRAPError DefineOptypes(short opType, string optypeName, string optypeCode, string auxFactTBLName, string auxTranTBLName, string oltpTempFactTBLName, string oltpFixedFactTBLName, bool isValid) { GenAttr_T4 genAttr = GetGenAttr(); IRAPTreeSet t18Set = new IRAPTreeSet(_db, 0, 18); // var t4RowSet = _t4treeBase.GetRSAttr<RowSet_T4R1>().Cast<RowSet_T4R1>(); var t4RowSet = _db.Set <RowSet_T4R1>().Where(c => c.PartitioningKey == 4 && c.EntityID == _opID); var nameSpaces = IRAPNamespaceSetFactory.CreatInstance(Enums.NamespaceType.Sys); var optypeEntity = t4RowSet.FirstOrDefault(c => c.Ordinal == opType); if (optypeEntity == null) { //新增 int nameID = nameSpaces.GetNameID(0, optypeName); var res = t18Set.NewTreeNode(4, 1018, optypeName, optypeCode, "Admin"); if (res.ErrCode != 0) { return(new IRAPError { ErrCode = res.ErrCode, ErrText = res.ErrText }); } int t18leafEntity = res.NewEntityID; RowSet_T4R1 row = new RowSet_T4R1() { EntityID = _opID, OpType = opType, Ordinal = opType, AuxFactTBLName = auxFactTBLName, T18LeafID = t18leafEntity, IsValid = isValid, PartitioningKey = 4, StateExclCtrlStr = "", VersionLE = 2147483647, AuthorizingCondition = "", ComplementaryRule = "", BusinessDateIsValid = false }; _db.Set <RowSet_T4R1>().Add(row); } else { //修改 optypeEntity.AuxFactTBLName = auxFactTBLName; optypeEntity.IsValid = isValid; IRAPTreeBase tree18 = new IRAPTreeBase(_db, 0, 18, optypeEntity.T18LeafID); if (tree18.Leaf.NodeName != optypeName) { tree18.Leaf.NodeName = optypeName; tree18.Leaf.Code = optypeCode; } } _db.SaveChanges(); return(new IRAPError(0, "定义操作类型成功!")); }
/// <summary> /// 获取一棵树,主数据库用这个类就可以了(默认社区) /// </summary> /// <param name="treeID"></param> /// <param name="leafID"></param> /// <returns></returns> public IRAPTreeBase GetIRAPTreeBase(int treeID, int leafID) { if (_communityID == 0) { throw new Exception("在调用GetIRAPTreeBase时未指定社区。"); } _treeID = treeID; _leafID = leafID; _irapTreeBase = new IRAPTreeBase(_db, _communityID, _treeID, _leafID); return(_irapTreeBase); }
public static void Test() { IRAPBizBase biz = new IRAPBizBase(); try { string inParam = File.ReadAllText(@"C:\temp\22.TXT"); biz.UsingContext("IRAPMDM"); dynamic dn = biz.GetObjectFromJson(inParam); int fatherNode = int.Parse(dn.NodeID.ToString()); string nodeName = dn.NodeName.ToString(); int communityID = int.Parse(dn.CommunityID.ToString()); IRAPTreeSet treeset = new IRAPTreeSet(communityID, 102); NewTreeNodeDTO treeDto = treeset.AddNode(4, fatherNode, "", "", "", "", nodeName); IRAPTreeBase treebase = biz.GetIRAPTreeBase(communityID, 102, treeDto.NewNodeID); EGenAttr_T102 gen = new EGenAttr_T102(); gen.Unit = dn.Unit.ToString(); gen.SpecificationType = dn.SpecificationType.ToString(); gen.Attribute = dn.Attribute.ToString(); gen.SerialNo = dn.SerialNo.ToString(); gen.Code = dn.Codeing.ToString(); gen.ClassType = dn.ClassType.ToString(); gen.SafetyStock = dn.SafetyStock.ToString(); gen.Name = dn.Name.ToString(); treebase.SaveGenAttr(gen); treebase.Commit(); Console.WriteLine("success."); //biz.BackResult.ErrCode = 0; //biz.BackResult.ErrText = "添加成功!"; //return biz.ToJson(); } catch (Exception err) { Console.WriteLine(err.Message); //biz.BackResult.ErrCode = 9999; //biz.BackResult.ErrText = $"出现错误:{err.Message}"; //return biz.ToJson(); } }
static void Main(string[] args) { IRAPTree tree = new IRAPTree(60006, 102, -64128); Console.WriteLine(tree.ClassEntity); Console.WriteLine(tree.LeafEntity); Console.WriteLine(tree.NameSpace); Console.WriteLine(tree.TransientEntity); Console.WriteLine(tree.Status); TreeLeafEntity a; a = new ETreeBizLeaf(); Console.WriteLine(a.GetType().Name); //Console.ReadKey(); string tempfile = "AN3028111S1-Addfddd-NG.xls"; string barcode; string conclusion; AnalyzeResult(tempfile, out barcode, out conclusion); Console.WriteLine(barcode); Console.WriteLine(conclusion); //IRAPTreeSet treeSet = new IRAPTreeSet(57280,1); //// NewTreeNodeDTO dto= treeSet.NewNode(5615111, "Create", "创新研究所", 1.1F); //NewTreeNodeDTO dto = treeSet.NewLeaf(14263, "test", "alter", "中台开发人员"); //Console.WriteLine(dto.ErrCode); //Console.WriteLine(dto.ErrText); //Console.WriteLine(dto.NewNodeID); //IRAPSystem system = new IRAPSystem(); //var list= system.GetSystemList(); //foreach (var r in list) //{ // Console.WriteLine("{0} - {1}", r.SystemID,r.SystemName); //} // Repository<IRAPUserEntity> rep = new Repository<IRAPUserEntity>("IRAPContext"); // var us= rep.Table.Where(r=>r.UserCode=="Admin").ToList(); // foreach (var r in us) // { // Console.WriteLine("{0} {1}", r.UserCode,r.UserName); // } // Console.ReadKey(); // IRAPUser irapUser = new IRAPUser("Admin", 57280); // 测试新增用户 //IRAPError error = irapUser.AddUser("77777", "测试0214", "123", "-1,-4", "-2"); // Console.WriteLine("{0} {1}", error.ErrCode, error.ErrText); //测试获取机构 // BackLeafSetDTO list = irapUser.GetAgencyList(); //foreach (LeafDTO item in list.Rows) // { // Console.WriteLine("{0} {1} {2}", item.Leaf, item.Code, item.Name); // } //测试登录 // BackLoginInfo backlogin = irapUser.Login("PCWeb", "123", "", "00161701F6BE", "192.168.57.216", 1, 2); // Console.WriteLine("{0},{1} {2} {3} {4}", backlogin.ErrCode, backlogin.ErrText, backlogin.SysLogID, backlogin.access_token, backlogin.AgencyName); // Console.ReadKey(); /* * * * * BackLeafSetDTO list2 = irapUser.GetRoleList(); * Console.WriteLine("{0} {1}", list2.ErrCode, list2.ErrText); * foreach (LeafDTO item in list2.Rows) * { * Console.WriteLine("{0} {1} {2}", item.Leaf, item.Code, item.Name); * } * * //IRAPError error= irapUser.AddUser("Admin2","张峰","123","-1","-2"); * //Console.WriteLine("{0} {1}", error.ErrCode, error.ErrText); * * IRAPError error3 = irapUser.VerifyPWD("123"); * Console.WriteLine("{0} {1}", error3.ErrCode, error3.ErrText); * * //IRAPStation station = new IRAPStation(); * // IRAPError list3 = station.HasStation("00161701F6BE"); * //Console.WriteLine("{0},{1}", list3.ErrCode, list3.ErrText); * * BackLoginInfo backlogin = irapUser.Login("PCWeb","123", "", "00161701F6BE", "192.168.57.216", 1, 2); * Console.WriteLine("{0},{1} {2} {3} {4}", backlogin.ErrCode, backlogin.ErrText, backlogin.SysLogID, backlogin.access_token,backlogin.AgencyName); * * //IRAPError error2 = irapUser.DeleteUser(9999, "Admin"); * //irapUser.User.EncryptedPWD = IRAPUser.GetBinaryPassword("123"); * // IRAPError error2 = irapUser.ModifyUser(irapUser.User); * // Console.WriteLine("{0},{1}", error2.ErrCode, error2.ErrText); * * //UnitOfWork work = new UnitOfWork(new IRAPSqlDBContext("name=IRAPMDMContext")); * //Repository<ETreeBizTran> dd= work.Repository<ETreeBizTran>(); * //foreach (ETreeBizTran row in dd.Table.ToList()) * //{ * // Console.WriteLine("{0} {1}", row.Code,row.EntityID); * //} * * //TestMES test = new TestMES(); * // test.Test(); * //IRAPGrant grant = new IRAPGrant(57280); * //List<EGrant> list= grant.GetGrantListByTree(1, -1, -2); * * //foreach( var r in list) * //{ * // PrintProperties(r); * //} */ //var userlist = TestUserBiz.Users(); //foreach(var r in userlist.Table) //{ // Console.WriteLine("{0} {1}", r.UserCode, r.UserName); //} //var e = userlist.Entities.Find("ning.du"); //userlist.Delete(e); //Console.WriteLine("删除成功!"); //userlist.SaveChanges(); // IRAPTreeNodes treeNodes = tree.AccessibleTreeView(-1, -2); int errCode; string errText; //List<TreeViewDTO> treeNodes = tree2.TreeView(out errCode, out errText,5171, false); int i = 0; // PrintTree(treeNodes, ref i); //Console.WriteLine("总数:{0}", treeNodes.Count); // IRAPTree tree3 = new IRAPTree(57280, 1, 1); // var list3 = tree3.GetRowSet(1).Cast<RowSet_T1R1>(); // list3.AsQueryable<RowSet_T1R1>(); //var query = from p in list3.AsQueryable<BaseRowAttrEntity>().Where(c=>c.EntityID==1).Select(c=>c.EntityID); //foreach (var r in list3) //{ // Console.WriteLine("{0} {1}",r.EntityID,r.T2LeafID); //} //Dictionary<int, TreeClassEntity> dict = new Dictionary<int, TreeClassEntity>(); //dict.Add( 1,new ETreeSysClass { LeafID=1, Ordinal=1, PartitioningKey=0, DimLeaf=199, TreeID=2 } ); IRAPBizTest testbiz = new IRAPBizTest(); //IRAPError error= treebase.SaveRSAttr(e); // testbiz.Test(); //IRAPError error= tree3.SaveRSAttr(list33); //var db = new IRAPSqlDBContext("IRAPMDMContext"); //IRAPTreeBase tree5 = new IRAPTreeBase(db, 57280,271, 2361336); //IRAPError error= tree5.SaveTransAttr(2, 381); //Console.WriteLine(error.ErrText); //GenAttr_T1 genattr = (GenAttr_T1)tree5.GetGenAttr<GenAttr_T1>(); //Console.WriteLine("{0} {1}", genattr.EntityID, genattr.BriefDesc); //List<TreeViewDTO> list = tree2.TreeView(out errCode, out errText); //foreach(TreeViewDTO r in list) //{ // Console.WriteLine("{0}-{1} {2}", r.NodeID, r.NodeName, r.NodeDepth); //} //NewTreeNodeDTO err= tree2.AddNode(4, 4539719, "", "Admin", "", "", "测试工具"); //Console.WriteLine("{0} {1}", err.NewNodeID, err.ErrText); //var list99= tree2.SubTreeLeaves(5587); //foreach (var r in list99) //{ // Console.WriteLine("{0} {1}",r.NodeName,r.Code); //} // Test(); // string aesString= Encoding.UTF8.GetString( IRAPUser.GetBinaryPasswordAES("123456" )); IDbContext db = DBContextFactory.Instance.CreateContext("IRAPMDMContext"); IRAPTreeBase treeBase = new IRAPTreeBase(db, 57280, 1, 1); // testbiz.Test(); Console.ReadKey(); }
/// <summary> /// 修改树结点 /// </summary> /// <param name="nodeType">结点类型:3-结点 4-叶子</param> /// <param name="nodeID">结点标识</param> /// <param name="modifiedBy">修改人代码</param> /// <param name="englishName">英文描述</param> /// <param name="nodeCode">结点代码</param> /// <param name="nodeName">结点名称</param> /// <param name="alternateCode">替代代码</param> /// <param name="udfOrdinal">位置序号</param> /// <returns></returns> public IRAPError ModifyNode(int nodeType, int nodeID, string modifiedBy, string englishName, string nodeCode, string nodeName, string alternateCode, float udfOrdinal = 0F) { IRAPTreeBase tree = new IRAPTreeBase(context, _communityID, _treeID); return(tree.ModifyTreeNode(nodeType, nodeID, nodeName, nodeCode, englishName, alternateCode, modifiedBy, udfOrdinal)); }
/// <summary> /// 删除树结点 /// </summary> /// <param name="nodeType">结点类型:3-结点 4-叶子</param> /// <param name="nodeID">结点标识</param> /// <returns></returns> public IRAPError DeleteNode(int nodeType, int nodeID) { IRAPTreeBase tree = new IRAPTreeBase(context, _communityID, _treeID); return(tree.DeleteTreeNode(nodeType, nodeID)); }