/// <summary> /// 新增数据的判断 /// </summary> /// <param name="dr"></param> /// <param name="tran"></param> /// <returns></returns> private bool CheckInsertData(DataRow dr, DbTransaction tran, out string strInvalid) { bool flag = true; strInvalid = ""; switch (dr.Table.TableName.ToUpper()) { case "HC_ORD_PURCHASE": //订单明细状态表 flag = PurchaseCheck.GetInstance().CheckPurchaseForInsert(dr, out strInvalid); break; case "HC_ORD_PURCHASE_ITEM": //产品匹配表 flag = PurchaseCheck.GetInstance().CheckPurchaseItemForInsert(dr, out strInvalid); break; case "HC_ORD_ORDER": //订单表 flag = OrderCheck.GetInstance().CheckOrderForInsert(dr, out strInvalid); break; case "HC_ORD_ORDER_ITEM": //订单明细表 flag = OrderCheck.GetInstance().CheckOrderItemForInsert(dr, out strInvalid); break; default: break; } return(flag); }
public OrderCheckTO(OrderCheck mdo) { if (mdo != null) { this.id = mdo.Id; this.name = mdo.Name; this.abbreviation = mdo.Abbreviation; this.level = mdo.Level; } }
public static void SaveTotalCoffees(OrderCheck orderData) { BinaryFormatter formatter = new BinaryFormatter(); string filePath = Application.persistentDataPath + "/coffeecorrectness.bruh"; FileStream stream = new FileStream(filePath, FileMode.Create); CoffeeData data = new CoffeeData(orderData); formatter.Serialize(stream, data); stream.Close(); }
private void Validate(OrderCheck entity) { if (!BLL.MarerialInfoTableManager.IsExit(entity.MaterialNumber)) { throw new Exception("系统不存在该原材料编号:" + entity.MaterialNumber); } entity.TakeUserId = BLL.PM_UserManager.Instance.GetUserIdByUserName(entity.TakeUserName); if (string.IsNullOrEmpty(entity.TakeUserId)) { throw new Exception(string.Format("系统不存在该用户:{0}", entity.TakeUserName)); } }
/// <summary> /// 映射 /// </summary> /// <param name="reader"></param> /// <param name="entity"></param> private void BuildOrderCheck(IDataReader reader, OrderCheck entity) { entity.Id = reader.GetValue <Guid>("Id"); entity.WarehouseNumber = reader.GetValue <string>("WarehouseNumber"); entity.MaterialNumber = reader.GetValue <string>("MaterialNumber"); entity.TakeQty = reader.GetValue <double>("TakeQty"); entity.TakeDateTime = reader.GetValue <DateTime>("TakeDateTime"); entity.Status = (OrderCheckStatus)reader.GetValue <int>("Status"); entity.TakeUserId = reader.GetValue <string>("TakeUserId"); entity.Remark = reader.GetValue <string>("Remark"); entity.CreateTime = reader.GetValue <DateTime>("CreateTime"); entity.OrderType = (CheckOrderType)reader.GetValue <int>("OrderType"); entity.TakeUserName = reader.GetValue <string>("USER_NAME"); }
public void Create(OrderCheck entity) { this.Validate(entity); OrderCheck check = new OrderCheck(); check.WarehouseNumber = entity.WarehouseNumber; check.MaterialNumber = entity.MaterialNumber; IList <OrderCheck> list = this.GetList(check); if ((list != null) && (list.Count > 0)) { throw new Exception(string.Format("当前出入库单已抽检原材料:{0},请勿重复抽检。", entity.MaterialNumber)); } OrderCheckDAL.Instance.Create(entity); }
/// <summary> /// 加载条件 /// </summary> /// <param name="entity">查询实体</param> /// <param name="sql">SQL命令</param> /// <param name="parameters">参数</param> private void LoadCondition(OrderCheck entity, StringBuilder sql, ref Dictionary <string, object> parameters) { if (entity == null) { return; } sql.AppendFormat(" WHERE 1=1 "); if (entity.Id != Guid.Empty) { sql.AppendFormat(" AND [Id]=@Id "); parameters.Add("@Id", entity.Id); } if (!string.IsNullOrEmpty(entity.WarehouseNumber)) { sql.AppendFormat(" AND [WarehouseNumber]=@WarehouseNumber "); parameters.Add("@WarehouseNumber", entity.WarehouseNumber); } if (!string.IsNullOrEmpty(entity.MaterialNumber)) { sql.AppendFormat(" AND [MaterialNumber]=@MaterialNumber "); parameters.Add("@MaterialNumber", entity.MaterialNumber); } if (entity.Status > 0) { sql.AppendFormat(" AND [Status]=@Status "); parameters.Add("@Status", entity.Status); } if (!string.IsNullOrEmpty(entity.TakeUserId)) { sql.AppendFormat(" AND [TakeUserId]=@TakeUserId "); parameters.Add("@TakeUserId", entity.TakeUserId); } if (!string.IsNullOrEmpty(entity.Remark)) { sql.AppendFormat(" AND [Remark]=@Remark "); parameters.Add("@Remark", entity.Remark); } if (entity.OrderType > 0) { sql.AppendFormat(" AND [OrderType]=@OrderType "); parameters.Add("@OrderType", entity.OrderType); } }
/// <summary> /// 创建 /// </summary> /// <param name="entity"></param> public void Create(OrderCheck entity) { string sql = @" INSERT INTO [dbo].[OrderCheck] ( [Id], [WarehouseNumber], [MaterialNumber], [TakeQty], [TakeDateTime], [Status], [TakeUserId], [Remark], [CreateTime], [OrderType] ) VALUES ( @Id, @WarehouseNumber, @MaterialNumber, @TakeQty, @TakeDateTime, @Status, @TakeUserId, @Remark, @CreateTime, @OrderType ) " ; Dictionary <string, object> parameters = new Dictionary <string, object>() { { "@Id", entity.Id }, { "@WarehouseNumber", entity.WarehouseNumber }, { "@MaterialNumber", entity.MaterialNumber }, { "@TakeQty", entity.TakeQty }, { "@TakeDateTime", entity.TakeDateTime }, { "@Status", entity.Status }, { "@TakeUserId", entity.TakeUserId }, { "@Remark", entity.Remark }, { "@CreateTime", entity.CreateTime }, { "@OrderType", entity.OrderType } }; db.ExecuteNoneQuery(sql, parameters); }
/// <summary> /// 分页获取列表 /// </summary> /// <param name="entity">查询实体</param> /// <param name="pageIndex">当前页码</param> /// <param name="pageSize">一页显示条数</param> /// <param name="order">排序</param> /// <returns></returns> public IList <OrderCheck> GetList(OrderCheck entity, int pageIndex, int pageSize, string order = Const.Order) { StringBuilder sql = new StringBuilder(@" SELECT * FROM ( SELECT A.*, B.USER_NAME FROM [dbo].[OrderCheck] A LEFT JOIN [dbo].[PM_USER] B ON A.TakeUserId=B.USER_ID) T "); Dictionary <string, object> parameters = new Dictionary <string, object>(); LoadCondition(entity, sql, ref parameters); return(db.GetList <OrderCheck>( delegate(IDataReader reader, OrderCheck dataModel) { BuildOrderCheck(reader, dataModel); }, sql.ToString(), parameters, pageIndex, pageSize, order)); }
protected void Save() { string str2; string requestString = ToolManager.GetRequestString("Id"); OrderCheck entity = new OrderCheck { MaterialNumber = ToolManager.GetRequestString("MaterialNumber"), TakeQty = ToolManager.GetRequestDouble("TakeQty"), TakeDateTime = ToolManager.GetRequestDateTime("TakeDateTime"), Status = (OrderCheckStatus)ToolManager.GetRequestInt("Status"), TakeUserName = ToolManager.GetRequestString("TakeUserName"), Remark = ToolManager.GetRequestString("Remark") }; try { if (!string.IsNullOrEmpty(requestString)) { entity.Id = new Guid(requestString); OrderCheckBLL.Instance.Update(entity); } else { entity.Id = Guid.NewGuid(); entity.WarehouseNumber = ToolManager.GetRequestString("WarehouseNumber"); entity.OrderType = CheckOrderType.采购入库; entity.CreateTime = DateTime.Now; OrderCheckBLL.Instance.Create(entity); } str2 = JsonConvert.SerializeObject(new { Status = true, Msg = string.Empty }); base.Response.Write(str2); HttpContext.Current.ApplicationInstance.CompleteRequest(); } catch (Exception exception) { str2 = JsonConvert.SerializeObject(new { Status = false, Msg = exception.Message }); base.Response.Write(str2); HttpContext.Current.ApplicationInstance.CompleteRequest(); } }
/// <summary> /// 获取列表 /// </summary> /// <param name="entity"></param> /// <returns></returns> public IList <OrderCheck> GetList(OrderCheck entity) { StringBuilder sql = new StringBuilder(@" SELECT * FROM ( SELECT A.*, B.USER_NAME FROM [dbo].[OrderCheck] A LEFT JOIN [dbo].[PM_USER] B ON A.TakeUserId=B.USER_ID) T "); Dictionary <string, object> parameters = new Dictionary <string, object>(); LoadCondition(entity, sql, ref parameters); sql.Append(" ORDER BY CREATETIME DESC "); return(db.GetList <OrderCheck>( delegate(IDataReader reader, OrderCheck dataModel) { BuildOrderCheck(reader, dataModel); }, sql.ToString(), parameters)); }
/// <summary> /// 更新 /// </summary> /// <param name="entity"></param> public void Update(OrderCheck entity) { string sql = @" UPDATE [dbo].[OrderCheck] SET [TakeQty] = @TakeQty, [TakeDateTime] = @TakeDateTime, [Status] = @Status, [TakeUserId] = @TakeUserId, [Remark] = @Remark WHERE [Id]=@Id "; Dictionary <string, object> parameters = new Dictionary <string, object>() { { "@Id", entity.Id }, { "@TakeQty", entity.TakeQty }, { "@TakeDateTime", entity.TakeDateTime }, { "@Status", entity.Status }, { "@TakeUserId", entity.TakeUserId }, { "@Remark", entity.Remark } }; db.ExecuteNoneQuery(sql, parameters); }
public void Update(OrderCheck entity) { this.Validate(entity); OrderCheckDAL.Instance.Update(entity); }
public IList <OrderCheck> GetList(OrderCheck entity, int pageIndex, int pageSize, string order = " CreateTime desc ") { return(OrderCheckDAL.Instance.GetList(entity, pageIndex, pageSize, order)); }
public IList <OrderCheck> GetList(OrderCheck entity) { return(OrderCheckDAL.Instance.GetList(entity)); }
private List <ContactToRemindWithItems> GetReocurringContacts() { // General VAR definitions List <ContactToRemindWithItems> _ContactsToRemind = new List <ContactToRemindWithItems>(); TrackerTools _TrackerTools = new classes.TrackerTools(); // . from TrackerDotNet.classes. DateTime _dtTemp = DateTime.MinValue; DateTime _dtNextRoast = DateTime.MinValue; // get the syustem minimum date for if we are closed SysDataTbl _SysData = new SysDataTbl(); DateTime _MinDate = _SysData.GetMinReminderDate(); // 1. // make sure the dates in the Reoccuring table match the last delivery date ReoccuringOrderDAL _ReoccuringOrderDAL = new ReoccuringOrderDAL(); // Need to add this to the classs if (!_ReoccuringOrderDAL.SetReoccuringItemsLastDate()) { showMessageBox _smb = new showMessageBox(this.Page, "Set Reoccuring Item Last Date", "Could not set the re-occuring last date"); return(_ContactsToRemind); } // if we get here we could set the last date ?????????????? /* 2. For each enabled record in the ReoccuringTbl: * if the LastDatePerItem + DateAdd(ReocurranceType) < NextCityDeliveryDate * then add them into the temporary reminder table, but set the value in the tempoary reminder table to remember that it is a reoccuring and an auto fulfil. */ // now make sure that only records the are enbabled and need to be added from Reoccuring Are added List <ReoccuringOrderExtData> _ReoccuringOrders = _ReoccuringOrderDAL.GetAll(ReoccuringOrderDAL.CONST_ENABLEDONLY, "CustomersTbl.CustomerID"); // -1 is all re ///////////// perhaps we should return all details in the above query? for (int i = 0; i < _ReoccuringOrders.Count; i++) { switch (_ReoccuringOrders[i].ReoccuranceTypeID) { case ReoccuranceTypeTbl.CONST_WEEKTYPEID: _ReoccuringOrders[i].NextDateRequired = _ReoccuringOrders[i].DateLastDone.AddDays(_ReoccuringOrders[i].ReoccuranceValue * 7).Date; break; case ReoccuranceTypeTbl.CONST_DAYOFMONTHID: _ReoccuringOrders[i].NextDateRequired = _ReoccuringOrders[i].DateLastDone.AddMonths(1).Date; _ReoccuringOrders[i].NextDateRequired = new DateTime(_ReoccuringOrders[i].NextDateRequired.Year, _ReoccuringOrders[i].NextDateRequired.Month, _ReoccuringOrders[i].ReoccuranceValue).Date; break; default: break; // not a type we know so exit } // disable the order if this is the last time if ((_ReoccuringOrders[i].RequireUntilDate > TrackerTools.STATIC_TrackerMinDate) && (_ReoccuringOrders[i].NextDateRequired > _ReoccuringOrders[i].RequireUntilDate)) { _ReoccuringOrders[i].Enabled = false; } _dtNextRoast = _TrackerTools.GetNextRoastDateByCustomerID(_ReoccuringOrders[i].CustomerID, ref _dtTemp); // check if the the Next roast date is less than the system Minimum date if (_dtNextRoast < _MinDate) { _dtNextRoast = _MinDate; } // if DateNext < NextDeliveryDate for client the add to list if (_ReoccuringOrders[i].NextDateRequired <= _dtNextRoast) { // we have a winner we need to add this item but first check if there is an order for this item type. OrderCheck _orderCheck = new OrderCheck(); List <OrderCheckData> _OrdersToCheck = _orderCheck.GetSimilarItemInOrders(_ReoccuringOrders[i].CustomerID, _ReoccuringOrders[i].ItemRequiredID, DateTimeExtensions.GetFirstDayOfWeek(_dtNextRoast), DateTimeExtensions.GetLastDayOfWeek(_dtNextRoast)); if (_OrdersToCheck == null) { // there are no orders that have the same item type ItemContactRequires _ItemRequired = new ItemContactRequires(); _ItemRequired.CustomerID = _ReoccuringOrders[i].CustomerID; _ItemRequired.AutoFulfill = false; // it is a reoccuring order not auto ff _ItemRequired.ReoccurID = _ReoccuringOrders[i].ReoccuringOrderID; _ItemRequired.ReoccurOrder = true; // remember it is from reoccuring _ItemRequired.ItemID = _ReoccuringOrders[i].ItemRequiredID; _ItemRequired.ItemQty = _ReoccuringOrders[i].QtyRequired; _ItemRequired.ItemPackagID = _ReoccuringOrders[i].PackagingID; // check if the customer exists if (!_ContactsToRemind.Exists(x => x.CustomerID == _ItemRequired.CustomerID)) { ContactToRemindWithItems _ContactToRemind = new ContactToRemindWithItems(); _ContactToRemind = _ContactToRemind.GetCustomerDetails(_ItemRequired.CustomerID); _ContactToRemind.ItemsContactRequires.Add(_ItemRequired); _ContactsToRemind.Add(_ContactToRemind); } else { int _ContactIdx = _ContactsToRemind.FindIndex(x => x.CustomerID == _ItemRequired.CustomerID); _ContactsToRemind[_ContactIdx].ItemsContactRequires.Add(_ItemRequired); } } else { List <OrderCheckData> _OrderCheckData = null; // store that and order has identified if (Session[CONST_SESSIONVAR_EXISTINGORDERS] == null) { _OrderCheckData = new List <OrderCheckData>(); } else { _OrderCheckData = (List <OrderCheckData>)Session[CONST_SESSIONVAR_EXISTINGORDERS]; } for (int j = 0; j < _OrdersToCheck.Count; j++) { _OrderCheckData.Add(_OrdersToCheck[j]); } // this.gvReminderOfOrdersPlaced.DataSource = _OrderCheckData; // this.gvReminderOfOrdersPlaced.DataBind(); // Session[CONST_SESSIONVAR_EXISTINGORDERS] = _OrderCheckData; } } /// we found an item in reoccuring that we need to send a reminder too } return(_ContactsToRemind); }
public CoffeeData(OrderCheck orderData) { correctCoffees = orderData.correctCoffies; }