示例#1
0
        //数据持久化
        internal static void  SaveToDb(ProcessMasterInfo pProcessMasterInfo, ProcessMaster pProcessMaster, bool pIsNew)
        {
            pProcessMaster.ProcessMasterId       = pProcessMasterInfo.processMasterId;
            pProcessMaster.ApplyMasterId         = pProcessMasterInfo.applyMasterId;
            pProcessMaster.FirstApproveMasterId  = pProcessMasterInfo.firstApproveMasterId;
            pProcessMaster.SecondApproveMasterId = pProcessMasterInfo.secondApproveMasterId;
            pProcessMaster.ThirdApproveMasterId  = pProcessMasterInfo.thirdApproveMasterId;
            pProcessMaster.ProId = pProcessMasterInfo.proId;
            pProcessMaster.IsNew = pIsNew;
            string UserName = SubsonicHelper.GetUserName();

            try
            {
                pProcessMaster.Save(UserName);
            }
            catch (Exception ex)
            {
                LogManager.getInstance().getLogger(typeof(ProcessMasterInfo)).Error(ex);
                if (ex.Message.Contains("插入重复键"))               //违反了唯一键
                {
                    throw new AppException("此对象已经存在");          //此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
                }
                throw new AppException("保存失败");
            }
            pProcessMasterInfo.processMasterId = pProcessMaster.ProcessMasterId;
            //如果缓存存在,更新缓存
            if (CachedEntityCommander.IsTypeRegistered(typeof(ProcessMasterInfo)))
            {
                ResetCache();
            }
        }
示例#2
0
        /// <summary>
        /// 获得分页列表,无论是否是缓存实体都从数据库直接拿取数据
        /// </summary>
        /// <param name="pPageIndex">页数</param>
        /// <param name="pPageSize">每页列表</param>
        /// <param name="pOrderBy">排序</param>
        /// <param name="pSortExpression">排序字段</param>
        /// <param name="pRecordCount">列表行数</param>
        /// <returns>数据分页</returns>
        public static List <ProcessMasterInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <ProcessMasterInfo> list = new List <ProcessMasterInfo>();

            Query q = ProcessMaster.CreateQuery();

            q.PageIndex = pPageIndex;
            q.PageSize  = pPageSize;
            q.ORDER_BY(pSortExpression, pOrderBy.ToString());
            ProcessMasterCollection collection = new  ProcessMasterCollection();

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (ProcessMaster processMaster  in collection)
            {
                ProcessMasterInfo processMasterInfo = new ProcessMasterInfo();
                LoadFromDAL(processMasterInfo, processMaster);
                list.Add(processMasterInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }
示例#3
0
 //从后台获取数据
 internal static void  LoadFromDAL(ProcessMasterInfo pProcessMasterInfo, ProcessMaster pProcessMaster)
 {
     pProcessMasterInfo.processMasterId       = pProcessMaster.ProcessMasterId;
     pProcessMasterInfo.applyMasterId         = pProcessMaster.ApplyMasterId;
     pProcessMasterInfo.firstApproveMasterId  = pProcessMaster.FirstApproveMasterId;
     pProcessMasterInfo.secondApproveMasterId = pProcessMaster.SecondApproveMasterId;
     pProcessMasterInfo.thirdApproveMasterId  = pProcessMaster.ThirdApproveMasterId;
     pProcessMasterInfo.proId  = pProcessMaster.ProId;
     pProcessMasterInfo.Loaded = true;
 }
    public void BindColor(Int64 CategoryId)
    {
        ProcessMaster objcategory = (new Cls_process_b().SelectById(CategoryId));

        if (objcategory != null)
        {
            //ddlBank.SelectedValue = objcategory.bankid.ToString();
            txtprocessname.Text = objcategory.processname;
        }
    }
        public ProcessMaster SelectById(Int64 cid)
        {
            SqlDataAdapter da;
            DataSet        ds          = new DataSet();
            ProcessMaster  objcategory = new ProcessMaster();

            try
            {
                SqlCommand cmd = new SqlCommand
                {
                    CommandText = "Process_SelectById",
                    CommandType = CommandType.StoredProcedure,
                    Connection  = ConnectionString
                };
                cmd.Parameters.AddWithValue("@id", cid);
                ConnectionString.Open();
                da = new SqlDataAdapter(cmd);
                da.Fill(ds);

                if (ds != null)
                {
                    if (ds.Tables.Count > 0)
                    {
                        if (ds.Tables[0] != null)
                        {
                            if (ds.Tables[0].Rows.Count > 0)
                            {
                                {
                                    objcategory.id          = Convert.ToInt64(ds.Tables[0].Rows[0]["id"]);
                                    objcategory.processname = Convert.ToString(ds.Tables[0].Rows[0]["particular"]);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                ErrHandler.writeError(ex.Message, ex.StackTrace);
                return(null);
            }
            finally
            {
                ConnectionString.Close();
            }
            return(objcategory);
        }
示例#6
0
        private void RunTimer()
        {
            // ssStatus1.Text = "Updating Fingers Templates...";
            Application.DoEvents();
            dcProfile_SQL _dc = new dcProfile_SQL();
            ProcessMaster _pm = new ProcessMaster(GetTime);

            _pm.OnProcessStop = delegate()
            {
                //ssStatus1.Text = "Fingers Templates processing is done.";
                Application.DoEvents();
                Thread.Sleep(1000);
                // ssStatus1.Text = "";
                Application.DoEvents();
            };
            _pm.Start();
        }
示例#7
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if (!m_Loaded)           //新增
     {
         ProcessMaster processMaster = new ProcessMaster();
         SaveToDb(this, processMaster, true);
     }
     else            //修改
     {
         ProcessMaster processMaster = new ProcessMaster(processMasterId);
         if (processMaster.IsNew)
         {
             throw new AppException("该数据已经不存在了");
         }
         SaveToDb(this, processMaster, false);
     }
 }
示例#8
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <returns>是否成功</returns>
        public override void Delete()
        {
            if (!m_Loaded)
            {
                throw new AppException("尚未初始化");
            }
            bool result = (ProcessMaster.Delete(ProcessMasterId) == 1);

            //更新缓存
            if (result && CachedEntityCommander.IsTypeRegistered(typeof(ProcessMasterInfo)))
            {
                ResetCache();
            }
            if (!result)
            {
                throw new AppException("删除失败,数据可能被删除");
            }
        }
示例#9
0
        static void DoWork()
        {
            var processMaster = new ProcessMaster();
            var sims          = processMaster.GetSims(@".\Resources\GenerationTemplate.xlsx").ToList();
            var loaders       = new ConcurrentDictionary <ProcessSim, ProcessLoader>();

            foreach (var sim in sims)
            {
                loaders[sim] = new ProcessLoader(sim);
                loaders[sim].ProgressMessage += RecordProgress;
                loaders[sim].LoadOrCreateProcessRoles();
            }
            var tasks = new List <Task>();

            foreach (var sim in sims)
            {
                tasks.Add(new Task(() => {
                    var loader = loaders[sim];
                    loader.GenerateSessions();
                    Console.WriteLine("Completed {0} in {1}", loader.Simulator.Name, DateTime.Now.Subtract(_start));
                }));
            }
            var runCount = 0;

            while (!tasks.Any(i => i.IsCompleted))
            {
                var toExecute = new List <Task>();
                for (int i = 0; i < 5; i++)
                {
                    if (runCount > tasks.Count)
                    {
                        break;
                    }
                    toExecute.Add(tasks[runCount]);
                    runCount++;
                }
                toExecute.ForEach(i => i.Start());
                Task.WaitAll(toExecute.ToArray());
            }
            Console.WriteLine("Completed on {0}", DateTime.Now.Subtract(_start));
            Console.WriteLine("Press any key");
            Console.ReadKey();
        }
示例#10
0
 private void LoadFromId(int processMasterId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(ProcessMasterInfo)))
     {
         ProcessMasterInfo processMasterInfo = Find(GetList(), processMasterId);
         if (processMasterInfo == null)
         {
             throw new AppException("未能在缓存中找到相应的键值对象");
         }
         Copy(processMasterInfo, this);
     }
     else
     {
         ProcessMaster processMaster = new ProcessMaster(processMasterId);
         if (processMaster.IsNew)
         {
             throw new AppException("尚未初始化");
         }
         LoadFromDAL(this, processMaster);
     }
 }
    protected void btnSave_Click(object sender, EventArgs e)
    {
        Int64         Result      = 0;
        ProcessMaster objcategory = new ProcessMaster();

        objcategory.processname = txtprocessname.Text.Trim();

        if (Request.QueryString["id"] != null)
        {
            objcategory.id = Convert.ToInt64(ocommon.Decrypt(Request.QueryString["id"].ToString(), true));
            Result         = (new Cls_process_b().Update(objcategory));
            if (Result > 0)
            {
                Clear();
                Response.Redirect(Page.ResolveUrl("~/manageprocesses.aspx?mode=u"));
            }
            else
            {
                Clear();
                spnMessgae.Style.Add("color", "red");
                spnMessgae.InnerText = "Process Not Updated";
                BindColor(Convert.ToInt64(ocommon.Decrypt(Request.QueryString["id"].ToString(), true)));
            }
        }
        else
        {
            Result = (new Cls_process_b().Insert(objcategory));
            if (Result > 0)
            {
                Clear();
                Response.Redirect(Page.ResolveUrl("~/manageprocesses.aspx?mode=i"));
            }
            else
            {
                Clear();
                spnMessgae.Style.Add("color", "red");
                spnMessgae.InnerText = "Process Not Saved";
            }
        }
    }
        public Int64 Insert(ProcessMaster objcategory)
        {
            Int64 result = 0;

            try
            {
                SqlCommand cmd = new SqlCommand
                {
                    CommandText = "Process_Insert",
                    CommandType = CommandType.StoredProcedure,
                    Connection  = ConnectionString
                };

                SqlParameter param = new SqlParameter
                {
                    ParameterName = "@id",
                    Value         = objcategory.id,
                    SqlDbType     = SqlDbType.BigInt,
                    Direction     = ParameterDirection.InputOutput
                };
                cmd.Parameters.Add(param);
                cmd.Parameters.AddWithValue("@particular", objcategory.processname);


                ConnectionString.Open();
                cmd.ExecuteNonQuery();
                result = Convert.ToInt64(param.Value);
            }
            catch (Exception ex)
            {
                ErrHandler.writeError(ex.Message, ex.StackTrace);
                return(result);
            }
            finally
            {
                ConnectionString.Close();
            }
            return(result);
        }
示例#13
0
        public void EditProcess_Master(ProcessMaster processmaster, string username, string password)
        {
            ProcessMaster procs_Mstr = context.ProcessMaster.FirstOrDefault(a => a.OperationCode == processmaster.OperationCode && a.ProductNo == processmaster.ProductNo);

            procs_Mstr.OperationName = processmaster.OperationName;
        }
示例#14
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if(!m_Loaded)//新增
     {
         ProcessMaster processMaster=new ProcessMaster();
         SaveToDb(this, processMaster,true);
     }
     else//修改
     {
         ProcessMaster processMaster=new ProcessMaster(processMasterId);
         if(processMaster.IsNew)
             throw new AppException("该数据已经不存在了");
         SaveToDb(this, processMaster,false);
     }
 }
示例#15
0
 //从后台获取数据
 internal static void LoadFromDAL(ProcessMasterInfo pProcessMasterInfo, ProcessMaster  pProcessMaster)
 {
     pProcessMasterInfo.processMasterId = pProcessMaster.ProcessMasterId;
      		pProcessMasterInfo.applyMasterId = pProcessMaster.ApplyMasterId;
      		pProcessMasterInfo.firstApproveMasterId = pProcessMaster.FirstApproveMasterId;
      		pProcessMasterInfo.secondApproveMasterId = pProcessMaster.SecondApproveMasterId;
      		pProcessMasterInfo.thirdApproveMasterId = pProcessMaster.ThirdApproveMasterId;
      		pProcessMasterInfo.proId = pProcessMaster.ProId;
     pProcessMasterInfo.Loaded=true;
 }
示例#16
0
 //数据持久化
 internal static void SaveToDb(ProcessMasterInfo pProcessMasterInfo, ProcessMaster  pProcessMaster,bool pIsNew)
 {
     pProcessMaster.ProcessMasterId = pProcessMasterInfo.processMasterId;
      		pProcessMaster.ApplyMasterId = pProcessMasterInfo.applyMasterId;
      		pProcessMaster.FirstApproveMasterId = pProcessMasterInfo.firstApproveMasterId;
      		pProcessMaster.SecondApproveMasterId = pProcessMasterInfo.secondApproveMasterId;
      		pProcessMaster.ThirdApproveMasterId = pProcessMasterInfo.thirdApproveMasterId;
      		pProcessMaster.ProId = pProcessMasterInfo.proId;
     pProcessMaster.IsNew=pIsNew;
     string UserName = SubsonicHelper.GetUserName();
     try
     {
         pProcessMaster.Save(UserName);
     }
     catch(Exception ex)
     {
         LogManager.getInstance().getLogger(typeof(ProcessMasterInfo)).Error(ex);
         if(ex.Message.Contains("插入重复键"))//违反了唯一键
         {
             throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
         }
         throw new AppException("保存失败");
     }
     pProcessMasterInfo.processMasterId = pProcessMaster.ProcessMasterId;
     //如果缓存存在,更新缓存
     if (CachedEntityCommander.IsTypeRegistered(typeof(ProcessMasterInfo)))
     {
         ResetCache();
     }
 }
示例#17
0
 private void RunTimer()
 {
     // ssStatus1.Text = "Updating Fingers Templates...";
     Application.DoEvents();
     dcProfile_SQL _dc = new dcProfile_SQL();
     ProcessMaster _pm = new ProcessMaster(GetTime);
     _pm.OnProcessStop = delegate()
     {
         //ssStatus1.Text = "Fingers Templates processing is done.";
         Application.DoEvents();
         Thread.Sleep(1000);
        // ssStatus1.Text = "";
         Application.DoEvents();
     };
     _pm.Start();
 }
示例#18
0
 public void EditProcess_Master(ProcessMaster processmaster, string username, string password)
 {
     masterReports.EditProcess_Master(processmaster, username, password);
 }
示例#19
0
 private void LoadFromId(int processMasterId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(ProcessMasterInfo)))
     {
         ProcessMasterInfo processMasterInfo=Find(GetList(), processMasterId);
         if(processMasterInfo==null)
             throw new AppException("未能在缓存中找到相应的键值对象");
         Copy(processMasterInfo, this);
     }
     else
     {	ProcessMaster processMaster=new ProcessMaster( processMasterId);
         if(processMaster.IsNew)
         throw new AppException("尚未初始化");
        	LoadFromDAL(this, processMaster);
     }
 }