예제 #1
0
파일: Startup.cs 프로젝트: vebin/qMISPlat
        // This method gets called by the runtime. Use this method to add services to the container.
        //注册服务
        public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            //不加这句的话,发布到IIS里会运行不起来
            services.AddApplicationInsightsTelemetry(Configuration);
            //注册编辑器
            services.AddUEditorService();
            services.AddMvc(o => o.Conventions.Add(new FeatureConvention()))
            .AddJsonOptions(t => t.SerializerSettings.ContractResolver = new DefaultContractResolver())
            .AddRazorOptions(options =>
            {
                // {0} - Action Name
                // {1} - Controller Name
                // {2} - Area Name
                // {3} - Feature Name
                // replace normal view location entirely
                //    options.ViewLocationFormats.Clear();
                options.ViewLocationFormats.Add("/Plat/{3}/{1}/{0}.cshtml");
                options.ViewLocationFormats.Add("/Plat/{3}/{0}.cshtml");
                options.ViewLocationFormats.Add("/Plat/Shared/{0}.cshtml");


                options.ViewLocationExpanders.Add(new FeatureViewLocationExpander());
            }).AddSessionStateTempDataProvider();

            //.AddApplicationPart(typeof(GridEngineController).Assembly).AddControllersAsServices(); ;
            //services.AddMvc()
            // .AddApplicationPart(typeof(GridEngineController).Assembly).AddControllersAsServices();
            //services.AddMvc().AddApplicationPart(Assembly.Load(new AssemblyName("CPFrameWork.UIInterface")));
            //使用session
            services.AddSession();
            Services = services;
            //设置文件大小
            services.Configure <FormOptions>(options =>
            {
                //1个G
                options.MultipartBodyLengthLimit = 1024 * 1024 * 1024;
            });
            //自己加的
            CPLogHelper.StartupInit(services, Configuration);
            CPSystemHelper.StartupInit(services, Configuration);
            CPAutoNumHelper.StartupInit(services, Configuration);
            COOrgans.StartupInit(services, Configuration);
            CPFormEngine.StartupInit(services, Configuration);
            CPFormTemplate.StartupInit(services, Configuration);
            CPGridEngine.StartupInit(services, Configuration);
            CPTabEngine.StartupInit(services, Configuration);
            CPTreeEngine.StartupInit(services, Configuration);
            CPModuleEngine.StartupInit(services, Configuration);
            CPFlowTemplate.StartupInit(services, Configuration);
            CPFlowEngine.StartupInit(services, Configuration);
            CPMsgs.StartupInit(services, Configuration);
        }
예제 #2
0
 /// <summary>
 /// 初始化用户信息
 /// </summary>
 public void InitTaskDefaultRevUser(CPFlowInstance curIns, int CurUserId)
 {
     if (this.TaskRevUser == null || this.TaskRevUser.Count <= 0)
     {
         if (this.TaskRevUser == null)
         {
             this.TaskRevUser = new List <CPFlowPhaseTaskRevUser>();
         }
         bool bInit = false;
         #region 针对分支汇聚节点,当前面有办理用户选择了人时,后面的办理用户就直接默认选择了的用户,或者针对回退后再提交到这个节点时,默认也是取上次办理的用户
         List <CPFlowInstanceTask> taskCol = CPFlowEngine.Instance(CurUserId).GetInstanceTask(curIns.InsId, this.PhaseId);
         taskCol.ForEach(t => {
             if (this.TaskRevUser.Where(c => c.RevUserId.Equals(t.RevUserId.Value)).ToList().Count <= 0)
             {
                 CPFlowPhaseTaskRevUser u = new CPFlowPhaseTaskRevUser();
                 u.RevUserId         = t.RevUserId.Value;
                 u.RevUserName       = t.RevUserName;
                 u.RevSourceUserId   = u.RevUserId;
                 u.RevSourceUserName = u.RevUserName;
                 this.TaskRevUser.Add(u);
                 bInit = true;
             }
         });
         if (!bInit)
         {
             List <CPFlowInstanceLog> logCol = CPFlowEngine.Instance(CurUserId).GetInstanceLog(curIns.InsId, this.PhaseId);
             logCol.ForEach(t => {
                 if (this.TaskRevUser.Where(c => c.RevUserId.Equals(t.RevUserId.Value)).ToList().Count <= 0)
                 {
                     CPFlowPhaseTaskRevUser u = new CPFlowPhaseTaskRevUser();
                     u.RevUserId         = t.RevUserId.Value;
                     u.RevUserName       = t.RevUserName;
                     u.RevSourceUserId   = u.RevUserId;
                     u.RevSourceUserName = u.RevUserName;
                     this.TaskRevUser.Add(u);
                     bInit = true;
                 }
             });
         }
         #endregion
         //如果没有传入指定的用户,则取默认办理用户
         if (bInit == false && string.IsNullOrEmpty(this.DefaultUserIds) == false)
         {
             string[]   idCol      = this.DefaultUserIds.Split(',');
             string[]   nameCol    = this.DefaultUserNames.Split(',');
             List <int> addedIdCol = new List <int>();
             for (int i = 0; i < idCol.Length; i++)
             {
                 if (addedIdCol.Contains(int.Parse(idCol[i])) == false)
                 {
                     addedIdCol.Add(int.Parse(idCol[i]));
                     if (this.TaskRevUser.Where(c => c.RevUserId.Equals(int.Parse(idCol[i]))).ToList().Count <= 0)
                     {
                         this.TaskRevUser.Add(new CPFlowPhaseTaskRevUser()
                         {
                             RevUserId         = int.Parse(idCol[i]),
                             RevUserName       = nameCol[i],
                             RevSourceUserId   = int.Parse(idCol[i]),
                             RevSourceUserName = nameCol[i]
                         });
                     }
                 }
             }
         }
         if (bInit == false && string.IsNullOrEmpty(this.DefaultRoleIds) == false)
         {
             throw new Exception("未开发完");
         }
     }
 }