Exemplo n.º 1
0
        static void Main(string[] args)
        {
            TScript ts = new TScript();

            ts.DoString("12+1.3+1+10+20-4.3");
            //ts.LoadString("12+1.3+1+10+20-4.3");

            //TSLexer lexer = new TSLexer("12+1.3");
            //lexer.GetTokens();
            //ScriptTest();
            //double b = 1.1;
            //int a = 12;
            //b = a - b;
            //b = a + b;
            //b = a - b;
            //b = a * b;
            //b = a / b;
            //b = -b;
            //var c = b + "1";
            //int b = 1 + 1 * 2 + (2 + 3) / 5 - 10;
            //DicTest();
            //SwitchTest();
            //StrDicTest2();
            //StrDicTest();
            //IntDicTest2();
            //Console.WriteLine(b);
            //    goto Te;
            //    Test();
            //Te: a = Test();
            Console.ReadLine();
        }
Exemplo n.º 2
0
        public List <TScript> GetDataByParentId(int pid)
        {
            List <TScript> list = new List <TScript>();
            string         sql  = "select ScriptId,ScriptTitle from T_Scripts where ScriptParenId=@id";

            using (SqlDataReader reader = SqlHelper.ExecuteReader(sql, CommandType.Text, new SqlParameter("@id", pid)))
            {
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        TScript model = new TScript();
                        model.ScriptId    = reader.GetInt32(0);
                        model.ScriptTitle = reader.GetString(1);
                        list.Add(model);
                    }
                }
            }
            return(list);
        }
Exemplo n.º 3
0
 public TSAssembly(TScript script)
 {
     _script = script;
     _lexer  = new TSLexer();
 }
Exemplo n.º 4
0
        public bool ScriptSave(string loginKey, ref ErrorInfo err, TScript inEnt, IList <string> allPar)
        {
            GlobalUser gu = Global.GetUser(loginKey);

            if (gu == null)
            {
                err.IsError = true;
                err.Message = "登录超时";
                return(false);
            }

            if (!UserCheckFunctioAuthority(loginKey, ref err, MethodBase.GetCurrentMethod()))
            {
                return(false);
            }
            using (DBEntities db = new DBEntities())
            {
                try
                {
                    var  ent   = db.YL_SCRIPT.SingleOrDefault(a => a.ID == inEnt.ID);
                    bool isAdd = false;
                    if (ent == null)
                    {
                        isAdd  = true;
                        ent    = Fun.ClassToCopy <ProInterface.Models.TScript, YL_SCRIPT>(inEnt);
                        ent.ID = Fun.GetSeqID <YL_SCRIPT>();
                    }
                    else
                    {
                        if (!ent.BODY_TEXT.Equals(inEnt.BODY_TEXT))
                        {
                            inEnt.BODY_TEXT = string.Format("//{0}于{1}修改\r\n{2}", gu.UserName, DateTime.Now.ToString(), inEnt.BODY_TEXT);
                        }

                        ent = Fun.ClassToCopy <ProInterface.Models.TScript, YL_SCRIPT>(inEnt, ent, allPar);
                    }
                    if (!string.IsNullOrEmpty(inEnt.ScriptGroupListJosn))
                    {
                        inEnt.ScriptGroupList = JSON.EncodeToEntity <IList <SCRIPT_GROUP_LIST> >(inEnt.ScriptGroupListJosn);
                    }
                    foreach (var t in inEnt.ScriptGroupList)
                    {
                        var single = ent.YL_SCRIPT_GROUP_LIST.SingleOrDefault(x => x.SCRIPT_ID == t.SCRIPT_ID);
                        if (single == null)
                        {
                            single          = Fun.ClassToCopy <ProInterface.Models.SCRIPT_GROUP_LIST, YL_SCRIPT_GROUP_LIST>(t);
                            single.GROUP_ID = ent.ID;
                            ent.YL_SCRIPT_GROUP_LIST.Add(single);
                        }
                        else
                        {
                            single.ORDER_INDEX = t.ORDER_INDEX;
                        }
                    }

                    foreach (var t in ent.YL_SCRIPT_GROUP_LIST.ToList())
                    {
                        var single = inEnt.ScriptGroupList.SingleOrDefault(x => x.SCRIPT_ID == t.SCRIPT_ID);
                        if (single == null)
                        {
                            db.YL_SCRIPT_GROUP_LIST.Remove(t);
                        }
                    }

                    if (isAdd)
                    {
                        db.YL_SCRIPT.Add(ent);
                    }
                    db.SaveChanges();
                    UserWriteLog(loginKey, MethodBase.GetCurrentMethod(), StatusType.UserLogType.Edit);
                    return(true);
                }
                catch (Exception e)
                {
                    err.IsError = true;
                    err.Message = e.Message;
                    return(false);
                }
            }
        }