public virtual tb_tempdata_model CreateModel(DataRow dr)
        {
            var o = new tb_tempdata_model();

            //
            if (dr.Table.Columns.Contains("id"))
            {
                o.id = dr["id"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskid"))
            {
                o.taskid = dr["taskid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("tempdatajson"))
            {
                o.tempdatajson = dr["tempdatajson"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("tempdatalastupdatetime"))
            {
                o.tempdatalastupdatetime = dr["tempdatalastupdatetime"].ToDateTime();
            }
            return(o);
        }
 public tb_tempdata_model GetByTaskID(DbConn PubConn, int taskid)
 {
     return(SqlHelper.Visit(ps =>
     {
         ps.Add("taskid", taskid);
         string sql = "select * from tb_tempdata where taskid=@taskid";
         DataSet ds = new DataSet();
         PubConn.SqlToDataSet(ds, sql, ps.ToParameters());
         tb_tempdata_model model = CreateModel(ds.Tables[0].Rows[0]);
         return model;
     }));
 }
        public int UpdateByTaskID(DbConn PubConn, tb_tempdata_model model)
        {
            return(SqlHelper.Visit <int>(ps =>
            {
                ps.Add("@taskid", model.taskid);
                ps.Add("@tempdatajson", model.tempdatajson);
                ps.Add("@tempdatalastupdatetime", model.tempdatalastupdatetime);
                ps.Add("@id", model.id);

                int rev = PubConn.ExecuteSql("update tb_tempdata set tempdatajson=@tempdatajson,tempdatalastupdatetime=@tempdatalastupdatetime where taskid=@taskid", ps.ToParameters());
                return rev;
            }));
        }
        public virtual bool Add(DbConn PubConn, tb_tempdata_model model)
        {
            List <ProcedureParameter> Par = new List <ProcedureParameter>()
            {
                //
                new ProcedureParameter("@taskid", model.taskid),
                //
                new ProcedureParameter("@tempdatajson", model.tempdatajson.NullToEmpty()),
                //
                new ProcedureParameter("@tempdatalastupdatetime", model.tempdatalastupdatetime)
            };
            int rev = PubConn.ExecuteSql(@"insert into tb_tempdata(taskid,tempdatajson,tempdatalastupdatetime)
										   values(@taskid,@tempdatajson,@tempdatalastupdatetime)"                                        , Par);

            return(rev == 1);
        }
        public JsonResult Copy(int id)
        {
            tb_task_model     model         = new tb_task_model();
            tb_version_model  vermodel      = new tb_version_model();
            tb_tempdata_model tempdatamodel = new tb_tempdata_model();

            return(this.Visit(Core.EnumUserRole.Admin, () =>
            {
                try
                {
                    tb_task_dal dal = new tb_task_dal();
                    tb_version_dal dalversion = new tb_version_dal();
                    tb_tempdata_dal tempdatadal = new tb_tempdata_dal();

                    using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
                    {
                        PubConn.Open();

                        //取出需要复制的数据
                        model = dal.GetOneTask(PubConn, id);
                        tempdatamodel = tempdatadal.GetByTaskID(PubConn, id);
                        vermodel = dalversion.GetCurrentVersion(PubConn, id, model.taskversion);

                        //分别插入
                        model.taskstate = 0;
                        model.taskcreatetime = DateTime.Now;
                        model.taskversion = 1;
                        int taskid = dal.AddTask(PubConn, model);

                        vermodel.taskid = taskid;
                        vermodel.version = 1;
                        vermodel.versioncreatetime = DateTime.Now;
                        vermodel.commit_id = string.Empty;
                        dalversion.Add(PubConn, vermodel);

                        tempdatamodel.taskid = taskid;
                        tempdatamodel.tempdatalastupdatetime = DateTime.Now;
                        tempdatadal.Add(PubConn, tempdatamodel);
                    }
                    return Json(new { code = 1, state = "复制成功" });
                }
                catch (Exception ex)
                {
                    return Json(new { code = -1, msg = ex.Message });
                }
            }));
        }
        public virtual bool Edit(DbConn PubConn, tb_tempdata_model model)
        {
            List <ProcedureParameter> Par = new List <ProcedureParameter>()
            {
                //
                new ProcedureParameter("@taskid", model.taskid),
                //
                new ProcedureParameter("@tempdatajson", model.tempdatajson),
                //
                new ProcedureParameter("@tempdatalastupdatetime", model.tempdatalastupdatetime)
            };

            Par.Add(new ProcedureParameter("@id", model.id));

            int rev = PubConn.ExecuteSql("update tb_tempdata set taskid=@taskid,tempdatajson=@tempdatajson,tempdatalastupdatetime=@tempdatalastupdatetime where id=@id", Par);

            return(rev == 1);
        }