Exemple #1
0
        public string SaveMatter(HttpServerContext context)
        {
            try
            {
                if (context.session.Data["user_id"] <= 0)
                {
                    throw new InvalidRequest(1, "您还未登录");
                }
                var matter_model = new MatterModel(context.DBConnection);
                var matter       = MatterBasic.ParseFromJson(Json.Decode(context.Request));
                var db_matter    = matter_model.GetMatterByID(matter.matter_id);
                if (db_matter == null)
                {
                    matter.user_id = (int)context.session.Data["user_id"];
                    matter_model.NewMatter(matter);
                }
                else
                {
                    if (matter.user_id != (int)context.session.Data["user_id"])
                    {
                        throw new InvalidRequest(1, "您没有权限");
                    }
                    matter_model.SaveMatter(matter);
                }

                context.Write(GenerateResponse(new Json()).Encode());
            }
            catch (InvalidRequest a)
            {
                context.Write(GenerateResponse(a.Code, a.Message, null).Encode());
            }
            return(null);
        }
Exemple #2
0
 public bool NewMatter(MatterBasic matter)
 {
     QueryStmt("insert into user_matters set matter_name=@0,matter_desc=@1,matter_start_time=@2,matter_next_effect_time=@3," +
               "matter_end_time=@4,matter_addion_info=@5 , matter_id=@6,matter_type=@7,user_id=@8,is_noticed=@9,folder_id=@10",
               matter.matter_name, matter.matter_desc, matter.matter_start_time.ToString(), matter.matter_next_effect_time.ToString(), matter.matter_end_time.ToString(),
               matter.matter_addion_info.Encode(), matter.matter_id.ToString(), matter.matter_type.ToString(), matter.user_id.ToString(), matter.is_noticed.ToString(), matter.folder_id.ToString());
     return(true);
 }
Exemple #3
0
 public bool SaveMatter(MatterBasic matter)
 {
     QueryStmt("update user_matters set matter_name=@0,matter_desc=@1,matter_start_time=@2,matter_next_effect_time=@3," +
               "matter_end_time=@4,matter_addion_info=@5,matter_type=@6,folder_id=@7 where matter_id=@8",
               matter.matter_name, matter.matter_desc, matter.matter_start_time.ToString(), matter.matter_next_effect_time.ToString(), matter.matter_end_time.ToString(),
               matter.matter_addion_info.Encode(), matter.matter_type.ToString(), matter.folder_id.ToString(), matter.matter_id.ToString());
     return(true);
 }
Exemple #4
0
        private bool SearchFilter(string search, MatterBasic matter)
        {
            var tmp = search.Trim();

            if (tmp == "")
            {
                return(true);
            }
            return(matter.matter_name.IndexOf(tmp) >= 0 || matter.matter_desc.IndexOf(tmp) >= 0);
        }
Exemple #5
0
        public List <MatterBasic> GetUserMatters(int user_id)
        {
            var result = QueryStmt(@"select * from user_matters where user_id=@0 and matter_status=0", user_id.ToString());
            var ret    = new List <MatterBasic>();

            for (int i = 0; i < result.Count; i++)
            {
                ret.Add(MatterBasic.ParseFromDB(result[i]));
            }
            return(ret);
        }
Exemple #6
0
        public List <MatterBasic> GetNeedNoticeMatters()
        {
            var result = Query("select * from user_matters where matter_status=0 and matter_next_effect_time<=now() and is_noticed=0");
            var ret    = new List <MatterBasic>();

            for (int i = 0; i < result.Count; i++)
            {
                ret.Add(MatterBasic.ParseFromDB(result[i]));
            }
            return(ret);
        }
Exemple #7
0
        public MatterBasic GetMatterByID(int matter_id)
        {
            var result = QueryStmt("select * from user_matters where matter_id=@0 limit 1", matter_id.ToString());

            if (result.Count > 0)
            {
                var info = result[0];
                return(MatterBasic.ParseFromDB(info));
            }
            else
            {
                return(null);
            }
        }
Exemple #8
0
        private bool FolderFilter(MatterFolder folder, MatterBasic matter)
        {
            if (folder.folder_name == "邮件")
            {
                return(matter is MatterEmail);
            }
            else if (!(matter is MatterEmail))
            {
                switch (folder.folder_name)
                {
                case "所有任务":
                    return(true);

                case "今天":
                    return(matter.matter_next_effect_time.Date == DateTime.Now.Date);

                case "本周":
                    return(ClientHelper.IsSameWeek(matter.matter_next_effect_time, DateTime.Now));
                }
                return(matter.folder_id == folder.folder_id);
            }
            return(false);
        }