/// <summary> /// 由一行数据得到一个实体 /// </summary> private Hi.Model.DIS_OrderOut GetModel(DataRow r) { Hi.Model.DIS_OrderOut model = new Hi.Model.DIS_OrderOut(); model.ID = SqlHelper.GetInt(r["ID"]); model.OrderID = SqlHelper.GetInt(r["OrderID"]); model.DisID = SqlHelper.GetInt(r["DisID"]); model.CompID = SqlHelper.GetInt(r["CompID"]); model.ReceiptNo = SqlHelper.GetString(r["ReceiptNo"]); model.SendDate = SqlHelper.GetDateTime(r["SendDate"]); model.ActionUser = SqlHelper.GetString(r["ActionUser"]); model.Remark = SqlHelper.GetString(r["Remark"]); model.IsAudit = SqlHelper.GetInt(r["IsAudit"]); model.AuditUserID = SqlHelper.GetInt(r["AuditUserID"]); model.AuditDate = SqlHelper.GetDateTime(r["AuditDate"]); model.AuditRemark = SqlHelper.GetString(r["AuditRemark"]); model.SignDate = SqlHelper.GetDateTime(r["SignDate"]); model.IsSign = SqlHelper.GetInt(r["IsSign"]); model.SignUserId = SqlHelper.GetInt(r["SignUserId"]); model.SignUser = SqlHelper.GetString(r["SignUser"]); model.SignRemark = SqlHelper.GetString(r["SignRemark"]); model.CreateUserID = SqlHelper.GetInt(r["CreateUserID"]); model.CreateDate = SqlHelper.GetDateTime(r["CreateDate"]); model.ts = SqlHelper.GetDateTime(r["ts"]); model.dr = SqlHelper.GetInt(r["dr"]); model.modifyuser = SqlHelper.GetInt(r["modifyuser"]); return(model); }
/// <summary> /// 修改发货单 /// </summary> /// <param name="outmodel">发货单</param> /// <param name="omodel">订单</param> /// <param name="ll">订单明细</param> /// <param name="llo">发货单明细</param> /// <returns></returns> public int GetOutUpOrder(Hi.Model.DIS_OrderOut outmodel, Hi.Model.DIS_Order omodel, List <Hi.Model.DIS_OrderDetail> ll, List <Hi.Model.DIS_OrderOutDetail> llo) { SqlTransaction sqlTrans = DBUtility.SqlHelper.CreateStoreTranSaction(); int outid = 0; try { //修改发货单主表状态 if (!new Hi.BLL.DIS_OrderOut().Update(outmodel, sqlTrans)) { outid = 0; return(outid); } //修改订单主表状态 if (new Hi.BLL.DIS_Order().UpdateOrder(sqlTrans.Connection, omodel, sqlTrans) < 0) { outid = 0; return(outid); } //修改订单明细状态 foreach (Hi.Model.DIS_OrderDetail item in ll) { if (new Hi.BLL.DIS_OrderDetail().UpdateOrderDetail(sqlTrans.Connection, item, sqlTrans) < 0) { outid = 0; return(outid); } } //修改发货单明细 foreach (Hi.Model.DIS_OrderOutDetail item in llo) { if (new Hi.BLL.DIS_OrderOutDetail().Update(item, sqlTrans) < 0) { outid = 0; return(outid); } } sqlTrans.Commit(); outid = 1; } catch (Exception) { if (sqlTrans.Connection != null) { sqlTrans.Rollback(); } throw; } return(outid); }
/// <summary> /// 增加一条数据 /// </summary> public int Add(Hi.Model.DIS_OrderOut model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into [DIS_OrderOut]("); strSql.Append("[OrderID],[DisID],[CompID],[ReceiptNo],[SendDate],[ActionUser],[Remark],[IsAudit],[AuditUserID],[AuditDate],[AuditRemark],[SignDate],[IsSign],[SignUserId],[SignUser],[SignRemark],[CreateUserID],[CreateDate],[ts],[modifyuser])"); strSql.Append(" values ("); strSql.Append("@OrderID,@DisID,@CompID,@ReceiptNo,@SendDate,@ActionUser,@Remark,@IsAudit,@AuditUserID,@AuditDate,@AuditRemark,@SignDate,@IsSign,@SignUserId,@SignUser,@SignRemark,@CreateUserID,@CreateDate,@ts,@modifyuser)"); strSql.Append(";select @@Identity"); SqlParameter[] parameters = { new SqlParameter("@OrderID", SqlDbType.BigInt), new SqlParameter("@DisID", SqlDbType.Int), new SqlParameter("@CompID", SqlDbType.Int), new SqlParameter("@ReceiptNo", SqlDbType.VarChar, 50), new SqlParameter("@SendDate", SqlDbType.DateTime), new SqlParameter("@ActionUser", SqlDbType.VarChar, 50), new SqlParameter("@Remark", SqlDbType.VarChar, 800), new SqlParameter("@IsAudit", SqlDbType.Int), new SqlParameter("@AuditUserID", SqlDbType.Int), new SqlParameter("@AuditDate", SqlDbType.DateTime), new SqlParameter("@AuditRemark", SqlDbType.VarChar, 800), new SqlParameter("@SignDate", SqlDbType.DateTime), new SqlParameter("@IsSign", SqlDbType.Int), new SqlParameter("@SignUserId", SqlDbType.Int), new SqlParameter("@SignUser", SqlDbType.VarChar, 50), new SqlParameter("@SignRemark", SqlDbType.VarChar, 400), new SqlParameter("@CreateUserID", SqlDbType.Int), new SqlParameter("@CreateDate", SqlDbType.DateTime), new SqlParameter("@ts", SqlDbType.DateTime), new SqlParameter("@modifyuser", SqlDbType.Int) }; parameters[0].Value = model.OrderID; parameters[1].Value = model.DisID; parameters[2].Value = model.CompID; if (model.ReceiptNo != null) { parameters[3].Value = model.ReceiptNo; } else { parameters[3].Value = DBNull.Value; } if (model.SendDate != DateTime.MinValue) { parameters[4].Value = model.SendDate; } else { parameters[4].Value = DBNull.Value; } if (model.ActionUser != null) { parameters[5].Value = model.ActionUser; } else { parameters[5].Value = DBNull.Value; } if (model.Remark != null) { parameters[6].Value = model.Remark; } else { parameters[6].Value = DBNull.Value; } parameters[7].Value = model.IsAudit; parameters[8].Value = model.AuditUserID; if (model.AuditDate != DateTime.MinValue) { parameters[9].Value = model.AuditDate; } else { parameters[9].Value = DBNull.Value; } if (model.AuditRemark != null) { parameters[10].Value = model.AuditRemark; } else { parameters[10].Value = DBNull.Value; } if (model.SignDate != DateTime.MinValue) { parameters[11].Value = model.SignDate; } else { parameters[11].Value = DBNull.Value; } parameters[12].Value = model.IsSign; parameters[13].Value = model.SignUserId; if (model.SignUser != null) { parameters[14].Value = model.SignUser; } else { parameters[14].Value = DBNull.Value; } if (model.SignRemark != null) { parameters[15].Value = model.SignRemark; } else { parameters[15].Value = DBNull.Value; } parameters[16].Value = model.CreateUserID; parameters[17].Value = model.CreateDate; parameters[18].Value = model.ts; parameters[19].Value = model.modifyuser; return(SqlHelper.GetInt(SqlHelper.GetSingle(SqlHelper.LocalSqlServer, strSql.ToString(), parameters))); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Hi.Model.DIS_OrderOut model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update [DIS_OrderOut] set "); strSql.Append("[OrderID]=@OrderID,"); strSql.Append("[DisID]=@DisID,"); strSql.Append("[CompID]=@CompID,"); strSql.Append("[ReceiptNo]=@ReceiptNo,"); strSql.Append("[SendDate]=@SendDate,"); strSql.Append("[ActionUser]=@ActionUser,"); strSql.Append("[Remark]=@Remark,"); strSql.Append("[IsAudit]=@IsAudit,"); strSql.Append("[AuditUserID]=@AuditUserID,"); strSql.Append("[AuditDate]=@AuditDate,"); strSql.Append("[AuditRemark]=@AuditRemark,"); strSql.Append("[SignDate]=@SignDate,"); strSql.Append("[IsSign]=@IsSign,"); strSql.Append("[SignUserId]=@SignUserId,"); strSql.Append("[SignUser]=@SignUser,"); strSql.Append("[SignRemark]=@SignRemark,"); strSql.Append("[CreateUserID]=@CreateUserID,"); strSql.Append("[CreateDate]=@CreateDate,"); strSql.Append("[ts]=@ts,"); strSql.Append("[dr]=@dr,"); strSql.Append("[modifyuser]=@modifyuser"); strSql.Append(" where [ID]=@ID"); SqlParameter[] parameters = { new SqlParameter("@ID", SqlDbType.BigInt), new SqlParameter("@OrderID", SqlDbType.BigInt), new SqlParameter("@DisID", SqlDbType.Int), new SqlParameter("@CompID", SqlDbType.Int), new SqlParameter("@ReceiptNo", SqlDbType.VarChar, 50), new SqlParameter("@SendDate", SqlDbType.DateTime), new SqlParameter("@ActionUser", SqlDbType.VarChar, 50), new SqlParameter("@Remark", SqlDbType.VarChar, 800), new SqlParameter("@IsAudit", SqlDbType.Int), new SqlParameter("@AuditUserID", SqlDbType.Int), new SqlParameter("@AuditDate", SqlDbType.DateTime), new SqlParameter("@AuditRemark", SqlDbType.VarChar, 800), new SqlParameter("@SignDate", SqlDbType.DateTime), new SqlParameter("@IsSign", SqlDbType.Int), new SqlParameter("@SignUserId", SqlDbType.Int), new SqlParameter("@SignUser", SqlDbType.VarChar, 50), new SqlParameter("@SignRemark", SqlDbType.VarChar, 400), new SqlParameter("@CreateUserID", SqlDbType.Int), new SqlParameter("@CreateDate", SqlDbType.DateTime), new SqlParameter("@ts", SqlDbType.DateTime), new SqlParameter("@dr", SqlDbType.SmallInt), new SqlParameter("@modifyuser", SqlDbType.Int) }; parameters[0].Value = model.ID; parameters[1].Value = model.OrderID; parameters[2].Value = model.DisID; parameters[3].Value = model.CompID; if (model.ReceiptNo != null) { parameters[4].Value = model.ReceiptNo; } else { parameters[4].Value = DBNull.Value; } if (model.SendDate != DateTime.MinValue) { parameters[5].Value = model.SendDate; } else { parameters[5].Value = DBNull.Value; } if (model.ActionUser != null) { parameters[6].Value = model.ActionUser; } else { parameters[6].Value = DBNull.Value; } if (model.Remark != null) { parameters[7].Value = model.Remark; } else { parameters[7].Value = DBNull.Value; } parameters[8].Value = model.IsAudit; parameters[9].Value = model.AuditUserID; if (model.AuditDate != DateTime.MinValue) { parameters[10].Value = model.AuditDate; } else { parameters[10].Value = DBNull.Value; } if (model.AuditRemark != null) { parameters[11].Value = model.AuditRemark; } else { parameters[11].Value = DBNull.Value; } if (model.SignDate != DateTime.MinValue) { parameters[12].Value = model.SignDate; } else { parameters[12].Value = DBNull.Value; } parameters[13].Value = model.IsSign; parameters[14].Value = model.SignUserId; if (model.SignUser != null) { parameters[15].Value = model.SignUser; } else { parameters[15].Value = DBNull.Value; } if (model.SignRemark != null) { parameters[16].Value = model.SignRemark; } else { parameters[16].Value = DBNull.Value; } parameters[17].Value = model.CreateUserID; parameters[18].Value = model.CreateDate; parameters[19].Value = model.ts; parameters[20].Value = model.dr; parameters[21].Value = model.modifyuser; return(SqlHelper.ExecuteSql(SqlHelper.LocalSqlServer, strSql.ToString(), parameters) > 0); }
/// <summary> /// 订单发货 /// </summary> /// <param name="omodel">订单主表</param> /// <param name="ll">订单明细</param> /// <param name="outmodel">订单发货表</param> /// <param name="llo">订单发货明细表</param> /// <param name="log">订单物流表</param> /// <param name="stockOModel">发货出库主表</param> /// <param name="llinOut">发货出库从表</param> /// <returns></returns> public int GetOutOrder(Hi.Model.DIS_Order omodel, List <Hi.Model.DIS_OrderDetail> ll, Hi.Model.DIS_OrderOut outmodel, List <Hi.Model.DIS_OrderOutDetail> llo, Hi.Model.DIS_Logistics log, Hi.Model.DIS_StockOrder stockOModel, List <Hi.Model.DIS_StockInOut> llinOut) { SqlTransaction sqlTrans = DBUtility.SqlHelper.CreateStoreTranSaction(); int outid = 0; try { //新增发货单 outid = Add(outmodel, sqlTrans); if (outid > 0) { //新增发货单明细 foreach (Hi.Model.DIS_OrderOutDetail item in llo) { if (item.OutNum <= 0) { continue; } item.OrderOutID = outid; if (new Hi.BLL.DIS_OrderOutDetail().Add(item, sqlTrans) < 0) { outid = 0; return(outid); } //发货减扣库存 if (!new Hi.BLL.DIS_GoodsStock().UpdateStock(item.GoodsinfoID.ToString(), item.Batchno, item.OutNum, sqlTrans)) { outid = 0; return(outid); } } //发货新增出库单 stockOModel.OrderID = outid; int stockOrderID = new Hi.BLL.DIS_StockOrder().Add(stockOModel, sqlTrans); if (stockOrderID > 0) { foreach (Hi.Model.DIS_StockInOut item in llinOut) { item.StockOrderID = stockOrderID; if (new Hi.BLL.DIS_StockInOut().Add(item, sqlTrans) < 0) { outid = 0; return(outid); } } } else { outid = 0; return(outid); } //修改订单主表状态 if (new Hi.BLL.DIS_Order().UpdateOrder(sqlTrans.Connection, omodel, sqlTrans) < 0) { outid = 0; return(outid); } //修改订单明细状态 foreach (Hi.Model.DIS_OrderDetail item in ll) { if (new Hi.BLL.DIS_OrderDetail().UpdateOrderDetail(sqlTrans.Connection, item, sqlTrans) < 0) { outid = 0; return(outid); } } //新增物流 log.OrderOutID = outid; if (new Hi.BLL.DIS_Logistics().Add(log, sqlTrans) < 0) { outid = 0; return(outid); } sqlTrans.Commit(); } } catch (Exception) { if (sqlTrans.Connection != null) { sqlTrans.Rollback(); } throw; } return(outid); }
/// <summary> /// 更新一条数据,带事务 /// </summary> public bool Update(Hi.Model.DIS_OrderOut model, SqlTransaction TranSaction = null) { return(dal.Update(model, TranSaction)); }
/// <summary> /// 作废发货单 /// </summary> /// <param name="omodel">订单</param> /// <param name="outmodel">发货单</param> /// <param name="ol">订单明细</param> /// <param name="loud">本次发货明细</param> /// <returns></returns> public int GetCancelOut(Hi.Model.DIS_Order omodel, Hi.Model.DIS_OrderOut outmodel, List <Hi.Model.DIS_OrderDetail> ol, List <Hi.Model.DIS_OrderOutDetail> loud, string stockOids, string stockInids) { SqlTransaction sqlTrans = DBUtility.SqlHelper.CreateStoreTranSaction(); int outid = 0; try { //修改订单主表状态 if (!new Hi.BLL.DIS_Order().Update(omodel, sqlTrans)) { outid = 0; return(outid); } //修改订单明细状态 foreach (Hi.Model.DIS_OrderDetail item in ol) { if (new Hi.BLL.DIS_OrderDetail().UpdateOrderDetail(sqlTrans.Connection, item, sqlTrans) < 0) { outid = 0; return(outid); } } foreach (var item in loud) { //发货减扣库存 if (!new Hi.BLL.DIS_GoodsStock().UpdateStockAdd(item.GoodsinfoID.ToString(), item.Batchno, item.OutNum, sqlTrans)) { outid = 0; return(outid); } } if (!string.IsNullOrWhiteSpace(stockOids)) { string sql = "update DIS_StockOrder set dr=1 where ID in (" + stockOids + ")"; if (NonQuery(sql, sqlTrans.Connection, sqlTrans) <= 0) { outid = 0; return(outid); } } if (!string.IsNullOrWhiteSpace(stockInids)) { string sql = "update DIS_StockInOut set dr=1 where ID in (" + stockInids + ")"; if (NonQuery(sql, sqlTrans.Connection, sqlTrans) <= 0) { outid = 0; return(outid); } } //修改发货单主表状态 if (!Update(outmodel, sqlTrans)) { outid = 0; return(outid); } sqlTrans.Commit(); outid = 1; } catch (Exception) { if (sqlTrans.Connection != null) { sqlTrans.Rollback(); } throw; } return(outid); }
/// <summary> /// 增加一条数据,带事务 /// </summary> public int Add(Hi.Model.DIS_OrderOut model, SqlTransaction TranSaction = null) { return(dal.Add(model, TranSaction)); }