示例#1
0
        public void AfterSave(ICPFormAfterSaveEventArgs e)
        {
            string   UserPwd = e.GetFieldValue("CP_User", "UserPwd", 0);
            COOrgans organs  = COOrgans.Instance();

            UserPwd = organs.UserPwdEncrypt(UserPwd);
            COUser user = organs.GetUserById(int.Parse(e.PKValue), false, false);

            user.UserPwd = UserPwd;
            organs.UpdateUser(user);
        }
示例#2
0
        public bool SaveData(CPForm form, List <CPFormChildTable> childTableCol,
                             List <CPFormField> fieldCol, ref string pkValue, string formDataJSON, CPFormUseScene useScene, out string errorMsg)
        {
            bool b = this._CPFormRep.SaveData(form, childTableCol, fieldCol, ref pkValue, formDataJSON, out errorMsg);

            if (b)
            {
                dynamic formData = JsonConvert.DeserializeObject <dynamic>(formDataJSON);
                if (string.IsNullOrEmpty(useScene.FormSaveExeSql) == false)
                {
                    CPExpressionHelper.Instance.Add(CPFormExpression.DataRowKey, formData);
                    CPExpressionHelper.Instance.Add(CPFormExpression.PKValueKey, pkValue);
                    CPExpressionHelper.Instance.Add(CPFormExpression.MainTableKey, form.MainTableName);
                    CPExpressionHelper.Instance.Add(CPFormExpression.MainTablePKKey, form.PKFieldName);
                    string sql = CPExpressionHelper.Instance.RunCompile(useScene.FormSaveExeSql);
                    CPExpressionHelper.Instance.Remove(CPFormExpression.DataRowKey);
                    CPExpressionHelper.Instance.Remove(CPFormExpression.PKValueKey);
                    CPExpressionHelper.Instance.Remove(CPFormExpression.MainTableKey);
                    CPExpressionHelper.Instance.Remove(CPFormExpression.MainTablePKKey);
                    try
                    {
                        DbHelper _helper = new DbHelper(form.DbIns, CPAppContext.CurDbType());
                        _helper.ExecuteNonQuery(sql);
                    }
                    catch (Exception ex)
                    {
                        throw new Exception("表单保存后,执行扩展配置的SQL时出错,SQL语句为【" + sql + "】,错误信息如下 :" + ex.Message);
                    }
                }
                if (string.IsNullOrEmpty(useScene.FormSaveHandler) == false)
                {
                    string[] sArray = useScene.FormSaveHandler.Split(';');
                    for (int i = 0; i < sArray.Length; i++)
                    {
                        if (string.IsNullOrEmpty(sArray[i]))
                        {
                            continue;
                        }
                        try
                        {
                            ICPFormAfterSaveEventArgs e     = new ICPFormAfterSaveEventArgs(form, pkValue, formData);
                            ICPFormAfterSave          inter = Activator.CreateInstance(Type.GetType(sArray[i])) as ICPFormAfterSave;
                            inter.AfterSave(e);
                        }
                        catch (Exception ex)
                        {
                            throw new Exception("调用表单保存后扩展二次开发方法【" + sArray[i] + "】时出错,错误信息如下 :" + ex.Message);
                        }
                    }
                }
            }
            return(b);
        }
示例#3
0
        public void AfterSave(ICPFormAfterSaveEventArgs e)
        {
            string                  RoleId      = e.GetFieldValue("CP_Role", "RoleId", 0);
            string                  RoleUserIds = e.GetFieldValue("CP_Role", "RoleUserIds", 0);
            List <string>           col         = RoleUserIds.Split(',').ToList();
            List <CORoleUserRelate> relateCol   = new List <CORoleUserRelate>();

            col.ForEach(t => {
                relateCol.Add(new CORoleUserRelate()
                {
                    RoleId = int.Parse(RoleId), UserId = int.Parse(t)
                });
            });
            COOrgans.Instance().InitRoleUsers(int.Parse(RoleId), relateCol);
        }
示例#4
0
 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);
         }
     }
 }
示例#5
0
        public void AfterSave(ICPFormAfterSaveEventArgs e)
        {
            string DepId            = e.GetFieldValue("CP_Dep", "DepId", 0);
            string UserIds          = e.GetFieldValue("CP_Dep", "UserIds", 0);
            string DepMainLeaderId  = e.GetFieldValue("CP_Dep", "DepMainLeaderId", 0);
            string DepViceLeaderIds = e.GetFieldValue("CP_Dep", "DepViceLeaderIds", 0);
            string DepSupervisorId  = e.GetFieldValue("CP_Dep", "DepSupervisorId", 0);

            UserIds += "," + DepMainLeaderId + "," + DepViceLeaderIds + "," + DepSupervisorId;
            List <string>          col          = UserIds.Split(',').ToList();
            List <CODepUserRelate> relateCol    = new List <CODepUserRelate>();
            List <CODepUserRelate> oldRelateCol = COOrgans.Instance().GetDepUserRelate(int.Parse(DepId));
            int showOrder = 10;

            if (oldRelateCol.Count > 0)
            {
                oldRelateCol = oldRelateCol.OrderByDescending(t => t.ShowOrder).ToList();
                showOrder    = oldRelateCol[0].ShowOrder + 10;
            }
            col.ForEach(t => {
                if (string.IsNullOrEmpty(t) == false)
                {
                    List <CODepUserRelate> tmpCol = oldRelateCol.Where(c => c.UserId.Equals(int.Parse(t))).ToList();
                    if (tmpCol.Count > 0)
                    {
                        relateCol.Add(new CODepUserRelate()
                        {
                            DepId = int.Parse(DepId), UserId = int.Parse(t), ShowOrder = tmpCol[0].ShowOrder
                        });
                    }
                    else
                    {
                        relateCol.Add(new CODepUserRelate()
                        {
                            DepId = int.Parse(DepId), UserId = int.Parse(t), ShowOrder = showOrder
                        });
                    }
                }
            });
            COOrgans.Instance().InitDepUsers(int.Parse(DepId), relateCol);
        }