public override object get(string id)
        {
            var up = DB.NewDefaultDBUnitParameter<SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where : {
		LoginID:{0}
}
}", id));

            if (re.QueryTable.RowLength <= 0)
            {
                return null;
            }
            else
            {
                dynamic obj = re.QueryData<FrameDLRObject>()[0];
                return new
                {
                    uid=obj.UID,
                    id = obj.LoginID,
                    name = obj.LoginName,
                    remark = obj.remark
                };
            }
        }
        public override object get(string id)
        {
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'RoleInfo',
    $where:{
        RoleUID:{0}
    }
}", id));

            var list = re.QueryData <FrameDLRObject>();

            if (list.Any())
            {
                dynamic t = list[0];
                return(new
                {
                    Id = t.RoleUID,
                    Name = t.RoleName,
                    Remark = t.Remark
                });
            }
            else
            {
                return(null);
            }
        }
Exemple #3
0
        object delete(LogicData arg)
        {
            var rtn = FrameDLRObject.CreateInstance(@"{
issuccess:true,
msg:'操作成功'
}");
            var no  = ComFunc.nvl(arg["no"]);

            BeginTrans();
            var up = DB.NewDBUnitParameter();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'FunctionInfo',
$where : {
		FunctionNo:{0}
}
}", no));

            if (re.QueryTable.RowLength <= 0)
            {
                rtn.issuccess = false;
                rtn.msg       = "待删除的功能不存在";
                return(rtn);
            }
            up.SetValue("no", no);
            DB.NonQuery <FunctionUnit>(up, "delete");

            CommitTrans();
            return(rtn);
        }
Exemple #4
0
            /// <summary>
            /// 创建Table
            /// </summary>
            /// <param name="up"></param>
            /// <param name="toTable"></param>
            /// <param name="columns"></param>
            public virtual void CreateTable(UnitParameter up, string toTable, params TableColumn[] columns)
            {
                if (columns == null || columns.Length <= 0)
                {
                    return;
                }
                FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'CreateTable',
$table : {0}
}", FrameDLRFlags.SensitiveCase, toTable);
                var            pk      = new List <object>();

                foreach (var c in columns)
                {
                    FrameDLRObject cobj = FrameDLRObject.CreateInstance(FrameDLRFlags.SensitiveCase);
                    cobj.SetValue("$datatype", c.DataType);
                    cobj.SetValue("$precision", c.Precision);
                    cobj.SetValue("$scale", c.Scale);
                    cobj.SetValue("$default", c.Default);
                    cobj.SetValue("$isnull", c.IsPK ? false : c.AllowNull);
                    if (c.IsPK)
                    {
                        pk.Add(c.Name);
                    }
                    express.SetValue(c.Name, cobj);
                }

                express.SetValue("$pk", pk);
                Excute(up, express);
            }
Exemple #5
0
        public override object get(string no)
        {
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'FunctionInfo',
    $where:{
        FunctionNo:{0}
    }
}", no));

            var list = re.QueryData <FrameDLRObject>();

            if (list.Count() > 0)
            {
                dynamic t = list[0];
                return(new
                {
                    No = t.FunctionNo,
                    Name = t.FunctionName,
                    Level = t.FunctionLevel,
                    Url = t.Url,
                    IsMenu = t.IsMenu,
                    Remark = t.Remark
                });
            }
            else
            {
                return(null);
            }
        }
        public override bool delete(string id)
        {
            var up = DB.NewDefaultDBUnitParameter<SqliteAccess>();

            BeginTrans();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where : {
		LoginID:{0}
}
}", id));
            var uid = re.QueryTable.RowLength > 0 ? ComFunc.nvl(re.QueryTable[0, "UID"]) : "";

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_LoginRole',
$where:{
        LoginUID:{0}
    }
}", uid));

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'LoginInfo',
$where:{
        LoginID:{0}
    }
}", id));
            CommitTrans();
            SetRefreshCacheRoute($"/user/{id}");
            return true;
        }
        public new bool delete(string id)
        {
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();

            BeginTrans();

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_RoleFunction',
$where:{
        RoleUID:{0}
    }
}", id));
            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_LoginRole',
$where:{
        RoleUID:{0}
    }
}", id));

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'RoleInfo',
$where:{
        RoleUID:{0}
    }
}", id));
            CommitTrans();
            SetRefreshCacheRoute($"/role/{id}", "/role");
            return(true);
        }
        public new List<FrameDLRObject> get()
        {
            var up = DB.NewDefaultDBUnitParameter<SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
}"));

            if (re.QueryTable.RowLength <= 0)
            {
                return null;
            }
            else
            {
                var l = from t in re.QueryData<FrameDLRObject>()
                        select new
                        {
                            uid = t.UID,
                            id = t.LoginID,
                            name = t.LoginName,
                            remark = t.remark
                        };
                return l.ToList();
            }
        }
Exemple #9
0
        public override bool delete(string no)
        {
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();

            BeginTrans();

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_RoleFunction',
$where:{
        FunctionNo:{0}
    }
}", no));

            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'FunctionInfo',
$where:{
        FunctionNo:{0}
    }
}", no));

            CommitTrans();
            SetRefreshCacheRoute($"/functions/{no}");
            return(true);
        }
Exemple #10
0
        public static void Test()
        {
            //JsEngineSwitcher engineSwitcher = JsEngineSwitcher.Instance;
            //IJsEngine js = null;
            //engineSwitcher.EngineFactories
            //    .AddEFFCChakraCore();

            //engineSwitcher.DefaultEngineName = EFFCChakraCoreJsEngine.EngineName;

            //js = engineSwitcher.CreateDefaultEngine();
            //js.EmbedHostObject("f_p_0", "ych");
            //js.EmbedHostObject("f_p_1", 22);
            //js.Execute($"var js ={{name:f_p_0,age:f_p_1}};");
            //var re = js.GetVariableValue("js");
            //var fec = FrameExposedObject.From(re.GetType());

            //js.Dispose();
            var md5 = ComFunc.getMD5_String(ComFunc.getMD5_String("sa").ToLower() + "8128").ToLower();
            //var serializer = JsonSerializer.Create();
            var json   = "{name:'ych',age:22,schools:[{name:'小学',address:''},{name:'中学',address:''}],birth:{0}}";
            var dobj   = FrameDLRObject.CreateInstanceFromat(json, DateTime.Now);
            var jarray = "[{name:'小学',address:''},{name:'中学',address:''}]";
            var aobj   = FrameDLRObject.CreateArray(jarray);

            Console.WriteLine(dobj.tojsonstring());
        }
Exemple #11
0
        public object get(dynamic parent_info)
        {
            object rtn = null;

            //该功能不需要缓存
            SetCacheEnable(false);
            if (IsValidBy("缺少参数", () => parent_info != null) &&
                IsValidBy("缺少参数", () => !(parent_info is FrameDLRObject)))
            {
                var loginuid          = parent_info.uid;
                var up                = DB.NewDefaultDBUnitParameter <SqliteAccess>();
                UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	'a.FunctionNo':true,
	'a.FunctionName':true,
	'a.FunctionLevel':true,
	'a.IsMenu':true,
	'a.ParentNo':true,
	'a.Url':true,
	$table: {
		FunctionInfo: 'a',
		Map_RoleFunction: {
			$as: 'b',
			$join: {
				$by: 'a',
				$on: {
					'b.FunctionNo': '#sql:a.FunctionNo'
				}
			}
		},
		Map_LoginRole:{
			$as: 'c',
			$join: {
				$by: 'b',
				$on: {
					'c.RoleUID': '#sql:b.RoleUID'
				}
			}
		}
	},
	$where: {
		'c.LoginUID': {0},
        'a.IsMenu':{1}
	}
}", loginuid, "1"));

                var list = re.QueryData <FrameDLRObject>();

                /*var level0 = from t in list
                 *           where t.FunctionLevel == 0
                 *           select new { No = t.FunctionNo, Name = t.FunctionName, Level = t.FunctionLevel, Url = t.Url, IsMenu = t.IsMenu, Sub = BuildFunctionTree(t, list) };
                 */

                rtn = list.ToList();
            }

            return(rtn);
        }
Exemple #12
0
            /// <summary>
            /// 直接删除Table
            /// </summary>
            /// <param name="up"></param>
            /// <param name="toTable"></param>
            public virtual void DropTable(UnitParameter up, string toTable)
            {
                FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'DropTable',
$table : {0}
}", FrameDLRFlags.SensitiveCase, toTable);

                Excute(up, express);
            }
Exemple #13
0
        object map(LogicData arg)
        {
            var rtn       = FrameDLRObject.CreateInstance(@"{
issuccess:true,
msg:'操作成功'
}");
            var uid       = ComFunc.nvl(arg["roleuid"]);
            var functions = ComFunc.nvl(arg["functions"]);

            if (uid == "")
            {
                rtn.issuccess = false;
                rtn.msg       = "缺少角色参数";
                return(rtn);
            }
            BeginTrans();
            var            up      = DB.NewDBUnitParameter();
            FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'RoleInfo',
$where:{
    RoleUID:{0}
}
}", uid);
            var            re      = DB.Excute(up, express);

            if (re.QueryTable.RowLength <= 0)
            {
                rtn.issuccess = false;
                rtn.msg       = "角色资料不存在";
                return(rtn);
            }

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_RoleFunction',
$where:{
    RoleUID:{0}
}
}", uid);
            DB.Excute(up, express);

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'Map_RoleFunction',
RoleUID:{0}
}", uid);
            foreach (var s in functions.Split(','))
            {
                express.SetValue("FunctionNo", s);
                express.SetValue("$acttype", "Insert");
                DB.Excute(up, express);
            }
            CommitTrans();
            return(rtn);
        }
Exemple #14
0
            /// <summary>
            /// Copy Table
            /// </summary>
            /// <param name="up"></param>
            /// <param name="from_table"></param>
            /// <param name="to_Table"></param>
            /// <param name="with_data"></param>
            /// <param name="is_log">是否记录log</param>
            public virtual void CopyTable(UnitParameter up, string from_table, string to_Table, bool with_data = false, bool is_log = false)
            {
                FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'CopyTable',
$table : {0},
$to_table:{1},
$with_data:{2}
}", FrameDLRFlags.SensitiveCase, from_table, to_Table, with_data);

                Excute(up, express, is_log);
            }
Exemple #15
0
        object saveRoleMap(LogicData arg)
        {
            var rtn   = FrameDLRObject.CreateInstance(@"{
issuccess:true,
msg:'操作成功'
}");
            var uid   = ComFunc.nvl(arg["uid"]);
            var roles = ComFunc.nvl(arg["roles"]);

            if (uid == "")
            {
                return(FrameDLRObject.CreateInstance(false, "缺少角色参数"));
            }

            BeginTrans();
            var            up      = DB.NewDBUnitParameter();
            FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where:{
    UID:{0}
}
}", uid);
            var            re      = DB.Excute(up, express);

            if (re.QueryTable.RowLength <= 0)
            {
                return(FrameDLRObject.CreateInstance(false, "用户资料不存在"));
            }

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : 'Map_LoginRole',
$where:{
    LoginUID:{0}
}
}", uid);
            DB.Excute(up, express);

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'Map_LoginRole',
LoginUID:{0}
}", uid);
            foreach (var s in roles.Split(','))
            {
                express.SetValue("RoleUID", s);
                express.SetValue("$acttype", "Insert");
                DB.Excute(up, express);
            }
            CommitTrans();
            return(rtn);
        }
Exemple #16
0
            /// <summary>
            /// 快速执行建议Delete操作
            /// </summary>
            /// <param name="p"></param>
            /// <param name="toTable"></param>
            /// <param name="where"></param>
            /// <param name="islog"></param>
            /// <returns></returns>
            public virtual UnitDataCollection QuickDelete(UnitParameter p, string toTable, object where, bool islog = false)
            {
                FrameDLRObject express      = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Delete',
$table : {0}
}", toTable);
                FrameDLRObject whereexpress = FrameDLRObject.CreateInstance(where);

                if (whereexpress != null && whereexpress.Items.Count > 0)
                {
                    express.SetValue("$where", whereexpress);
                }
                return(Excute(p, express));
            }
Exemple #17
0
            /// <summary>
            /// 快速执行简易Insert操作
            /// </summary>
            /// <param name="p"></param>
            /// <param name="toTable"></param>
            /// <param name="data"></param>
            /// <param name="islog"></param>
            /// <returns></returns>
            public virtual UnitDataCollection QuickInsert(UnitParameter p, string toTable, object data, bool islog = false)
            {
                FrameDLRObject express     = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : {0}
}", toTable);
                FrameDLRObject dataexpress = FrameDLRObject.CreateInstance(data);

                foreach (var item in dataexpress.Items)
                {
                    express.SetValue(item.Key, item.Value);
                }

                return(Excute(p, express, islog));
            }
Exemple #18
0
        public override object post()
        {
            object rtn      = null;
            var    up       = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            string no       = ComFunc.nvl(PostDataD.no);
            string name     = ComFunc.nvl(PostDataD.name);
            int    level    = PostDataD.level;
            string url      = ComFunc.nvl(PostDataD.url);
            string parentno = ComFunc.nvl(PostDataD.parentno);
            string ismenu   = ComFunc.nvl(PostDataD.ismenu);
            string remark   = ComFunc.nvl(PostDataD.remark);

            BeginTrans();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'FunctionInfo',
	$where: {
        $or:[
            FunctionNo: {0},
            FunctionName:{1}
        ]
		
	}
}", no, name));

            if (IsValidBy("功能已存在", () => re.QueryTable.RowLength <= 0))
            {
                DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'FunctionInfo',
FunctionNo:{0},
FunctionName:{1},
ParentNo:{2},
Url:{3},
IsMenu:{4},
Remark:{5},
CreateTime:{6},
FunctionLevel:{7}
}", no, name, parentno, url, (ismenu == "true" || ismenu == "1") ? 1 : 0, remark, DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"), level));

                rtn = new
                {
                    no = no
                };
            }

            return(rtn);
        }
        public new List <FrameDLRObject> get()
        {
            SetCacheEnable(false);
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'RoleInfo',
}"));

            var list   = re.QueryData <FrameDLRObject>();
            var level0 = from t in list
                         select new { Id = t.RoleUID, Name = t.RoleName, Remark = t.Remark };


            return(level0.ToList());
        }
Exemple #20
0
        object add(LogicData arg)
        {
            var rtn      = FrameDLRObject.CreateInstance(@"{
issuccess:true,
msg:'操作成功'
}");
            var uid      = Guid.NewGuid().ToString();
            var rolename = ComFunc.nvl(arg["rolename"]);
            var isactive = ComFunc.nvl(arg["isactive"]);
            var remark   = ComFunc.nvl(arg["remark"]);
            var up       = DB.NewDBUnitParameter();


            BeginTrans();
            FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'RoleInfo',
$where:{
    RoleName:{0}
}
}", rolename);
            var            re      = DB.Excute(up, express);

            if (re.QueryTable.RowLength > 0)
            {
                rtn.issuccess = false;
                rtn.msg       = "角色已经存在";
                return(rtn);
            }

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'RoleInfo',
RoleUID:{0},
RoleName:{1},
Remark:{2},
CreateTime:{3},
IsActive:{4}
}", uid, rolename, remark, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), isactive == "true" ? 1 : 0);

            DB.Excute(up, express);

            CommitTrans();

            return(rtn);
        }
Exemple #21
0
        public new List <FrameDLRObject> get()
        {
            SetCacheEnable(false);
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'FunctionInfo',
}"));

            var list   = re.QueryData <FrameDLRObject>();
            var level0 = from t in list
                         where t.FunctionLevel == 0
                         select new { No = t.FunctionNo, Name = t.FunctionName, Level = t.FunctionLevel, Url = t.Url, IsMenu = t.IsMenu, Remark = t.Remark, Sub = BuildFunctionTree4GetList(t, list) };


            return(level0.ToList());
        }
Exemple #22
0
        public new object patch(string no)
        {
            object rtn    = null;
            var    up     = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            var    name   = ComFunc.nvl(PostDataD.name);
            var    url    = ComFunc.nvl(PostDataD.url);
            var    ismenu = ComFunc.nvl(PostDataD.ismenu);
            var    remark = ComFunc.nvl(PostDataD.remark);

            BeginTrans();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'FunctionInfo',
	$where: {
        $or:[
            FunctionNo: {0},
            FunctionName:{1}
        ]
		
	}
}", no, name));

            if (IsValidBy("功能已存在", () => re.QueryTable.RowLength <= 0))
            {
                DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Update',
$table : 'FunctionInfo',
FunctionName:{1},
Url:{2},
IsMenu:{3},
Remark:{4},
$where:{
        FunctionNo:{0}
    }
}", no, name, url, (ismenu == "true" || ismenu == "1") ? 1 : 0, remark));

                rtn = new
                {
                    no = no
                };
            }
            CommitTrans();
            SetRefreshCacheRoute($"/functions/{no}");
            return(rtn);
        }
Exemple #23
0
        object add(LogicData arg)
        {
            var uid       = Guid.NewGuid().ToString();
            var loginid   = ComFunc.nvl(arg["loginid"]);
            var loginname = ComFunc.nvl(arg["loginname"]);
            var pass      = ComFunc.nvl(arg["pass"]);
            var isactive  = ComFunc.nvl(arg["isactive"]);
            var remark    = ComFunc.nvl(arg["remark"]);
            var up        = DB.NewDBUnitParameter();


            BeginTrans();
            FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where:{
    LoginID:{0}
}
}", loginid);
            var            re      = DB.Excute(up, express);

            if (re.QueryTable.RowLength > 0)
            {
                return(FrameDLRObject.CreateInstance(false, "登录账号已经存在"));
            }

            express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'LoginInfo',
UID:{0},
LoginID:{1},
LoginPass:{2},
LoginName:{3},
Remark:{4},
IsActive:{5}
}", uid, loginid, pass, loginname, remark, isactive);

            DB.Excute(up, express);

            CommitTrans();

            return(FrameDLRObject.CreateInstance(true, "操作成功"));
        }
Exemple #24
0
        object list(LogicData arg)
        {
            var id = ComFunc.nvl(arg["filter"]);
            var up = DB.NewDBUnitParameter();

            up.SetValue("id", id);
            FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'QueryByPage',
$table : 'LoginInfo'
}");

            if (id != "")
            {
                express.SetValue("$where", FrameDLRObject.CreateInstanceFromat(@"{
	$or:[
        {
            LoginID:{
                    $like:{0}
                }
        },
        {
            LoginName:{
                    $like:{0}
                }
        }
    ]
}", id));
            }

            UnitDataCollection re = DB.Excute(up, express);
            var list = re.QueryData <FrameDLRObject>();
            var rtn  = FrameDLRObject.CreateInstance(true, "");

            rtn.data           = list;
            rtn.current_page   = re.CurrentPage;
            rtn.count_per_page = re.Count_Of_OnePage;
            rtn.to_page        = re.CurrentPage;
            rtn.total_page     = re.TotalPage;
            rtn.total_row      = re.TotalRow;

            return(rtn);
        }
        public override object post()
        {
            object rtn = null;

            var id = ComFunc.nvl(PostDataD.id);
            var pass = ComFunc.nvl(PostDataD.pw);
            var name = ComFunc.nvl(PostDataD.name);
            var remark = ComFunc.nvl(PostDataD.remark);
            BeginTrans();
            var up = DB.NewDefaultDBUnitParameter<SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where : {
		LoginID:{0}
}
}", id));
            if(IsValidBy("账号已经存在", ()=> !(re.QueryTable.RowLength > 0)))
            {
                var uid = Guid.NewGuid().ToString();
                DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'LoginInfo',
UID:{0},
LoginID:{1},
LoginPass:{2},
LoginName:{3},
Remark:{4},
IsActive:'true'
}", uid, id, pass, name, remark));

                rtn = new
                {
                    uid = uid,
                    id = id
                };

            }
            CommitTrans();
            return rtn;
        }
        protected override bool DoLogin(string id)
        {
            var rtn  = true;
            var pass = ComFunc.nvl(PostDataD.pw);

            BeginTrans();
            //登录账号判断
            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            var re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where : {
		LoginID:{0},
        IsActive:'true'
}
}", id));

            if (re.QueryTable.RowLength <= 0)
            {
                return(false);
            }
            if (ComFunc.nvl(re.QueryTable[0, "LoginPass"]) != pass)
            {
                return(false);
            }

            up.SetValue("LastLoginTime", DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"));
            DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Update',
$table : 'LoginInfo',
$where : {
		LoginID:{0}
},
LastLoginTime:{1}
}", id, DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")));


            CommitTrans();
            return(rtn);
        }
        public object patch(string id)
        {
            object rtn = null;

            id = ComFunc.nvl(id);
            var name = ComFunc.nvl(PostDataD.name);
            var remark = ComFunc.nvl(PostDataD.remark);

            BeginTrans();
            var up = DB.NewDefaultDBUnitParameter<SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Query',
$table : 'LoginInfo',
$where : {
		LoginID:{0}
}
}", id));
            if (IsValidBy("账号不存在", () => re.QueryTable.RowLength > 0))
            {
                DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Update',
$table : 'LoginInfo',
LoginName:{1},
Remark:{2},
$where:{
    LoginID:{0}
}
}", id, name, remark));

                rtn = new
                {
                    id = id
                };

            }
            CommitTrans();
            SetRefreshCacheRoute($"/user/{id}");
            return rtn;
        }
        public object get(dynamic parent_info)
        {
            SetCacheEnable(false);
            if (parent_info == null)
            {
                return(null);
            }

            var up = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"
{
	$acttype: 'Query',
	'a.RoleUID':true,
	'a.RoleName':true,
	'a.Remark':true,
	$table: {
		RoleInfo: 'a',
		Map_LoginRole: {
			$as: 'b',
			$join: {
				$by: 'a',
				$on: {
					'b.RoleUID': '#sql:a.RoleUID'
				}
			}
		}
	},
	$where: {
		'b.LoginUID': {0},
        'a.IsActive':{1}
	}
}", parent_info.uid, "1"));

            var l = from t in re.QueryData <FrameDLRObject>()
                    select new { UID = t.RoleUID, Name = t.RoleName, Remark = t.Remark };

            return(l.ToList());
        }
        public override object post()
        {
            object rtn    = null;
            var    up     = DB.NewDefaultDBUnitParameter <SqliteAccess>();
            string name   = ComFunc.nvl(PostDataD.name);
            string remark = ComFunc.nvl(PostDataD.remark);

            BeginTrans();
            UnitDataCollection re = DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
	$acttype: 'Query',
	$table: 'RoleInfo',
	$where: {
        RoleName:{0}
	}
}", name));

            if (IsValidBy("角色已存在", () => re.QueryTable.RowLength <= 0))
            {
                var uid = Guid.NewGuid().ToString();
                DB.Excute(up, FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'Insert',
$table : 'RoleInfo',
RoleUID:{0},
RoleName:{1},
Remark:{2},
CreateTime:{3},
IsActive:{4}
}", uid, name, remark, DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"), "1"));

                rtn = new
                {
                    id = uid
                };
            }
            CommitTrans();

            return(rtn);
        }
Exemple #30
0
            /// <summary>
            /// Copy Data
            /// </summary>
            /// <param name="up"></param>
            /// <param name="from_table">来源表</param>
            /// <param name="to_Table">目标表</param>
            /// <param name="if_not_exists">为true的时候添加not exists的where条件,否则不过滤,注意:该过滤条件不是根据每笔资料进行比对的,而是根据目标表是否存在数据来作为判定依据,因此会出现只要目标表存在资料,无论与来源数据是否相同都不会执行写入操作</param>
            /// <param name="columns">要copy的栏位,指定来源表的栏位,值为目标表的栏位,格式必须为{'from_column':'to_column'}</param>
            /// <param name="where">条件表达式,与Query指令的表达式一样的格式,该表达式用于过滤来源表</param>
            /// <param name="is_log">是否记录log</param>
            public virtual void CopyData(UnitParameter up, string from_table, string to_Table, bool if_not_exists = false, object columns = null, object where = null, bool is_log = false)
            {
                FrameDLRObject express = FrameDLRObject.CreateInstanceFromat(@"{
$acttype : 'CopyData',
$table : {0},
$to_table:{1},
$if_not_exists:{2}
}", FrameDLRFlags.SensitiveCase, from_table, to_Table, if_not_exists);

                if (columns != null)
                {
                    FrameDLRObject columnexpress = FrameDLRObject.CreateInstance(columns, FrameDLRFlags.SensitiveCase);
                    foreach (var item in columnexpress.Items)
                    {
                        express.SetValue(item.Key, item.Value);
                    }
                }
                if (where != null)
                {
                    express.SetValue("$where", FrameDLRObject.CreateInstance(where, FrameDLRFlags.SensitiveCase));
                }
                Excute(up, express, is_log);
            }