// 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); }
/// <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("未开发完"); } } }