Beispiel #1
0
        public static bool DeleteRptRuntime(RptRuntime rpt)
        {
            IDbTransaction tran = null;

            try {
                if (rpt == null || string.IsNullOrEmpty(rpt.Id))
                {
                    return(false);
                }
                using (var conn = new MySqlConnection(CommonConst.ConStr)) {
                    conn.Open();
                    tran = conn.BeginTransaction();
                    var flag   = conn.Delete(rpt);
                    var result = conn.Execute("delete from rpt_design where Id=@Id", new { Id = rpt.RptId }, tran);
                    flag &= result > 0;

                    tran.Commit();
                    return(flag);
                }
            } catch (Exception ex) {
                log.Error(string.Format("message:{0},StackTrace:{1}", ex.Message, ex.StackTrace));
                if (tran != null)
                {
                    tran.Rollback();
                }
                return(false);
            }
        }
Beispiel #2
0
        public static bool SaveRptRuntime(RptRuntime rpt)
        {
            try {
                if (rpt == null || string.IsNullOrEmpty(rpt.RptId))
                {
                    return(false);
                }
                using (var conn = new MySqlConnection(CommonConst.ConStr)) {
                    var d = conn.Query <RptRuntime> ("select * from rpt_runtime where RptId=@RptId", new { RptId = rpt.RptId }).FirstOrDefault();

                    if (d == null)
                    {
                        rpt.Id            = Guid.NewGuid().ToString("N");
                        rpt.QueryCount    = 0;
                        rpt.ExportCount   = 0;
                        rpt.LastQueryTime = DateTime.Now.ToString("yyyyMMddHHmmss");
                        var flag = conn.Insert(rpt);
                        return(flag >= 0);
                    }
                    else
                    {
                        if (rpt.ExportCount != 0)
                        {
                            d.ExportCount = rpt.ExportCount;
                        }
                        if (rpt.LastQeuryPerson != null)
                        {
                            d.LastQeuryPerson = rpt.LastQeuryPerson;
                        }
                        if (rpt.QueryCount != 0)
                        {
                            d.QueryCount = rpt.QueryCount;
                        }
                        if (!string.IsNullOrEmpty(rpt.RptId))
                        {
                            d.RptId = rpt.RptId;
                        }
                        d.LastQueryTime = DateTime.Now.ToString("yyyyMMddHHmmss");
                        return(conn.Update(d));
                    }
                }
            } catch (Exception ex) {
                log.Error(string.Format("message:{0},StackTrace:{1}", ex.Message, ex.StackTrace));
                return(false);
            }
        }
Beispiel #3
0
        public static void RecordRuntime(string rptName, string user, int flag)
        {
            if (string.IsNullOrEmpty(rptName))
            {
                return;
            }
            RptRuntime runtime = GetRptRuntimeByName(rptName);

            if (runtime == null)
            {
                var design = GetRptDesignByName(rptName);
                if (design == null)
                {
                    return;
                }
                SaveRptRuntime(new RptRuntime()
                {
                    QueryCount      = 1,
                    ExportCount     = 1,
                    LastQeuryPerson = user,
                    RptId           = design.Id
                });
            }
            else
            {
                if (flag == 0)
                {
                    runtime.QueryCount += 1;
                }
                else if (flag == 1)
                {
                    runtime.ExportCount += 1;
                }
                runtime.LastQeuryPerson = user;
                SaveRptRuntime(runtime);
            }
        }