public FileResult DownloadFormConfig(string FormIds, int CurUserId, string CurUserIden) { base.SetHeader(); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); CPWebApiBaseReturnEntity re = new CPWebApiBaseReturnEntity(); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { throw new Exception("系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"); } FormIds = FormIds.Replace("@", ","); FormIds = CPAppContext.FormatSqlPara(FormIds); List <int> col = new List <int>(); FormIds.Split(',').ToList().ForEach(t => { if (string.IsNullOrEmpty(t) == false) { col.Add(int.Parse(t)); } }); string sXml = CPFormTemplate.Instance(CurUserId).GetFormConfigXml(col); byte[] byteArray = System.Text.Encoding.Default.GetBytes(sXml); return(File(byteArray, "application/x-msdownload", "表单配置.CPXml")); }
public GetFormFieldByViewIdReturn GetFormViewByViewId(int ViewId , int CurUserId, string CurUserIden ) { base.SetHeader(); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); GetFormFieldByViewIdReturn re = new GetFormFieldByViewIdReturn(); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { re.FieldCol = CPFormTemplate.Instance(CurUserId).GetFormFieldByViewId(ViewId); re.View = CPFormTemplate.Instance(CurUserId).GetFormViewByViewId(ViewId, false); re.Result = true; return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
//http://localhost:9000/CPSite/api/FormEngine/InitFormDefaultView?FormId=1&CurUserId=1&CurUserIden=E0A04F94-90D5-4C2A-8C9D-836813F73DC4 public CPWebApiBaseReturnEntity InitFormDefaultViewForEditor(int FormId, int CurUserId, string CurUserIden) { base.SetHeader(); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); CPWebApiBaseReturnEntity re = new CPWebApiBaseReturnEntity(); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { re.Result = CPFormTemplate.Instance(CurUserId).InitFormDefaultViewForEditor(FormId); if (re.Result == false) { re.ErrorMsg = "自动初始化一个默认视图时出错!"; } return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
//http://localhost:9000/CPSite/api/FormEngine/SynFormFieldInfo?FormId=1&CurUserId=1&CurUserIden=E0A04F94-90D5-4C2A-8C9D-836813F73DC4 public CPWebApiBaseReturnEntity SynFormFieldInfo(int FormId, int CurUserId, string CurUserIden) { base.SetHeader(); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); CPWebApiBaseReturnEntity re = new CPWebApiBaseReturnEntity(); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { re.Result = CPFormTemplate.Instance(CurUserId).SynFieldFromDb(FormId); if (re.Result == false) { re.ErrorMsg = "从数据库同步字段信息时出错了!"; } return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
public CPWebApiBaseReturnEntity SynFormConfig(int TargetSysId, bool IsCreateNew, int CurUserId, string CurUserIden) { base.SetHeader(); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); CPWebApiBaseReturnEntity re = new CPWebApiBaseReturnEntity(); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { var files = Request.Form.Files; foreach (var file in files) { // var filename = ContentDispositionHeaderValue // .Parse(file.ContentDisposition) // .FileName // .Trim('"'); //// filename = _FilePath + $@"\{filename}"; // size += file.Length; byte[] bData = null; using (var fileStream = file.OpenReadStream()) using (var ms = new MemoryStream()) { fileStream.CopyTo(ms); bData = ms.ToArray(); //var fileBytes = ms.ToArray(); //string s = Convert.ToBase64String(fileBytes); //// act on the Base64 data } if (bData != null) { if (IsCreateNew) { re.Result = CPFormTemplate.Instance(CurUserId).InitFormFromConfigXml(TargetSysId, bData); } else { re.Result = CPFormTemplate.Instance(CurUserId).SyncFormFromConfigXml(TargetSysId, bData); } } } re.Result = true; return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
public void AfterSave(ICPFormAfterSaveEventArgs e) { if (e.IsAdd) { int formId = Convert.ToInt32(e.GetFieldValue("Form_Main", "FormId", 0)); int curUserId = Convert.ToInt32(CPExpressionHelper.Instance.RunCompile("${CPUser.UserId()}")); bool b = CPFormTemplate.Instance(curUserId).SynFieldFromDb(formId); if (b) { b = CPFormTemplate.Instance(curUserId).InitFormDefaultView(formId); } if (b) { b = CPFormTemplate.Instance(curUserId).AddDefaultScene(formId); } } }
public CPWebApiBaseReturnEntity SaveViewHTML([FromBody] SaveViewHTMLInput input) { base.SetHeader(); GetFormFieldByViewIdReturn re = new GetFormFieldByViewIdReturn(); if (this.CheckUserIden(input.CurUserId, input.CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { re.Result = CPFormTemplate.Instance(input.CurUserId).SaveViewHTML(input.ViewId, input.ViewHTML); return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
public SaveFormDataReturn SaveFormData([FromBody] SaveFormDataInput input) { base.SetHeader(); SaveFormDataReturn re = new SaveFormDataReturn(); if (this.CheckUserIden(input.CurUserId, input.CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } try { CPForm form = CPFormTemplate.Instance(input.CurUserId).GetForm(input.FormCode, true, true, false, false, false, false); string errormsg; string pkValues = input.PKValue; CPFormUseScene useScene = CPFormTemplate.Instance(input.CurUserId).GetFormUseScene(input.SceneCode, false); re.Result = CPFormEngine.Instance(input.CurUserId).SaveData(form, form.ChildTableCol, form.FieldCol, ref pkValues, input.FormDataJSON, useScene, out errormsg); if (re.Result == false) { re.ErrorMsg = errormsg; } else { re.PKValues = pkValues; } return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }
public GetFormInfoReturn GetFormInfo(string FormCode, string SceneCode, string ViewCode, string InitGroupCode, string RightGroupCode, string PKValues , int CurUserId, string CurUserIden, string DeviceType = "1", bool IsView = false ) { GetFormInfoReturn re = new GetFormInfoReturn(); try { base.SetHeader(); FormCode = CPAppContext.FormatSqlPara(FormCode); SceneCode = CPAppContext.FormatSqlPara(SceneCode); ViewCode = CPAppContext.FormatSqlPara(ViewCode); InitGroupCode = CPAppContext.FormatSqlPara(InitGroupCode); RightGroupCode = CPAppContext.FormatSqlPara(RightGroupCode); PKValues = CPAppContext.FormatSqlPara(PKValues); CurUserIden = CPAppContext.FormatSqlPara(CurUserIden); DeviceType = CPAppContext.FormatSqlPara(DeviceType); if (this.CheckUserIden(CurUserId, CurUserIden) == false) { re.Result = false; re.ErrorMsg = "系统检测到非法获取数据,请传入正确的用户会话Key与用户Id参数!"; return(re); } CPForm form = CPFormTemplate.Instance(CurUserId).GetForm(FormCode, true, true, false, false, false, true); form.ViewCol = new List <CPFormView>(); form.ViewCol.Add(CPFormTemplate.Instance(CurUserId).GetFormView(ViewCode, true)); //re.Form = EmitMapper.ObjectMapperManager.DefaultInstance.GetMapper<CPForm, CPFormClient>() // .Map(form); Mapper.Initialize(cfg => { cfg.CreateMap <CPForm, CPFormClient>(); }); re.Form = AutoMapper.Mapper.Map <CPFormClient>(form); CPFormGroup rightGroup = CPFormTemplate.Instance(CurUserId).GetFormRightGroup(RightGroupCode, true); // re.FieldRightCol = (rightGroup == null ? null : rightGroup.FieldRightCol); CPFormGroup initGroup = CPFormTemplate.Instance(CurUserId).GetFormInitGroup(InitGroupCode, true); re.Form.FieldInitCol = (initGroup == null ? null : initGroup.FieldInitCol); re.ViewHTML = CPFormTemplate.Instance(CurUserId).FormatFormViewHtml(form, form.FieldCol, form.ViewCol[0], (rightGroup == null ? null : rightGroup.FieldRightCol), CPEnum.ConvertDeviceTypeEnum(int.Parse(DeviceType)), true, IsView); //获取应用场景 re.Form.UseSceneCol = new List <CPFormUseScene>(); re.Form.UseSceneCol.Add(CPFormTemplate.Instance(CurUserId).GetFormUseScene(SceneCode, true)); re.Form.UseSceneCol.ForEach(t => { t.FormSavedInfo = CPExpressionHelper.Instance.RunCompile(t.FormSavedInfo); //处理按钮是否显示 List <CPFormUseSceneFunc> funcCol = new List <CPFormUseSceneFunc>(); t.FuncCol.ForEach(func => { if (func.FuncIsShowInView == CPFormEnum.FuncIsShowInViewEnum.ShowAll) { funcCol.Add(func); } else if (func.FuncIsShowInView == CPFormEnum.FuncIsShowInViewEnum.OnlyWriteShow) { if (IsView == false) { funcCol.Add(func); } } else if (func.FuncIsShowInView == CPFormEnum.FuncIsShowInViewEnum.OnlyReadShow) { if (IsView == true) { funcCol.Add(func); } } }); #region 添加修改配置按钮 if (re.Form.SysId.HasValue && re.Form.SysId.Value.Equals(CPAppContext.InnerSysId) == false) { string UserAdminSysIds = CPExpressionHelper.Instance.RunCompile("${CPUser.UserAdminSysIds()}"); if (UserAdminSysIds.Split(',').ToList().Contains(re.Form.SysId.ToString())) { CPFormUseSceneFunc func1 = new CPFormUseSceneFunc(); func1.FuncTitle = "修改配置"; func1.ShowOrder = 999999; func1.FuncIcon = "icon-shezhi1"; func1.IsControlByRight = false; func1.FuncIsShowInView = CPFormEnum.FuncIsShowInViewEnum.ShowAll; func1.FuncExeJS = "CPFormUpdateConfig(" + re.Form.Id + ")"; func1.SceneID = t.Id; funcCol.Add(func1); } } #endregion t.FuncCol = funcCol; t.FuncCol = t.FuncCol.OrderBy(c => c.ShowOrder).ToList(); }); //读取真实数据 re.FormDataJSON = CPFormEngine.Instance(CurUserId).GetFormDataJSON(form, form.ChildTableCol, form.FieldCol, re.Form.FieldInitCol, PKValues, re.Form.UseSceneCol[0]); re.Result = true; return(re); } catch (Exception ex) { re.Result = false; re.ErrorMsg = ex.Message.ToString(); return(re); } }