Esempio n. 1
0
        public string RolersGrantsUpdate(GrantsModifyReq req)
        {
            GrantsModifyRes res = new GrantsModifyRes();

            if (Session["ID"] == null)
            {
                res.ReturnStatus = new ReturnStatus(ReturnCode.SESSION_TIMEOUT);
            }
            else
            {
                try
                {
                    Log("Req=" + JsonConvert.SerializeObject(req));
                    req.CUSER = Session["ID"].ToString();
                    req.MUSER = Session["ID"].ToString();
                    int i = new Grants("SCC").ByRolesUpdate(req);

                    res.ReturnStatus = new ReturnStatus(ReturnCode.SET_SUCCESS);
                }
                catch (Exception ex)
                {
                    Log("Err=" + ex.Message);
                    Log(ex.StackTrace);
                    res.ReturnStatus = new ReturnStatus(ReturnCode.SERIOUS_ERROR);
                }
            }
            var json = JsonConvert.SerializeObject(res);

            Log("Res=" + json);
            return(json);
        }
Esempio n. 2
0
        public int ByUsersUpdate(GrantsModifyReq req)
        {
            int           count = 0;
            DbConnection  conn  = null;
            DbTransaction trans = null;
            DbCommand     cmd   = null;
            string        sql   = null;

            try
            {
                conn = Db.CreateConnection();
                conn.Open();
                trans = conn.BeginTransaction();

                #region 刪除
                sql             = @"
DELETE GRANTS
    WHERE USERS_SN=@USERS_SN
";
                cmd             = conn.CreateCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = sql;
                Db.AddInParameter(cmd, "USERS_SN", DbType.Int32, req.USERS_SN[0]);
                count = Db.ExecuteNonQuery(cmd);
                #endregion

                #region 新增
                if (req.ROLES_SN != null)
                {
                    foreach (int sn in req.ROLES_SN)
                    {
                        sql             = @"
INSERT GRANTS (ROLES_SN,USERS_SN,CDATE,CUSER,MDATE,MUSER)
    VALUES (@ROLES_SN,@USERS_SN,GETDATE(),@CUSER,GETDATE(),@MUSER);
";
                        cmd             = conn.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        cmd.CommandText = sql;
                        Db.AddInParameter(cmd, "ROLES_SN", DbType.Int32, sn);
                        Db.AddInParameter(cmd, "USERS_SN", DbType.Int32, req.USERS_SN[0]);
                        Db.AddInParameter(cmd, "CUSER", DbType.String, req.CUSER);
                        Db.AddInParameter(cmd, "MUSER", DbType.String, req.MUSER);
                        count = Db.ExecuteNonQuery(cmd);
                    }
                }
                #endregion
                trans.Commit();
                return(count);
            }
            catch (Exception ex)
            {
                trans.Rollback();
                throw;
            }
            finally
            {
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }
        }