using Bro.Common.Helper; using Bro.M135.DBManager; namespace Bro.M141.Process { public partial class M141Process { Lazy managerPProductLazy = new Lazy(); protected Manager_P_PRODUCT _manager_P_Product => managerPProductLazy.Value; TaskFactory _taskFactory = new TaskFactory(TaskCreationOptions.LongRunning, TaskContinuationOptions.LongRunning); protected void InitialProductList() { if (M141Config.DBBufferListCount > 0) { Request_P_Product request = new Request_P_Product(); request.PageNum = 1; request.PageSize = M141Config.DBBufferListCount; request.IsOrderAsc = false; request.IsIncludeDetail = true; var list = _manager_P_Product.QueryProduct(request).OrderByDescending(u => u.ID).ToList(); if (list != null && list.Count > 0) { ProductList.AddRange(list.Select(u => new M135.Common.ProductModel(u))); } } LogAsync(DateTime.Now, EnumHelper.LogLevel.Action, $"产品队列初始化载入{ProductList.Count}"); } protected async void UpdateProductSNIntoDB(string pid, string sn) { await _taskFactory.StartNew(() => { _manager_P_Product.UpdateProductSN(pid, sn); }); } protected async void UpdateProductSNIntopid(string pid, string newse,string newpid) { await _taskFactory.StartNew(() => { _manager_P_Product.UpdateProductPID(pid, newse, newpid); }); } protected async void UpdatePositionResultToDB(P_PRODUCT_DETAIL detail) { await _taskFactory.StartNew(() => { _manager_P_Product.UpdatePositionResult(detail); }); } } }