Beispiel #1
0
 //  private ICacheProvider _cacheProvider;
 public OrgAppService(OrgRepository repository, OrgQueryRepository queryOrgRepository, CorpQueryRepository queryCorpRepository, EmployeeQueryRepository queryEmployeeRepository)
 // : base(repository)//, queryOnlyRepository)
 {
     _repository              = repository;
     _queryCorpRepository     = queryCorpRepository;
     _queryOrgRepository      = queryOrgRepository;
     _queryEmployeeRepository = queryEmployeeRepository;
 }
Beispiel #2
0
        public virtual void SetUp()
        {
            ServiceLocatorInitializer.Init();

            string[] mappingAssemblies = RepositoryTestsHelper.GetMappingAssemblies();
            _configuration = NHibernateSession.Init(new SimpleSessionStorage(), mappingAssemblies,
                                                    "../../../../app/wrms.Web/NHibernate.config");

            _orgRepository = new OrgRepository();
        }
Beispiel #3
0
        /// <summary>
        /// 验证机构编码
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ActionResult ValidOrgCode(Org model)
        {
            var orgModel = OrgRepository.GetSingle(model);

            if (orgModel != null)
            {
                return(Content(model.ID > 0 && model.ID == orgModel.ID ? "true" : "false"));
            }
            else
            {
                return(Content("true"));
            }
        }
Beispiel #4
0
        public void Should_UpdatePreferences_IncrementUserVersions()
        {
            var models = CreateDataContext().AddOrgs();
            var users  = CreateDataContext().AddUsers(5);

            CreateDataContext().AddOrgMembers();

            foreach (var o in models)
            {
                var orgUsers = GetActiveUsersForOrg(o.Id);

                var prefRes = GetRepo <OrgRepository>()
                              .ForActiveOrg(o.Id)
                              .GetPreferences();

                TestFactory.Update(prefRes.Value);

                var dc = CreateDataContext();
                dc.ActiveUserId = TestFactory.SelectRandomObject <ModelUser>(users).Id;
                var repo = new OrgRepository(dc);

                repo
                .ForActiveOrg(o.Id)
                .UpdatePreferences(prefRes.Value);

                var orgUsersUpdated = GetActiveUsersForOrg(o.Id);

                for (int i = 0; i < orgUsers.Count; ++i)
                {
                    var oldVersion = orgUsers [i].Bag.Version;
                    var newVersion = orgUsersUpdated [i].Bag.Version;

                    if (dc.ActiveUserId == orgUsers [i].Id)
                    {
                        Assert.True(oldVersion == newVersion);
                    }
                    else
                    {
                        Assert.True(oldVersion + 1 == newVersion);
                    }
                }
            }
        }
Beispiel #5
0
 /// <summary>
 ///
 /// </summary>
 public Orgs()
 {
     _repo = GetRepo <OrgRepository>(true);
 }
Beispiel #6
0
        public override IQueryable <Document> Build(DocDef docDef, ObjectContext context, Guid userId)
        {
            var em = (cissaEntities)context;

            var source = BuildSource(docDef, context, userId);

            var text = Value != null?Value.ToString() : "";

            switch (Condition)
            {
            case ConditionOperation.Equal:
                switch (Ident)
                {
                case SystemIdent.Id:
                    var docId = Guid.Parse(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.Id == docId && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.State:
                    Guid stateId;
                    if (!Guid.TryParse(text, out stateId))
                    {
                        var dsRepo = new DocStateRepository();
                        stateId = dsRepo.GetDocStateTypeId(text);
                    }
                    return(source.Intersect(
                               em.Document_States.Where(s => s.State_Type_Id == stateId).Select(s => s.Document)));

                case SystemIdent.Created:
                    var val = Convert.ToDateTime(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.Created == val && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.OrgId:
                    var orgId = Guid.Parse(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.Organization_Id == orgId && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.OrgName:
                    var orgRepo = new OrgRepository(userId);
                    var orgId2  = orgRepo.GetOrgIdByName(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.Organization_Id == orgId2 && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.OrgCode:
                    var orgRepo2 = new OrgRepository(userId);
                    var orgId3   = orgRepo2.GetOrgIdByCode(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.Organization_Id == orgId3 && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.UserId:
                    var userRefId = Guid.Parse(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.UserId == userRefId && (d.Deleted == null || d.Deleted == false))));

                case SystemIdent.UserName:
                    var userRepo = new UserRepository();
                    var userId2  = userRepo.GetUserId(text);
                    return(source.Intersect(
                               em.Documents.Where(d => d.UserId == userId2 && (d.Deleted == null || d.Deleted == false))));
                }
                break;
            }
            return(source);
        }