public int UpdateTask(DbConn PubConn, tb_task_model model)
 {
     return(SqlHelper.Visit <int>(ps =>
     {
         ps.Add("@id", model.id);
         ps.Add("@taskname", model.taskname);
         ps.Add("@categoryid", model.categoryid);
         ps.Add("@nodeid", model.nodeid);
         ps.Add("@taskupdatetime", model.taskupdatetime);
         ps.Add("@taskcreateuserid", model.taskcreateuserid);
         ps.Add("@taskappconfigjson", model.taskappconfigjson.NullToEmpty());
         ps.Add("@taskcron", model.taskcron);
         ps.Add("@taskmainclassnamespace", model.taskmainclassnamespace);
         ps.Add("@taskremark", model.taskremark);
         ps.Add("@taskmainclassdllfilename", model.taskmainclassdllfilename);
         ps.Add("@taskversion", model.taskversion);
         ps.Add("@task_type", model.task_type);
         ps.Add("@businessversion", string.IsNullOrEmpty(model.businessversion) ? "" : model.businessversion);
         ps.Add("@service_flag", model.ServiceFlag ?? string.Empty);
         string sql = "Update tb_task Set taskname=@taskname,categoryid=@categoryid,nodeid=@nodeid,taskupdatetime=@taskupdatetime,";
         sql += "taskappconfigjson=@taskappconfigjson,taskcron=@taskcron,taskcreateuserid=@taskcreateuserid,";
         sql += "taskmainclassnamespace=@taskmainclassnamespace,taskremark=@taskremark,taskmainclassdllfilename=@taskmainclassdllfilename,taskversion=@taskversion,task_type=@task_type,businessversion=@businessversion,service_flag=@service_flag";
         sql += " where id=@id";
         int i = PubConn.ExecuteSql(sql, ps.ToParameters());
         return i;
     }));
 }
 public JsonResult Run(int id)
 {
     return(this.Visit(Core.EnumUserRole.Admin, () =>
     {
         try
         {
             tb_task_dal dal = new tb_task_dal();
             tb_command_dal cmdDal = new tb_command_dal();
             using (DbConn PubConn =
                        DbConfig.CreateConn(Config.TaskConnectString))
             {
                 PubConn.Open();
                 tb_task_model task = dal.GetOneTask(PubConn, id);
                 tb_command_model c = new tb_command_model()
                 {
                     command = "",
                     commandcreatetime = DateTime.Now,
                     commandname = EnumTaskCommandName.RunTask.ToString(),
                     taskid = id,
                     nodeid = task.nodeid,
                     commandstate = (int)EnumTaskCommandState.None
                 };
                 cmdDal.Add(PubConn, c);
                 return Json(new { code = 1, msg = "Success" });
             }
         }
         catch (Exception ex)
         {
             return Json(new { code = -1, msg = ex.Message });
         }
     }));
 }
        public int AddTask(DbConn PubConn, tb_task_model model)
        {
            return(SqlHelper.Visit <int>(ps =>
            {
                ps.Add("@taskname", model.taskname);
                ps.Add("@categoryid", model.categoryid);
                ps.Add("@nodeid", model.nodeid);
                ps.Add("@taskcreatetime", model.taskcreatetime);
                ps.Add("@taskupdatetime", model.taskcreatetime);
                ps.Add("@taskerrorcount", 0);
                ps.Add("@taskruncount", 0);
                ps.Add("@taskcreateuserid", model.taskcreateuserid);
                ps.Add("@taskstate", 0);
                ps.Add("@taskversion", 1);
                ps.Add("@taskappconfigjson", model.taskappconfigjson.NullToEmpty());
                ps.Add("@taskcron", model.taskcron);
                ps.Add("@taskmainclassnamespace", model.taskmainclassnamespace);
                ps.Add("@taskremark", model.taskremark);
                ps.Add("@taskmainclassdllfilename", model.taskmainclassdllfilename);
                ps.Add("@task_type", model.task_type);
                ps.Add("@service_flag", model.ServiceFlag ?? string.Empty);
                int rev = Convert.ToInt32(PubConn.ExecuteScalar(@"insert into tb_task(taskname,categoryid,nodeid,taskcreatetime,taskruncount,taskcreateuserid,taskstate,taskversion,taskappconfigjson,taskcron,taskmainclassnamespace,taskremark,taskmainclassdllfilename,task_type,service_flag)
										   values(@taskname,@categoryid,@nodeid,@taskcreatetime,@taskruncount,@taskcreateuserid,@taskstate,@taskversion,@taskappconfigjson,@taskcron,@taskmainclassnamespace,@taskremark,@taskmainclassdllfilename,@task_type,@service_flag) select @@IDENTITY"                                        , ps.ToParameters()));
                return rev;
            }));
        }
        public static int UpdateTask(tb_task_model model)
        {
            tb_task_dal dal = new tb_task_dal();

            using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
            {
                PubConn.Open();
                return(dal.UpdateTask(PubConn, model));
            }
        }
        private static void ConvertServiceFlagToType(tb_task_model model)
        {
            if (model.task_type == "service")

            {
                if (model.ServiceFlag == "module")
                {
                    model.task_type = "module";
                }
            }
        }
Esempio n. 6
0
 public tb_task_model GetOneTask(DbConn PubConn, int taskid)
 {
     return(SqlHelper.Visit(ps =>
     {
         ps.Add("id", taskid);
         string sql = "select * from tb_task where id=@id";
         DataSet ds = new DataSet();
         PubConn.SqlToDataSet(ds, sql, ps.ToParameters());
         tb_task_model model = CreateModel(ds.Tables[0].Rows[0]);
         return model;
     }));
 }
 public JsonResult Get(int taskid)
 {
     return(this.Visit(Core.EnumUserRole.None, () =>
     {
         using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
         {
             PubConn.Open();
             tb_task_dal dal = new tb_task_dal();
             tb_task_model model = dal.GetOneTask(PubConn, taskid);
             return Json(model);
         }
     }));
 }
        private static void ConvertServiceTypeToFlag(tb_task_model model)
        {
            switch (model.task_type)
            {
            case "module":
                model.task_type   = "service";
                model.ServiceFlag = "module";
                break;

            case "service":
                model.task_type   = "service";
                model.ServiceFlag = string.Empty;
                break;
            }
        }
        public virtual bool Edit(DbConn PubConn, tb_task_model model)
        {
            List <ProcedureParameter> Par = new List <ProcedureParameter>()
            {
                //
                new ProcedureParameter("@taskname", model.taskname),
                //
                new ProcedureParameter("@categoryid", model.categoryid),
                //
                new ProcedureParameter("@nodeid", model.nodeid),
                //
                new ProcedureParameter("@taskcreatetime", model.taskcreatetime),
                //
                new ProcedureParameter("@taskupdatetime", model.taskupdatetime),
                //
                new ProcedureParameter("@tasklaststarttime", model.tasklaststarttime),
                //
                new ProcedureParameter("@tasklastendtime", model.tasklastendtime),
                //
                new ProcedureParameter("@tasklasterrortime", model.tasklasterrortime),
                //
                new ProcedureParameter("@taskerrorcount", model.taskerrorcount),
                //
                new ProcedureParameter("@taskruncount", model.taskruncount),
                //
                new ProcedureParameter("@taskcreateuserid", model.taskcreateuserid),
                //
                new ProcedureParameter("@taskstate", model.taskstate),
                //
                new ProcedureParameter("@taskversion", model.taskversion),
                //
                new ProcedureParameter("@taskappconfigjson", model.taskappconfigjson),
                //
                new ProcedureParameter("@taskcron", model.taskcron),
                //
                new ProcedureParameter("@taskmainclassnamespace", model.taskmainclassnamespace),
                //
                new ProcedureParameter("@taskremark", model.taskremark),
                //
                new ProcedureParameter("@task_type", model.task_type)
            };

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

            int rev = PubConn.ExecuteSql("update tb_task set taskname=@taskname,categoryid=@categoryid,nodeid=@nodeid,taskcreatetime=@taskcreatetime,taskupdatetime=@taskupdatetime,tasklaststarttime=@tasklaststarttime,tasklastendtime=@tasklastendtime,tasklasterrortime=@tasklasterrortime,taskerrorcount=@taskerrorcount,taskruncount=@taskruncount,taskcreateuserid=@taskcreateuserid,taskstate=@taskstate,taskversion=@taskversion,taskappconfigjson=@taskappconfigjson,taskcron=@taskcron,taskmainclassnamespace=@taskmainclassnamespace,taskremark=@taskremark,task_type=@task_type where id=@id", 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 Add(DbConn PubConn, tb_task_model model)
        {
            List <ProcedureParameter> Par = new List <ProcedureParameter>()
            {
                //
                new ProcedureParameter("@taskname", model.taskname),
                //
                new ProcedureParameter("@categoryid", model.categoryid),
                //
                new ProcedureParameter("@nodeid", model.nodeid),
                //
                new ProcedureParameter("@taskcreatetime", model.taskcreatetime),
                //
                new ProcedureParameter("@taskupdatetime", model.taskupdatetime),
                //
                new ProcedureParameter("@tasklaststarttime", model.tasklaststarttime),
                //
                new ProcedureParameter("@tasklastendtime", model.tasklastendtime),
                //
                new ProcedureParameter("@tasklasterrortime", model.tasklasterrortime),
                //
                new ProcedureParameter("@taskerrorcount", model.taskerrorcount),
                //
                new ProcedureParameter("@taskruncount", model.taskruncount),
                //
                new ProcedureParameter("@taskcreateuserid", model.taskcreateuserid),
                //
                new ProcedureParameter("@taskstate", model.taskstate),
                //
                new ProcedureParameter("@taskversion", model.taskversion),
                //
                new ProcedureParameter("@taskappconfigjson", model.taskappconfigjson),
                //
                new ProcedureParameter("@taskcron", model.taskcron),
                //
                new ProcedureParameter("@taskmainclassnamespace", model.taskmainclassnamespace),
                //
                new ProcedureParameter("@taskremark", model.taskremark),
                //
                new ProcedureParameter("@task_type", model.task_type)
            };
            int rev = PubConn.ExecuteSql(@"insert into tb_task(taskname,categoryid,nodeid,taskcreatetime,taskupdatetime,tasklaststarttime,tasklastendtime,tasklasterrortime,taskerrorcount,taskruncount,taskcreateuserid,taskstate,taskversion,taskappconfigjson,taskcron,taskmainclassnamespace,taskremark,task_type)
										   values(@taskname,@categoryid,@nodeid,@taskcreatetime,@taskupdatetime,@tasklaststarttime,@tasklastendtime,@tasklasterrortime,@taskerrorcount,@taskruncount,@taskcreateuserid,@taskstate,@taskversion,@taskappconfigjson,@taskcron,@taskmainclassnamespace,@taskremark,@task_type)"                                        , Par);

            return(rev == 1);
        }
Esempio n. 12
0
        public List <tb_task_model> GetListAll(DbConn PubConn)
        {
            List <tb_task_model> model = new List <tb_task_model>();
            DataSet dsList             = SqlHelper.Visit <DataSet>(ps =>
            {
                string sql = "select id,taskname from tb_task";
                DataSet ds = new DataSet();
                PubConn.SqlToDataSet(ds, sql, ps.ToParameters());
                return(ds);
            });

            foreach (DataRow dr in dsList.Tables[0].Rows)
            {
                tb_task_model m = CreateModelList(dr);
                model.Add(m);
            }
            return(model);
        }
Esempio n. 13
0
        public ConsulRegisteration Parse(tb_task_model taskruntimeinfoTaskModel

                                         )
        {
            ConsulRegisteration item   = new ConsulRegisteration();
            TaskAppConfigInfo   config = taskruntimeinfoTaskModel
                                         .taskappconfigjson.FromJson <TaskAppConfigInfo>();

            Uri service = new Uri(config["service_url"]);

            item.Host = service.Host;
            item.Port = service.Port;

            string serviceNames = Path.GetFileNameWithoutExtension(taskruntimeinfoTaskModel.taskmainclassdllfilename);
            string ext          = Path.GetExtension(taskruntimeinfoTaskModel.taskmainclassdllfilename);

            item.Service   = serviceNames;
            item.ServiceId = $"{serviceNames}_{item.Host}_{item.Port}";
            return(item);
        }
Esempio n. 14
0
        public ActionResult Add(IFormFile TaskDll, tb_task_model model, string tempdatajson)
        {
            return(this.Visit(EnumUserRole.Admin, () =>
            {
                string filename = TaskDll.FileName;
                byte[] dllbyte;
                using (var dll = TaskDll.OpenReadStream())
                {
                    dllbyte = new byte[dll.Length];
                    dll.Read(dllbyte, 0, Convert.ToInt32(dll.Length));
                }

                tb_task_dal dal = new tb_task_dal();
                tb_version_dal dalversion = new tb_version_dal();
                tb_tempdata_dal tempdatadal = new tb_tempdata_dal();
                //model.taskcreateuserid = Common.GetUserId(this);
                using (DbConn PubConn = DbConn.CreateConn(Config.TaskConnectString))
                {
                    PubConn.Open();
                    model.taskcreatetime = DateTime.Now;
                    model.taskversion = 1;
                    int taskid = dal.AddTask(PubConn, model);
                    dalversion.Add(PubConn, new tb_version_model()
                    {
                        taskid = taskid,
                        version = 1,
                        versioncreatetime = DateTime.Now,
                        zipfile = dllbyte,
                        zipfilename = System.IO.Path.GetFileName(filename)
                    });
                    tempdatadal.Add(PubConn, new tb_tempdata_model()
                    {
                        taskid = taskid,
                        tempdatajson = tempdatajson,
                        tempdatalastupdatetime = DateTime.Now
                    });
                }
                return RedirectToAction("index");
            }));
        }
 public ActionResult Add(HttpPostedFileBase TaskDll, tb_task_model model, string tempdatajson)
 {
     return(this.Visit(Core.EnumUserRole.Admin, () =>
     {
         string filename = TaskDll.FileName;
         Stream dll = TaskDll.InputStream;
         byte[] dllbyte = new byte[dll.Length];
         dll.Read(dllbyte, 0, Convert.ToInt32(dll.Length));
         tb_task_dal dal = new tb_task_dal();
         tb_version_dal dalversion = new tb_version_dal();
         tb_tempdata_dal tempdatadal = new tb_tempdata_dal();
         //model.taskcreateuserid = Common.GetUserId(this);
         using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
         {
             PubConn.Open();
             model.taskcreatetime = DateTime.Now;
             model.taskversion = 1;
             ConvertServiceTypeToFlag(model);
             int taskid = dal.AddTask(PubConn, model);
             dalversion.Add(PubConn, new tb_version_model()
             {
                 taskid = taskid,
                 version = 1,
                 versioncreatetime = DateTime.Now,
                 zipfile = dllbyte,
                 zipfilename = System.IO.Path.GetFileName(filename),
                 commit_id = string.Empty
             });
             tempdatadal.Add(PubConn, new tb_tempdata_model()
             {
                 taskid = taskid,
                 tempdatajson = tempdatajson,
                 tempdatalastupdatetime = DateTime.Now
             });
         }
         return RedirectToAction("index");
     }));
 }
Esempio n. 16
0
 public ActionResult Update(int taskid)
 {
     return(this.Visit(Core.EnumUserRole.None, () =>
     {
         using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
         {
             PubConn.Open();
             tb_task_dal dal = new tb_task_dal();
             tb_task_model model = dal.GetOneTask(PubConn, taskid);
             tb_tempdata_model tempdatamodel = new tb_tempdata_dal().GetByTaskID(PubConn, taskid);
             List <tb_version_model> Version = new tb_version_dal().GetTaskVersion(PubConn, taskid);
             List <tb_category_model> Category = new tb_category_dal().GetList(PubConn, "");
             List <tb_node_model> Node = new tb_node_dal().GetListAll(PubConn);
             List <tb_user_model> User = new tb_user_dal().GetAllUsers(PubConn);
             ViewBag.Node = Node;
             ViewBag.Category = Category;
             ViewBag.Version = Version;
             ViewBag.User = User;
             ViewBag.TempData = tempdatamodel;
             return View(model);
         }
     }));
 }
        public virtual tb_task_model CreateModel(DataRow dr)
        {
            var o = new tb_task_model();

            //
            if (dr.Table.Columns.Contains("id"))
            {
                o.id = dr["id"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskname"))
            {
                o.taskname = dr["taskname"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("categoryid"))
            {
                o.categoryid = dr["categoryid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("nodeid"))
            {
                o.nodeid = dr["nodeid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskcreatetime"))
            {
                o.taskcreatetime = dr["taskcreatetime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("taskupdatetime"))
            {
                o.taskupdatetime = dr["taskupdatetime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklaststarttime"))
            {
                o.tasklaststarttime = dr["tasklaststarttime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklastendtime"))
            {
                o.tasklastendtime = dr["tasklastendtime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklasterrortime"))
            {
                o.tasklasterrortime = dr["tasklasterrortime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("taskerrorcount"))
            {
                o.taskerrorcount = dr["taskerrorcount"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskruncount"))
            {
                o.taskruncount = dr["taskruncount"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskcreateuserid"))
            {
                o.taskcreateuserid = dr["taskcreateuserid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskstate"))
            {
                o.taskstate = dr["taskstate"].ToByte();
            }
            //
            if (dr.Table.Columns.Contains("taskversion"))
            {
                o.taskversion = dr["taskversion"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskappconfigjson"))
            {
                o.taskappconfigjson = dr["taskappconfigjson"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskcron"))
            {
                o.taskcron = dr["taskcron"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskmainclassnamespace"))
            {
                o.taskmainclassnamespace = dr["taskmainclassnamespace"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskmainclassdllfilename"))
            {
                o.taskmainclassdllfilename = dr["taskmainclassdllfilename"].ToString();
            }
            //
            if (dr.Table.Columns.Contains("taskremark"))
            {
                o.taskremark = dr["taskremark"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("task_type"))
            {
                o.task_type = dr["task_type"].Tostring();
            }
            if (dr.Table.Columns.Contains("businessversion"))
            {
                o.businessversion = dr["businessversion"] == null? string.Empty: dr["businessversion"].ToString();
            }
            if (dr.Table.Columns.Contains("service_flag"))
            {
                o.ServiceFlag = Convert.IsDBNull(dr["service_flag"])?string.Empty:dr["service_flag"].ToString();
            }
            if (dr.Table.Columns.Contains("is_register"))
            {
                o.IsRegister = Convert.IsDBNull(dr["is_register"]) ? 0 : Convert.ToInt32(dr["is_register"]);
            }
            return(o);
        }
Esempio n. 18
0
        public virtual tb_task_model CreateModel(DataRow dr)
        {
            var o = new tb_task_model();

            //
            if (dr.Table.Columns.Contains("id"))
            {
                o.id = dr["id"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskname"))
            {
                o.taskname = dr["taskname"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("categoryid"))
            {
                o.categoryid = dr["categoryid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("nodeid"))
            {
                o.nodeid = dr["nodeid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskcreatetime"))
            {
                o.taskcreatetime = dr["taskcreatetime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("taskupdatetime"))
            {
                o.taskupdatetime = dr["taskupdatetime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklaststarttime"))
            {
                o.tasklaststarttime = dr["tasklaststarttime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklastendtime"))
            {
                o.tasklastendtime = dr["tasklastendtime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("tasklasterrortime"))
            {
                o.tasklasterrortime = dr["tasklasterrortime"].ToDateTime();
            }
            //
            if (dr.Table.Columns.Contains("taskerrorcount"))
            {
                o.taskerrorcount = dr["taskerrorcount"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskruncount"))
            {
                o.taskruncount = dr["taskruncount"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskcreateuserid"))
            {
                o.taskcreateuserid = dr["taskcreateuserid"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskstate"))
            {
                o.taskstate = dr["taskstate"].ToByte();
            }
            //
            if (dr.Table.Columns.Contains("taskversion"))
            {
                o.taskversion = dr["taskversion"].Toint();
            }
            //
            if (dr.Table.Columns.Contains("taskappconfigjson"))
            {
                o.taskappconfigjson = dr["taskappconfigjson"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskcron"))
            {
                o.taskcron = dr["taskcron"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskmainclassnamespace"))
            {
                o.taskmainclassnamespace = dr["taskmainclassnamespace"].Tostring();
            }
            //
            if (dr.Table.Columns.Contains("taskmainclassdllfilename"))
            {
                o.taskmainclassdllfilename = dr["taskmainclassdllfilename"].ToString();
            }
            //
            if (dr.Table.Columns.Contains("taskremark"))
            {
                o.taskremark = dr["taskremark"].Tostring();
            }
            return(o);
        }
 public ActionResult Update(HttpPostedFileBase TaskDll, tb_task_model model, string tempdatajson)
 {
     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();
             byte[] dllbyte = null;
             string filename = "";
             int change = model.taskversion;
             if (change == -1)
             {
                 if (TaskDll == null)
                 {
                     throw new Exception("没有文件!");
                 }
                 filename = TaskDll.FileName;
                 Stream dll = TaskDll.InputStream;
                 dllbyte = new byte[dll.Length];
                 dll.Read(dllbyte, 0, Convert.ToInt32(dll.Length));
                 //model.taskcreateuserid = Common.GetUserId(this);
             }
             using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
             {
                 PubConn.Open();
                 var task = dal.GetOneTask(PubConn, model.id);
                 if (task.taskstate == (int)Dyd.BaseService.TaskManager.Core.EnumTaskState.Running)
                 {
                     throw new Exception("当前任务在运行中,请停止后提交");
                 }
                 if (change == -1)
                 {
                     model.taskversion = dalversion.GetVersion(PubConn, model.id) + 1;
                 }
                 model.taskupdatetime = DateTime.Now;
                 ConvertServiceTypeToFlag(model);
                 dal.UpdateTask(PubConn, model);
                 if (change == -1)
                 {
                     dalversion.Add(PubConn, new tb_version_model()
                     {
                         taskid = model.id,
                         version = model.taskversion,
                         versioncreatetime = DateTime.Now,
                         zipfile = dllbyte,
                         zipfilename = System.IO.Path.GetFileName(filename),
                         commit_id = string.Empty
                     });
                 }
                 tempdatadal.UpdateByTaskID(PubConn, new tb_tempdata_model()
                 {
                     taskid = model.id,
                     tempdatajson = tempdatajson,
                     tempdatalastupdatetime = DateTime.Now
                 });
                 return RedirectToAction("index");
             }
         }
         catch (Exception exp)
         {
             ModelState.AddModelError("", exp.Message);
             return View();
         }
     }));
 }
        public JsonResult Update(HttpPostedFileBase TaskDll, tb_task_model model, string tempdatajson)
        {
            HttpPostedFileBase file = Request.Files[0];

            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();
                    byte[] dllbyte = null;
                    string filename = "";
                    int change = model.taskversion;
                    if (change == -1)
                    {
                        if (TaskDll == null)
                        {
                            return Json(new { code = -1, message = "没有文件" });
                        }
                        filename = TaskDll.FileName;
                        Stream dll = TaskDll.InputStream;
                        dllbyte = new byte[dll.Length];
                        dll.Read(dllbyte, 0, Convert.ToInt32(dll.Length));
                        //model.taskcreateuserid = Common.GetUserId(this);
                    }
                    using (DbConn PubConn = DbConfig.CreateConn(Config.TaskConnectString))
                    {
                        PubConn.Open();
                        var task = dal.GetOneTask(PubConn, model.id);
                        if (task.taskstate == (int)Dyd.BaseService.TaskManager.Core.EnumTaskState.Running)
                        {
                            return Json(new { code = -1, message = "当前任务在运行中,请停止后提交" });
                        }
                        if (change == -1)
                        {
                            model.taskversion = dalversion.GetVersion(PubConn, model.id) + 1;
                        }
                        model.taskupdatetime = DateTime.Now;
                        dal.UpdateTask(PubConn, model);
                        if (change == -1)
                        {
                            dalversion.Add(PubConn, new tb_version_model()
                            {
                                taskid = model.id,
                                version = model.taskversion,
                                versioncreatetime = DateTime.Now,
                                zipfile = dllbyte,
                                zipfilename = System.IO.Path.GetFileName(filename)
                            });
                        }
                        tempdatadal.UpdateByTaskID(PubConn, new tb_tempdata_model()
                        {
                            taskid = model.id,
                            tempdatajson = tempdatajson,
                            tempdatalastupdatetime = DateTime.Now
                        });
                        return Json(new { code = 0, message = "上传成功" });
                    }
                }
                catch (Exception exp)
                {
                    return Json(new { code = -1, message = exp.Message });
                }
            }));
        }