protected CUserEntity CreateUser(CUserEntity newUser) { try { COrganizeEntity organize = new COrganizeEntity(ConnString).Load(Usr_Organize); // create resource for user's folder CResourceEntity folderRes = new CResourceEntity(ConnString); folderRes.Res_Name = ""; folderRes.Res_Parent = organize.Org_Resource; folderRes.Res_Type = (int)RESOURCETYPE.FOLDERRESOURCE; folderRes.Res_Id = folderRes.Insert(); folderRes.Res_Name = folderRes.Res_Id.ToString() + newUser.Usr_Member; folderRes.Update(); // create user's folder String userPath = folderRes.MakeFullPath(); Directory.CreateDirectory(userPath); // create user newUser.Usr_Resource = folderRes.Res_Id; newUser.ConnString = ConnString; newUser.Usr_Id = newUser.Insert(); return(newUser); } catch (Exception e) { throw e; } }
public COrganizeEntity CreateOrganize(String organizeName) { try { // Check privilege CACLEntity acl = new CACLEntity(); acl.Acl_Resource = 0; acl.Acl_Operation = (int)ACLOPERATION.CREATEORGANIZE; if (!CheckPrivilege(acl)) { throw new Exception("当前用户无创建组织权限"); } // create resource for this organize CResourceEntity res = new CResourceEntity(ConnString); res.Res_Name = organizeName; res.Res_Parent = 0; res.Res_Type = (int)RESOURCETYPE.ORGANIZERESOURCE; res.Res_Id = res.Insert(); // create default storage folder named as organize resource id String organizePath = Path.Combine(MidLayerSettings.AppPath, res.Res_Id.ToString() + organizeName); Directory.CreateDirectory(organizePath); // create resource for default folder of organize CResourceEntity folderRes = new CResourceEntity(ConnString); folderRes.Res_Name = res.Res_Id.ToString() + organizeName; folderRes.Res_Parent = 0; folderRes.Res_Type = (int)RESOURCETYPE.FOLDERRESOURCE; folderRes.Res_Id = folderRes.Insert(); // Create organize entity COrganizeEntity organize = new COrganizeEntity(ConnString); organize.Org_Name = organizeName; //organize = res.Res_Id; organize.Org_Resource = res.Res_Id; organize.Insert(); // create archive folder for organzie String archivePath = Path.Combine(organizePath, "Archive"); Directory.CreateDirectory(archivePath); // create resource for archive folder CResourceEntity archiveRes = new CResourceEntity(ConnString); archiveRes.Res_Name = "Archive"; archiveRes.Res_Parent = folderRes.Res_Id; archiveRes.Res_Type = (int)RESOURCETYPE.FOLDERRESOURCE; archiveRes.Res_Id = archiveRes.Insert(); organize.Org_ArchiveRes = archiveRes.Res_Id; organize.Update(); return(organize); } catch (Exception ex) { throw (ex); } }