/// <summary> /// 更新销售发货单 /// </summary> /// <returns></returns> public static bool UpdateSellSend(Hashtable ht, SellSendModel sellSendModel, List<SellSendDetailModel> sellSendDetailModellList, out string strMsg) { bool isSucc = false;//是否添加成功 strMsg = ""; if (IsUpdate(sellSendModel.SendNo)) { string strSql = "delete from officedba.SellSendDetail where SendNo=@SendNo and CompanyCD=@CompanyCD"; SqlParameter[] paras = { new SqlParameter("@SendNo", sellSendModel.SendNo), new SqlParameter("@CompanyCD", sellSendModel.CompanyCD) }; TransactionManager tran = new TransactionManager(); tran.BeginTransaction(); try { UpdateSellSend(ht,sellSendModel, tran); SqlHelper.ExecuteNonQuery(tran.Trans, CommandType.Text, strSql.ToString(), paras); InsertSellSendDetail(sellSendDetailModellList, tran); tran.Commit(); strMsg = "保存成功!"; isSucc = true; } catch (Exception ex) { tran.Rollback(); strMsg = "保存失败,请联系系统管理员!"; throw ex; } } else { isSucc = false; strMsg = "非制单状态的未提交审批、审批未通过或撤销审批单据不可修改!"; } return isSucc; }
/// <summary> /// 保存销售发货单 /// </summary> /// <returns></returns> public static bool SaveSellSend(Hashtable ht, SellSendModel sellSendModel, List<SellSendDetailModel> sellSendDetailModellList, out string strMsg) { bool isSucc = false;//是否添加成功 strMsg = ""; //判断单据编号是否存在 if (NoIsExist(sellSendModel.SendNo)) { TransactionManager tran = new TransactionManager(); tran.BeginTransaction(); try { InsertSellSend(ht,sellSendModel, tran); InsertSellSendDetail(sellSendDetailModellList, tran); tran.Commit(); isSucc = true; strMsg = "保存成功!"; } catch (Exception ex) { tran.Rollback(); strMsg = "保存失败,请联系系统管理员!"; throw ex; } } else { isSucc = false; strMsg = "该编号已被使用,请输入未使用的编号!"; } return isSucc; }
/// <summary> /// 更新销售发货单 /// </summary> /// <returns></returns> public static bool UpdateSellSend(Hashtable ht, SellSendModel sellSendModel, List<SellSendDetailModel> sellSendDetailModellList, out string strMsg) { bool isSucc = false;//是否添加成功 //定义变量 string remark = string.Empty; strMsg = ""; try { isSucc = SellSendDBHelper.UpdateSellSend(ht,sellSendModel, sellSendDetailModellList, out strMsg); //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_SUCCESS; } catch (Exception ex) { //输出日志 SellLogCommon.WriteSystemLog(ex, LogInfo.LogType.SYSTEM, LogInfo.SystemLogKind.SYSTEM_ERROR, ConstUtil.MODULE_ID_SELLSEND_ADD); //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_FAILED; } SellLogCommon.InsertLog(sellSendModel.SendNo, ConstUtil.MODULE_ID_SELLSEND_ADD, ConstUtil.CODING_RULE_TABLE_SELLSEND, remark, ConstUtil.LOG_PROCESS_UPDATE); return isSucc; }
/// <summary> /// 获取销售发货通知单 /// </summary> /// <param name="companycd"></param> /// <returns></returns> public static DataTable GetSellSendList(SellSendModel model) { try { return StorageOutSellDBHelper.GetSellSendList(model); } catch (Exception) { throw; } }
protected void btnImport_Click(object sender, ImageClickEventArgs e) { //设置行为参数 string orderString = hiddExpOrder.Value.Trim();//排序 string order = "desc";//排序:降序 string orderBy = (!string.IsNullOrEmpty(orderString)) ? orderString.Substring(0, orderString.Length - 2) : "SendNo";//要排序的字段,如果为空,默认为"ID" if (orderString.EndsWith("_a")) { order = "asc";//排序:升序 } int pageCount = int.Parse(hiddExpTotal.Value);//每页显示记录数 int pageIndex = 1;//当前页 int TotalCount = 0;//总记录数 string ord = orderBy + " " + order;//排序字段 DataTable dt = new DataTable(); string strorderNo = hiddExpOrderNo.Value.Trim(); string strTitle = hiddExpTitle.Value.Trim(); string strTakeType = hiddExpTakeType.Value.Trim(); string strSender = hiddExpSender.Value.Trim(); string strFromType = "1"; string strBillStatus = hiddExpBillStatus.Value.Trim(); string strReceiver = hiddExpReceiver.Value.Trim(); string strFlowStatus = hiddExpFlowStatus.Value.Trim(); string strFromBillID = hiddExpFromBillID.Value.Trim(); string strSeller = hiddExpSeller.Value.Trim(); string strProjectID = hiddProjectID.Value.Trim(); string orderNo = strorderNo.Length == 0 ? null : strorderNo; string Title = strTitle.Length == 0 ? null : strTitle; string Receiver = strReceiver.Length == 0 ? null : strReceiver; int? TakeType = strTakeType.Length == 0 ? null : (int?)Convert.ToInt32(strTakeType); int? Sender = strSender.Length == 0 ? null : (int?)Convert.ToInt32(strSender); string FromType = strFromType.Length == 0 ? null : strFromType; string BillStatus = strBillStatus.Length == 0 ? null : strBillStatus; int? FlowStatus = strFlowStatus.Length == 0 ? null : (int?)Convert.ToInt32(strFlowStatus); int? FromBillID = strFromBillID.Length == 0 ? null : (int?)Convert.ToInt32(strFromBillID); int? Seller = strSeller.Length == 0 ? null : (int?)Convert.ToInt32(strSeller); int? ProjectID = strProjectID.Length == 0 ? null : (int?)Convert.ToInt32(strProjectID); //扩展属性 string EFIndex = Request.QueryString["EFIndex"]; string EFDesc = Request.QueryString["EFDesc"]; GetBillExAttrControl1.ExtIndex = EFIndex; GetBillExAttrControl1.ExtValue = EFDesc; GetBillExAttrControl1.SetExtControlValue(); SellSendModel model = new SellSendModel(); model.BillStatus = BillStatus; model.TakeType = TakeType; model.Receiver = Receiver; model.FromBillID = FromBillID; model.FromType = FromType; model.SendNo = orderNo; model.Sender = Sender; model.Title = Title; model.Seller = Seller; model.ProjectID = ProjectID; dt = SellSendBus.GetOrderList(model, FlowStatus,EFIndex,EFDesc, pageIndex, pageCount, ord, ref TotalCount); //导出标题 string headerTitle = "发货单编号|发货单主题|销售订单|客户|业务员|发货人|收货人|交货方式|单据状态|审批状态"; //string headerTitle = "建档日期|启用状态"; string[] header = headerTitle.Split('|'); //导出标题所对应的列字段名称 string columnFiled = "SendNo|Title|OrderNo|CustName|SellerName|Receiver|SenderName|TypeName|BillStatusText|FlowInstanceText"; //string columnFiled = "CreateDate|strUsedStatus"; string[] field = columnFiled.Split('|'); XBase.Common.OutputToExecl.ExportToTable(this.Page, dt, header, field, "销售发货单列表"); }
/// <summary> /// 获取销售发货通知单 /// </summary> /// <param name="companycd"></param> /// <returns></returns> public static DataTable GetSellSendList(SellSendModel model) { string sql = "select ID,SendNo,isnull(Title,'')Title,ISNULL(CONVERT(VARCHAR(10),CreateDate,21),'') AS CreateDate from officedba.SellSend where CompanyCD='" + model.CompanyCD + "' and BillStatus=2"; SqlCommand comm = new SqlCommand(); //添加公司代码参数 if (!string.IsNullOrEmpty(model.SendNo)) { sql += " and SendNo like '%'+ @SendNo +'%'"; comm.Parameters.Add(SqlHelper.GetParameterFromString("@SendNo", model.SendNo)); } if (!string.IsNullOrEmpty(model.Title)) { sql += " and Title like '%'+ @Title +'%'"; comm.Parameters.Add(SqlHelper.GetParameterFromString("@Title", model.Title)); } comm.CommandText = sql; return SqlHelper.ExecuteSearch(comm); }
/// <summary> /// 获取单据列表 /// </summary> /// <param name="sellOfferModel">sellOfferModel表实体</param> /// <param name="FlowStatus">审批状态</param> /// <returns></returns> public static DataTable GetOrderList(SellSendModel sellSendModel, int? FlowStatus, string EFIndex, string EFDesc, int pageIndex, int pageCount, string ord, ref int TotalCount) { return SellSendDBHelper.GetOrderList(sellSendModel, FlowStatus, EFIndex, EFDesc, pageIndex, pageCount, ord, ref TotalCount); }
/// <summary> /// 取消确认单据 /// </summary> /// <param name="OrderNO">单据编号</param> /// <param name="strMsg">操作返回的信息</param> /// <returns></returns> public static bool UnConfirmOrder(SellSendModel sellSendModel, out string strMsg) { string strElement = string.Empty; bool isSucc = false;//是否添加成功 //定义变量 string remark = string.Empty; //操作名称 strElement = ConstUtil.LOG_PROCESS_UNCONFIRM; strMsg = ""; try { isSucc = SellSendDBHelper.UnConfirmOrder(sellSendModel.SendNo, out strMsg); //取消确认成功后调用“自动生成凭证”方法 if (isSucc == true) { string str = ""; bool AutoVoucherInsertFlag = XBase.Business.Office.FinanceManager.AutoVoucherBus.AntiConfirmVoucher("officedba.sellsend," + sellSendModel.ID, out str); if (AutoVoucherInsertFlag == true) { //strMsg += str; } else { strMsg += str; } } //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_SUCCESS; } catch (Exception ex) { //输出日志 SellLogCommon.WriteSystemLog(ex, LogInfo.LogType.SYSTEM, LogInfo.SystemLogKind.SYSTEM_ERROR, ConstUtil.MODULE_ID_SELLSEND_ADD); //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_FAILED; } //写入日志 SellLogCommon.InsertLog(sellSendModel.SendNo, ConstUtil.MODULE_ID_SELLSEND_ADD, ConstUtil.CODING_RULE_TABLE_SELLSEND, remark, strElement); return isSucc; }
/// <summary> /// 确认单据 /// </summary> /// <param name="OrderNO">单据编号</param> /// <param name="strMsg">操作返回的信息</param> /// <returns></returns> public static bool ConfirmOrder(SellSendModel sellSendModel, out string strMsg, out string strFieldText) { string strElement = string.Empty; bool isSucc = false;//是否添加成功 //定义变量 string remark = string.Empty; //操作名称 strElement = ConstUtil.LOG_PROCESS_CONFIRM; strFieldText = ""; strMsg = ""; try { isSucc = SellSendDBHelper.ConfirmOrder(sellSendModel.SendNo, out strMsg, out strFieldText); //确认成功后调用“自动生成凭证”方法 if (isSucc == true) { string str = ""; bool AutoVoucherInsertFlag = XBase.Business.Office.FinanceManager.AutoVoucherBus.AutoVoucherInsert(11, Convert.ToDecimal(sellSendModel.TotalFee), "officedba.sellsend," + sellSendModel.ID, sellSendModel.CurrencyType + "," + sellSendModel.Rate, Convert.ToInt32(sellSendModel.CustID), out str); //returnValue=0 业务单未设凭证模板,returnValue=1 企业不启用业务单自动生成凭证,returnValue = 2 企业不启用自动生成凭证自动登帐, returnValue = 3 自动生成凭证失败 ,returnValue = "4" 回写业务单登记凭证状态成功,returnValue = "5" 回写业务单登记凭证状态失败 if (AutoVoucherInsertFlag == true) { strMsg += str; } else { strMsg += str; } } //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_SUCCESS; } catch (Exception ex) { //输出日志 SellLogCommon.WriteSystemLog(ex, LogInfo.LogType.SYSTEM, LogInfo.SystemLogKind.SYSTEM_ERROR, ConstUtil.MODULE_ID_SELLSEND_ADD); //设置操作成功标识 remark = ConstUtil.LOG_PROCESS_FAILED; } //写入日志 SellLogCommon.InsertLog(sellSendModel.SendNo, ConstUtil.MODULE_ID_SELLSEND_ADD, ConstUtil.CODING_RULE_TABLE_SELLSEND, remark, strElement); return isSucc; }
/// <summary> /// 获取发货单列表 /// </summary> /// <param name="sellContractModel">sellContractModel表实体</param> /// <param name="FlowStatus">审批状态</param> /// <returns></returns> public static DataTable GetOrderList(SellSendModel sellSendModel, int? FlowStatus, string EFIndex, string EFDesc, int pageIndex, int pageCount, string ord, ref int TotalCount) { string strSql = string.Empty; strSql = "select * from (SELECT s.SendNo, s.ID,s.ModifiedDate, s.Title, ISNULL(so.OrderNo, '') AS OrderNo, s.Receiver, "; strSql += "ISNULL(e1.EmployeeName, '') AS SenderName, ISNULL(e2.EmployeeName,'') AS SellerName, "; strSql += "ISNULL(c.CustName, '') AS CustName, CASE s.FromType WHEN 0 THEN '无来源' WHEN 1 THEN '销售订单' END AS FromTypeText, "; strSql += "CASE s.BillStatus WHEN 1 THEN '制单' WHEN 2 THEN '执行' WHEN 3 THEN '变更' "; strSql += "WHEN 4 THEN '手工结单' WHEN 5 THEN '自动结单' END AS BillStatusText, "; strSql += "CASE WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += " where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc )IS NULL THEN '' "; strSql += "WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += "where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc )=1 THEN "; strSql += "'待审批' WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += "where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc ) = 2 THEN '审批中' "; strSql += " WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += " where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc ) = 3 THEN '审批通过' "; strSql += "WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += "where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc )=4 THEN '审批不通过' "; strSql += " WHEN (select top 1 FlowStatus from officedba.FlowInstance "; strSql += " where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc ) = 5 THEN "; strSql += "'撤销审批' END AS FlowInstanceText, isnull(CASE ((SELECT count(1) "; strSql += "FROM officedba.SellBack AS sb WHERE sb.FromType = '1' AND sb.FromBillID = s.ID) + "; strSql += "(SELECT count(1) FROM officedba.StorageOutSell AS soo "; strSql += "WHERE soo.FromType = '1' AND soo.FromBillID = s.ID) + "; strSql += "(SELECT count(1) FROM officedba.SellChannelSttl AS scs "; strSql += "WHERE scs.FromType = '1' AND scs.FromBillID = s.ID) + "; strSql += "(SELECT count(1) FROM officedba.SellChannelSttlDetail AS scsd "; strSql += "WHERE scsd.FromType = '1' AND scsd.FromBillID = s.ID) + "; strSql += "(SELECT count(1) FROM officedba.SellBackDetail AS sbd WHERE sbd.FromType = '1' AND sbd.FromBillID = s.ID)) "; strSql += "WHEN 0 THEN '无引用' END, '被引用') AS RefText, isnull(cb.TypeName, '') AS TypeName,(select top 1 FlowStatus from officedba.FlowInstance where BillID=s.ID AND BillTypeFlag = 5 AND BillTypeCode = 4 order by ModifiedDate desc )as FlowStatus "; strSql += "FROM officedba.SellSend AS s LEFT OUTER JOIN "; strSql += "officedba.CodePublicType AS cb ON s.TakeType = cb.ID LEFT OUTER JOIN "; strSql += "officedba.SellOrder AS so ON s.FromBillID = so.ID LEFT OUTER JOIN "; strSql += "officedba.EmployeeInfo AS e1 ON s.Sender = e1.ID LEFT OUTER JOIN "; strSql += "officedba.EmployeeInfo AS e2 ON s.Seller = e2.ID LEFT OUTER JOIN "; strSql += "officedba.CustInfo AS c ON s.CustID = c.ID where s.CompanyCD=@CompanyCD "; strSql += " and ( charindex('," + sellSendModel.Creator + ",' , ','+s.CanViewUser+',')>0 or s.Creator=" + sellSendModel.Creator + " or s.CanViewUser='' or s.CanViewUser is null) "; string strCompanyCD = string.Empty;//单位编号 strCompanyCD = ((UserInfoUtil)SessionUtil.Session["UserInfo"]).CompanyCD; ArrayList arr = new ArrayList(); //扩展属性 if (!string.IsNullOrEmpty(EFIndex) && !string.IsNullOrEmpty(EFDesc)) { strSql += " and s.ExtField" + EFIndex + " like @EFDesc "; arr.Add(new SqlParameter("@EFDesc", "%" + EFDesc + "%")); } arr.Add(new SqlParameter("@CompanyCD", strCompanyCD)); if (sellSendModel.ProjectID != null) { strSql += " and s.ProjectID=@ProjectID "; arr.Add(new SqlParameter("@ProjectID", sellSendModel.ProjectID)); } if (sellSendModel.BillStatus != null) { strSql += " and s.BillStatus= @BillStatus"; arr.Add(new SqlParameter("@BillStatus", sellSendModel.BillStatus)); } if (sellSendModel.FromBillID != null) { strSql += " and s.FromBillID=@FromBillID"; arr.Add(new SqlParameter("@FromBillID", sellSendModel.FromBillID)); ; } if (sellSendModel.FromType != null) { strSql += " and s.FromType=@FromType"; arr.Add(new SqlParameter("@FromType", sellSendModel.FromType)); } if (sellSendModel.SendNo != null) { strSql += " and s.SendNo like @SendNo"; arr.Add(new SqlParameter("@SendNo", "%" + sellSendModel.SendNo + "%")); } if (sellSendModel.Receiver != null) { if (FlowStatus != 0) { strSql += " and s.Receiver like @Receiver"; arr.Add(new SqlParameter("@Receiver", "%" + sellSendModel.Receiver + "%")); } else { strSql += " and f.Receiver is null "; } } if (sellSendModel.Sender != null) { strSql += " and s.Sender=@Sender"; arr.Add(new SqlParameter("@Sender", sellSendModel.Sender)); } if (sellSendModel.Title != null) { strSql += " and s.Title like @Title"; arr.Add(new SqlParameter("@Title", "%" + sellSendModel.Title + "%")); } if (sellSendModel.TakeType != null) { strSql += " and s.TakeType=@TakeType"; arr.Add(new SqlParameter("@TakeType", sellSendModel.TakeType)); } if (sellSendModel.Seller != null) { strSql += " and s.Seller=@Seller"; arr.Add(new SqlParameter("@Seller", sellSendModel.Seller)); } strSql += " ) as f where 1=1 "; if (FlowStatus != null) { if (FlowStatus != 0) { strSql += " and f.FlowStatus=@FlowStatus"; arr.Add(new SqlParameter("@FlowStatus", FlowStatus)); } else { strSql += " and f.FlowStatus is null "; } } return SqlHelper.CreateSqlByPageExcuteSqlArr(strSql.ToString(), pageIndex, pageCount, ord, arr, ref TotalCount); }
/// <summary> /// 为主表插入数据 /// </summary> /// <param name="sellSendModel"></param> /// <param name="tran"></param> private static void InsertSellSend(Hashtable htExtAttr, SellSendModel sellSendModel, TransactionManager tran) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into officedba.SellSend("); strSql.Append("CompanyCD,CustID,SendNo,FromBillID,Title,FromType,SellType,BusiType,PayType,MoneyType,TakeType,CarryType,SendAddr,Sender,ReceiveAddr,Receiver,Tel,Modile,Post,IntendSendDate,Transporter,TransportFee,TransPayType,CurrencyType,Rate,TotalPrice,Tax,TotalFee,Discount,PayRemark,DeliverRemark,PackTransit,Remark,BillStatus,Creator,CreateDate,Confirmor,ConfirmDate,Closer,CloseDate,ModifiedDate,ModifiedUserID,SellDeptId,DiscountTotal,RealTotal,isAddTax,CountTotal,Seller,ProjectID,CanViewUser)"); strSql.Append(" values ("); strSql.Append("@CompanyCD,@CustID,@SendNo,@FromBillID,@Title,@FromType,@SellType,@BusiType,@PayType,@MoneyType,@TakeType,@CarryType,@SendAddr,@Sender,@ReceiveAddr,@Receiver,@Tel,@Modile,@Post,@IntendSendDate,@Transporter,@TransportFee,@TransPayType,@CurrencyType,@Rate,@TotalPrice,@Tax,@TotalFee,@Discount,@PayRemark,@DeliverRemark,@PackTransit,@Remark,@BillStatus,@Creator,@CreateDate,@Confirmor,@ConfirmDate,@Closer,@CloseDate,@ModifiedDate,@ModifiedUserID,@SellDeptId,@DiscountTotal,@RealTotal,@isAddTax,@CountTotal,@Seller,@ProjectID,@CanViewUser)"); SqlParameter[] param = null; ArrayList lcmd = new ArrayList(); #region 参数 lcmd.Add(SqlHelper.GetParameterFromString("@CompanyCD", sellSendModel.CompanyCD)); lcmd.Add(SqlHelper.GetParameterFromString("@CustID", sellSendModel.CustID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@SendNo", sellSendModel.SendNo)); lcmd.Add(SqlHelper.GetParameterFromString("@Title", sellSendModel.Title)); lcmd.Add(SqlHelper.GetParameterFromString("@FromType", sellSendModel.FromType)); lcmd.Add(SqlHelper.GetParameterFromString("@SellType", sellSendModel.SellType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@BusiType", sellSendModel.BusiType)); lcmd.Add(SqlHelper.GetParameterFromString("@PayType", sellSendModel.PayType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@MoneyType", sellSendModel.MoneyType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TakeType", sellSendModel.TakeType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CarryType", sellSendModel.CarryType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@SendAddr", sellSendModel.SendAddr)); lcmd.Add(SqlHelper.GetParameterFromString("@Sender", sellSendModel.Sender.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ReceiveAddr", sellSendModel.ReceiveAddr)); lcmd.Add(SqlHelper.GetParameterFromString("@Receiver", sellSendModel.Receiver)); lcmd.Add(SqlHelper.GetParameterFromString("@Tel", sellSendModel.Tel)); lcmd.Add(SqlHelper.GetParameterFromString("@Modile", sellSendModel.Modile)); lcmd.Add(SqlHelper.GetParameterFromString("@Post", sellSendModel.Post)); lcmd.Add(SqlHelper.GetParameterFromString("@IntendSendDate", sellSendModel.IntendSendDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Transporter", sellSendModel.Transporter.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TransportFee", sellSendModel.TransportFee.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TransPayType", sellSendModel.TransPayType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CurrencyType", sellSendModel.CurrencyType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Rate", sellSendModel.Rate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TotalPrice", sellSendModel.TotalPrice.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Tax", sellSendModel.Tax.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TotalFee", sellSendModel.TotalFee.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Discount", sellSendModel.Discount.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@PayRemark", sellSendModel.PayRemark)); lcmd.Add(SqlHelper.GetParameterFromString("@DeliverRemark", sellSendModel.DeliverRemark)); lcmd.Add(SqlHelper.GetParameterFromString("@PackTransit", sellSendModel.PackTransit)); lcmd.Add(SqlHelper.GetParameterFromString("@Remark", sellSendModel.Remark)); lcmd.Add(SqlHelper.GetParameterFromString("@BillStatus", sellSendModel.BillStatus)); lcmd.Add(SqlHelper.GetParameterFromString("@Creator", sellSendModel.Creator.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CreateDate", sellSendModel.CreateDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Confirmor", sellSendModel.Confirmor.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ConfirmDate", sellSendModel.ConfirmDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Closer", sellSendModel.Closer.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CloseDate", sellSendModel.CloseDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ModifiedDate", sellSendModel.ModifiedDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ModifiedUserID", sellSendModel.ModifiedUserID)); lcmd.Add(SqlHelper.GetParameterFromString("@SellDeptId", sellSendModel.SellDeptId.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@DiscountTotal", sellSendModel.DiscountTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@RealTotal", sellSendModel.RealTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@isAddTax", sellSendModel.isAddTax.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CountTotal", sellSendModel.CountTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Seller", sellSendModel.Seller.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@FromBillID", sellSendModel.FromBillID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ProjectID", sellSendModel.ProjectID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CanViewUser", sellSendModel.CanViewUser)); #endregion #region 拓展属性 if (htExtAttr != null && htExtAttr.Count != 0) { strSql.Append(" ;UPDATE officedba.SellSend set "); foreach (DictionaryEntry de in htExtAttr)// fileht为一个Hashtable实例 { strSql.Append(de.Key.ToString().Trim() + "=@" + de.Key.ToString().Trim() + ","); lcmd.Add(SqlHelper.GetParameterFromString("@" + de.Key.ToString().Trim(), de.Value.ToString().Trim())); } strSql.Append(" BillStatus=@BillStatus where CompanyCD=@CompanyCD and SendNo=@SendNo "); } if (lcmd != null && lcmd.Count > 0) { param = new SqlParameter[lcmd.Count]; for (int i = 0; i < lcmd.Count; i++) { param[i] = (SqlParameter)lcmd[i]; } } #endregion foreach (SqlParameter para in param) { if (para.Value == null) { para.Value = DBNull.Value; } } SqlHelper.ExecuteNonQuery(tran.Trans, CommandType.Text, strSql.ToString(), param); }
/// <summary> /// 更新主表数据 /// </summary> /// <param name="sellBackModel"></param> /// <param name="tran"></param> private static void UpdateSellSend(Hashtable htExtAttr, SellSendModel sellSendModel, TransactionManager tran) { StringBuilder strSql = new StringBuilder(); strSql.Append("update officedba.SellSend set "); strSql.Append("CustID=@CustID,"); strSql.Append("Title=@Title,"); strSql.Append("FromType=@FromType,"); strSql.Append("SellType=@SellType,"); strSql.Append("BusiType=@BusiType,"); strSql.Append("PayType=@PayType,"); strSql.Append("MoneyType=@MoneyType,"); strSql.Append("TakeType=@TakeType,"); strSql.Append("CarryType=@CarryType,"); strSql.Append("SendAddr=@SendAddr,"); strSql.Append("Sender=@Sender,"); strSql.Append("ReceiveAddr=@ReceiveAddr,"); strSql.Append("Receiver=@Receiver,"); strSql.Append("Tel=@Tel,"); strSql.Append("Modile=@Modile,"); strSql.Append("Post=@Post,"); strSql.Append("IntendSendDate=@IntendSendDate,"); strSql.Append("Transporter=@Transporter,"); strSql.Append("TransportFee=@TransportFee,"); strSql.Append("TransPayType=@TransPayType,"); strSql.Append("CurrencyType=@CurrencyType,"); strSql.Append("Rate=@Rate,"); strSql.Append("TotalPrice=@TotalPrice,"); strSql.Append("Tax=@Tax,"); strSql.Append("TotalFee=@TotalFee,"); strSql.Append("Discount=@Discount,"); strSql.Append("PayRemark=@PayRemark,"); strSql.Append("DeliverRemark=@DeliverRemark,"); strSql.Append("PackTransit=@PackTransit,"); strSql.Append("Remark=@Remark,"); strSql.Append("BillStatus=@BillStatus,"); strSql.Append("ModifiedDate=getdate(),"); strSql.Append("ModifiedUserID=@ModifiedUserID,"); strSql.Append("SellDeptId=@SellDeptId,"); strSql.Append("DiscountTotal=@DiscountTotal,"); strSql.Append("RealTotal=@RealTotal,"); strSql.Append("isAddTax=@isAddTax,"); strSql.Append("CountTotal=@CountTotal,"); strSql.Append("Seller=@Seller,"); strSql.Append("FromBillID=@FromBillID"); strSql.Append(",ProjectID=@ProjectID"); strSql.Append(",CanViewUser=@CanViewUser"); strSql.Append(" where CompanyCD=@CompanyCD and SendNo=@SendNo "); SqlParameter[] param = null; ArrayList lcmd = new ArrayList(); #region 参数 lcmd.Add(SqlHelper.GetParameterFromString("@CompanyCD", sellSendModel.CompanyCD)); lcmd.Add(SqlHelper.GetParameterFromString("@CustID", sellSendModel.CustID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@SendNo", sellSendModel.SendNo)); lcmd.Add(SqlHelper.GetParameterFromString("@Title", sellSendModel.Title)); lcmd.Add(SqlHelper.GetParameterFromString("@FromType", sellSendModel.FromType)); lcmd.Add(SqlHelper.GetParameterFromString("@SellType", sellSendModel.SellType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@BusiType", sellSendModel.BusiType)); lcmd.Add(SqlHelper.GetParameterFromString("@PayType", sellSendModel.PayType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@MoneyType", sellSendModel.MoneyType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TakeType", sellSendModel.TakeType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CarryType", sellSendModel.CarryType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@SendAddr", sellSendModel.SendAddr)); lcmd.Add(SqlHelper.GetParameterFromString("@Sender", sellSendModel.Sender.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ReceiveAddr", sellSendModel.ReceiveAddr)); lcmd.Add(SqlHelper.GetParameterFromString("@Receiver", sellSendModel.Receiver)); lcmd.Add(SqlHelper.GetParameterFromString("@Tel", sellSendModel.Tel)); lcmd.Add(SqlHelper.GetParameterFromString("@Modile", sellSendModel.Modile)); lcmd.Add(SqlHelper.GetParameterFromString("@Post", sellSendModel.Post)); lcmd.Add(SqlHelper.GetParameterFromString("@IntendSendDate", sellSendModel.IntendSendDate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Transporter", sellSendModel.Transporter.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TransportFee", sellSendModel.TransportFee.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TransPayType", sellSendModel.TransPayType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CurrencyType", sellSendModel.CurrencyType.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Rate", sellSendModel.Rate.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TotalPrice", sellSendModel.TotalPrice.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Tax", sellSendModel.Tax.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@TotalFee", sellSendModel.TotalFee.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Discount", sellSendModel.Discount.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@PayRemark", sellSendModel.PayRemark)); lcmd.Add(SqlHelper.GetParameterFromString("@DeliverRemark", sellSendModel.DeliverRemark)); lcmd.Add(SqlHelper.GetParameterFromString("@PackTransit", sellSendModel.PackTransit)); lcmd.Add(SqlHelper.GetParameterFromString("@Remark", sellSendModel.Remark)); lcmd.Add(SqlHelper.GetParameterFromString("@BillStatus", sellSendModel.BillStatus)); lcmd.Add(SqlHelper.GetParameterFromString("@ModifiedUserID", sellSendModel.ModifiedUserID)); lcmd.Add(SqlHelper.GetParameterFromString("@SellDeptId", sellSendModel.SellDeptId.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@DiscountTotal", sellSendModel.DiscountTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@RealTotal", sellSendModel.RealTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@isAddTax", sellSendModel.isAddTax.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CountTotal", sellSendModel.CountTotal.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@Seller", sellSendModel.Seller.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@FromBillID", sellSendModel.FromBillID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@ProjectID", sellSendModel.ProjectID.ToString())); lcmd.Add(SqlHelper.GetParameterFromString("@CanViewUser", sellSendModel.CanViewUser)); #endregion #region 拓展属性 if (htExtAttr != null && htExtAttr.Count != 0) { strSql.Append(" ;UPDATE officedba.SellSend set "); foreach (DictionaryEntry de in htExtAttr)// fileht为一个Hashtable实例 { strSql.Append(de.Key.ToString().Trim() + "=@" + de.Key.ToString().Trim() + ","); lcmd.Add(SqlHelper.GetParameterFromString("@" + de.Key.ToString().Trim(), de.Value.ToString().Trim())); } strSql.Append(" BillStatus=@BillStatus where CompanyCD=@CompanyCD and SendNo=@SendNo "); } if (lcmd != null && lcmd.Count > 0) { param = new SqlParameter[lcmd.Count]; for (int i = 0; i < lcmd.Count; i++) { param[i] = (SqlParameter)lcmd[i]; } } #endregion foreach (SqlParameter para in param) { if (para.Value == null) { para.Value = DBNull.Value; } } SqlHelper.ExecuteNonQuery(tran.Trans, CommandType.Text, strSql.ToString(), param); }