using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Collections.Generic; using System.Text.RegularExpressions; using System.Data.SqlClient; using System.Text; using System.Globalization; using JsonHelper; using DSWeb.Models; using DSWeb.EntityDA; using DSWeb.Log; using DSWeb.Authority; using DSWeb.DataAccess; using System.IO; using System.Xml; namespace DSWeb.SeaiFee { public partial class WmsOutEdit : System.Web.UI.Page { private string strUserID; private string strCompanyID;//公司GID private string strShowName;//用户显示名 private string strDeptName;//部门名称 private string strSearch;//仓储费率的客户、合同号、货物名称 private string WoJSON;//出库明细信息 private string WoDetailJSON;//出库明细信息 private string recvJSON_3; private string payJSON_3; private string recvJSON_2; private int iImportTemplateDetailType; private string strCacheName; private string strImportHistoryCacheName; private int iHistoryType;//1-应收 2-应付 //private string strHandle; //private bool isJsFee = false; private int ischangecust = 0; private IList CustParent=new List(); T_ALL_DA T_ALL_DA = new T_ALL_DA(); UnicodeEncoding unicode = new UnicodeEncoding(); private string recvJSON; private string payJSON; protected void Page_Load(object sender, EventArgs e) { #region 基本信息 this.h_oplb.Value = "op_Seai"; this.h_wmsoutbsno.Value = ""; this.h_Mode.Value = "0"; this.txt_outdate.Value = DateTime.Today.ToString("yyyy-MM-dd"); this.txt_oldcustFeeDate.Value = this.txt_outdate.Value; //addwmsout if (Session["USERID"] != null) { strUserID = Session["USERID"].ToString(); } if (Session["SHOWNAME"] != null) { strShowName = Session["SHOWNAME"].ToString(); } if (Session["COMPANYID"] != null) { strCompanyID = Session["COMPANYID"].ToString(); } if (Session["DEPTNAME"] != null) { strDeptName = Session["DEPTNAME"].ToString(); } // if (Request.QueryString["handle"] != null) { this.h_Handle.Value = Request.QueryString["handle"].ToString(); } if (Request.QueryString["outgid"] != null) { this.h_outgid.Value = Request.QueryString["outgid"].ToString(); } if (Request.QueryString["search"] != null) { UnicodeEncoding unicode = new UnicodeEncoding(); strSearch = unicode.GetString(unicode.GetBytes(Regex.Unescape(Request.QueryString["search"].ToString()))); } if (Request.QueryString["bsno"] != null) { this.h_opseaibsno.Value = Request.QueryString["bsno"].ToString(); } else { this.h_opseaibsno.Value = ""; this.h_bsno.Value = this.h_outgid.Value.Trim(); } if (Request.QueryString["ischangecust"] != null) { ischangecust = int.Parse(Request.QueryString["ischangecust"].ToString()); if (ischangecust == 1) { this.h_Ischange.Value = "1"; this.btn_Out.InnerHtml = "货权转移"; this.Title = "货权转移"; this.h_IsSetRate.Value = "1"; //this.txt_oldcustFeeDate.Disabled = false; } else { this.h_Ischange.Value = "0"; this.h_IsSetRate.Value = "0"; this.btn_Out.InnerHtml = "生成出库单"; this.Title = "生成出库单"; //this.txt_oldcustFeeDate.Disabled = true; } } this.h_islock.Value = "false"; if (Request.QueryString["isdisabled"] != null) { this.h_isdisabled.Value = Request.QueryString["isdisabled"].ToString().Trim(); bool isdisabled = bool.Parse(this.h_isdisabled.Value.Trim()); if (Request.QueryString["islock"] != null) { this.h_islock.Value = Request.QueryString["islock"].ToString().Trim(); } setIsDisabled(isdisabled, false, bool.Parse(this.h_islock.Value.Trim())); } else { //货主名称 sel_customer.Visible = true; txt_customer.Visible = false; //仓库名称 sel_storage.Visible = true; txt_storage.Visible = false; //品名 sel_goods.Visible = true; txt_goods.Visible = false; } #endregion #region 保存操作 WoJSON = ""; WoDetailJSON = ""; WoJSON=this.WoContainer.Value; WoDetailJSON = this.WoDetailContainer.Value; recvJSON_3 = this.recvContainer_3.Value.Trim(); payJSON_3 = this.payContainer_3.Value.Trim(); recvJSON_2 = ""; recvJSON_2 = this.recvContainer_2.Value.Trim(); // if (this.h_post_2.Value.Trim() != "") { //保存操作 if (this.h_post_2.Value.Trim() == "1") { if (!recvJSON_3.Trim().Equals("") || !payJSON_3.Trim().Equals("")) { // 将页面post获取的费用信息保存或更新“费用信息表”ch_fee,并保存或更新“利润信息”fee_gain,并返回操作结果 SaveFeeAction(); } } else if (this.h_post_2.Value.Trim() == "2") { if (!WoJSON.Trim().Equals("")) { if (this.h_Handle.Value.Trim() == "edit") { SaveWoOutActionEdit(); } else { SaveWoOutAction(); } } } else if (this.h_post_2.Value.Trim() == "3") { if (!WoJSON.Trim().Equals("")) { if (this.h_Handle.Value.Trim() == "edit") { CargoRightTransferEdit(); } else { CargoRightTransfer(); } } } else if (this.h_post_2.Value.Trim() == "4") { //仓储费率 if (!recvJSON_2.Trim().Equals("")) { SaveRateAction(); recvJSON_2 = ""; this.recvContainer_2.Value = ""; this.h_post_2.Value = ""; } } } #endregion if (this.h_Handle.Value.Trim() == "edit") { //获取出库单的信息 h_Mode.Value = "1"; getHJ(); this.divchfee.Visible = true; // #region 权限可视范围 RangeDA RangeDA = new RangeDA(); this.hdRangeV.Value = RangeDA.GetVISIBLERANGE(strUserID.Trim(), "modWmsOutList"); this.hdRangeO.Value = RangeDA.GetOPERATERANGE(strUserID.Trim(), "modWmsOutList"); string alt = ""; if (this.hdRangeV.Value.Trim() != this.hdRangeO.Value.Trim()) { if (this.hdRangeO.Value.Trim().Equals("0"))//全部 { } else if (this.hdRangeO.Value.Trim().Equals("1"))//分公司 { alt = RangeDA.GetWmsOutListCompany(strCompanyID, this.h_outgid.Value.Trim()); if (alt == "") { setIsDisabled(true, true, bool.Parse(this.h_islock.Value.Trim())); } } else if (this.hdRangeO.Value.Trim().Equals("2"))//部门 { alt = RangeDA.GetWmsOutListDEPT(strDeptName, this.h_outgid.Value.Trim(), strCompanyID, strUserID); if (alt == "") { setIsDisabled(true, true, bool.Parse(this.h_islock.Value.Trim())); } } else if (this.hdRangeO.Value.Trim().Equals("3"))//个人 { alt = RangeDA.GetWmsOutListPerson(strUserID, this.h_outgid.Value.Trim(), strCompanyID); if (alt == "") { setIsDisabled(true, true, bool.Parse(this.h_islock.Value.Trim())); } } else if (this.hdRangeO.Value.Trim().Equals("4"))//无 { setIsDisabled(true, true, bool.Parse(this.h_islock.Value.Trim())); } } #endregion } else { this.divchfee.Visible = false; this.btislock.Visible = false; this.btnotislock.Visible = false; this.btOldCustFeeDate.Visible = false; this.btUpdateGOODSOUTFEE.Visible = false; } #region 应收应付费用录入 recvJSON = ""; payJSON = ""; recvJSON = this.recvContainer.Value.Trim(); payJSON = this.payContainer.Value.Trim(); #region 获取引入费用模板缓存信息 if (recvJSON.Trim().Equals("") && payJSON.Trim().Equals("") && strCacheName != null && iImportTemplateDetailType > 0) { DataTable templateTable = (DataTable)Session[strCacheName]; StringBuilder templateBuilder = new StringBuilder(); if (templateTable != null) { if (templateTable.Rows.Count > 0) { templateBuilder.Append("{\"templates\":["); for (int i = 0; i < templateTable.Rows.Count; i++) { templateTable.Rows[i]["GID"] = Guid.NewGuid().ToString(); if (i == templateTable.Rows.Count - 1) { templateBuilder.Append("{"); templateBuilder.Append("\"tid\":\"" + templateTable.Rows[i]["GID"].ToString() + "\","); templateBuilder.Append("\"fname\":\"" + templateTable.Rows[i]["FEENAME"].ToString() + "\","); templateBuilder.Append("\"client\":" + templateTable.Rows[i]["CLIENT"].ToString() + ","); templateBuilder.Append("\"cust\":\"" + templateTable.Rows[i]["CUSTOMERNAME"].ToString() + "\","); templateBuilder.Append("\"unit\":\"" + templateTable.Rows[i]["UNIT"].ToString() + "\","); templateBuilder.Append("\"uprice\":" + templateTable.Rows[i]["UNITPRICE"].ToString() + ","); templateBuilder.Append("\"cur\":\"" + templateTable.Rows[i]["CURRENCY"].ToString() + "\","); templateBuilder.Append("\"exrate\":" + templateTable.Rows[i]["EXCHANGERATE"].ToString() + ","); templateBuilder.Append("\"remark\":\"" + templateTable.Rows[i]["REMARK"].ToString() + "\","); templateBuilder.Append("\"type\":" + templateTable.Rows[i]["FEETYPE"].ToString().ToString()); templateBuilder.Append("}"); } else { templateBuilder.Append("{"); templateBuilder.Append("\"tid\":\"" + templateTable.Rows[i]["GID"].ToString() + "\","); templateBuilder.Append("\"fname\":\"" + templateTable.Rows[i]["FEENAME"].ToString() + "\","); templateBuilder.Append("\"client\":" + templateTable.Rows[i]["CLIENT"].ToString() + ","); templateBuilder.Append("\"cust\":\"" + templateTable.Rows[i]["CUSTOMERNAME"].ToString() + "\","); templateBuilder.Append("\"unit\":\"" + templateTable.Rows[i]["UNIT"].ToString() + "\","); templateBuilder.Append("\"uprice\":" + templateTable.Rows[i]["UNITPRICE"].ToString() + ","); templateBuilder.Append("\"cur\":\"" + templateTable.Rows[i]["CURRENCY"].ToString() + "\","); templateBuilder.Append("\"exrate\":" + templateTable.Rows[i]["EXCHANGERATE"].ToString() + ","); templateBuilder.Append("\"remark\":\"" + templateTable.Rows[i]["REMARK"].ToString() + "\","); templateBuilder.Append("\"type\":" + templateTable.Rows[i]["FEETYPE"].ToString().ToString()); templateBuilder.Append("},"); } } templateBuilder.Append("]}"); this.h_importtype.Value = iImportTemplateDetailType.ToString(); this.h_cachename.Value = strCacheName; this.h_cachetemplate.Value = templateBuilder.ToString(); } else { this.h_importtype.Value = iImportTemplateDetailType.ToString(); this.h_cachename.Value = ""; this.h_cachetemplate.Value = ""; } } } #endregion #region 获取引入历史费用缓存信息 if (recvJSON.Trim().Equals("") && payJSON.Trim().Equals("") && strImportHistoryCacheName != null && iHistoryType > 0) { DataTable templateTable = (DataTable)Session[strImportHistoryCacheName]; StringBuilder templateBuilder = new StringBuilder(); if (templateTable != null) { if (templateTable.Rows.Count > 0) { templateBuilder.Append("{\"history\":["); for (int i = 0; i < templateTable.Rows.Count; i++) { templateTable.Rows[i]["GID"] = Guid.NewGuid().ToString(); if (i == templateTable.Rows.Count - 1) { templateBuilder.Append("{"); templateBuilder.Append("\"tid\":\"" + templateTable.Rows[i]["GID"].ToString() + "\","); templateBuilder.Append("\"fname\":\"" + templateTable.Rows[i]["FEENAME"].ToString() + "\","); templateBuilder.Append("\"cust\":\"" + templateTable.Rows[i]["CUSTOMERNAME"].ToString() + "\","); templateBuilder.Append("\"unit\":\"" + templateTable.Rows[i]["UNIT"].ToString() + "\","); templateBuilder.Append("\"uprice\":" + templateTable.Rows[i]["UNITPRICE"].ToString() + ","); templateBuilder.Append("\"quantity\":" + templateTable.Rows[i]["QUANTITY"].ToString() + ","); templateBuilder.Append("\"comm\":" + templateTable.Rows[i]["COMMISSIONRATE"].ToString() + ","); templateBuilder.Append("\"amount\":" + templateTable.Rows[i]["AMOUNT"].ToString() + ","); templateBuilder.Append("\"cur\":\"" + templateTable.Rows[i]["CURRENCY"].ToString() + "\","); templateBuilder.Append("\"exrate\":" + templateTable.Rows[i]["EXCHANGERATE"].ToString() + ","); templateBuilder.Append("\"frt\":\"" + templateTable.Rows[i]["FEEFRT"].ToString() + "\","); templateBuilder.Append("\"remark\":\"" + templateTable.Rows[i]["REMARK"].ToString() + "\","); templateBuilder.Append("\"isadv\":" + (templateTable.Rows[i]["ISADVANCEDPAY"].ToString().ToLower().Equals("true") ? 1 : 0) + ","); templateBuilder.Append("\"type\":" + templateTable.Rows[i]["FEETYPE"].ToString().ToString()); templateBuilder.Append("}"); } else { templateBuilder.Append("{"); templateBuilder.Append("\"tid\":\"" + templateTable.Rows[i]["GID"].ToString() + "\","); templateBuilder.Append("\"fname\":\"" + templateTable.Rows[i]["FEENAME"].ToString() + "\","); templateBuilder.Append("\"cust\":\"" + templateTable.Rows[i]["CUSTOMERNAME"].ToString() + "\","); templateBuilder.Append("\"unit\":\"" + templateTable.Rows[i]["UNIT"].ToString() + "\","); templateBuilder.Append("\"uprice\":" + templateTable.Rows[i]["UNITPRICE"].ToString() + ","); templateBuilder.Append("\"quantity\":" + templateTable.Rows[i]["QUANTITY"].ToString() + ","); templateBuilder.Append("\"comm\":" + templateTable.Rows[i]["COMMISSIONRATE"].ToString() + ","); templateBuilder.Append("\"amount\":" + templateTable.Rows[i]["AMOUNT"].ToString() + ","); templateBuilder.Append("\"cur\":\"" + templateTable.Rows[i]["CURRENCY"].ToString() + "\","); templateBuilder.Append("\"exrate\":" + templateTable.Rows[i]["EXCHANGERATE"].ToString() + ","); templateBuilder.Append("\"frt\":\"" + templateTable.Rows[i]["FEEFRT"].ToString() + "\","); templateBuilder.Append("\"remark\":\"" + templateTable.Rows[i]["REMARK"].ToString() + "\","); templateBuilder.Append("\"isadv\":" + (templateTable.Rows[i]["ISADVANCEDPAY"].ToString().ToLower().Equals("true") ? 1 : 0) + ","); templateBuilder.Append("\"type\":" + templateTable.Rows[i]["FEETYPE"].ToString().ToString()); templateBuilder.Append("},"); } } templateBuilder.Append("]}"); this.h_historytype.Value = iHistoryType.ToString(); this.h_historycachename.Value = strImportHistoryCacheName; this.h_cachehistory.Value = templateBuilder.ToString(); } else { this.h_historytype.Value = iHistoryType.ToString(); this.h_historycachename.Value = ""; this.h_cachehistory.Value = ""; } } } #endregion #region 保存操作 if (this.h_post.Value.Trim() != "") { //保存操作 if (this.h_post.Value.Trim() == "1") { if (!recvJSON.Trim().Equals("") || !payJSON.Trim().Equals("")) { // 将页面post获取的费用信息保存或更新“费用信息表”ch_fee,并保存或更新“利润信息”fee_gain,并返回操作结果 SaveFeeAction(); } } } #endregion #endregion //加载下拉框 Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", ""); } #region 导出Excel protected void btExcel1_Click(object sender, EventArgs e) { //setExcelReport(); setExcelReport2(); } protected void setExcelReport2() { if (this.hdSQL.Value.Trim() != "") { T_ALL_DA T_ALL_DA = new T_ALL_DA(); DataSet DS = T_ALL_DA.GetAllSQL(this.hdSQL.Value.Trim()); if (DS != null) { ExcelDA ExcelDA = new EntityDA.ExcelDA(); MemoryStream ms = ExcelDA.RenderToExcel(DS.Tables[0], this.hdNAMES.Value.Trim()); ExcelDA.RenderToBrowser(ms, Context, "report.xls"); } } } protected void setExcelReport() { StringWriter sw = new StringWriter(); string sSQL = ""; //sw.WriteLine("结算单位\t委托编号\t主提单号\t分提单号\t船名\t航次\tETD\t目的港\t揽货人\t应收RMB\t实收RMB\t应收USD\t实收USD\t余额"); sw.WriteLine(this.hdNAMES.Value.Trim()); T_ALL_DA T_ALL_DA = new T_ALL_DA(); DataSet DS = T_ALL_DA.GetAllSQL(this.hdSQL.Value.Trim()); if (DS != null) { foreach (DataTable myTable in DS.Tables) { foreach (DataRow myRow in myTable.Rows)//遍历表 { sSQL = ""; for (int i = 0; i < myTable.Columns.Count; i++) { if (sSQL.Trim() != "") { sSQL += "\t"; } if (myRow[i].ToString() == null || myRow[i].ToString() == "") { sSQL += ""; if (sSQL.Trim() == "") { sSQL += "\t"; } } else { string ls = myRow[i].ToString().Trim(); if (i == 17) { ls = ls.Replace(" ", ","); ls = ls.Replace("\r\n", "。"); } sSQL += ls.Trim(); //sSQL += myRow[i].ToString(); } } sw.WriteLine(sSQL); } } // sw.Close(); switch ("MUEXCEL") { case "MUEXCEL": Response.AddHeader("Content-Disposition", "attachment; filename=report.xls"); Response.ContentType = "application/ms-excel"; break; case "MUTEXT": Response.AddHeader("Content-Disposition", "attachment; filename=report.txt"); Response.ContentType = "application/txt"; break; case "MUWORD": Response.AddHeader("Content-Disposition", "attachment; filename=report.doc"); Response.ContentType = "application/ms-word"; break; case "MUPDF": Response.AddHeader("Content-Disposition", "attachment; filename=report.pdf"); Response.ContentType = "application/pdf"; break; case "MUXML": Response.AddHeader("Content-Disposition", "attachment; filename=report.xml"); Response.ContentType = "application/xml"; break; } Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); Response.Write(sw); Response.End(); } } #endregion #region 应收应付费用录入 #region 将页面post获取的费用信息保存或更新“费用信息表”ch_fee,并保存或更新“利润信息”fee_gain,并返回操作结果 /// /// 将页面post获取的费用信息保存或更新“费用信息表”ch_fee,并保存或更新“利润信息”fee_gain,并返回操作结果 /// private void SaveFeeAction() { IList feeEntities = new List(); if (!recvJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities feeEntities = ResolveFeeJSON(recvJSON.Trim(), feeEntities); recvContainer.Value = ""; } if (!payJSON.Trim().Equals("")) { //将应付费用信息从前台页面写入费用实体类feeEntities feeEntities = ResolveFeeJSON(payJSON.Trim(), feeEntities); payContainer.Value = ""; } FeeDA feeDA = new FeeDA(); //如果是当前操作人权限范围只能查看应收或者应付时,不做更新。//(单独更新费用利润) if (ValidateUserFeeAuthority(1) || ValidateUserFeeAuthority(2)) { //将页面post获取的费用信息保存或更新“费用信息表”ch_fee,并保存或更新“利润信息”fee_gain,并返回操作结果 int iRecvState = feeDA.DoFee(feeEntities, this.h_bsno.Value.Trim(), strUserID);//strSeaBSNO if (iRecvState == 1) { gainContainer.Value = ""; if (Session[strCacheName] != null) { Session.Remove(strCacheName); } } } h_post.Value = "";//请求状态清空 } #endregion #region 将页面post获取的费用信息读入到费用实体类ch_fee中 /// /// 将页面post获取的费用信息读入到费用实体类ch_fee中 /// /// /// /// 将页面post获取的费用信息读入到费用实体类ch_fee中 private IList ResolveFeeJSON(string tempJSON, IList tempFeeEntities) { string strFilter = ""; if (tempJSON.IndexOf("[") >= 0 && tempJSON.IndexOf("]") > 0) { strFilter = tempJSON.Substring(tempJSON.IndexOf("[") + 1, tempJSON.IndexOf("]") - tempJSON.IndexOf("[") - 1); string[] strFees = strFilter.Split(new string[] { "},{" }, System.StringSplitOptions.RemoveEmptyEntries); if (strFees.Length > 0) { for (int i = 0; i < strFees.Length; i++) { strFees[i] = strFees[i].ToString().Replace("{", ""); strFees[i] = strFees[i].ToString().Replace("}", ""); string[] strCell = strFees[i].Split(new char[] { ',' }); if (strCell.Length > 0) { FeeEntity feeEntity = new FeeEntity(); for (int j = 0; j < strCell.Length; j++) { string[] strArg = strCell[j].Split(new char[] { ':' }); switch (strArg[0].Replace("\"", "")) { case "id": feeEntity.GID = strArg[1].ToString().Replace("\"", "").Trim(); break; case "type": feeEntity.FeeType = int.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "bsno": string str = strArg[1].ToString().Replace("\"", "").Trim(); if (str.Trim() == "") { feeEntity.BSNO = this.h_outgid.Value.Trim(); } else { feeEntity.BSNO = str; } break; case "status": //feeEntity.FeeStatus=int.Parse(strArg[1].ToString().Replace("\"", "").ToString()); break; case "fname": feeEntity.FeeName = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); break; case "cust": feeEntity.CustomerName = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); break; case "unit": string tempUnit = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); if (tempUnit.Equals("null") || tempUnit.Equals("")) { feeEntity.Unit = ""; } else { feeEntity.Unit = tempUnit; } break; case "price": feeEntity.UnitPrice = decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "quant": feeEntity.Quantity = decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "com": feeEntity.CommissionRate = decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "amount": feeEntity.Amount = decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "cur": feeEntity.Currency = strArg[1].ToString().Replace("\"", "").Trim(); break; case "rate": feeEntity.ExchangeRate = decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; case "frt": feeEntity.FeeFrt = strArg[1].ToString().Replace("\"", "").Trim(); break; case "remark": UnicodeEncoding unicode = new UnicodeEncoding(); string lsremark = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); feeEntity.Remark = lsremark.Trim(); break; case "isadv": feeEntity.IsAdvancePay = strArg[1].ToString().Replace("\"", "").Trim().Equals("1") ? true : false; break; case "linenum": feeEntity.LINENUM = strArg[1].ToString().Replace("\"", "").Trim() == "" ? 0 : int.Parse(strArg[1].ToString().Replace("\"", "").Trim()); break; default: break; } } feeEntity.WMSOUTBSNO = this.h_outgid.Value.Trim(); feeEntity.EnterOperator = this.strUserID; feeEntity.FeeStatus = 1; tempFeeEntities.Add(feeEntity); } } } } return tempFeeEntities; } #endregion #region 将页面post获取的利润值读入到利润实体类中 /// /// 将页面post获取的利润值读入到利润实体类中 /// /// 返回利润实体类 FeeProfitEntity private FeeProfitEntity GetRequestProfit() { FeeProfitEntity tempFeeProfitEntity = new FeeProfitEntity(); #region 保留 //tempFeeProfitEntity.RMBDR = Decimal.Parse(dvRecvRMBVal.InnerText.Trim()); //tempFeeProfitEntity.USDDR = Decimal.Parse(dvUSRecvVal.InnerHtml.Trim()); //tempFeeProfitEntity.OTHERDR = Decimal.Parse(dvOtherCurrencyRecvVal.InnerHtml.Trim()); //tempFeeProfitEntity.RMBCR = Decimal.Parse(dvPayRMBVal.InnerHtml.Trim()); //tempFeeProfitEntity.USDCR = Decimal.Parse(dvUSPayVal.InnerHtml.Trim()); //tempFeeProfitEntity.OTHERCR = Decimal.Parse(dvOtherCurrencyPayVal.InnerHtml.Trim()); //tempFeeProfitEntity.DRTTL = Decimal.Parse(dvRecvTotalVal.InnerHtml.Trim()); //tempFeeProfitEntity.CRTTL = Decimal.Parse(dvPaySumVal.InnerHtml.Trim()); //tempFeeProfitEntity.RMBProfit = Decimal.Parse(dvRMBProfitVal.InnerHtml.Trim()); //tempFeeProfitEntity.USDProfit = Decimal.Parse(dvUSProfitVal.InnerHtml.Trim()); //tempFeeProfitEntity.OTHERProfit = Decimal.Parse(dvOtherCurrencyProfitVal.InnerHtml.Trim()); //tempFeeProfitEntity.TTLProfit = Decimal.Parse(dvProfitTotalVal.InnerHtml.Trim()); //tempFeeProfitEntity.ProfitRate = dvProfitRateVal.InnerHtml.Trim(); #endregion if (!gainContainer.Value.Trim().Equals("")) { string[] gainList = gainContainer.Value.Trim().Split(new char[] { ',' }); if (!gainList[0].ToString().Trim().Equals("")) { tempFeeProfitEntity.RMBDR = Decimal.Parse(gainList[0].ToString().Trim()); tempFeeProfitEntity.USDDR = Decimal.Parse(gainList[1].ToString().Trim()); tempFeeProfitEntity.OTHERDR = Decimal.Parse(gainList[2].ToString().Trim()); tempFeeProfitEntity.RMBCR = Decimal.Parse(gainList[3].ToString().Trim()); tempFeeProfitEntity.USDCR = Decimal.Parse(gainList[4].ToString().Trim()); tempFeeProfitEntity.OTHERCR = Decimal.Parse(gainList[5].ToString().Trim()); tempFeeProfitEntity.DRTTL = Decimal.Parse(gainList[6].ToString().Trim()); tempFeeProfitEntity.CRTTL = Decimal.Parse(gainList[7].ToString().Trim()); tempFeeProfitEntity.RMBProfit = Decimal.Parse(gainList[8].ToString().Trim()); tempFeeProfitEntity.USDProfit = Decimal.Parse(gainList[9].ToString().Trim()); tempFeeProfitEntity.OTHERProfit = Decimal.Parse(gainList[10].ToString().Trim()); tempFeeProfitEntity.TTLProfit = Decimal.Parse(gainList[11].ToString().Trim()); tempFeeProfitEntity.ProfitRate = gainList[12].ToString().Trim() == "" ? "0%" : gainList[12].ToString().Trim(); tempFeeProfitEntity.CreateUser = strUserID; tempFeeProfitEntity.ModifiedUser = strUserID; } else { tempFeeProfitEntity.RMBDR = 0; tempFeeProfitEntity.USDDR = 0; tempFeeProfitEntity.OTHERDR = 0; tempFeeProfitEntity.RMBCR = 0; tempFeeProfitEntity.USDCR = 0; tempFeeProfitEntity.OTHERCR = 0; tempFeeProfitEntity.DRTTL = 0; tempFeeProfitEntity.CRTTL = 0; tempFeeProfitEntity.RMBProfit = 0; tempFeeProfitEntity.USDProfit = 0; tempFeeProfitEntity.OTHERProfit = 0; tempFeeProfitEntity.TTLProfit = 0; tempFeeProfitEntity.ProfitRate = "0%"; tempFeeProfitEntity.CreateUser = this.strUserID; tempFeeProfitEntity.ModifiedUser = this.strUserID; } } return tempFeeProfitEntity; } #endregion #region 获取用户应收、应付权限信息 /// /// 获取用户应收、应付权限信息 /// /// 费用类型 /// 返回 true 有权限操作数据 false 没有权限操作数据 private bool ValidateUserFeeAuthority(int tempFeeType) { int iResult = 0; if (tempFeeType == 1) { UserAuthorityManage userAuthorityManageOrder = new UserAuthorityManage(strUserID, "modSeaImportList"); UserAuthorityManage userRecvAuthorityManage = new UserAuthorityManage(strUserID, "modSeaiRecvFeeManagement"); if (userRecvAuthorityManage.OperateType != AuthorityType.NULL) { iResult = userAuthorityManageOrder.CheckOperateRange(ModuleType.OPSEAILIST, userRecvAuthorityManage.OperateType, strShowName, strCompanyID, strDeptName, this.h_bsno.Value.Trim(), "", strUserID);//strSeaBSNO } } else { UserAuthorityManage userAuthorityManageOrder = new UserAuthorityManage(strUserID, "modSeaImportList"); UserAuthorityManage userPayAuthorityManage = new UserAuthorityManage(strUserID, "modSeaiPayFeeManagement"); if (userPayAuthorityManage.OperateType != AuthorityType.NULL) { iResult = userAuthorityManageOrder.CheckOperateRange(ModuleType.OPSEAILIST, userPayAuthorityManage.OperateType, strShowName, strCompanyID, strDeptName, this.h_bsno.Value.Trim(), "", strUserID);//strSeaBSNO } } if (iResult > 0) { return true; } else { return false; } } #endregion #endregion #region 出库操作 #region 生成出库单 /// /// 生成出库单 /// private int SaveWoOutAction() { int iState = 0; int result = 0; string Sqlstr = ""; Decimal totaloutfee = 0;//应收出库单的仓储费 Decimal totaloutfeeap = 0;//应付出库单的仓储费 int feedays = 0;//应收仓储天数 int feedaysap = 0;//应付仓储天数 Decimal sumfee = 0;//应收出库明细的仓储费 Decimal sumfeeap = 0;//应付出库明细的仓储费 // //int prescale = 0; //int nowscale = 0; //int nowgrade = 0; //Decimal price = 0; //Decimal gradefee = 0; string newGID = ""; string bsno = ""; //出库单信息 WmsOutDA WmsOutDA = new WmsOutDA(); WmsOutEntity WmsOutEntity = new WmsOutEntity(); if (!WoJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutEntity = ResolveWoJSON(WoJSON.Trim(), WmsOutEntity); WoContainer.Value = ""; } //出库单明细信息 WmsOutDetailDA WmsOutDetailDA = new WmsOutDetailDA(); IList WmsOutDetailEntitys = new List(); if (!WoDetailJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutDetailEntitys = ResolveWoDetailJSON(WoDetailJSON.Trim(), WmsOutDetailEntitys); this.WoDetailContainer.Value = ""; } using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction)) { try { #region 生成出库单并计算费用 #region 保存出库单wms_out 出库单明细wms_out_detail //保存出库单wms_out string ls = WmsOutEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??"," "); ls = ls.Replace("!!","\r\n"); // string strVALIDDATE = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001")>-1 ? "" : ",'" + WmsOutEntity.VALIDDATE.ToString() + "'"; string strVALIDDATE_name = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001") > -1 ? "" : ",VALIDDATE"; // Sqlstr = String.Format("insert into wms_out(GID,BSNO,CUSTOMERNAME,DODATE,STORAGENAME,GOODSNAME,GOODSMODEL,GOODSPFSL,REMARK,CREATEUSER,CREATETIME,TRUCKNO,ASSOCIATEDNO,GOODSPACKPFSL,INSPECTIONNO,CUSTOMNO,CLIENTNAMEOLD,OLDCUSTFEEDATE,TRUCKNAME,ARCLIENT,INGIDNEW,CLIENTBSNO,TOTALNO,REMARK2{22},CHARGEUNIT,MBLNONEW,CORPID,ARCLIENTWMSOUT,BZTCHNO,ISCOLLECTING)" + " values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}',getdate(),'{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','','{19}','{20}','{21}'{23},'{24}','{25}','{26}','{27}','{28}','{29}')" , WmsOutEntity.GID, WmsOutEntity.BSNO, WmsOutEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutEntity.STORAGENAME, WmsOutEntity.GOODSNAME, WmsOutEntity.GOODSMODEL, WmsOutEntity.GOODSPFSL, WmsOutEntity.REMARK, strUserID, ls, WmsOutEntity.ASSOCIATEDNO, WmsOutEntity.GOODSPACKPFSL, WmsOutEntity.INSPECTIONNO, WmsOutEntity.CUSTOMNO, WmsOutEntity.CLIENTNAMEOLD, WmsOutEntity.OLDCUSTFEEDATE, WmsOutEntity.TRUCKNAME, WmsOutEntity.ARCLIENT, WmsOutEntity.CLIENTBSNO, WmsOutEntity.TOTALNO, WmsOutEntity.REMARK2, strVALIDDATE_name, strVALIDDATE, WmsOutEntity.CHARGEUNIT, WmsOutEntity.MBLNONEW, strCompanyID, WmsOutEntity.ARCLIENTWMSOUT, WmsOutEntity.BZTCHNO, WmsOutEntity.ISCOLLECTING); iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -1; Clearh(); return result; } //保存出库单明细wms_out_detail foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { if (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString("yyyy-MM-dd")) > DateTime.Parse(WmsOutEntity.DODATE.ToString("yyyy-MM-dd"))) { sqlTran.Rollback(); result = -12; Page.ClientScript.RegisterStartupScript(this.GetType(), "key10", ""); Clearh(); return result; } // newGID = Guid.NewGuid().ToString(); WmsOutDetailEntity.GID = newGID; WmsOutDetailEntity.OUTBSNO = WmsOutEntity.BSNO; Decimal outnums =Decimal.Parse(WmsOutDetailEntity.GOODSPFSL.ToString());//出库量 #region 计算仓储费[已注销] /* int feedays = 0; if (WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim().IndexOf("0001") < 0) { feedays = WmsOutDetailDA.GetDaysCount("day", WmsOutDetailEntity.STARTBILLINGDATE.ToString(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim());//WmsOutEntity.DODATE.ToString() 出库-开始计费日期 if (feedays > 0) { if (this.ck_jsfee.Checked) { SqlParameter parmrate = new SqlParameter("@BSNO", SqlDbType.VarChar, 100); parmrate.Value = WmsOutDetailEntity.INBSNO;//WmsOutEntity.ASSOCIATEDNO; Sqlstr = String.Format("SELECT FEEGRADE,FEESCALE,FEEPRICE,FEEUNIT FROM wms_rate where BSNO=@BSNO and CUSTOMERNAME like '%{0}%' order by BSNO,FEEGRADE ", WmsOutEntity.CUSTOMERNAME); DataSet dsrate = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, Sqlstr.ToString(), parmrate); DataTable dtrate = new DataTable(); if (dsrate != null) { dtrate = dsrate.Tables[0]; if (dtrate.Rows.Count > 0) { prescale = 0; nowscale = 0; nowgrade = 0; price = 0; gradefee = 0; sumfee = 0; foreach (DataRow drow in dtrate.Rows) { nowgrade = int.Parse(drow["FEEGRADE"].ToString());//计费等级 nowscale = int.Parse(drow["FEESCALE"].ToString());//计费区间 price = Decimal.Parse(drow["FEEPRICE"].ToString());//计费单价 if (nowgrade.Equals(1))//计费等级 { if (feedays > nowscale) { gradefee = outnums * price * nowscale;//出库量*计费单价*计费区间 sumfee += gradefee; //计算 开始计费日期和计费天数 //if (price > 0) //{ // dtime = WmsOutDetailEntity.DODATE.ToString();//开始计费日期 STARTBILLINGDATE // iFEEDAYS = nowscale;//计费天数 FEEDAYS //} // prescale = nowscale;//本次计费区间 } else { gradefee = outnums * price * (feedays - prescale);//出库量*计费单价*(仓储天数-上一个计费区间(0)) sumfee += gradefee; //计算 开始计费日期和计费天数 //if (price > 0) //{ // dtime = WmsOutDetailEntity.DODATE.ToString();//开始计费日期 STARTBILLINGDATE // iFEEDAYS = feedays - prescale;//计费天数 FEEDAYS //} // prescale = nowscale;//本次计费区间 break; } } else if (nowgrade > 1)//计费等级 { if (feedays > nowscale) { gradefee = outnums * price * (nowscale - prescale);//出库量*计费单价*(计费区间-上一个计费区间(0)) sumfee += gradefee; //计算 开始计费日期和计费天数 //if (price > 0) //{ // if (dtime.Trim() == "") // { // dtime = (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString()).AddDays(prescale)).ToString().Trim();//开始计费日期 STARTBILLINGDATE // } // iFEEDAYS += (nowscale - prescale);//计费天数 FEEDAYS //} // prescale = nowscale;//本次计费区间 } else { gradefee = outnums * price * (feedays - prescale);//出库量*计费单价*(仓储天数-上一个计费区间(0)) sumfee += gradefee; //计算 开始计费日期和计费天数 //if (price > 0) //{ // if (dtime.Trim() == "") // { // dtime = (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString()).AddDays(prescale)).ToString().Trim();//开始计费日期 STARTBILLINGDATE // } // iFEEDAYS += (feedays - prescale);//计费天数 FEEDAYS //} // prescale = nowscale;//本次计费区间 break; } } } if (feedays > nowscale) { gradefee = outnums * price * (feedays - nowscale);//出库量*计费单价*(仓储天数-计费区间(0)) sumfee += gradefee; //计算 开始计费日期和计费天数 //if (price > 0) //{ // if (dtime.Trim() == "") // { // dtime = (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString()).AddDays(nowscale - 1)).ToString().Trim();//开始计费日期 STARTBILLINGDATE // } // iFEEDAYS += (feedays - nowscale);//计费天数 FEEDAYS //} } totaloutfee += sumfee; } else {//仓储费率没有设定 sqlTran.Rollback(); result = -2; Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", ""); Clearh(); return result; } } else { sqlTran.Rollback(); result = -3; Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", ""); Clearh(); return result; } } else { feedays = 0; sumfee = 0; //iFEEDAYS = 0; //dtime = ""; } } else { feedays = 0; sumfee = 0; //iFEEDAYS = 0; //dtime = ""; } } else { feedays = 0; sumfee = 0; //iFEEDAYS = 0; //dtime = ""; } */ #endregion #region 计算仓储费 // 事务 // 开始计费日期 // 上家承担仓储期限 // 出库明细关联的入库单wms或wms_in的BSNO // 出库主表的客户名称 // 出库量 // 关联wms_out_detail的GID // 区别费用收、付类型 //计算应收仓储费 string getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 1, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); string[] strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfee = Decimal.Parse(strls[0].ToString()); totaloutfee += sumfee;//仓储费合计 feedays += int.Parse(strls[1].ToString()); //计算应付仓储费 getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 2, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfeeap = Decimal.Parse(strls[0].ToString()); totaloutfeeap += sumfeeap;//仓储费合计 feedaysap += int.Parse(strls[1].ToString()); // #endregion //保存wms_out_detail WmsOutDetailEntity.DODATE = WmsOutEntity.DODATE; WmsOutDetailEntity.GOODSOUTFEE = (sumfee == 0 ? 0 : decimal.Parse(Round(sumfee, 2, "").ToString())); WmsOutDetailEntity.GOODSOUTFEEAP = (sumfeeap == 0 ? 0 : decimal.Parse(Round(sumfeeap, 2, "").ToString())); WmsOutDetailEntity.ENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.ENDBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.FEEDAYS = feedays;//计费天数iFEEDAYS WmsOutDetailEntity.FEEDAYSAP = feedaysap;//计费天数iFEEDAYS // #region 提取规则编号 getCodeRuleWmsOutDetail // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRuleWmsOutDetail(string strRULENAME, string strfield) //{ //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='出库明细单号' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("出库明细单号", "BSNO"); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; bsno = ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // string strSQL = "select top 1 BSNO from [wms_out_detail] where BSNO like '" + strCONTENT.Trim() + "%' order by BSNO DESC"; DataSet ds1 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds1 != null) { if (ds1.Tables[0].Rows.Count > 0) { strRULENOLENGTH = ds1.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; bsno = strCONTENT; //return strCONTENT; } } } // return ""; //} #endregion // WmsOutDetailEntity.BSNO = bsno; WmsOutDetailEntity.OUTBSNO = this.h_outbsno.Value; WmsOutDetailEntity.CORPID = strCompanyID; WmsOutDetailEntity.BZTCHNO = WmsOutEntity.BZTCHNO; // ls = WmsOutDetailEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); // string strSTARTBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutDetailEntity.STARTBILLINGDATE.ToString() + "',"; string strSTARTBILLINGDATE_name = strSTARTBILLINGDATE.Equals("") ? "" : "STARTBILLINGDATE,"; string strENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutEntity.OLDCUSTFEEDATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为上家承担仓储期限。 string strENDBILLINGDATE_name = strENDBILLINGDATE.Equals("") ? "" : "ENDBILLINGDATE,"; string strSTARTBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutDetailEntity.STARTBILLINGDATEAP.ToString() + "',"; string strSTARTBILLINGDATEAP_name = strSTARTBILLINGDATEAP.Equals("") ? "" : "STARTBILLINGDATEAP,"; string strENDBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutEntity.OLDCUSTFEEDATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为上家承担仓储期限。 string strENDBILLINGDATEAP_name = strENDBILLINGDATEAP.Equals("") ? "" : "ENDBILLINGDATEAP,"; // Sqlstr = String.Format("insert into wms_out_detail (GID,INBSNO,OUTBSNO,BSNO,CUSTOMERNAME,DODATE,STORAGENAME,GOODSNAME,GOODSMODEL,GOODSPFSL,GOODSOUTFEE,CREATEUSER,CREATETIME,REMARK,TRUCKNO,ASSOCIATEDNO,GOODSPACKPFSL,GOODSOUTFEEAP,ARFEE,APFEE,CLIENTNAMEOLD,OLDCUSTFEEDATE,{21}{23}FEEDAYS,GOODSSTANDARD,CHARGEUNIT,{27}{29}FEEDAYSAP,CORPID,MARKETVALUE,AREANAME,BZTCHNO) " + " values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',getdate(),'{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}',{22}{24}'{25}','{26}','{32}',{28}{30}'{31}','{33}',{34},'{35}','{36}')" , WmsOutDetailEntity.GID, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.OUTBSNO, WmsOutDetailEntity.BSNO, WmsOutDetailEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutDetailEntity.STORAGENAME, WmsOutDetailEntity.GOODSNAME,WmsOutDetailEntity.GOODSMODEL, WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSOUTFEE, strUserID, WmsOutDetailEntity.REMARK, ls, WmsOutDetailEntity.ASSOCIATEDNO, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.GOODSOUTFEEAP, WmsOutDetailEntity.ARFEE, WmsOutDetailEntity.APFEE, WmsOutDetailEntity.CLIENTNAMEOLD, this.txt_oldcustFeeDate.Value.Trim(), strSTARTBILLINGDATE_name, strSTARTBILLINGDATE, strENDBILLINGDATE_name, strENDBILLINGDATE, WmsOutDetailEntity.FEEDAYS, WmsOutDetailEntity.GOODSSTANDARD, strSTARTBILLINGDATEAP_name, strSTARTBILLINGDATEAP, strENDBILLINGDATEAP_name, strENDBILLINGDATEAP, WmsOutDetailEntity.FEEDAYSAP, WmsOutDetailEntity.CHARGEUNIT, strCompanyID, WmsOutDetailEntity.MARKETVALUE, WmsOutDetailEntity.AREANAME, WmsOutDetailEntity.BZTCHNO); // WmsOutEntity.GOODSSTANDARD = WmsOutDetailEntity.GOODSSTANDARD; // iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -5; Clearh(); return result; } //修改入库单wms_in Sqlstr = String.Format("update wms set GOODSSTOCK=GOODSSTOCK-{0},GOODSPACKSTOCK=GOODSPACKSTOCK-{1} where ISDELETE=0 and GID='{2}' ", WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.INBSNO); iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -6; Clearh(); return result; } }// end 保存出库明细wms_out_detail //修改wms_out的出库量、出库件数、应收应付装卸费 string lsSQL = "update wms_out set " + "GOODSPFSL=(select isnull(sum(GOODSPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",GOODSPACKPFSL=(select isnull(sum(GOODSPACKPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",ARFEE=(select isnull(sum(ARFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",APFEE=(select isnull(sum(APFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + " where ISLOCK=0 and GID='" + WmsOutEntity.GID.ToString().Trim() + "'"; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSQL, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } //修改wms_out的仓储费wmsOutEntity.GOODSOUTFEE h_outfee.Value = totaloutfee.ToString(); WmsOutEntity.GOODSOUTFEE = decimal.Parse(Round(totaloutfee, 2, "").ToString()); WmsOutEntity.GOODSOUTFEEAP = decimal.Parse(Round(totaloutfeeap, 2, "").ToString()); Sqlstr = String.Format("update wms_out set GOODSOUTFEE={0},GOODSOUTFEEAP={2},GOODSSTANDARD='{3}' where GID='{1}'", WmsOutEntity.GOODSOUTFEE, WmsOutEntity.GID, WmsOutEntity.GOODSOUTFEEAP, WmsOutEntity.GOODSSTANDARD); iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } #endregion #region 将仓储费写入ch_fee[已注销] /* if (isJsFee == true) { FeeDA feeDA = new FeeDA(); IList feeEntities = new List(); FeeEntity feeEntity = new FeeEntity(); Decimal deprice = 0; if (WmsOutEntity.GOODSPFSL != 0) { deprice = Decimal.Parse((WmsOutEntity.GOODSOUTFEE / WmsOutEntity.GOODSPFSL).ToString()); } else { deprice = 0; } deprice = Round(deprice, 2, ""); if (deprice != 0) { feeEntity.GID = Guid.NewGuid().ToString(); feeEntity.FeeType = 1; feeEntity.BSNO = WmsOutEntity.ASSOCIATEDNO; feeEntity.FeeName = "仓储费"; feeEntity.CustomerName = WmsOutEntity.CUSTOMERNAME; feeEntity.Unit = "重量"; feeEntity.UnitPrice =decimal.Parse( deprice.ToString()); feeEntity.Quantity = WmsOutEntity.GOODSPFSL; feeEntity.CommissionRate = 1; feeEntity.Amount = WmsOutEntity.GOODSOUTFEE; feeEntity.Currency = "RMB"; feeEntity.ExchangeRate = 1; feeEntity.FeeFrt = ""; feeEntity.Remark = ""; feeEntity.IsAdvancePay = false; feeEntity.EnterOperator = WmsOutEntity.CREATEUSER; feeEntity.FeeStatus = 1; feeEntity.WMSOUTBSNO = WmsOutEntity.BSNO; feeEntities.Add(feeEntity); iState = feeDA.DoFee(feeEntities, WmsOutEntity.BSNO, strUserID); feeEntities.Remove(feeEntity); if (iState != 1) { sqlTran.Rollback(); result = -8; Clearh(); return result; } } //出库费写入ch_fee WmsFeeCodeDA WmsFeeCodeDA = new WmsFeeCodeDA(); string strSql11 = String.Format("SELECT GID,FEETYPE,FEECODE,FEENAME,BSNO,CLIENT,UNIT,CURRENCY,UNITPRICE,EXCHANGERATE,SORT,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,REMARK FROM wms_feeCode " + " where BSNO='{0}' ", WmsOutEntity.ASSOCIATEDNO); DataSet ds = WmsFeeCodeDA.GetRateListByCondition(strSql11); DataTable dt = ds.Tables[0]; if (dt.Rows.Count > 0) { foreach (DataRow r in dt.Rows) { if (r["FEENAME"].ToString() == "出库费") { feeEntity = new FeeEntity(); feeEntity.GID = Guid.NewGuid().ToString(); feeEntity.FeeType = 1; feeEntity.BSNO = WmsOutEntity.ASSOCIATEDNO; feeEntity.FeeName = "出库费"; feeEntity.CustomerName = WmsOutEntity.CUSTOMERNAME; feeEntity.Unit = "重量"; feeEntity.UnitPrice = decimal.Parse(r["UNITPRICE"].ToString()); feeEntity.Quantity = WmsOutEntity.GOODSPFSL; feeEntity.CommissionRate = 1; Decimal amount = Decimal.Parse(WmsOutEntity.GOODSPFSL.ToString()) * Decimal.Parse(r["UNITPRICE"].ToString()); feeEntity.Amount = decimal.Parse(Round(amount, 2, "").ToString()); feeEntity.Currency = "RMB"; feeEntity.ExchangeRate = 1; feeEntity.FeeFrt = ""; feeEntity.Remark = ""; feeEntity.IsAdvancePay = false; feeEntity.EnterOperator = WmsOutEntity.CREATEUSER; feeEntity.FeeStatus = 1; feeEntity.WMSOUTBSNO = WmsOutEntity.BSNO; feeEntities.Add(feeEntity); //保存如ch_fee iState = feeDA.DoFee(feeEntities, WmsOutEntity.BSNO, strUserID); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } } } } //else //{//没有设置出库费 //} }//end 将仓储费和出库费写入ch_fee */ #endregion //页面赋值 this.h_wmsoutbsno.Value = WmsOutEntity.BSNO.ToString(); this.h_goodsmodel.Value = WmsOutEntity.GOODSMODEL.ToString(); this.h_goodspfsl.Value = WmsOutEntity.GOODSPFSL.ToString(); this.h_remark.Value = WmsOutEntity.REMARK.ToString(); txt_outbsno.Value = h_outbsno.Value; txt_outdate.Value = h_outdate.Value; string strcustomer = h_customer.Value; string goods = h_goods.Value; txt_goodsmodel.Value = h_goodsmodel.Value; #endregion this.h_newcust.Value = ""; this.h_IsSetRate.Value = "0";//正常出库,不需要设置费率 // result = 1;//状态为1表示删除成功 sqlTran.Commit(); // Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", ""); } catch (Exception execError) { result = -10;//有异常,插入失败 sqlTran.Rollback(); result = -11;//插入异常,事务已回滚成功 Clearh(); throw execError; } finally { SqlHelper.CloseConnection(); } } return result; } #endregion #region 更改出库单 /// /// 更改出库单 /// private int SaveWoOutActionEdit() { int iState = 0; int result = 0; string Sqlstr = ""; Decimal totaloutfee = 0;//出库单的仓储费 Decimal totaloutfeeap = 0;//出库单的仓储费 Decimal sumfee = 0; Decimal sumfeeap = 0; // //int prescale = 0; //int nowscale = 0; //int nowgrade = 0; //Decimal price = 0; //Decimal gradefee = 0; //string newGID = ""; string bsno = ""; //出库单信息 WmsOutDA WmsOutDA = new WmsOutDA(); WmsOutEntity WmsOutEntity = new WmsOutEntity(); if (!WoJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutEntity = ResolveWoJSON(WoJSON.Trim(), WmsOutEntity); WoContainer.Value = ""; } //出库单明细信息 WmsOutDetailDA WmsOutDetailDA = new WmsOutDetailDA(); IList WmsOutDetailEntitys = new List(); if (!WoDetailJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutDetailEntitys = ResolveWoDetailJSON(WoDetailJSON.Trim(), WmsOutDetailEntitys); this.WoDetailContainer.Value = ""; } using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction)) { try { #region 生成出库单并计算费用 #region 保存出库单wms_out 出库单明细wms_out_detail //保存出库单wms_out string ls = WmsOutEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??"," "); ls = ls.Replace("!!", "\r\n"); // string strVALIDDATE = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001") > -1 ? "" : ",VALIDDATE='" + WmsOutEntity.VALIDDATE.ToString() + "'"; // Sqlstr = String.Format("update wms_out set BSNO='{1}',CUSTOMERNAME='{2}',DODATE='{3}',STORAGENAME='{4}',GOODSNAME='{5}',GOODSMODEL='{6}',GOODSPFSL='{7}',REMARK='{8}',CREATEUSER='{9}',CREATETIME=getdate(),TRUCKNO='{10}',ASSOCIATEDNO='{11}',GOODSPACKPFSL='{12}',INSPECTIONNO='{13}',CUSTOMNO='{14}',CLIENTNAMEOLD='{15}',OLDCUSTFEEDATE='{16}',TRUCKNAME='{17}',ARCLIENT='{18}',CLIENTBSNO='{19}',TOTALNO='{20}',REMARK2='{21}'{22},MBLNONEW='{23}',CORPID='{24}',ARCLIENTWMSOUT='{25}',BZTCHNO='{26}',ISCOLLECTING='{27}' where GID='{0}'" , WmsOutEntity.GID, WmsOutEntity.BSNO, WmsOutEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutEntity.STORAGENAME, WmsOutEntity.GOODSNAME, WmsOutEntity.GOODSMODEL, WmsOutEntity.GOODSPFSL, WmsOutEntity.REMARK, strUserID, ls, WmsOutEntity.ASSOCIATEDNO, WmsOutEntity.GOODSPACKPFSL, WmsOutEntity.INSPECTIONNO, WmsOutEntity.CUSTOMNO, WmsOutEntity.CLIENTNAMEOLD, WmsOutEntity.OLDCUSTFEEDATE, WmsOutEntity.TRUCKNAME, WmsOutEntity.ARCLIENT, WmsOutEntity.CLIENTBSNO, WmsOutEntity.TOTALNO, WmsOutEntity.REMARK2, strVALIDDATE, WmsOutEntity.MBLNONEW, strCompanyID, WmsOutEntity.ARCLIENTWMSOUT, WmsOutEntity.BZTCHNO, WmsOutEntity.ISCOLLECTING); iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -1; Clearh(); return result; } //保存出库单明细wms_out_detail foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { if (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString("yyyy-MM-dd")) > DateTime.Parse(WmsOutEntity.DODATE.ToString("yyyy-MM-dd"))) { sqlTran.Rollback(); result = -12; Page.ClientScript.RegisterStartupScript(this.GetType(), "key10", ""); Clearh(); return result; } // WmsOutDetailEntity.OUTBSNO = WmsOutEntity.BSNO; Decimal outnums =Decimal.Parse( WmsOutDetailEntity.GOODSPFSL.ToString());//出库量 #region 计算仓储费 int feedays = 0; int feedaysap = 0; //计算应收仓储费 string getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 1, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); string[] strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfee = Decimal.Parse(strls[0].ToString()); totaloutfee += sumfee;//仓储费合计 feedays += int.Parse(strls[1].ToString()); //计算应付仓储费 getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 2, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfeeap = Decimal.Parse(strls[0].ToString()); totaloutfeeap += sumfeeap;//仓储费合计 feedaysap += int.Parse(strls[1].ToString()); #endregion //保存wms_out_detail WmsOutDetailEntity.DODATE = WmsOutEntity.DODATE; WmsOutDetailEntity.GOODSOUTFEE = (sumfee == 0 ? 0 : decimal.Parse(Round(sumfee, 2, "").ToString())); WmsOutDetailEntity.GOODSOUTFEEAP = (sumfeeap == 0 ? 0 : decimal.Parse(Round(sumfeeap, 2, "").ToString())); WmsOutDetailEntity.ENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.ENDBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.FEEDAYS = feedays;//计费天数iFEEDAYS WmsOutDetailEntity.FEEDAYSAP = feedaysap;//计费天数iFEEDAYS // //bsno = getCodeRuleWmsOutDetail("出库明细单号", "BSNO"); #region 提取规则编号 getCodeRuleWmsOutDetail // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRuleWmsOutDetail(string strRULENAME, string strfield) //{ //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='出库明细单号' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("出库明细单号", "BSNO"); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; bsno = ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // string strSQL = "select top 1 BSNO from [wms_out_detail] where BSNO like '" + strCONTENT.Trim() + "%' order by BSNO DESC"; DataSet ds1 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds1 != null) { if (ds1.Tables[0].Rows.Count > 0) { strRULENOLENGTH = ds1.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; bsno = strCONTENT; //return strCONTENT; } } } // return ""; //} #endregion // //WmsOutDetailEntity.GID = newGID; //WmsOutDetailEntity.BSNO = bsno; WmsOutDetailEntity.OUTBSNO = this.h_outbsno.Value; WmsOutDetailEntity.CORPID = strCompanyID; WmsOutDetailEntity.BZTCHNO = WmsOutEntity.BZTCHNO; // ls = WmsOutDetailEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); // //修改入库单wms_in Sqlstr = String.Format("update wms set GOODSPACKSTOCK=GOODSPACKSTOCK+(select top 1 GOODSPACKPFSL from wms_out_detail where gid='" + WmsOutDetailEntity.GID.ToString().Trim() + "')-{0},GOODSSTOCK=GOODSSTOCK+(select top 1 GOODSPFSL from wms_out_detail where gid='" + WmsOutDetailEntity.GID.ToString().Trim() + "')-{2} where isnull(ISDELETE,0)=0 and gid='{1}' ", WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.GOODSPFSL); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -6; //Clearh(); return result; } // string strSTARTBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "STARTBILLINGDATE='" + WmsOutDetailEntity.STARTBILLINGDATE.ToString() + "',"; string strENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "ENDBILLINGDATE='" + WmsOutEntity.OLDCUSTFEEDATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为上家承担仓储期限。 string strSTARTBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().IndexOf("0001") > -1 ? "" : "STARTBILLINGDATEAP='" + WmsOutDetailEntity.STARTBILLINGDATEAP.ToString() + "',"; string strENDBILLINGDATEAP = WmsOutDetailEntity.STARTBILLINGDATEAP.ToString().IndexOf("0001") > -1 ? "" : "ENDBILLINGDATEAP='" + WmsOutDetailEntity.DODATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为出库日期。 Sqlstr = String.Format("update wms_out_detail set INBSNO='{1}',OUTBSNO='{2}',BSNO='{3}',CUSTOMERNAME='{4}',DODATE='{5}',STORAGENAME='{6}',GOODSNAME='{7}',GOODSMODEL='{8}',GOODSPFSL='{9}',GOODSOUTFEE='{10}',CREATEUSER='{11}',CREATETIME=getdate(),REMARK='{12}',TRUCKNO='{13}',ASSOCIATEDNO='{14}',GOODSPACKPFSL='{15}',GOODSOUTFEEAP='{16}',ARFEE='{17}',APFEE='{18}',CLIENTNAMEOLD='{19}',OLDCUSTFEEDATE='{20}',{21}{22}FEEDAYS='{23}',{24}{25}FEEDAYSAP='{26}',CORPID='{27}',MARKETVALUE={28},AREANAME='{29}',BZTCHNO='{30}' where GID='{0}'" , WmsOutDetailEntity.GID, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.OUTBSNO, WmsOutDetailEntity.BSNO, WmsOutDetailEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutDetailEntity.STORAGENAME, WmsOutDetailEntity.GOODSNAME,WmsOutDetailEntity.GOODSMODEL, WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSOUTFEE, strUserID, WmsOutDetailEntity.REMARK, ls, WmsOutDetailEntity.ASSOCIATEDNO, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.GOODSOUTFEEAP, WmsOutDetailEntity.ARFEE, WmsOutDetailEntity.APFEE, WmsOutDetailEntity.CLIENTNAMEOLD, this.txt_oldcustFeeDate.Value.Trim(), strSTARTBILLINGDATE, strENDBILLINGDATE, WmsOutDetailEntity.FEEDAYS, strSTARTBILLINGDATEAP, strENDBILLINGDATEAP, WmsOutDetailEntity.FEEDAYSAP, strCompanyID, WmsOutDetailEntity.MARKETVALUE, WmsOutDetailEntity.AREANAME, WmsOutDetailEntity.BZTCHNO); // iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -5; Clearh(); return result; } }// end 保存出库明细wms_out_detail //修改wms_out的出库量、出库件数、应收应付装卸费 string lsSQL = "update wms_out set " + "GOODSPFSL=(select isnull(sum(GOODSPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",GOODSPACKPFSL=(select isnull(sum(GOODSPACKPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",ARFEE=(select isnull(sum(ARFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",APFEE=(select isnull(sum(APFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + " where ISLOCK=0 and GID='" + WmsOutEntity.GID.ToString().Trim() + "'"; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSQL, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } //修改wms_out的仓储费wmsOutEntity.GOODSOUTFEE h_outfee.Value = totaloutfee.ToString(); WmsOutEntity.GOODSOUTFEE = decimal.Parse(Round(totaloutfee, 2, "").ToString()); WmsOutEntity.GOODSOUTFEEAP = decimal.Parse(Round(totaloutfeeap, 2, "").ToString()); Sqlstr = String.Format("update wms_out set GOODSOUTFEE={0},GOODSOUTFEEAP={2} where GID='{1}'", WmsOutEntity.GOODSOUTFEE, WmsOutEntity.GID, WmsOutEntity.GOODSOUTFEEAP); iState=SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } #endregion //页面赋值 this.h_wmsoutbsno.Value = WmsOutEntity.BSNO.ToString(); this.h_goodsmodel.Value = WmsOutEntity.GOODSMODEL.ToString(); this.h_goodspfsl.Value = WmsOutEntity.GOODSPFSL.ToString(); this.h_remark.Value = WmsOutEntity.REMARK.ToString(); txt_outbsno.Value = h_outbsno.Value; txt_outdate.Value = h_outdate.Value; string strcustomer = h_customer.Value; string goods = h_goods.Value; txt_goodsmodel.Value = h_goodsmodel.Value; #endregion this.h_newcust.Value = ""; this.h_IsSetRate.Value = "0";//正常出库,不需要设置费率 result = 1;//状态为1表示删除成功 sqlTran.Commit(); // Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", ""); } catch (Exception execError) { result = -10;//有异常,插入失败 sqlTran.Rollback(); result = -11;//插入异常,事务已回滚成功 Clearh(); throw execError; } finally { SqlHelper.CloseConnection(); } } return result; } #endregion #region 货权转移 /// /// 货权转移 /// private int CargoRightTransfer() { int iState = 0; int result = 0; string Sqlstr = ""; Decimal totaloutfee = 0;//出库单的仓储费 //int prescale = 0; //int nowscale = 0; //int nowgrade = 0; //Decimal price = 0; //Decimal gradefee = 0; Decimal sumfee = 0; string newGID = ""; string bsno = ""; //出库单信息 WmsOutDA WmsOutDA = new WmsOutDA(); WmsOutEntity WmsOutEntity = new WmsOutEntity(); if (!WoJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutEntity = ResolveWoJSON(WoJSON.Trim(), WmsOutEntity); WoContainer.Value = ""; } //出库单明细信息 WmsOutDetailDA WmsOutDetailDA = new WmsOutDetailDA(); IList WmsOutDetailEntitys = new List(); if (!WoDetailJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutDetailEntitys = ResolveWoDetailJSON(WoDetailJSON.Trim(), WmsOutDetailEntitys); this.WoDetailContainer.Value = ""; } Decimal outnums = 0; int feedays = 0; using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction)) { try { #region 生成出库单并计算费用 #region 保存出库单wms_out 出库单明细wms_out_detail //保存出库单wms_out // string ls = WmsOutEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); string strINGIDNEW = getWMSNO();//货权转移后的入库wmsgid WmsOutEntity.ISCHANGE = true; WmsOutEntity.CORPID = strCompanyID; WmsOutEntity.REMARK = "货权转移" + (WmsOutEntity.REMARK.ToString().Trim() == "" ? "" : ";" + WmsOutEntity.REMARK.ToString().Trim()); // string strVALIDDATE = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001") > -1 ? "" : ",'" + WmsOutEntity.VALIDDATE.ToString() + "'"; string strVALIDDATE_name = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001") > -1 ? "" : ",VALIDDATE"; // Sqlstr = String.Format("insert into wms_out(GID,BSNO,CUSTOMERNAME,DODATE,STORAGENAME,GOODSNAME,GOODSMODEL,GOODSPFSL,REMARK,CREATEUSER,CREATETIME,TRUCKNO,ASSOCIATEDNO,GOODSPACKPFSL,INSPECTIONNO,CUSTOMNO,CLIENTNAMEOLD,OLDCUSTFEEDATE,TRUCKNAME,ARCLIENT,INGIDNEW,CLIENTBSNO,TOTALNO,REMARK2{23},CHARGEUNIT,MBLNONEW,ISCHANGE,CORPID,ARCLIENTWMSOUT,BZTCHNO,ISCOLLECTING)" + " values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}',getdate(),'{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}','{22}'{24},'{27}','{25}','{26}','{28}','{29}','{30}','{31}')" , WmsOutEntity.GID, WmsOutEntity.BSNO, WmsOutEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutEntity.STORAGENAME, WmsOutEntity.GOODSNAME, WmsOutEntity.GOODSMODEL, WmsOutEntity.GOODSPFSL, WmsOutEntity.REMARK.ToString().Trim(), strUserID, ls, WmsOutEntity.ASSOCIATEDNO, WmsOutEntity.GOODSPACKPFSL, WmsOutEntity.INSPECTIONNO, WmsOutEntity.CUSTOMNO, WmsOutEntity.CLIENTNAMEOLD, WmsOutEntity.OLDCUSTFEEDATE, WmsOutEntity.TRUCKNAME, WmsOutEntity.ARCLIENT, strINGIDNEW, WmsOutEntity.CLIENTBSNO, WmsOutEntity.TOTALNO, WmsOutEntity.REMARK2, strVALIDDATE_name, strVALIDDATE, WmsOutEntity.MBLNONEW, WmsOutEntity.ISCHANGE, WmsOutEntity.CHARGEUNIT, strCompanyID, WmsOutEntity.ARCLIENTWMSOUT, WmsOutEntity.BZTCHNO, WmsOutEntity.ISCOLLECTING); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -1; Clearh(); return result; } //保存出库单明细wms_out_detail foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { if (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString("yyyy-MM-dd")) > DateTime.Parse(WmsOutEntity.DODATE.ToString("yyyy-MM-dd"))) { sqlTran.Rollback(); result = -12; Page.ClientScript.RegisterStartupScript(this.GetType(), "key10", ""); Clearh(); return result; } outnums = Decimal.Parse(WmsOutDetailEntity.GOODSPFSL.ToString()); newGID = Guid.NewGuid().ToString(); WmsOutDetailEntity.GID = newGID; #region 计算仓储费 //计算应收仓储费 string getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 1, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); string[] strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfee = Decimal.Parse(strls[0].ToString()); totaloutfee += sumfee;//仓储费合计 feedays += int.Parse(strls[1].ToString()); #endregion //保存wms_out_detail WmsOutDetailEntity.GOODSOUTFEE = (sumfee == 0 ? 0 : decimal.Parse(Round(sumfee, 2, "").ToString())); WmsOutDetailEntity.GOODSOUTFEEAP = 0; WmsOutDetailEntity.DODATE = WmsOutEntity.DODATE; WmsOutDetailEntity.ENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.FEEDAYS = feedays;//计费天数 iFEEDAYS WmsOutDetailEntity.FEEDAYSAP = 0;//计费天数 iFEEDAYSAP // #region 提取规则编号 getCodeRuleWmsOutDetail // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRuleWmsOutDetail(string strRULENAME, string strfield) //{ //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='出库明细单号' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("出库明细单号", "BSNO"); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; bsno = ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // string strSQL = "select top 1 BSNO from [wms_out_detail] where BSNO like '" + strCONTENT.Trim() + "%' order by BSNO DESC"; DataSet ds1 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds1 != null) { if (ds1.Tables[0].Rows.Count > 0) { strRULENOLENGTH = ds1.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; bsno = strCONTENT; //return strCONTENT; } } } // return ""; //} #endregion WmsOutDetailEntity.BSNO = bsno; // WmsOutDetailEntity.OUTBSNO = this.h_outbsno.Value; WmsOutDetailEntity.CORPID = strCompanyID; WmsOutDetailEntity.BZTCHNO = WmsOutEntity.BZTCHNO; // ls = WmsOutDetailEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); WmsOutDetailEntity.ISCHANGE = true; // string strSTARTBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutDetailEntity.STARTBILLINGDATE.ToString() + "',"; string strSTARTBILLINGDATE_name = strSTARTBILLINGDATE.Equals("") ? "" : "STARTBILLINGDATE,"; // string strENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "'" + WmsOutEntity.OLDCUSTFEEDATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为上家承担仓储期限。 string strENDBILLINGDATE_name = strENDBILLINGDATE.Equals("") ? "" : "ENDBILLINGDATE,"; // Sqlstr = String.Format("insert into wms_out_detail (GID,INBSNO,OUTBSNO,BSNO,CUSTOMERNAME,DODATE,STORAGENAME,GOODSNAME,GOODSMODEL,GOODSPFSL,GOODSOUTFEE,CREATEUSER,CREATETIME,REMARK,TRUCKNO,ASSOCIATEDNO,GOODSPACKPFSL,GOODSOUTFEEAP,ARFEE,APFEE,CLIENTNAMEOLD,OLDCUSTFEEDATE,{21}{23}FEEDAYS,GOODSSTANDARD,CHARGEUNIT,FEEDAYSAP,ISCHANGE,CORPID,MARKETVALUE,AREANAME,BZTCHNO) " + " values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',getdate(),'{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}',{22}{24}'{25}','{26}','{29}','{27}','{28}','{30}',{31},'{32}','{33}')" , WmsOutDetailEntity.GID, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.OUTBSNO, WmsOutDetailEntity.BSNO, WmsOutDetailEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutDetailEntity.STORAGENAME, WmsOutDetailEntity.GOODSNAME, WmsOutDetailEntity.GOODSMODEL, WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSOUTFEE, strUserID, "货权转移", ls, WmsOutDetailEntity.ASSOCIATEDNO, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.GOODSOUTFEEAP, WmsOutDetailEntity.ARFEE, WmsOutDetailEntity.APFEE, WmsOutDetailEntity.CLIENTNAMEOLD, WmsOutEntity.OLDCUSTFEEDATE, strSTARTBILLINGDATE_name, strSTARTBILLINGDATE, strENDBILLINGDATE_name, strENDBILLINGDATE, WmsOutDetailEntity.FEEDAYS, WmsOutDetailEntity.GOODSSTANDARD, WmsOutDetailEntity.FEEDAYSAP, WmsOutEntity.ISCHANGE, WmsOutDetailEntity.CHARGEUNIT, strCompanyID, WmsOutDetailEntity.MARKETVALUE, WmsOutDetailEntity.AREANAME, WmsOutDetailEntity.BZTCHNO); // WmsOutEntity.GOODSSTANDARD = WmsOutDetailEntity.GOODSSTANDARD; // iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -5; Clearh(); return result; } //修改入库单wms_in Sqlstr = String.Format("update wms set GOODSSTOCK=GOODSSTOCK-{0},GOODSPACKSTOCK=GOODSPACKSTOCK-{1} where ISDELETE=0 and GID='{2}' ", WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.INBSNO); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -6; Clearh(); return result; } }// end 保存出库明细wms_out_detail //修改wms_out的出库量、出库件数、应收应付装卸费 string lsSQL = "update wms_out set " + "GOODSPFSL=(select isnull(sum(GOODSPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",GOODSPACKPFSL=(select isnull(sum(GOODSPACKPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",ARFEE=(select isnull(sum(ARFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",APFEE=(select isnull(sum(APFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + " where ISLOCK=0 and GID='" + WmsOutEntity.GID.ToString().Trim() + "'"; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSQL, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } //修改wms_out的仓储费wmsOutEntity.GOODSOUTFEE h_outfee.Value = totaloutfee.ToString(); WmsOutEntity.GOODSOUTFEE =decimal.Parse( Round(totaloutfee,2,"").ToString()); WmsOutEntity.GOODSOUTFEEAP = 0; Sqlstr = String.Format("update wms_out set GOODSOUTFEE={0},GOODSOUTFEEAP={2},GOODSSTANDARD='{3}' where GID='{1}'", WmsOutEntity.GOODSOUTFEE, WmsOutEntity.GID, WmsOutEntity.GOODSOUTFEEAP, WmsOutEntity.GOODSSTANDARD); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } #endregion //页面赋值 this.h_wmsoutbsno.Value = WmsOutEntity.BSNO.ToString(); this.h_goodsmodel.Value = WmsOutEntity.GOODSMODEL.ToString(); this.h_goodspfsl.Value = WmsOutEntity.GOODSPFSL.ToString(); this.h_remark.Value = WmsOutEntity.REMARK.ToString(); txt_outbsno.Value = h_outbsno.Value; txt_outdate.Value = h_outdate.Value; string strcustomer = h_customer.Value; string goods = h_goods.Value; txt_goodsmodel.Value = h_goodsmodel.Value; #endregion #region 货权转移到 outcustomer.value WmsInEntity WmsInEntity = new WmsInEntity(); WmsInDA wmsinDA = new WmsInDA(); WmsEntity WmsEntity = new WmsEntity(); WmsDA wmsDA = new WmsDA(); string Inbsno = ""; foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { Inbsno = WmsOutDetailEntity.INBSNO; break; } // #region 插入入库主表 #region 提取原入库wms数据 string SQL_SELECT_WMS_GID = "select GID, WMSNO, WMSDATE, CUSTOMERNAME, WMSOP, STOREMAN, MODIFIEDUSER, MODIFIEDTIME, ISDELETE, DELETEUSER, DELETETIME,TRUCKNAME, GOODSPACK, GOODSPACKSTOCK, GOODSRKSL, GOODSSTOCK, ARFEE, APFEE, ASSOCIATEDNO, BLNO, FREESTORAGEPERIOD, CONTRACTNO, GOODSNAME, GOODSMODEL, CLIENTCODEOLD, CLIENTNAMEOLD, STORAGENAME, CHARGEUNIT,GOODSPACKACTUAL,GOODSRKSLACTUAL,TRUCKNAME,FREESTORAGEPERIODAP,STARTBILLINGDATEAP,CORPID,AREANAME,BANKVALUE,MARKETVALUE,BZTCHNO,CREATEUSER,CREATETIME from wms where GID='" + Inbsno.Trim() + "' and ISDELETE=0"; SqlDataReader sqlRead = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_GID, null); while (sqlRead.Read()) { if (!sqlRead.IsDBNull(0)) { WmsEntity.GID = sqlRead.GetString(0); } // 唯一编码 newid() if (!sqlRead.IsDBNull(1)) { WmsEntity.WMSNO = sqlRead.GetString(1); } // if (!sqlRead.IsDBNull(2)) { WmsEntity.WMSDATE = sqlRead.GetDateTime(2); } // if (!sqlRead.IsDBNull(3)) { WmsEntity.CUSTOMERNAME = sqlRead.GetString(3); } // if (!sqlRead.IsDBNull(4)) { WmsEntity.WMSOP = sqlRead.GetString(4); } // if (!sqlRead.IsDBNull(5)) { WmsEntity.STOREMAN = sqlRead.GetString(5); } if (!sqlRead.IsDBNull(6)) { WmsEntity.MODIFIEDUSER = sqlRead.GetString(6); } if (!sqlRead.IsDBNull(7)) { WmsEntity.MODIFIEDTIME = sqlRead.GetDateTime(7); } if (!sqlRead.IsDBNull(8)) { WmsEntity.ISDELETE = sqlRead.GetBoolean(8); } // 是否废除 if (!sqlRead.IsDBNull(9)) { WmsEntity.DELETEUSER = sqlRead.GetString(9); } // 废除操作人 if (!sqlRead.IsDBNull(10)) { WmsEntity.DELETETIME = sqlRead.GetDateTime(10); } // 废除时间 if (!sqlRead.IsDBNull(11)) { WmsEntity.TRUCKNAME = sqlRead.GetString(11); } // if (!sqlRead.IsDBNull(12)) { WmsEntity.GOODSPACK = sqlRead.GetDecimal(12); } // if (!sqlRead.IsDBNull(13)) { WmsEntity.GOODSPACKSTOCK = sqlRead.GetDecimal(13); } // if (!sqlRead.IsDBNull(14)) { WmsEntity.GOODSRKSL = sqlRead.GetDecimal(14); } // if (!sqlRead.IsDBNull(15)) { WmsEntity.GOODSSTOCK = sqlRead.GetDecimal(15); } // if (!sqlRead.IsDBNull(16)) { WmsEntity.ARFEE = sqlRead.GetDecimal(16); } // if (!sqlRead.IsDBNull(17)) { WmsEntity.APFEE = sqlRead.GetDecimal(17); } // if (!sqlRead.IsDBNull(18)) { WmsEntity.ASSOCIATEDNO = sqlRead.GetString(18); } // if (!sqlRead.IsDBNull(19)) { WmsEntity.BLNO = sqlRead.GetString(19); } // if (!sqlRead.IsDBNull(20)) { WmsEntity.FREESTORAGEPERIOD = sqlRead.GetInt32(20); } // if (!sqlRead.IsDBNull(21)) { WmsEntity.CONTRACTNO = sqlRead.GetString(21); } // if (!sqlRead.IsDBNull(22)) { WmsEntity.GOODSNAME = sqlRead.GetString(22); } // if (!sqlRead.IsDBNull(23)) { WmsEntity.GOODSMODEL = sqlRead.GetString(23); } // if (!sqlRead.IsDBNull(24)) { WmsEntity.CLIENTCODEOLD = sqlRead.GetString(24); } // if (!sqlRead.IsDBNull(25)) { WmsEntity.CLIENTNAMEOLD = sqlRead.GetString(25); } // if (!sqlRead.IsDBNull(26)) { WmsEntity.STORAGENAME = sqlRead.GetString(26); } // if (!sqlRead.IsDBNull(27)) { WmsEntity.CHARGEUNIT = sqlRead.GetString(27); }// if (!sqlRead.IsDBNull(28)) { WmsEntity.GOODSPACKACTUAL = sqlRead.GetDecimal(28); } if (!sqlRead.IsDBNull(29)) { WmsEntity.GOODSRKSLACTUAL = sqlRead.GetDecimal(29); } if (!sqlRead.IsDBNull(30)) { WmsEntity.TRUCKNAME = sqlRead.GetString(30); } if (!sqlRead.IsDBNull(31)) { WmsEntity.FREESTORAGEPERIODAP = sqlRead.GetInt32(31); } // if (!sqlRead.IsDBNull(32)) { WmsEntity.STARTBILLINGDATEAP = sqlRead.GetDateTime(32); } if (!sqlRead.IsDBNull(33)) { WmsEntity.CORPID = sqlRead.GetString(33); } if (!sqlRead.IsDBNull(34)) { WmsEntity.AREANAME = sqlRead.GetString(34); } if (!sqlRead.IsDBNull(35)) { WmsEntity.BANKVALUE = sqlRead.GetDecimal(35); } if (!sqlRead.IsDBNull(36)) { WmsEntity.MARKETVALUE = sqlRead.GetDecimal(36); } if (!sqlRead.IsDBNull(37)) { WmsEntity.BZTCHNO = sqlRead.GetString(37); } if (!sqlRead.IsDBNull(38)) { WmsEntity.CREATEUSER = sqlRead.GetString(38); } if (!sqlRead.IsDBNull(39)) { WmsEntity.CREATETIME = sqlRead.GetDateTime(39); } } sqlRead.Close(); sqlRead.Dispose(); #endregion // #region 提取货权转移的wms_out的数据 WmsOutEntity model = new WmsOutEntity(); StringBuilder strSql = new StringBuilder(); string SQL_SELECT_WMS_OUT_GID = "select top 1 GID,AssociatedNO,BSNO,CLIENTGID,CLIENTCODE,CUSTOMERNAME,DODATE,STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,GOODSPFSL,GOODSOUTFEE,REMARK,ISDELETE,DELETETIME,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,GOODSPACKPFSL,GOODSOUTFEEAP,TRUCKNAME,ARCLIENT,CUSTOMNO,MBLNONEW,CORPID,ARCLIENTWMSOUT,BZTCHNO from wms_out where GID='" + WmsOutEntity.GID.ToString().Trim() + "' "; SqlDataReader sqlRead1 = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_OUT_GID, null); while (sqlRead1.Read()) { if (sqlRead1["GID"] != null && sqlRead1["GID"].ToString() != "") { model.GID = sqlRead1["GID"].ToString(); } if (sqlRead1["ASSOCIATEDNO"] != null && sqlRead1["ASSOCIATEDNO"].ToString() != "") { model.ASSOCIATEDNO = sqlRead1["ASSOCIATEDNO"].ToString(); } if (sqlRead1["BSNO"] != null && sqlRead1["BSNO"].ToString() != "") { model.BSNO = sqlRead1["BSNO"].ToString(); } if (sqlRead1["CLIENTGID"] != null && sqlRead1["CLIENTGID"].ToString() != "") { model.CLIENTGID = sqlRead1["CLIENTGID"].ToString(); } if (sqlRead1["CLIENTCODE"] != null && sqlRead1["CLIENTCODE"].ToString() != "") { model.CLIENTCODE = sqlRead1["CLIENTCODE"].ToString(); } if (sqlRead1["CUSTOMERNAME"] != null && sqlRead1["CUSTOMERNAME"].ToString() != "") { model.CUSTOMERNAME = sqlRead1["CUSTOMERNAME"].ToString(); } if (sqlRead1["DODATE"] != null && sqlRead1["DODATE"].ToString() != "") { model.DODATE = DateTime.Parse(sqlRead1["DODATE"].ToString()); } if (sqlRead1["STORAGECODE"] != null && sqlRead1["STORAGECODE"].ToString() != "") { model.STORAGECODE = sqlRead1["STORAGECODE"].ToString(); } if (sqlRead1["STORAGENAME"] != null && sqlRead1["STORAGENAME"].ToString() != "") { model.STORAGENAME = sqlRead1["STORAGENAME"].ToString(); } if (sqlRead1["AREACODE"] != null && sqlRead1["AREACODE"].ToString() != "") { model.AREACODE = sqlRead1["AREACODE"].ToString(); } if (sqlRead1["AREANAME"] != null && sqlRead1["AREANAME"].ToString() != "") { model.AREANAME = sqlRead1["AREANAME"].ToString(); } if (sqlRead1["GOODSCODE"] != null && sqlRead1["GOODSCODE"].ToString() != "") { model.GOODSCODE = sqlRead1["GOODSCODE"].ToString(); } if (sqlRead1["GOODSNAME"] != null && sqlRead1["GOODSNAME"].ToString() != "") { model.GOODSNAME = sqlRead1["GOODSNAME"].ToString(); } if (sqlRead1["GOODSTYPE"] != null && sqlRead1["GOODSTYPE"].ToString() != "") { model.GOODSTYPE = sqlRead1["GOODSTYPE"].ToString(); } if (sqlRead1["GOODSMODEL"] != null && sqlRead1["GOODSMODEL"].ToString() != "") { model.GOODSMODEL = sqlRead1["GOODSMODEL"].ToString(); } if (sqlRead1["GOODSSTANDARD"] != null && sqlRead1["GOODSSTANDARD"].ToString() != "") { model.GOODSSTANDARD = sqlRead1["GOODSSTANDARD"].ToString(); } if (sqlRead1["GOODSPACK"] != null && sqlRead1["GOODSPACK"].ToString() != "") { model.GOODSPACK = sqlRead1["GOODSPACK"].ToString(); } if (sqlRead1["GOODSPFSL"] != null && sqlRead1["GOODSPFSL"].ToString() != "") { model.GOODSPFSL = decimal.Parse(sqlRead1["GOODSPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEE"] != null && sqlRead1["GOODSOUTFEE"].ToString() != "") { model.GOODSOUTFEE = decimal.Parse(sqlRead1["GOODSOUTFEE"].ToString()); } if (sqlRead1["REMARK"] != null && sqlRead1["REMARK"].ToString() != "") { model.REMARK = sqlRead1["REMARK"].ToString(); } if (sqlRead1["ISDELETE"] != null && sqlRead1["ISDELETE"].ToString() != "") { if ((sqlRead1["ISDELETE"].ToString() == "1") || (sqlRead1["ISDELETE"].ToString().ToLower() == "true")) { model.ISDELETE = true; } else { model.ISDELETE = false; } } if (sqlRead1["DELETETIME"] != null && sqlRead1["DELETETIME"].ToString() != "") { model.DELETETIME = DateTime.Parse(sqlRead1["DELETETIME"].ToString()); } if (sqlRead1["DELETEUSER"] != null && sqlRead1["DELETEUSER"].ToString() != "") { model.DELETEUSER = sqlRead1["DELETEUSER"].ToString(); } if (sqlRead1["CREATEUSER"] != null && sqlRead1["CREATEUSER"].ToString() != "") { model.CREATEUSER = sqlRead1["CREATEUSER"].ToString(); } if (sqlRead1["CREATETIME"] != null && sqlRead1["CREATETIME"].ToString() != "") { model.CREATETIME = DateTime.Parse(sqlRead1["CREATETIME"].ToString()); } if (sqlRead1["MODIFIEDUSER"] != null && sqlRead1["MODIFIEDUSER"].ToString() != "") { model.MODIFIEDUSER = sqlRead1["MODIFIEDUSER"].ToString(); } if (sqlRead1["MODIFIEDTIME"] != null && sqlRead1["MODIFIEDTIME"].ToString() != "") { model.MODIFIEDTIME = DateTime.Parse(sqlRead1["MODIFIEDTIME"].ToString()); } if (sqlRead1["GOODSPACKPFSL"] != null && sqlRead1["GOODSPACKPFSL"].ToString() != "") { model.GOODSPACKPFSL = decimal.Parse(sqlRead1["GOODSPACKPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEEAP"] != null && sqlRead1["GOODSOUTFEEAP"].ToString() != "") { model.GOODSOUTFEEAP = decimal.Parse(sqlRead1["GOODSOUTFEEAP"].ToString()); } if (sqlRead1["TRUCKNAME"] != null && sqlRead1["TRUCKNAME"].ToString() != "") { model.TRUCKNAME = sqlRead1["TRUCKNAME"].ToString(); } if (sqlRead1["ARCLIENT"] != null && sqlRead1["ARCLIENT"].ToString() != "") { model.ARCLIENT = sqlRead1["ARCLIENT"].ToString(); } if (sqlRead1["CUSTOMNO"] != null && sqlRead1["CUSTOMNO"].ToString() != "") { model.CUSTOMNO = sqlRead1["CUSTOMNO"].ToString(); } if (sqlRead1["MBLNONEW"] != null && sqlRead1["MBLNONEW"].ToString() != "") { model.MBLNONEW = sqlRead1["MBLNONEW"].ToString(); } if (sqlRead1["CORPID"] != null && sqlRead1["CORPID"].ToString() != "") { model.CORPID = sqlRead1["CORPID"].ToString(); } if (sqlRead1["ARCLIENTWMSOUT"] != null && sqlRead1["ARCLIENTWMSOUT"].ToString() != "") { model.ARCLIENTWMSOUT = sqlRead1["ARCLIENTWMSOUT"].ToString(); } if (sqlRead1["BZTCHNO"] != null && sqlRead1["BZTCHNO"].ToString() != "") { model.BZTCHNO = sqlRead1["BZTCHNO"].ToString(); } } sqlRead1.Close(); sqlRead1.Dispose(); #endregion // WmsEntity.GID = strINGIDNEW; // #region 提取规则编号 getCodeRule("入库单号", "WMSNO") // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRule(string strRULENAME, string strfield) //{ //调用编码规则 string tbWMSNO = ""; string strRULEYEAR1 = ""; string strRULECONTENT1 = ""; string strCODENAME1 = ""; string strDEPTNO1 = ""; string strRULENOLENGTH1 = ""; int iRULENOLENGTH1 = 0; int inum1 = 0; string strCONTENT1 = ""; DataSet ds2 = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='入库单号' and RULETYPE=3"); if (ds2 != null) { if (ds2.Tables[0].Rows.Count > 0) { if (ds2.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("入库单号", "WMSNO"); // if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; tbWMSNO = ""; } DateTime dETD = System.Convert.ToDateTime(ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy"); } } } else if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy"); } } } // if (ds2.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME1 = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds2.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO1 = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT1 = ds2.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT1 = strRULECONTENT1.Replace("《COMPANY》", strCODENAME1); strRULECONTENT1 = strRULECONTENT1.Replace("《DEPT》", strDEPTNO1); // if (ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH1 = 0; } else { iRULENOLENGTH1 = int.Parse(ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT1 = strRULECONTENT1 + strRULEYEAR1; // //获取分公司的票号头字符 string tempBANKSHEAD = ""; string strSQL = "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"; DataSet ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { tempBANKSHEAD = ds21.Tables[0].Rows[0]["BANKSHEAD"].ToString().Trim(); } } strCONTENT1 = tempBANKSHEAD + strCONTENT1; // strSQL = "select top 1 WMSNO from [wms] where WMSNO like '" + strCONTENT1.Trim() + "%' order by WMSNO DESC"; ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { strRULENOLENGTH1 = ds21.Tables[0].Rows[0]["WMSNO"].ToString().Trim(); } } if (strRULENOLENGTH1 == "") { strRULENOLENGTH1 = "1"; } else { strRULENOLENGTH1 = strRULENOLENGTH1.Replace(strCONTENT1.Trim(), ""); inum1 = int.Parse(strRULENOLENGTH1.Trim()); inum1 = inum1 + 1; strRULENOLENGTH1 = inum1.ToString(); } int j = iRULENOLENGTH1 - strRULENOLENGTH1.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH1 = "0" + strRULENOLENGTH1; } // strCONTENT1 = strCONTENT1 + strRULENOLENGTH1; tbWMSNO = strCONTENT1; //return strCONTENT1; } } } // return ""; //} #endregion WmsEntity.WMSNO = tbWMSNO;//调用编码规则 // WmsEntity.CUSTOMERNAME = this.h_outcustomer.Value.ToString().Trim(); WmsEntity.WMSOP = strShowName.Trim(); WmsEntity.STOREMAN = strShowName.Trim(); WmsEntity.CREATEUSER = strUserID; WmsEntity.MODIFIEDUSER = strUserID; // WmsEntity.WMSDATE = model.DODATE; WmsEntity.STARTBILLINGDATE = DateTime.Parse(this.txt_oldcustFeeDate.Value.Trim()).AddDays(1); int iFeeDay = WmsOutDetailDA.GetDaysCount("day", model.DODATE.ToString(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim());//WmsOutEntity.DODATE.ToString()); WmsEntity.FREESTORAGEPERIOD = 0; if (iFeeDay > 0) { WmsEntity.FREESTORAGEPERIOD = iFeeDay; } // WmsEntity.GOODSPACK = model.GOODSPACKPFSL; WmsEntity.GOODSPACKSTOCK = model.GOODSPACKPFSL; WmsEntity.GOODSPACKACTUAL = model.GOODSPACKPFSL; WmsEntity.GOODSRKSL = model.GOODSPFSL; WmsEntity.GOODSSTOCK = model.GOODSPFSL; WmsEntity.GOODSRKSLACTUAL = model.GOODSPFSL; WmsEntity.ARFEE = 0; WmsEntity.APFEE = 0; WmsEntity.CLIENTNAMEOLD = model.CUSTOMERNAME;// 原客户名称 WmsEntity.ISLOCK = false;// true; WmsEntity.LOCKUSER = strUserID; WmsEntity.CUSTOMNO = model.CUSTOMNO; WmsEntity.ARCLIENT = ""; WmsEntity.TRUCKNAME = ""; WmsEntity.CORPID = strCompanyID; WmsEntity.BZTCHNO = model.BZTCHNO; // string sMBLNONEW = this.h_mblnonew.Value.Trim() == "" ? model.MBLNONEW.ToString().Trim() : this.h_mblnonew.Value.Trim(); WmsEntity.BLNO = sMBLNONEW; WmsEntity.ASSOCIATEDNO = T_ALL_DA.GetStrSQL("bsno", "select top 1 bsno from op_seai where mblno='" + sMBLNONEW + "'"); WmsEntity.CUSTNO = T_ALL_DA.GetStrSQL("CUSTNO", "select top 1 CUSTNO from op_seai where mblno='" + sMBLNONEW + "'"); WmsEntity.ISCHANGE = true; // SqlParameter[] parameters = { new SqlParameter("@GID", SqlDbType.VarChar,36) , new SqlParameter("@WMSNO", SqlDbType.VarChar,100) , new SqlParameter("@WMSDATE", SqlDbType.DateTime) , new SqlParameter("@CUSTOMERNAME", SqlDbType.VarChar,20) , new SqlParameter("@WMSOP", SqlDbType.VarChar,10) , new SqlParameter("@STOREMAN", SqlDbType.VarChar,10) , new SqlParameter("@MODIFIEDUSER", SqlDbType.VarChar,36) , new SqlParameter("@TRUCKNAME", SqlDbType.VarChar,20) , new SqlParameter("@GOODSPACK", SqlDbType.Decimal) , new SqlParameter("@GOODSPACKSTOCK", SqlDbType.Decimal) , new SqlParameter("@GOODSRKSL", SqlDbType.Decimal) , new SqlParameter("@GOODSSTOCK", SqlDbType.Decimal) , new SqlParameter("@ARFEE", SqlDbType.Decimal) , new SqlParameter("@APFEE", SqlDbType.Decimal) , new SqlParameter("@ASSOCIATEDNO", SqlDbType.VarChar,100), new SqlParameter("@BLNO", SqlDbType.VarChar,100) , new SqlParameter("@FREESTORAGEPERIOD", SqlDbType.Int,4) , new SqlParameter("@CONTRACTNO", SqlDbType.VarChar,100), new SqlParameter("@GOODSNAME", SqlDbType.VarChar,100) , new SqlParameter("@GOODSMODEL", SqlDbType.VarChar,100) , new SqlParameter("@CLIENTCODEOLD", SqlDbType.VarChar,20) , new SqlParameter("@CLIENTNAMEOLD", SqlDbType.VarChar,20) , new SqlParameter("@STORAGENAME", SqlDbType.VarChar,20) , new SqlParameter("@CHARGEUNIT", SqlDbType.VarChar,10) , new SqlParameter("@ISLOCK", SqlDbType.Bit) , new SqlParameter("@LOCKUSER", SqlDbType.VarChar,36) , new SqlParameter("@STARTBILLINGDATE", SqlDbType.DateTime) , new SqlParameter("@CUSTOMNO", SqlDbType.VarChar,30) , new SqlParameter("@GOODSPACKACTUAL",SqlDbType.Decimal) , new SqlParameter("@GOODSRKSLACTUAL",SqlDbType.Decimal) , new SqlParameter("@CUSTNO", SqlDbType.VarChar,30) , new SqlParameter("@ARCLIENT", SqlDbType.VarChar,20) , new SqlParameter("@FREESTORAGEPERIODAP", SqlDbType.Int,4) , new SqlParameter("@STARTBILLINGDATEAP", SqlDbType.DateTime) , new SqlParameter("@ISCHANGE", SqlDbType.Bit) , new SqlParameter("@CORPID", SqlDbType.VarChar,36) , new SqlParameter("@AREANAME",SqlDbType.VarChar,100) , new SqlParameter("@BANKVALUE", SqlDbType.Decimal) , new SqlParameter("@MARKETVALUE", SqlDbType.Decimal) , new SqlParameter("@BZTCHNO",SqlDbType.VarChar,100) , new SqlParameter("@CREATEUSER", SqlDbType.VarChar,36) }; parameters[0].Value = WmsEntity.GID; parameters[1].Value = WmsEntity.WMSNO; parameters[2].Value = WmsEntity.WMSDATE; parameters[3].Value = WmsEntity.CUSTOMERNAME; parameters[4].Value = WmsEntity.WMSOP; parameters[5].Value = WmsEntity.STOREMAN; parameters[6].Value = WmsEntity.MODIFIEDUSER; parameters[7].Value = WmsEntity.TRUCKNAME; parameters[8].Value = WmsEntity.GOODSPACK; parameters[9].Value = WmsEntity.GOODSPACKSTOCK; parameters[10].Value = WmsEntity.GOODSRKSL; parameters[11].Value = WmsEntity.GOODSSTOCK; parameters[12].Value = WmsEntity.ARFEE; parameters[13].Value = WmsEntity.APFEE; parameters[14].Value = WmsEntity.ASSOCIATEDNO; parameters[15].Value = WmsEntity.BLNO; parameters[16].Value = WmsEntity.FREESTORAGEPERIOD; parameters[17].Value = WmsEntity.CONTRACTNO; parameters[18].Value = WmsEntity.GOODSNAME; parameters[19].Value = WmsEntity.GOODSMODEL; parameters[20].Value = WmsEntity.CLIENTCODEOLD; parameters[21].Value = WmsEntity.CLIENTNAMEOLD; parameters[22].Value = WmsEntity.STORAGENAME; parameters[23].Value = WmsEntity.CHARGEUNIT; parameters[24].Value = WmsEntity.ISLOCK; parameters[25].Value = WmsEntity.LOCKUSER; parameters[26].Value = WmsEntity.STARTBILLINGDATE; parameters[27].Value = WmsEntity.CUSTOMNO; parameters[28].Value = WmsEntity.GOODSPACKACTUAL;// parameters[29].Value = WmsEntity.GOODSRKSLACTUAL;// parameters[30].Value = WmsEntity.CUSTNO;// parameters[31].Value = WmsEntity.ARCLIENT;// parameters[32].Value = WmsEntity.FREESTORAGEPERIODAP; parameters[33].Value = WmsEntity.STARTBILLINGDATEAP; parameters[34].Value = WmsEntity.ISCHANGE; parameters[35].Value = WmsEntity.CORPID; parameters[36].Value = WmsEntity.AREANAME; parameters[37].Value = WmsEntity.BANKVALUE; parameters[38].Value = WmsEntity.MARKETVALUE; parameters[39].Value = WmsEntity.BZTCHNO; parameters[40].Value = WmsEntity.CREATEUSER; string lsSql = "insert into wms(GID,WMSNO,WMSDATE,CUSTOMERNAME,WMSOP,STOREMAN,MODIFIEDUSER,MODIFIEDTIME,ISDELETE,DELETEUSER,DELETETIME,TRUCKNAME,GOODSPACK,GOODSPACKSTOCK,GOODSRKSL,GOODSSTOCK,ARFEE,APFEE,ASSOCIATEDNO,BLNO,FREESTORAGEPERIOD,CONTRACTNO,GOODSNAME,GOODSMODEL,CLIENTCODEOLD,CLIENTNAMEOLD,STORAGENAME,CHARGEUNIT,ISLOCK,LOCKUSER,LOCKTIME,STARTBILLINGDATE,CUSTOMNO,GOODSPACKACTUAL,GOODSRKSLACTUAL,CUSTNO,ARCLIENT,FREESTORAGEPERIODAP,STARTBILLINGDATEAP,ISCHANGE,CORPID,AREANAME,BANKVALUE,MARKETVALUE,BZTCHNO,CREATEUSER,CREATETIME)" + " values (@GID,@WMSNO,@WMSDATE,@CUSTOMERNAME,@WMSOP,@STOREMAN,@MODIFIEDUSER,getdate(),0,'',getdate(),@TRUCKNAME,@GOODSPACK,@GOODSPACKSTOCK,@GOODSRKSL,@GOODSSTOCK,@ARFEE,@APFEE,@ASSOCIATEDNO,@BLNO,@FREESTORAGEPERIOD,@CONTRACTNO,@GOODSNAME,@GOODSMODEL,@CLIENTCODEOLD,@CLIENTNAMEOLD,@STORAGENAME,@CHARGEUNIT,@ISLOCK,@LOCKUSER,getdate(),@STARTBILLINGDATE,@CUSTOMNO,@GOODSPACKACTUAL,@GOODSRKSLACTUAL,@CUSTNO,@ARCLIENT,@FREESTORAGEPERIODAP,@STARTBILLINGDATEAP,@ISCHANGE,@CORPID,@AREANAME,@BANKVALUE,@MARKETVALUE,@BZTCHNO,@CREATEUSER,getdate())"; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, parameters); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } #endregion // #region 插入入库明细表 // //插入入库明细表 int n = 0; foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { n = n + 1; #region 提取出库相对应的原入库wms_in数据 string SQL_SELECT_WMS_IN_GID = "select top 1 GID,ASSOCIATEDNO,BLNO,CONTRACTNO,CNTRNO,SEALNO,BSNO,CLIENTCODE,CLIENTNAME,DODATE,STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,CHARGEUNIT,GOODSRKSL,GOODSSTOCK,ISLOCK,LOCKTIME,LOCKUSER,ISDELETE,DELETETIME,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,REMARK,FREESTORAGEPERIOD,GOODSPACKSTOCK,GOODSKGS,CLIENTCODEOLD,CLIENTNAMEOLD,KINDPKGS,ARFEE,APFEE,CORPID,MARKETVALUE,BANKVALUE,LINENUM from wms_in where ASSOCIATEDNO in (select gid from wms where gid='" + WmsOutDetailEntity.INBSNO.ToString().Trim() + "') and ISDELETE=0"; sqlRead = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_IN_GID, null); while (sqlRead.Read()) { if (!sqlRead.IsDBNull(0)) { WmsInEntity.GID = sqlRead.GetString(0); }// 惟一编号 if (!sqlRead.IsDBNull(1)) { WmsInEntity.ASSOCIATEDNO = sqlRead.GetString(1); }// 关联号 if (!sqlRead.IsDBNull(2)) { WmsInEntity.BLNO = sqlRead.GetString(2); }// 提单号 if (!sqlRead.IsDBNull(3)) { WmsInEntity.CONTRACTNO = sqlRead.GetString(3); }// 合同号 if (!sqlRead.IsDBNull(4)) { WmsInEntity.CNTRNO = sqlRead.GetString(4); }// 箱号 if (!sqlRead.IsDBNull(5)) { WmsInEntity.SEALNO = sqlRead.GetString(5); }// 封号 if (!sqlRead.IsDBNull(6)) { WmsInEntity.BSNO = sqlRead.GetString(6); }// 仓单明细号 if (!sqlRead.IsDBNull(7)) { WmsInEntity.CLIENTCODE = sqlRead.GetString(7); }// 客户编码 if (!sqlRead.IsDBNull(8)) { WmsInEntity.CLIENTNAME = sqlRead.GetString(8); }// 客户名称 if (!sqlRead.IsDBNull(9)) { WmsInEntity.DODATE = sqlRead.GetDateTime(9); }// 操作时间 if (!sqlRead.IsDBNull(10)) { WmsInEntity.STORAGECODE = sqlRead.GetString(10); }// 仓库编码 if (!sqlRead.IsDBNull(11)) { WmsInEntity.STORAGENAME = sqlRead.GetString(11); }// 仓库名称 if (!sqlRead.IsDBNull(12)) { WmsInEntity.AREACODE = sqlRead.GetString(12); }// 库位编码 if (!sqlRead.IsDBNull(13)) { WmsInEntity.AREANAME = sqlRead.GetString(13); }// 库位名称 if (!sqlRead.IsDBNull(14)) { WmsInEntity.GOODSCODE = sqlRead.GetString(14); }// 货物编号 if (!sqlRead.IsDBNull(15)) { WmsInEntity.GOODSNAME = sqlRead.GetString(15); }// 货物名称 if (!sqlRead.IsDBNull(16)) { WmsInEntity.GOODSTYPE = sqlRead.GetString(16); }// 货物类型 if (!sqlRead.IsDBNull(17)) { WmsInEntity.GOODSMODEL = sqlRead.GetString(17); }// 牌号 if (!sqlRead.IsDBNull(18)) { WmsInEntity.GOODSSTANDARD = sqlRead.GetString(18); }// 规格 if (!sqlRead.IsDBNull(19)) { WmsInEntity.GOODSPACK = sqlRead.GetDecimal(19); }// 件数 if (!sqlRead.IsDBNull(20)) { WmsInEntity.CHARGEUNIT = sqlRead.GetString(20); }// 计费单位 if (!sqlRead.IsDBNull(21)) { WmsInEntity.GOODSRKSL = sqlRead.GetDecimal(21); }// 入库量 if (!sqlRead.IsDBNull(22)) { WmsInEntity.GOODSSTOCK = sqlRead.GetDecimal(22); }// 库存量 if (!sqlRead.IsDBNull(23)) { WmsInEntity.ISLOCK = sqlRead.GetBoolean(23); }// 是否锁定 if (!sqlRead.IsDBNull(24)) { WmsInEntity.LOCKTIME = sqlRead.GetDateTime(24); }// 锁定时间 if (!sqlRead.IsDBNull(25)) { WmsInEntity.LOCKUSER = sqlRead.GetString(25); }// 锁定操作人 if (!sqlRead.IsDBNull(26)) { WmsInEntity.ISDELETE = sqlRead.GetBoolean(26); }// 是否废除 if (!sqlRead.IsDBNull(27)) { WmsInEntity.DELETETIME = sqlRead.GetDateTime(27); }// 废除时间 if (!sqlRead.IsDBNull(28)) { WmsInEntity.DELETEUSER = sqlRead.GetString(28); }// 废除操作人 if (!sqlRead.IsDBNull(29)) { WmsInEntity.CREATEUSER = sqlRead.GetString(29); }// 创建人 if (!sqlRead.IsDBNull(30)) { WmsInEntity.CREATETIME = sqlRead.GetDateTime(30); }// 创建时间 if (!sqlRead.IsDBNull(31)) { WmsInEntity.MODIFIEDUSER = sqlRead.GetString(31); }// 最后一次更新操作人 if (!sqlRead.IsDBNull(32)) { WmsInEntity.MODIFIEDTIME = sqlRead.GetDateTime(32); }// 最后一次更新操作时间 if (!sqlRead.IsDBNull(33)) { WmsInEntity.REMARK = sqlRead.GetString(33); }// 备注 if (!sqlRead.IsDBNull(34)) { WmsInEntity.FREESTORAGEPERIOD = sqlRead.GetInt32(34); }// 免仓储期 if (!sqlRead.IsDBNull(35)) { WmsInEntity.GOODSPACKSTOCK = sqlRead.GetDecimal(35); }// 剩余件数 if (!sqlRead.IsDBNull(36)) { WmsInEntity.GOODSKGS = sqlRead.GetDecimal(36); }// 重量 if (!sqlRead.IsDBNull(37)) { WmsInEntity.CLIENTCODEOLD = sqlRead.GetString(37); }// 原客户编码 if (!sqlRead.IsDBNull(38)) { WmsInEntity.CLIENTNAMEOLD = sqlRead.GetString(38); }// 原客户名称 if (!sqlRead.IsDBNull(39)) { WmsInEntity.KINDPKGS = sqlRead.GetString(39); }// if (!sqlRead.IsDBNull(40)) { WmsInEntity.ARFEE = sqlRead.GetDecimal(40); }// if (!sqlRead.IsDBNull(41)) { WmsInEntity.APFEE = sqlRead.GetDecimal(41); }// if (!sqlRead.IsDBNull(42)) { WmsInEntity.CORPID = sqlRead.GetString(42); }// if (!sqlRead.IsDBNull(43)) { WmsInEntity.MARKETVALUE = sqlRead.GetDecimal(43); }// if (!sqlRead.IsDBNull(44)) { WmsInEntity.BANKVALUE = sqlRead.GetDecimal(44); }// if (!sqlRead.IsDBNull(45)) { WmsInEntity.LINENUM = sqlRead.GetInt32(45); }// } sqlRead.Close(); sqlRead.Dispose(); #endregion WmsInEntity.GID = Guid.NewGuid().ToString(); WmsInEntity.ASSOCIATEDNO = WmsEntity.GID; WmsInEntity.BLNO = model.MBLNONEW; // #region 提取规则编号 getCodeRule("入库明细单号", "BSNO", "wms_in") // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRule(string strRULENAME, string strfield) //{ //调用编码规则 string tbBSNO = ""; strRULEYEAR1 = ""; strRULECONTENT1 = ""; strCODENAME1 = ""; strDEPTNO1 = ""; strRULENOLENGTH1 = ""; iRULENOLENGTH1 = 0; inum1 = 0; strCONTENT1 = ""; ds2 = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='入库明细单号' and RULETYPE=3"); if (ds2 != null) { if (ds2.Tables[0].Rows.Count > 0) { if (ds2.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("入库明细单号", "BSNO"); // if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; tbBSNO = ""; } DateTime dETD = System.Convert.ToDateTime(ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy"); } } } else if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy"); } } } // if (ds2.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME1 = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds2.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO1 = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT1 = ds2.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT1 = strRULECONTENT1.Replace("《COMPANY》", strCODENAME1); strRULECONTENT1 = strRULECONTENT1.Replace("《DEPT》", strDEPTNO1); // if (ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH1 = 0; } else { iRULENOLENGTH1 = int.Parse(ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT1 = strRULECONTENT1 + strRULEYEAR1; // //获取分公司的票号头字符 string tempBANKSHEAD = ""; string strSQL = "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"; DataSet ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { tempBANKSHEAD = ds21.Tables[0].Rows[0]["BANKSHEAD"].ToString().Trim(); } } strCONTENT1 = tempBANKSHEAD + strCONTENT1; // strSQL = "select top 1 BSNO from [wms_in] where BSNO like '" + strCONTENT1.Trim() + "%' order by BSNO DESC"; ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { strRULENOLENGTH1 = ds21.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH1 == "") { strRULENOLENGTH1 = "1"; } else { strRULENOLENGTH1 = strRULENOLENGTH1.Replace(strCONTENT1.Trim(), ""); inum1 = int.Parse(strRULENOLENGTH1.Trim()); inum1 = inum1 + 1; strRULENOLENGTH1 = inum1.ToString(); } int j = iRULENOLENGTH1 - strRULENOLENGTH1.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH1 = "0" + strRULENOLENGTH1; } // strCONTENT1 = strCONTENT1 + strRULENOLENGTH1; tbBSNO = strCONTENT1; //return strCONTENT1; } } } // return ""; //} #endregion WmsInEntity.BSNO = tbBSNO;//调用编码规则 // WmsInEntity.DODATE = model.DODATE; WmsInEntity.CLIENTNAME = this.h_outcustomer.Value.ToString().Trim(); WmsInEntity.GOODSRKSL = WmsOutDetailEntity.GOODSPFSL;//入库数量 WmsInEntity.GOODSSTOCK = WmsOutDetailEntity.GOODSPFSL;//入库数量 WmsInEntity.GOODSRKSLACTUAL = WmsOutDetailEntity.GOODSPFSL;//入库数量 WmsInEntity.GOODSPACK = WmsOutDetailEntity.GOODSPACKPFSL;//件数 WmsInEntity.GOODSPACKSTOCK = WmsOutDetailEntity.GOODSPACKPFSL;//件数 WmsInEntity.GOODSPACKACTUAL = WmsOutDetailEntity.GOODSPACKPFSL;//件数 WmsInEntity.REMARK = "货权转移"; WmsInEntity.CREATEUSER = strUserID;// 创建人 WmsInEntity.MODIFIEDUSER = strUserID;// 最后一次更新操作人 WmsInEntity.CLIENTNAMEOLD = WmsOutDetailEntity.CUSTOMERNAME;//货权转移前货主 WmsInEntity.ARFEE = 0; WmsInEntity.APFEE = 0; WmsInEntity.ISLOCK = false;// true; WmsInEntity.LOCKUSER = strUserID; WmsInEntity.ISCHANGE = true; WmsInEntity.CORPID = strCompanyID; SqlParameter[] parms = new SqlParameter[]{ new SqlParameter("@GID",SqlDbType.VarChar,100),//惟一编号 new SqlParameter("@ASSOCIATEDNO",SqlDbType.VarChar,100),//关联号 new SqlParameter("@BLNO",SqlDbType.VarChar,30),//提单号 new SqlParameter("@CONTRACTNO",SqlDbType.VarChar,100),//合同号 new SqlParameter("@CNTRNO",SqlDbType.VarChar,30),//箱号 new SqlParameter("@SEALNO",SqlDbType.VarChar,12),//封号 new SqlParameter("@BSNO",SqlDbType.VarChar,100),//仓单明细号 new SqlParameter("@CLIENTCODE",SqlDbType.VarChar,20),//客户编码 new SqlParameter("@CLIENTNAME",SqlDbType.VarChar,20),//客户名称 new SqlParameter("@STORAGECODE",SqlDbType.VarChar,50),//仓库编码 new SqlParameter("@STORAGENAME",SqlDbType.VarChar,100),//仓库名称 new SqlParameter("@AREACODE",SqlDbType.VarChar,50),//库位编码 new SqlParameter("@AREANAME",SqlDbType.VarChar,100),//库位名称 new SqlParameter("@GOODSCODE",SqlDbType.VarChar,50),//货物编号 new SqlParameter("@GOODSNAME",SqlDbType.VarChar,100),//货物名称/品名 new SqlParameter("@GOODSTYPE",SqlDbType.VarChar,50),//货物类型 new SqlParameter("@GOODSMODEL",SqlDbType.VarChar,100),//牌号 new SqlParameter("@GOODSSTANDARD",SqlDbType.VarChar,100),//规格 new SqlParameter("@GOODSPACK",SqlDbType.Decimal),//件数 new SqlParameter("@CHARGEUNIT",SqlDbType.VarChar,10),//计费单位 new SqlParameter("@GOODSRKSL",SqlDbType.Decimal),//入库量 new SqlParameter("@GOODSSTOCK",SqlDbType.Decimal) ,//库存量 new SqlParameter("@ISLOCK",SqlDbType.Bit),//是否锁定 new SqlParameter("@LOCKUSER",SqlDbType.VarChar,36),//锁定操作人 new SqlParameter("@ISDELETE",SqlDbType.Bit),//是否废除 new SqlParameter("@DELETEUSER",SqlDbType.VarChar,36),//废除操作人 new SqlParameter("@CREATEUSER",SqlDbType.VarChar,36),//创建人 new SqlParameter("@MODIFIEDUSER",SqlDbType.VarChar,36),//最后一次更新操作人 new SqlParameter("@REMARK",SqlDbType.VarChar,1024),//备注 new SqlParameter("@FREESTORAGEPERIOD",SqlDbType.Int),// new SqlParameter("@GOODSPACKSTOCK",SqlDbType.Decimal),// new SqlParameter("@GOODSKGS",SqlDbType.Decimal),//重量 new SqlParameter("@CLIENTCODEOLD",SqlDbType.VarChar,20),//原客户编码 new SqlParameter("@CLIENTNAMEOLD",SqlDbType.VarChar,20),//原客户名称 new SqlParameter("@KINDPKGS",SqlDbType.VarChar,20),// new SqlParameter("@ARFEE",SqlDbType.Decimal),// new SqlParameter("@APFEE",SqlDbType.Decimal), new SqlParameter("@GOODSPACKACTUAL",SqlDbType.Decimal), new SqlParameter("@GOODSRKSLACTUAL",SqlDbType.Decimal), new SqlParameter("@ISCHANGE",SqlDbType.Bit),// new SqlParameter("@CORPID",SqlDbType.VarChar,36) , new SqlParameter("@MARKETVALUE", SqlDbType.Decimal) , new SqlParameter("@BANKVALUE", SqlDbType.Decimal) }; parms[0].Value = WmsInEntity.GID;// 惟一编号 parms[1].Value = WmsInEntity.ASSOCIATEDNO;// 关联号 parms[2].Value = WmsInEntity.BLNO;// 提单号 parms[3].Value = WmsInEntity.CONTRACTNO;// 合同号 parms[4].Value = WmsInEntity.CNTRNO;// 箱号 parms[5].Value = WmsInEntity.SEALNO;// 封号 parms[6].Value = WmsInEntity.BSNO;// 仓单明细号 parms[7].Value = WmsInEntity.CLIENTCODE;// 客户编码 parms[8].Value = WmsInEntity.CLIENTNAME;// 客户名称 parms[9].Value = WmsInEntity.STORAGECODE;// 仓库编码 parms[10].Value = WmsInEntity.STORAGENAME;// 仓库名称 parms[11].Value = WmsInEntity.AREACODE;// 库位编码 parms[12].Value = WmsInEntity.AREANAME;// 库位名称 parms[13].Value = WmsInEntity.GOODSCODE;// 货物编号 parms[14].Value = WmsInEntity.GOODSNAME;// 货物名称 parms[15].Value = WmsInEntity.GOODSTYPE;// 货物类型 parms[16].Value = WmsInEntity.GOODSMODEL;// 牌号 parms[17].Value = WmsInEntity.GOODSSTANDARD;// 规格 parms[18].Value = WmsInEntity.GOODSPACK;// 件数 parms[19].Value = WmsInEntity.CHARGEUNIT;// 计费单位 parms[20].Value = WmsInEntity.GOODSRKSL;// 入库量 parms[21].Value = WmsInEntity.GOODSSTOCK;// 库存量 parms[22].Value = WmsInEntity.ISLOCK;// 是否锁定 parms[23].Value = WmsInEntity.LOCKUSER;// 锁定操作人 parms[24].Value = WmsInEntity.ISDELETE;// 是否废除 parms[25].Value = WmsInEntity.DELETEUSER;// 废除操作人 parms[26].Value = WmsInEntity.CREATEUSER;// 创建人 parms[27].Value = WmsInEntity.MODIFIEDUSER;// 最后一次更新操作人 parms[28].Value = WmsInEntity.REMARK;// 备注 parms[29].Value = WmsInEntity.FREESTORAGEPERIOD;// parms[30].Value = WmsInEntity.GOODSPACKSTOCK;// parms[31].Value = WmsInEntity.GOODSKGS;// 重量 parms[32].Value = WmsInEntity.CLIENTCODEOLD;// 客户编码 parms[33].Value = WmsInEntity.CLIENTNAMEOLD;// 客户名称 parms[34].Value = WmsInEntity.KINDPKGS;// parms[35].Value = WmsInEntity.ARFEE;// parms[36].Value = WmsInEntity.APFEE;// parms[37].Value = WmsInEntity.GOODSPACKACTUAL;// parms[38].Value = WmsInEntity.GOODSRKSLACTUAL;// parms[39].Value = WmsInEntity.ISCHANGE;// parms[40].Value = WmsInEntity.CORPID;// parms[41].Value = WmsInEntity.MARKETVALUE; parms[42].Value = WmsInEntity.BANKVALUE; // lsSql = "insert into wms_in(GID,ASSOCIATEDNO,BLNO,CONTRACTNO,CNTRNO,SEALNO,BSNO,CLIENTCODE,CLIENTNAME,{0}STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,CHARGEUNIT,GOODSRKSL,GOODSSTOCK,ISLOCK,LOCKUSER,ISDELETE,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,REMARK,FREESTORAGEPERIOD,GOODSPACKSTOCK,GOODSKGS,CLIENTCODEOLD,CLIENTNAMEOLD,KINDPKGS,ARFEE,APFEE,LOCKTIME,GOODSPACKACTUAL,GOODSRKSLACTUAL,ISCHANGE,CORPID,MARKETVALUE,BANKVALUE,LINENUM) " + " values(@GID,@ASSOCIATEDNO,@BLNO,@CONTRACTNO,@CNTRNO,@SEALNO,@BSNO,@CLIENTCODE,@CLIENTNAME,{1}@STORAGECODE,@STORAGENAME,@AREACODE,@AREANAME,@GOODSCODE,@GOODSNAME,@GOODSTYPE,@GOODSMODEL,@GOODSSTANDARD,@GOODSPACK,@CHARGEUNIT,@GOODSRKSL,@GOODSSTOCK,@ISLOCK,@LOCKUSER,@ISDELETE,@DELETEUSER,@CREATEUSER,getdate(),@MODIFIEDUSER,getdate(),@REMARK,@FREESTORAGEPERIOD,@GOODSPACKSTOCK,@GOODSKGS,@CLIENTCODEOLD,@CLIENTNAMEOLD,@KINDPKGS,@ARFEE,@APFEE,getdate(),@GOODSPACKACTUAL,@GOODSRKSLACTUAL,@ISCHANGE,@CORPID,@MARKETVALUE,@BANKVALUE," + n + ")"; // string strDODATE = model.DODATE.ToString().IndexOf("0001") > -1 ? "" : "'" + model.DODATE.ToString() + "',"; string strDODATE_name = strDODATE.Equals("") ? "" : "DODATE,"; lsSql = String.Format(lsSql, strDODATE_name, strDODATE); // iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, parms); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } } #endregion // #region 依据原入库的费率,插入货权转移的仓储应付费率设置wms_rate lsSql = "insert into wms_rate([GID],[FEEGRADE],[FEESCALE],[FEEPRICE],[FEEUNIT],[CREATEUSER],[CREATETIME],[MODIFIEDUSER],[MODIFIEDTIME],[REMARK],[BSNO],[CUSTOMERNAME],[FEETYPE],[ENDBILLINGDATE],[ADDPRICE],[RATETYPE],[FEENAME],[ISCHANGE],[CAPPRICE]) " + " select newid(),1,[FEESCALE],[FEEPRICE],[FEEUNIT],[CREATEUSER],getdate(),[MODIFIEDUSER],getdate(),[REMARK],'" + strINGIDNEW.Trim() + "','" + WmsEntity.CUSTOMERNAME.ToString().Trim() + "',[FEETYPE],[ENDBILLINGDATE],[ADDPRICE],[RATETYPE],[FEENAME],'True',CAPPRICE from wms_rate where FEETYPE=2 and BSNO='" + Inbsno.Trim() + "'"; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, parameters); if (iState < 0) { sqlTran.Rollback(); result = -9; Clearh(); return result; } #endregion // #endregion // this.h_newcust.Value = WmsInEntity.CLIENTNAME; this.h_IsSetRate.Value = "1"; //货权转移,可以设置费率 result = 1;//状态为1表示删除成功 sqlTran.Commit(); Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", ""); } catch (Exception execError) { result = -1;//有异常,插入失败 sqlTran.Rollback(); result = -2;//插入异常,事务已回滚成功 Clearh(); throw execError; } finally { SqlHelper.CloseConnection(); } } return result; } #endregion #region 更改货权转移 /// /// 更改货权转移 /// private int CargoRightTransferEdit() { int iState = 0; int result = 0; string Sqlstr = ""; Decimal totaloutfee = 0;//出库单的仓储费 //int prescale = 0; //int nowscale = 0; //int nowgrade = 0; //Decimal price = 0; //Decimal gradefee = 0; //string newGID = ""; Decimal sumfee = 0; string bsno = ""; //出库单信息 WmsOutDA WmsOutDA = new WmsOutDA(); WmsOutEntity WmsOutEntity = new WmsOutEntity(); if (!WoJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutEntity = ResolveWoJSON(WoJSON.Trim(), WmsOutEntity); WoContainer.Value = ""; } //出库单明细信息 WmsOutDetailDA WmsOutDetailDA = new WmsOutDetailDA(); IList WmsOutDetailEntitys = new List(); if (!WoDetailJSON.Trim().Equals("")) { //将应收费用信息从前台页面写入费用实体类feeEntities WmsOutDetailEntitys = ResolveWoDetailJSON(WoDetailJSON.Trim(), WmsOutDetailEntitys); this.WoDetailContainer.Value = ""; } Decimal outnums = 0; int feedays = 0; using (SqlTransaction sqlTran = SqlHelper.BeginTransaction(SqlHelper.ConnectionStringLocalTransaction)) { try { #region 生成出库单并计算费用 #region 保存出库单wms_out 出库单明细wms_out_detail //保存出库单wms_out string ls = WmsOutEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); // string strVALIDDATE = WmsOutEntity.VALIDDATE.ToString().Trim().IndexOf("0001") > -1 ? "" : ",VALIDDATE='" + WmsOutEntity.VALIDDATE.ToString() + "'"; // Sqlstr = String.Format("update wms_out set BSNO='{1}',CUSTOMERNAME='{2}',DODATE='{3}',STORAGENAME='{4}',GOODSNAME='{5}',GOODSMODEL='{6}',GOODSPFSL='{7}',REMARK='{8}',CREATEUSER='{9}',CREATETIME=getdate(),TRUCKNO='{10}',ASSOCIATEDNO='{11}',GOODSPACKPFSL='{12}',INSPECTIONNO='{13}',CUSTOMNO='{14}',CLIENTNAMEOLD='{15}',OLDCUSTFEEDATE='{16}',TRUCKNAME='{17}',ARCLIENT='{18}',CLIENTBSNO='{19}',TOTALNO='{20}',REMARK2='{21}'{22},MBLNONEW='{23}',CORPID='{24}',ARCLIENTWMSOUT='{25}',BZTCHNO='{26}',ISCOLLECTING='{27}' where GID='{0}'" , WmsOutEntity.GID, WmsOutEntity.BSNO, WmsOutEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutEntity.STORAGENAME, WmsOutEntity.GOODSNAME, WmsOutEntity.GOODSMODEL, WmsOutEntity.GOODSPFSL, WmsOutEntity.REMARK, strUserID, ls, WmsOutEntity.ASSOCIATEDNO, WmsOutEntity.GOODSPACKPFSL, WmsOutEntity.INSPECTIONNO, WmsOutEntity.CUSTOMNO, WmsOutEntity.CLIENTNAMEOLD, WmsOutEntity.OLDCUSTFEEDATE, WmsOutEntity.TRUCKNAME, WmsOutEntity.ARCLIENT, WmsOutEntity.CLIENTBSNO, WmsOutEntity.TOTALNO, WmsOutEntity.REMARK2, strVALIDDATE, WmsOutEntity.MBLNONEW, strCompanyID, WmsOutEntity.ARCLIENTWMSOUT, WmsOutEntity.BZTCHNO, WmsOutEntity.ISCOLLECTING); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -1; Clearh(); return result; } //保存出库单明细wms_out_detail foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { if (DateTime.Parse(WmsOutDetailEntity.DODATE.ToString("yyyy-MM-dd")) > DateTime.Parse(WmsOutEntity.DODATE.ToString("yyyy-MM-dd"))) { sqlTran.Rollback(); result = -12; Page.ClientScript.RegisterStartupScript(this.GetType(), "key10", ""); Clearh(); return result; } // WmsOutDetailEntity.OUTBSNO = WmsOutEntity.BSNO; outnums = Decimal.Parse(WmsOutDetailEntity.GOODSPFSL.ToString());//出库量 #region 计算仓储费 //计算应收仓储费 string getstr = WmsOutDetailDA.getWmsRate(sqlTran, WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim(), WmsOutDetailEntity.INBSNO.ToString().Trim(), WmsOutEntity.CUSTOMERNAME.ToString().Trim(), outnums, WmsOutDetailEntity.GID.ToString(), 1, strUserID, strShowName, this.txt_outbsno.Value.Trim(), this.ck_jsfee.Checked, false); string[] strls = getstr.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); sumfee = Decimal.Parse(strls[0].ToString()); totaloutfee += sumfee;//仓储费合计 feedays += int.Parse(strls[1].ToString()); #endregion //保存wms_out_detail WmsOutDetailEntity.DODATE = WmsOutEntity.DODATE; WmsOutDetailEntity.GOODSOUTFEE = (sumfee == 0 ? 0 : decimal.Parse(Round(sumfee, 2, "").ToString())); WmsOutDetailEntity.GOODSOUTFEEAP = 0; WmsOutDetailEntity.ENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().Trim().IndexOf("0001") > -1 ? DateTime.Parse("0001-01-01 00:00:00") : WmsOutEntity.OLDCUSTFEEDATE;//结束计费日期 WmsOutDetailEntity.FEEDAYS = feedays;//计费天数iFEEDAYS WmsOutDetailEntity.FEEDAYSAP = 0;//计费天数iFEEDAYS // //bsno = getCodeRuleWmsOutDetail("出库明细单号", "BSNO"); #region 提取规则编号 getCodeRuleWmsOutDetail // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRuleWmsOutDetail(string strRULENAME, string strfield) //{ //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='出库明细单号' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("出库明细单号", "BSNO"); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; bsno = ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // string strSQL = "select top 1 BSNO from [wms_out_detail] where BSNO like '" + strCONTENT.Trim() + "%' order by BSNO DESC"; DataSet ds1 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds1 != null) { if (ds1.Tables[0].Rows.Count > 0) { strRULENOLENGTH = ds1.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; bsno = strCONTENT; //return strCONTENT; } } } // return ""; //} #endregion // //newGID = Guid.NewGuid().ToString(); //WmsOutDetailEntity.GID = newGID; //WmsOutDetailEntity.BSNO = bsno; WmsOutDetailEntity.OUTBSNO = this.h_outbsno.Value; WmsOutDetailEntity.CORPID = strCompanyID; // ls = WmsOutDetailEntity.TRUCKNO.ToString().Trim(); ls = ls.Replace("??", " "); ls = ls.Replace("!!", "\r\n"); // string strSTARTBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "STARTBILLINGDATE='" + WmsOutDetailEntity.STARTBILLINGDATE.ToString() + "',"; // string strENDBILLINGDATE = WmsOutDetailEntity.STARTBILLINGDATE.ToString().IndexOf("0001") > -1 ? "" : "ENDBILLINGDATE='" + WmsOutEntity.OLDCUSTFEEDATE.ToString() + "',";//如果开始计费日期为空,则结束计费日期也为空,否则为上家承担仓储期限。 // //修改入库单wms_in Sqlstr = String.Format("update wms set GOODSPACKSTOCK=GOODSPACKSTOCK+(select top 1 GOODSPACKPFSL from wms_out_detail where gid='" + WmsOutDetailEntity.GID.ToString().Trim() + "')-{0},GOODSSTOCK=GOODSSTOCK+(select top 1 GOODSPFSL from wms_out_detail where gid='" + WmsOutDetailEntity.GID.ToString().Trim() + "')-{2} where isnull(ISDELETE,0)=0 and gid='{1}' ", WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.GOODSPFSL); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -6; //Clearh(); return result; } // Sqlstr = String.Format("update wms_out_detail set INBSNO='{1}',OUTBSNO='{2}',BSNO='{3}',CUSTOMERNAME='{4}',DODATE='{5}',STORAGENAME='{6}',GOODSNAME='{7}',GOODSMODEL='{8}',GOODSPFSL='{9}',GOODSOUTFEE='{10}',CREATEUSER='{11}',CREATETIME=getdate(),REMARK='{12}',TRUCKNO='{13}',ASSOCIATEDNO='{14}',GOODSPACKPFSL='{15}',GOODSOUTFEEAP='{16}',ARFEE='{17}',APFEE='{18}',CLIENTNAMEOLD='{19}',OLDCUSTFEEDATE='{20}',{21}{22}FEEDAYS='{23}',FEEDAYSAP='{24}',CORPID='{25}',MARKETVALUE={26},AREANAME='{27}',BZTCHNO='{28}' where GID='{0}'" , WmsOutDetailEntity.GID, WmsOutDetailEntity.INBSNO, WmsOutDetailEntity.OUTBSNO, WmsOutDetailEntity.BSNO, WmsOutDetailEntity.CUSTOMERNAME, WmsOutEntity.DODATE, WmsOutDetailEntity.STORAGENAME, WmsOutDetailEntity.GOODSNAME, WmsOutDetailEntity.GOODSMODEL, WmsOutDetailEntity.GOODSPFSL, WmsOutDetailEntity.GOODSOUTFEE, strUserID, WmsOutDetailEntity.REMARK, ls, WmsOutDetailEntity.ASSOCIATEDNO, WmsOutDetailEntity.GOODSPACKPFSL, WmsOutDetailEntity.GOODSOUTFEEAP, WmsOutDetailEntity.ARFEE, WmsOutDetailEntity.APFEE, WmsOutDetailEntity.CLIENTNAMEOLD, this.txt_oldcustFeeDate.Value.Trim(), strSTARTBILLINGDATE, strENDBILLINGDATE, WmsOutDetailEntity.FEEDAYS, WmsOutDetailEntity.FEEDAYSAP, strCompanyID, WmsOutDetailEntity.MARKETVALUE, WmsOutDetailEntity.AREANAME, WmsOutDetailEntity.BZTCHNO); // iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -5; Clearh(); return result; } }// end 保存出库明细wms_out_detail //修改wms_out的出库量、出库件数、应收应付装卸费 string lsSQL = "update wms_out set " + "GOODSPFSL=(select isnull(sum(GOODSPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",GOODSPACKPFSL=(select isnull(sum(GOODSPACKPFSL),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",ARFEE=(select isnull(sum(ARFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + ",APFEE=(select isnull(sum(APFEE),0) from wms_out_detail where OUTBSNO=wms_out.BSNO)" + " where GID='" + WmsOutEntity.GID.ToString().Trim() + "'";// ISLOCK=0 and iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSQL, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } //修改wms_out的仓储费wmsOutEntity.GOODSOUTFEE h_outfee.Value = totaloutfee.ToString(); WmsOutEntity.GOODSOUTFEE = decimal.Parse(Round(totaloutfee, 2, "").ToString()); WmsOutEntity.GOODSOUTFEEAP = 0; Sqlstr = String.Format("update wms_out set GOODSOUTFEE={0},GOODSOUTFEEAP={2} where GID='{1}'", WmsOutEntity.GOODSOUTFEE, WmsOutEntity.GID, WmsOutEntity.GOODSOUTFEEAP); iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, Sqlstr, null); if (iState != 1) { sqlTran.Rollback(); result = -7; Clearh(); return result; } #endregion //页面赋值 this.h_wmsoutbsno.Value = WmsOutEntity.BSNO.ToString(); this.h_goodsmodel.Value = WmsOutEntity.GOODSMODEL.ToString(); this.h_goodspfsl.Value = WmsOutEntity.GOODSPFSL.ToString(); this.h_remark.Value = WmsOutEntity.REMARK.ToString(); txt_outbsno.Value = h_outbsno.Value; txt_outdate.Value = h_outdate.Value; string strcustomer = h_customer.Value; string goods = h_goods.Value; txt_goodsmodel.Value = h_goodsmodel.Value; #endregion #region 货权转移到 outcustomer.value 时,判断是否是更改结束计费日期的操作 //更改结束计费日期 if (this.h_isOldCustFeeDateEnter.Value == "1") { #region 提取货权转移的wms_out的数据 WmsOutEntity model = new WmsOutEntity(); StringBuilder strSql = new StringBuilder(); string SQL_SELECT_WMS_OUT_GID = "select top 1 GID,AssociatedNO,BSNO,CLIENTGID,CLIENTCODE,CUSTOMERNAME,DODATE,STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,GOODSPFSL,GOODSOUTFEE,REMARK,ISDELETE,DELETETIME,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,GOODSPACKPFSL,GOODSOUTFEEAP,TRUCKNAME,ARCLIENT,INGIDNEW,CUSTOMNO,MBLNONEW,CORPID,ARCLIENTWMSOUT,BZTCHNO from wms_out where GID='" + WmsOutEntity.GID.ToString().Trim() + "' "; SqlDataReader sqlRead1 = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_OUT_GID, null); while (sqlRead1.Read()) { if (sqlRead1["GID"] != null && sqlRead1["GID"].ToString() != "") { model.GID = sqlRead1["GID"].ToString(); } if (sqlRead1["ASSOCIATEDNO"] != null && sqlRead1["ASSOCIATEDNO"].ToString() != "") { model.ASSOCIATEDNO = sqlRead1["ASSOCIATEDNO"].ToString(); } if (sqlRead1["BSNO"] != null && sqlRead1["BSNO"].ToString() != "") { model.BSNO = sqlRead1["BSNO"].ToString(); } if (sqlRead1["CLIENTGID"] != null && sqlRead1["CLIENTGID"].ToString() != "") { model.CLIENTGID = sqlRead1["CLIENTGID"].ToString(); } if (sqlRead1["CLIENTCODE"] != null && sqlRead1["CLIENTCODE"].ToString() != "") { model.CLIENTCODE = sqlRead1["CLIENTCODE"].ToString(); } if (sqlRead1["CUSTOMERNAME"] != null && sqlRead1["CUSTOMERNAME"].ToString() != "") { model.CUSTOMERNAME = sqlRead1["CUSTOMERNAME"].ToString(); } if (sqlRead1["DODATE"] != null && sqlRead1["DODATE"].ToString() != "") { model.DODATE = DateTime.Parse(sqlRead1["DODATE"].ToString()); } if (sqlRead1["STORAGECODE"] != null && sqlRead1["STORAGECODE"].ToString() != "") { model.STORAGECODE = sqlRead1["STORAGECODE"].ToString(); } if (sqlRead1["STORAGENAME"] != null && sqlRead1["STORAGENAME"].ToString() != "") { model.STORAGENAME = sqlRead1["STORAGENAME"].ToString(); } if (sqlRead1["AREACODE"] != null && sqlRead1["AREACODE"].ToString() != "") { model.AREACODE = sqlRead1["AREACODE"].ToString(); } if (sqlRead1["AREANAME"] != null && sqlRead1["AREANAME"].ToString() != "") { model.AREANAME = sqlRead1["AREANAME"].ToString(); } if (sqlRead1["GOODSCODE"] != null && sqlRead1["GOODSCODE"].ToString() != "") { model.GOODSCODE = sqlRead1["GOODSCODE"].ToString(); } if (sqlRead1["GOODSNAME"] != null && sqlRead1["GOODSNAME"].ToString() != "") { model.GOODSNAME = sqlRead1["GOODSNAME"].ToString(); } if (sqlRead1["GOODSTYPE"] != null && sqlRead1["GOODSTYPE"].ToString() != "") { model.GOODSTYPE = sqlRead1["GOODSTYPE"].ToString(); } if (sqlRead1["GOODSMODEL"] != null && sqlRead1["GOODSMODEL"].ToString() != "") { model.GOODSMODEL = sqlRead1["GOODSMODEL"].ToString(); } if (sqlRead1["GOODSSTANDARD"] != null && sqlRead1["GOODSSTANDARD"].ToString() != "") { model.GOODSSTANDARD = sqlRead1["GOODSSTANDARD"].ToString(); } if (sqlRead1["GOODSPACK"] != null && sqlRead1["GOODSPACK"].ToString() != "") { model.GOODSPACK = sqlRead1["GOODSPACK"].ToString(); } if (sqlRead1["GOODSPFSL"] != null && sqlRead1["GOODSPFSL"].ToString() != "") { model.GOODSPFSL = decimal.Parse(sqlRead1["GOODSPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEE"] != null && sqlRead1["GOODSOUTFEE"].ToString() != "") { model.GOODSOUTFEE = decimal.Parse(sqlRead1["GOODSOUTFEE"].ToString()); } if (sqlRead1["REMARK"] != null && sqlRead1["REMARK"].ToString() != "") { model.REMARK = sqlRead1["REMARK"].ToString(); } if (sqlRead1["ISDELETE"] != null && sqlRead1["ISDELETE"].ToString() != "") { if ((sqlRead1["ISDELETE"].ToString() == "1") || (sqlRead1["ISDELETE"].ToString().ToLower() == "true")) { model.ISDELETE = true; } else { model.ISDELETE = false; } } if (sqlRead1["DELETETIME"] != null && sqlRead1["DELETETIME"].ToString() != "") { model.DELETETIME = DateTime.Parse(sqlRead1["DELETETIME"].ToString()); } if (sqlRead1["DELETEUSER"] != null && sqlRead1["DELETEUSER"].ToString() != "") { model.DELETEUSER = sqlRead1["DELETEUSER"].ToString(); } if (sqlRead1["CREATEUSER"] != null && sqlRead1["CREATEUSER"].ToString() != "") { model.CREATEUSER = sqlRead1["CREATEUSER"].ToString(); } if (sqlRead1["CREATETIME"] != null && sqlRead1["CREATETIME"].ToString() != "") { model.CREATETIME = DateTime.Parse(sqlRead1["CREATETIME"].ToString()); } if (sqlRead1["MODIFIEDUSER"] != null && sqlRead1["MODIFIEDUSER"].ToString() != "") { model.MODIFIEDUSER = sqlRead1["MODIFIEDUSER"].ToString(); } if (sqlRead1["MODIFIEDTIME"] != null && sqlRead1["MODIFIEDTIME"].ToString() != "") { model.MODIFIEDTIME = DateTime.Parse(sqlRead1["MODIFIEDTIME"].ToString()); } if (sqlRead1["GOODSPACKPFSL"] != null && sqlRead1["GOODSPACKPFSL"].ToString() != "") { model.GOODSPACKPFSL = decimal.Parse(sqlRead1["GOODSPACKPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEEAP"] != null && sqlRead1["GOODSOUTFEEAP"].ToString() != "") { model.GOODSOUTFEEAP = decimal.Parse(sqlRead1["GOODSOUTFEEAP"].ToString()); } if (sqlRead1["TRUCKNAME"] != null && sqlRead1["TRUCKNAME"].ToString() != "") { model.TRUCKNAME = sqlRead1["TRUCKNAME"].ToString(); } if (sqlRead1["ARCLIENT"] != null && sqlRead1["ARCLIENT"].ToString() != "") { model.ARCLIENT = sqlRead1["ARCLIENT"].ToString(); } if (sqlRead1["INGIDNEW"] != null && sqlRead1["INGIDNEW"].ToString() != "") { model.INGIDNEW = sqlRead1["INGIDNEW"].ToString(); } if (sqlRead1["CUSTOMNO"] != null && sqlRead1["CUSTOMNO"].ToString() != "") { model.CUSTOMNO = sqlRead1["CUSTOMNO"].ToString(); } if (sqlRead1["MBLNONEW"] != null && sqlRead1["MBLNONEW"].ToString() != "") { model.MBLNONEW = sqlRead1["MBLNONEW"].ToString(); } if (sqlRead1["CORPID"] != null && sqlRead1["CORPID"].ToString() != "") { model.CORPID = sqlRead1["CORPID"].ToString(); } if (sqlRead1["ARCLIENTWMSOUT"] != null && sqlRead1["ARCLIENTWMSOUT"].ToString() != "") { model.ARCLIENTWMSOUT = sqlRead1["ARCLIENTWMSOUT"].ToString(); } if (sqlRead1["BZTCHNO"] != null && sqlRead1["BZTCHNO"].ToString() != "") { model.BZTCHNO = sqlRead1["BZTCHNO"].ToString(); } } sqlRead1.Close(); sqlRead1.Dispose(); #endregion // #region 提取原入库wms数据 WmsEntity WmsEntity = new WmsEntity(); string strINGIDNEW = model.INGIDNEW.ToString().Trim();//货权转移后的入库wmsgid string SQL_SELECT_WMS_GID = "select GID, WMSNO, WMSDATE, CUSTOMERNAME, WMSOP, STOREMAN, MODIFIEDUSER, MODIFIEDTIME, ISDELETE, DELETEUSER, DELETETIME,TRUCKNAME, GOODSPACK, GOODSPACKSTOCK, GOODSRKSL, GOODSSTOCK, ARFEE, APFEE, ASSOCIATEDNO, BLNO, FREESTORAGEPERIOD, CONTRACTNO, GOODSNAME, GOODSMODEL, CLIENTCODEOLD, CLIENTNAMEOLD, STORAGENAME, CHARGEUNIT,ARCLIENT,FREESTORAGEPERIODAP,STARTBILLINGDATEAP,CORPID,AREANAME,BANKVALUE,MARKETVALUE,BZTCHNO,CREATEUSER,CREATETIME from wms where GID='" + strINGIDNEW.Trim() + "' and ISDELETE=0"; SqlDataReader sqlRead = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_GID, null); while (sqlRead.Read()) { if (!sqlRead.IsDBNull(0)) { WmsEntity.GID = sqlRead.GetString(0); } // 唯一编码 newid() if (!sqlRead.IsDBNull(1)) { WmsEntity.WMSNO = sqlRead.GetString(1); } // if (!sqlRead.IsDBNull(2)) { WmsEntity.WMSDATE = sqlRead.GetDateTime(2); } // if (!sqlRead.IsDBNull(3)) { WmsEntity.CUSTOMERNAME = sqlRead.GetString(3); } // if (!sqlRead.IsDBNull(4)) { WmsEntity.WMSOP = sqlRead.GetString(4); } // if (!sqlRead.IsDBNull(5)) { WmsEntity.STOREMAN = sqlRead.GetString(5); } if (!sqlRead.IsDBNull(6)) { WmsEntity.MODIFIEDUSER = sqlRead.GetString(6); } if (!sqlRead.IsDBNull(7)) { WmsEntity.MODIFIEDTIME = sqlRead.GetDateTime(7); } if (!sqlRead.IsDBNull(8)) { WmsEntity.ISDELETE = sqlRead.GetBoolean(8); } // 是否废除 if (!sqlRead.IsDBNull(9)) { WmsEntity.DELETEUSER = sqlRead.GetString(9); } // 废除操作人 if (!sqlRead.IsDBNull(10)) { WmsEntity.DELETETIME = sqlRead.GetDateTime(10); } // 废除时间 if (!sqlRead.IsDBNull(11)) { WmsEntity.TRUCKNAME = sqlRead.GetString(11); } // if (!sqlRead.IsDBNull(12)) { WmsEntity.GOODSPACK = sqlRead.GetDecimal(12); } // if (!sqlRead.IsDBNull(13)) { WmsEntity.GOODSPACKSTOCK = sqlRead.GetDecimal(13); } // if (!sqlRead.IsDBNull(14)) { WmsEntity.GOODSRKSL = sqlRead.GetDecimal(14); } // if (!sqlRead.IsDBNull(15)) { WmsEntity.GOODSSTOCK = sqlRead.GetDecimal(15); } // if (!sqlRead.IsDBNull(16)) { WmsEntity.ARFEE = sqlRead.GetDecimal(16); } // if (!sqlRead.IsDBNull(17)) { WmsEntity.APFEE = sqlRead.GetDecimal(17); } // if (!sqlRead.IsDBNull(18)) { WmsEntity.ASSOCIATEDNO = sqlRead.GetString(18); } // if (!sqlRead.IsDBNull(19)) { WmsEntity.BLNO = sqlRead.GetString(19); } // if (!sqlRead.IsDBNull(20)) { WmsEntity.FREESTORAGEPERIOD = sqlRead.GetInt32(20); } // if (!sqlRead.IsDBNull(21)) { WmsEntity.CONTRACTNO = sqlRead.GetString(21); } // if (!sqlRead.IsDBNull(22)) { WmsEntity.GOODSNAME = sqlRead.GetString(22); } // if (!sqlRead.IsDBNull(23)) { WmsEntity.GOODSMODEL = sqlRead.GetString(23); } // if (!sqlRead.IsDBNull(24)) { WmsEntity.CLIENTCODEOLD = sqlRead.GetString(24); } // if (!sqlRead.IsDBNull(25)) { WmsEntity.CLIENTNAMEOLD = sqlRead.GetString(25); } // if (!sqlRead.IsDBNull(26)) { WmsEntity.STORAGENAME = sqlRead.GetString(26); } // if (!sqlRead.IsDBNull(27)) { WmsEntity.CHARGEUNIT = sqlRead.GetString(27); }// if (!sqlRead.IsDBNull(28)) { WmsEntity.ARCLIENT = sqlRead.GetString(28); }// if (!sqlRead.IsDBNull(29)) { WmsEntity.FREESTORAGEPERIODAP = sqlRead.GetInt32(29); } // if (!sqlRead.IsDBNull(30)) { WmsEntity.STARTBILLINGDATEAP = sqlRead.GetDateTime(30); } // if (!sqlRead.IsDBNull(31)) { WmsEntity.CORPID = sqlRead.GetString(31); }// if (!sqlRead.IsDBNull(32)) { WmsEntity.AREANAME = sqlRead.GetString(32); } if (!sqlRead.IsDBNull(33)) { WmsEntity.BANKVALUE = sqlRead.GetDecimal(33); } if (!sqlRead.IsDBNull(34)) { WmsEntity.MARKETVALUE = sqlRead.GetDecimal(34); } if (!sqlRead.IsDBNull(35)) { WmsEntity.BZTCHNO = sqlRead.GetString(35); } if (!sqlRead.IsDBNull(36)) { WmsEntity.CREATEUSER = sqlRead.GetString(36); } if (!sqlRead.IsDBNull(37)) { WmsEntity.CREATETIME = sqlRead.GetDateTime(37); } } sqlRead.Close(); sqlRead.Dispose(); #endregion // this.h_newcust.Value = WmsEntity.CUSTOMERNAME; this.h_IsSetRate.Value = "1"; //货权转移,可以设置费率 result = 1;//状态为1表示删除成功 sqlTran.Commit(); Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", ""); } else { #region 货权转移到 outcustomer.value WmsInEntity WmsInEntity = new WmsInEntity(); WmsInDA wmsinDA = new WmsInDA(); WmsEntity WmsEntity = new WmsEntity(); WmsDA wmsDA = new WmsDA(); // #region 提取货权转移的wms_out的数据 WmsOutEntity model = new WmsOutEntity(); StringBuilder strSql = new StringBuilder(); string SQL_SELECT_WMS_OUT_GID = "select top 1 GID,AssociatedNO,BSNO,CLIENTGID,CLIENTCODE,CUSTOMERNAME,DODATE,STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,GOODSPFSL,GOODSOUTFEE,REMARK,ISDELETE,DELETETIME,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,GOODSPACKPFSL,GOODSOUTFEEAP,TRUCKNAME,ARCLIENT,INGIDNEW,CUSTOMNO,MBLNONEW,CORPID,ARCLIENTWMSOUT,BZTCHNO from wms_out where GID='" + WmsOutEntity.GID.ToString().Trim() + "' "; SqlDataReader sqlRead1 = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_OUT_GID, null); while (sqlRead1.Read()) { if (sqlRead1["GID"] != null && sqlRead1["GID"].ToString() != "") { model.GID = sqlRead1["GID"].ToString(); } if (sqlRead1["ASSOCIATEDNO"] != null && sqlRead1["ASSOCIATEDNO"].ToString() != "") { model.ASSOCIATEDNO = sqlRead1["ASSOCIATEDNO"].ToString(); } if (sqlRead1["BSNO"] != null && sqlRead1["BSNO"].ToString() != "") { model.BSNO = sqlRead1["BSNO"].ToString(); } if (sqlRead1["CLIENTGID"] != null && sqlRead1["CLIENTGID"].ToString() != "") { model.CLIENTGID = sqlRead1["CLIENTGID"].ToString(); } if (sqlRead1["CLIENTCODE"] != null && sqlRead1["CLIENTCODE"].ToString() != "") { model.CLIENTCODE = sqlRead1["CLIENTCODE"].ToString(); } if (sqlRead1["CUSTOMERNAME"] != null && sqlRead1["CUSTOMERNAME"].ToString() != "") { model.CUSTOMERNAME = sqlRead1["CUSTOMERNAME"].ToString(); } if (sqlRead1["DODATE"] != null && sqlRead1["DODATE"].ToString() != "") { model.DODATE = DateTime.Parse(sqlRead1["DODATE"].ToString()); } if (sqlRead1["STORAGECODE"] != null && sqlRead1["STORAGECODE"].ToString() != "") { model.STORAGECODE = sqlRead1["STORAGECODE"].ToString(); } if (sqlRead1["STORAGENAME"] != null && sqlRead1["STORAGENAME"].ToString() != "") { model.STORAGENAME = sqlRead1["STORAGENAME"].ToString(); } if (sqlRead1["AREACODE"] != null && sqlRead1["AREACODE"].ToString() != "") { model.AREACODE = sqlRead1["AREACODE"].ToString(); } if (sqlRead1["AREANAME"] != null && sqlRead1["AREANAME"].ToString() != "") { model.AREANAME = sqlRead1["AREANAME"].ToString(); } if (sqlRead1["GOODSCODE"] != null && sqlRead1["GOODSCODE"].ToString() != "") { model.GOODSCODE = sqlRead1["GOODSCODE"].ToString(); } if (sqlRead1["GOODSNAME"] != null && sqlRead1["GOODSNAME"].ToString() != "") { model.GOODSNAME = sqlRead1["GOODSNAME"].ToString(); } if (sqlRead1["GOODSTYPE"] != null && sqlRead1["GOODSTYPE"].ToString() != "") { model.GOODSTYPE = sqlRead1["GOODSTYPE"].ToString(); } if (sqlRead1["GOODSMODEL"] != null && sqlRead1["GOODSMODEL"].ToString() != "") { model.GOODSMODEL = sqlRead1["GOODSMODEL"].ToString(); } if (sqlRead1["GOODSSTANDARD"] != null && sqlRead1["GOODSSTANDARD"].ToString() != "") { model.GOODSSTANDARD = sqlRead1["GOODSSTANDARD"].ToString(); } if (sqlRead1["GOODSPACK"] != null && sqlRead1["GOODSPACK"].ToString() != "") { model.GOODSPACK = sqlRead1["GOODSPACK"].ToString(); } if (sqlRead1["GOODSPFSL"] != null && sqlRead1["GOODSPFSL"].ToString() != "") { model.GOODSPFSL = decimal.Parse(sqlRead1["GOODSPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEE"] != null && sqlRead1["GOODSOUTFEE"].ToString() != "") { model.GOODSOUTFEE = decimal.Parse(sqlRead1["GOODSOUTFEE"].ToString()); } if (sqlRead1["REMARK"] != null && sqlRead1["REMARK"].ToString() != "") { model.REMARK = sqlRead1["REMARK"].ToString(); } if (sqlRead1["ISDELETE"] != null && sqlRead1["ISDELETE"].ToString() != "") { if ((sqlRead1["ISDELETE"].ToString() == "1") || (sqlRead1["ISDELETE"].ToString().ToLower() == "true")) { model.ISDELETE = true; } else { model.ISDELETE = false; } } if (sqlRead1["DELETETIME"] != null && sqlRead1["DELETETIME"].ToString() != "") { model.DELETETIME = DateTime.Parse(sqlRead1["DELETETIME"].ToString()); } if (sqlRead1["DELETEUSER"] != null && sqlRead1["DELETEUSER"].ToString() != "") { model.DELETEUSER = sqlRead1["DELETEUSER"].ToString(); } if (sqlRead1["CREATEUSER"] != null && sqlRead1["CREATEUSER"].ToString() != "") { model.CREATEUSER = sqlRead1["CREATEUSER"].ToString(); } if (sqlRead1["CREATETIME"] != null && sqlRead1["CREATETIME"].ToString() != "") { model.CREATETIME = DateTime.Parse(sqlRead1["CREATETIME"].ToString()); } if (sqlRead1["MODIFIEDUSER"] != null && sqlRead1["MODIFIEDUSER"].ToString() != "") { model.MODIFIEDUSER = sqlRead1["MODIFIEDUSER"].ToString(); } if (sqlRead1["MODIFIEDTIME"] != null && sqlRead1["MODIFIEDTIME"].ToString() != "") { model.MODIFIEDTIME = DateTime.Parse(sqlRead1["MODIFIEDTIME"].ToString()); } if (sqlRead1["GOODSPACKPFSL"] != null && sqlRead1["GOODSPACKPFSL"].ToString() != "") { model.GOODSPACKPFSL = decimal.Parse(sqlRead1["GOODSPACKPFSL"].ToString()); } if (sqlRead1["GOODSOUTFEEAP"] != null && sqlRead1["GOODSOUTFEEAP"].ToString() != "") { model.GOODSOUTFEEAP = decimal.Parse(sqlRead1["GOODSOUTFEEAP"].ToString()); } if (sqlRead1["TRUCKNAME"] != null && sqlRead1["TRUCKNAME"].ToString() != "") { model.TRUCKNAME = sqlRead1["TRUCKNAME"].ToString(); } if (sqlRead1["ARCLIENT"] != null && sqlRead1["ARCLIENT"].ToString() != "") { model.ARCLIENT = sqlRead1["ARCLIENT"].ToString(); } if (sqlRead1["INGIDNEW"] != null && sqlRead1["INGIDNEW"].ToString() != "") { model.INGIDNEW = sqlRead1["INGIDNEW"].ToString(); } if (sqlRead1["CUSTOMNO"] != null && sqlRead1["CUSTOMNO"].ToString() != "") { model.CUSTOMNO = sqlRead1["CUSTOMNO"].ToString(); } if (sqlRead1["MBLNONEW"] != null && sqlRead1["MBLNONEW"].ToString() != "") { model.MBLNONEW = sqlRead1["MBLNONEW"].ToString(); } if (sqlRead1["CORPID"] != null && sqlRead1["CORPID"].ToString() != "") { model.CORPID = sqlRead1["CORPID"].ToString(); } if (sqlRead1["ARCLIENTWMSOUT"] != null && sqlRead1["ARCLIENTWMSOUT"].ToString() != "") { model.ARCLIENTWMSOUT = sqlRead1["ARCLIENTWMSOUT"].ToString(); } if (sqlRead1["BZTCHNO"] != null && sqlRead1["BZTCHNO"].ToString() != "") { model.BZTCHNO = sqlRead1["BZTCHNO"].ToString(); } } sqlRead1.Close(); sqlRead1.Dispose(); #endregion // #region 插入入库主表 string strINGIDNEW = model.INGIDNEW.ToString().Trim();//货权转移后的入库wmsgid #region 提取原入库wms数据 string SQL_SELECT_WMS_GID = "select GID, WMSNO, WMSDATE, CUSTOMERNAME, WMSOP, STOREMAN, MODIFIEDUSER, MODIFIEDTIME, ISDELETE, DELETEUSER, DELETETIME,TRUCKNAME, GOODSPACK, GOODSPACKSTOCK, GOODSRKSL, GOODSSTOCK, ARFEE, APFEE, ASSOCIATEDNO, BLNO, FREESTORAGEPERIOD, CONTRACTNO, GOODSNAME, GOODSMODEL, CLIENTCODEOLD, CLIENTNAMEOLD, STORAGENAME, CHARGEUNIT,ARCLIENT,FREESTORAGEPERIODAP,STARTBILLINGDATEAP,CORPID,AREANAME,BANKVALUE,MARKETVALUE,BZTCHNO,CREATEUSER,CREATETIME from wms where GID='" + strINGIDNEW.Trim() + "' and ISDELETE=0"; SqlDataReader sqlRead = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_GID, null); while (sqlRead.Read()) { if (!sqlRead.IsDBNull(0)) { WmsEntity.GID = sqlRead.GetString(0); } // 唯一编码 newid() if (!sqlRead.IsDBNull(1)) { WmsEntity.WMSNO = sqlRead.GetString(1); } // if (!sqlRead.IsDBNull(2)) { WmsEntity.WMSDATE = sqlRead.GetDateTime(2); } // if (!sqlRead.IsDBNull(3)) { WmsEntity.CUSTOMERNAME = sqlRead.GetString(3); } // if (!sqlRead.IsDBNull(4)) { WmsEntity.WMSOP = sqlRead.GetString(4); } // if (!sqlRead.IsDBNull(5)) { WmsEntity.STOREMAN = sqlRead.GetString(5); } if (!sqlRead.IsDBNull(6)) { WmsEntity.MODIFIEDUSER = sqlRead.GetString(6); } if (!sqlRead.IsDBNull(7)) { WmsEntity.MODIFIEDTIME = sqlRead.GetDateTime(7); } if (!sqlRead.IsDBNull(8)) { WmsEntity.ISDELETE = sqlRead.GetBoolean(8); } // 是否废除 if (!sqlRead.IsDBNull(9)) { WmsEntity.DELETEUSER = sqlRead.GetString(9); } // 废除操作人 if (!sqlRead.IsDBNull(10)) { WmsEntity.DELETETIME = sqlRead.GetDateTime(10); } // 废除时间 if (!sqlRead.IsDBNull(11)) { WmsEntity.TRUCKNAME = sqlRead.GetString(11); } // if (!sqlRead.IsDBNull(12)) { WmsEntity.GOODSPACK = sqlRead.GetDecimal(12); } // if (!sqlRead.IsDBNull(13)) { WmsEntity.GOODSPACKSTOCK = sqlRead.GetDecimal(13); } // if (!sqlRead.IsDBNull(14)) { WmsEntity.GOODSRKSL = sqlRead.GetDecimal(14); } // if (!sqlRead.IsDBNull(15)) { WmsEntity.GOODSSTOCK = sqlRead.GetDecimal(15); } // if (!sqlRead.IsDBNull(16)) { WmsEntity.ARFEE = sqlRead.GetDecimal(16); } // if (!sqlRead.IsDBNull(17)) { WmsEntity.APFEE = sqlRead.GetDecimal(17); } // if (!sqlRead.IsDBNull(18)) { WmsEntity.ASSOCIATEDNO = sqlRead.GetString(18); } // if (!sqlRead.IsDBNull(19)) { WmsEntity.BLNO = sqlRead.GetString(19); } // if (!sqlRead.IsDBNull(20)) { WmsEntity.FREESTORAGEPERIOD = sqlRead.GetInt32(20); } // if (!sqlRead.IsDBNull(21)) { WmsEntity.CONTRACTNO = sqlRead.GetString(21); } // if (!sqlRead.IsDBNull(22)) { WmsEntity.GOODSNAME = sqlRead.GetString(22); } // if (!sqlRead.IsDBNull(23)) { WmsEntity.GOODSMODEL = sqlRead.GetString(23); } // if (!sqlRead.IsDBNull(24)) { WmsEntity.CLIENTCODEOLD = sqlRead.GetString(24); } // if (!sqlRead.IsDBNull(25)) { WmsEntity.CLIENTNAMEOLD = sqlRead.GetString(25); } // if (!sqlRead.IsDBNull(26)) { WmsEntity.STORAGENAME = sqlRead.GetString(26); } // if (!sqlRead.IsDBNull(27)) { WmsEntity.CHARGEUNIT = sqlRead.GetString(27); }// if (!sqlRead.IsDBNull(28)) { WmsEntity.ARCLIENT = sqlRead.GetString(28); }// if (!sqlRead.IsDBNull(29)) { WmsEntity.FREESTORAGEPERIODAP = sqlRead.GetInt32(29); } // if (!sqlRead.IsDBNull(30)) { WmsEntity.STARTBILLINGDATEAP = sqlRead.GetDateTime(30); } // if (!sqlRead.IsDBNull(31)) { WmsEntity.CORPID = sqlRead.GetString(31); }// if (!sqlRead.IsDBNull(32)) { WmsEntity.AREANAME = sqlRead.GetString(32); } if (!sqlRead.IsDBNull(33)) { WmsEntity.BANKVALUE = sqlRead.GetDecimal(33); } if (!sqlRead.IsDBNull(34)) { WmsEntity.MARKETVALUE = sqlRead.GetDecimal(34); } if (!sqlRead.IsDBNull(35)) { WmsEntity.BZTCHNO = sqlRead.GetString(35); } if (!sqlRead.IsDBNull(36)) { WmsEntity.CREATEUSER = sqlRead.GetString(36); } if (!sqlRead.IsDBNull(37)) { WmsEntity.CREATETIME = sqlRead.GetDateTime(37); } } sqlRead.Close(); sqlRead.Dispose(); #endregion // //WmsEntity.GID = strINGIDNEW; //WmsEntity.WMSNO = tbWMSNO;//调用编码规则 // WmsEntity.CUSTOMERNAME = this.h_outcustomer.Value.ToString().Trim(); WmsEntity.WMSOP = strShowName.Trim(); WmsEntity.STOREMAN = strShowName.Trim(); WmsEntity.MODIFIEDUSER = strUserID; // WmsEntity.WMSDATE = model.DODATE; WmsEntity.STARTBILLINGDATE = DateTime.Parse(this.txt_oldcustFeeDate.Value.Trim()).AddDays(1); int iFeeDay = WmsOutDetailDA.GetDaysCount("day", model.DODATE.ToString(), WmsOutEntity.OLDCUSTFEEDATE.ToString().Trim());//WmsOutEntity.DODATE.ToString()); WmsEntity.FREESTORAGEPERIOD = 0; if (iFeeDay > 0) { WmsEntity.FREESTORAGEPERIOD = iFeeDay; } // WmsEntity.GOODSPACK = model.GOODSPACKPFSL; WmsEntity.GOODSPACKSTOCK = model.GOODSPACKPFSL; WmsEntity.GOODSRKSL = model.GOODSPFSL; WmsEntity.GOODSSTOCK = model.GOODSPFSL; WmsEntity.ARFEE = 0; WmsEntity.APFEE = 0; WmsEntity.CLIENTNAMEOLD = model.CUSTOMERNAME;// 原客户名称 WmsEntity.ISLOCK = false;// true; WmsEntity.LOCKUSER = strUserID; WmsEntity.CORPID = strCompanyID; WmsEntity.CUSTOMNO = model.CUSTOMNO; WmsEntity.BZTCHNO = model.BZTCHNO; // string sMBLNONEW = this.h_mblnonew.Value.Trim() == "" ? model.MBLNONEW.ToString().Trim() : this.h_mblnonew.Value.Trim(); WmsEntity.BLNO = sMBLNONEW; WmsEntity.ASSOCIATEDNO = T_ALL_DA.GetStrSQL("bsno", "select top 1 bsno from op_seai where mblno='" + sMBLNONEW + "'"); WmsEntity.CUSTNO = T_ALL_DA.GetStrSQL("CUSTNO", "select top 1 CUSTNO from op_seai where mblno='" + sMBLNONEW + "'"); SqlParameter[] parameters = { new SqlParameter("@GID", SqlDbType.VarChar,36) , new SqlParameter("@WMSNO", SqlDbType.VarChar,100) , new SqlParameter("@WMSDATE", SqlDbType.DateTime) , new SqlParameter("@CUSTOMERNAME", SqlDbType.VarChar,20) , new SqlParameter("@WMSOP", SqlDbType.VarChar,10) , new SqlParameter("@STOREMAN", SqlDbType.VarChar,10) , new SqlParameter("@MODIFIEDUSER", SqlDbType.VarChar,36) , new SqlParameter("@GOODSPACK", SqlDbType.Decimal) , new SqlParameter("@GOODSPACKSTOCK", SqlDbType.Decimal) , new SqlParameter("@GOODSRKSL", SqlDbType.Decimal) , new SqlParameter("@GOODSSTOCK", SqlDbType.Decimal) , new SqlParameter("@ARFEE", SqlDbType.Decimal) , new SqlParameter("@APFEE", SqlDbType.Decimal) , new SqlParameter("@ASSOCIATEDNO", SqlDbType.VarChar,100), new SqlParameter("@BLNO", SqlDbType.VarChar,100) , new SqlParameter("@FREESTORAGEPERIOD", SqlDbType.Int,4) , new SqlParameter("@CONTRACTNO", SqlDbType.VarChar,100), new SqlParameter("@GOODSNAME", SqlDbType.VarChar,100) , new SqlParameter("@GOODSMODEL", SqlDbType.VarChar,100) , new SqlParameter("@CLIENTCODEOLD", SqlDbType.VarChar,20) , new SqlParameter("@CLIENTNAMEOLD", SqlDbType.VarChar,20) , new SqlParameter("@STORAGENAME", SqlDbType.VarChar,20) , new SqlParameter("@CHARGEUNIT", SqlDbType.VarChar,10) , //new SqlParameter("@ISLOCK", SqlDbType.Bit) , //new SqlParameter("@LOCKUSER", SqlDbType.VarChar,36) , new SqlParameter("@STARTBILLINGDATE", SqlDbType.DateTime) , new SqlParameter("@CUSTOMNO", SqlDbType.VarChar,30) , new SqlParameter("@CUSTNO", SqlDbType.VarChar,30) , new SqlParameter("@CORPID", SqlDbType.VarChar,36) , new SqlParameter("@AREANAME",SqlDbType.VarChar,100) , new SqlParameter("@BANKVALUE", SqlDbType.Decimal) , new SqlParameter("@MARKETVALUE", SqlDbType.Decimal), new SqlParameter("@BZTCHNO",SqlDbType.VarChar,100) //new SqlParameter("@FREESTORAGEPERIODAP", SqlDbType.Int,4) , //new SqlParameter("@STARTBILLINGDATEAP", SqlDbType.DateTime) }; parameters[0].Value = WmsEntity.GID; parameters[1].Value = WmsEntity.WMSNO; parameters[2].Value = WmsEntity.WMSDATE; parameters[3].Value = WmsEntity.CUSTOMERNAME; parameters[4].Value = WmsEntity.WMSOP; parameters[5].Value = WmsEntity.STOREMAN; parameters[6].Value = WmsEntity.MODIFIEDUSER; parameters[7].Value = WmsEntity.GOODSPACK; parameters[8].Value = WmsEntity.GOODSPACKSTOCK; parameters[9].Value = WmsEntity.GOODSRKSL; parameters[10].Value = WmsEntity.GOODSSTOCK; parameters[11].Value = WmsEntity.ARFEE; parameters[12].Value = WmsEntity.APFEE; parameters[13].Value = WmsEntity.ASSOCIATEDNO; parameters[14].Value = WmsEntity.BLNO; parameters[15].Value = WmsEntity.FREESTORAGEPERIOD; parameters[16].Value = WmsEntity.CONTRACTNO; parameters[17].Value = WmsEntity.GOODSNAME; parameters[18].Value = WmsEntity.GOODSMODEL; parameters[19].Value = WmsEntity.CLIENTCODEOLD; parameters[20].Value = WmsEntity.CLIENTNAMEOLD; parameters[21].Value = WmsEntity.STORAGENAME; parameters[22].Value = WmsEntity.CHARGEUNIT; //parameters[23].Value = WmsEntity.ISLOCK; //parameters[24].Value = WmsEntity.LOCKUSER; parameters[23].Value = WmsEntity.STARTBILLINGDATE; parameters[24].Value = WmsEntity.CUSTOMNO; parameters[25].Value = WmsEntity.CUSTNO; parameters[26].Value = WmsEntity.CORPID; parameters[27].Value = WmsEntity.AREANAME; parameters[28].Value = WmsEntity.BANKVALUE; parameters[29].Value = WmsEntity.MARKETVALUE; parameters[30].Value = WmsEntity.BZTCHNO; //parameters[28].Value = WmsEntity.FREESTORAGEPERIODAP; //parameters[29].Value = WmsEntity.STARTBILLINGDATEAP; string lsSql = "update wms set WMSNO=@WMSNO,WMSDATE=@WMSDATE,CUSTOMERNAME=@CUSTOMERNAME,WMSOP=@WMSOP,STOREMAN=@STOREMAN,MODIFIEDUSER=@MODIFIEDUSER,MODIFIEDTIME=getdate(),ISDELETE=0,DELETEUSER='',DELETETIME=getdate(),GOODSPACK=@GOODSPACK,GOODSPACKSTOCK=@GOODSPACKSTOCK,GOODSRKSL=@GOODSRKSL,GOODSSTOCK=@GOODSSTOCK,ARFEE=@ARFEE,APFEE=@APFEE,ASSOCIATEDNO=@ASSOCIATEDNO,BLNO=@BLNO,FREESTORAGEPERIOD=@FREESTORAGEPERIOD,CONTRACTNO=@CONTRACTNO,GOODSNAME=@GOODSNAME,GOODSMODEL=@GOODSMODEL,CLIENTCODEOLD=@CLIENTCODEOLD,CLIENTNAMEOLD=@CLIENTNAMEOLD,STORAGENAME=@STORAGENAME,CHARGEUNIT=@CHARGEUNIT,STARTBILLINGDATE=@STARTBILLINGDATE,CUSTOMNO=@CUSTOMNO,CUSTNO=@CUSTNO,CORPID=@CORPID,AREANAME = @AREANAME,BANKVALUE = @BANKVALUE,MARKETVALUE = @MARKETVALUE,BZTCHNO = @BZTCHNO where GID=@GID ";//,ISLOCK=@ISLOCK,LOCKUSER=@LOCKUSER,LOCKTIME=getdate(),FREESTORAGEPERIODAP=@FREESTORAGEPERIODAP,STARTBILLINGDATEAP=@STARTBILLINGDATEAP iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, parameters); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } #endregion // #region 插入入库明细表 //删除wms_in当前的数据 lsSql = "delete from wms_in where ASSOCIATEDNO = '" + WmsEntity.GID.ToString().Trim() + "' "; iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, null); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } //插入入库明细表 int n = 0; foreach (WmsOutDetailEntity WmsOutDetailEntity in WmsOutDetailEntitys) { n = n + 1; #region 提取出库相对应的原入库wms_in数据 string SQL_SELECT_WMS_IN_GID = "select top 1 GID,ASSOCIATEDNO,BLNO,CONTRACTNO,CNTRNO,SEALNO,BSNO,CLIENTCODE,CLIENTNAME,DODATE,STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,CHARGEUNIT,GOODSRKSL,GOODSSTOCK,ISLOCK,LOCKTIME,LOCKUSER,ISDELETE,DELETETIME,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,REMARK,FREESTORAGEPERIOD,GOODSPACKSTOCK,GOODSKGS,CLIENTCODEOLD,CLIENTNAMEOLD,KINDPKGS,ARFEE,APFEE,CORPID,MARKETVALUE,BANKVALUE,LINENUM from wms_in where ASSOCIATEDNO in (select gid from wms where gid='" + WmsOutDetailEntity.INBSNO.ToString().Trim() + "') and ISDELETE=0"; sqlRead = SqlHelper.ExecuteQueryReader(sqlTran, CommandType.Text, SQL_SELECT_WMS_IN_GID, null); while (sqlRead.Read()) { if (!sqlRead.IsDBNull(0)) { WmsInEntity.GID = sqlRead.GetString(0); }// 惟一编号 if (!sqlRead.IsDBNull(1)) { WmsInEntity.ASSOCIATEDNO = sqlRead.GetString(1); }// 关联号 if (!sqlRead.IsDBNull(2)) { WmsInEntity.BLNO = sqlRead.GetString(2); }// 提单号 if (!sqlRead.IsDBNull(3)) { WmsInEntity.CONTRACTNO = sqlRead.GetString(3); }// 合同号 if (!sqlRead.IsDBNull(4)) { WmsInEntity.CNTRNO = sqlRead.GetString(4); }// 箱号 if (!sqlRead.IsDBNull(5)) { WmsInEntity.SEALNO = sqlRead.GetString(5); }// 封号 if (!sqlRead.IsDBNull(6)) { WmsInEntity.BSNO = sqlRead.GetString(6); }// 仓单明细号 if (!sqlRead.IsDBNull(7)) { WmsInEntity.CLIENTCODE = sqlRead.GetString(7); }// 客户编码 if (!sqlRead.IsDBNull(8)) { WmsInEntity.CLIENTNAME = sqlRead.GetString(8); }// 客户名称 if (!sqlRead.IsDBNull(9)) { WmsInEntity.DODATE = sqlRead.GetDateTime(9); }// 操作时间 if (!sqlRead.IsDBNull(10)) { WmsInEntity.STORAGECODE = sqlRead.GetString(10); }// 仓库编码 if (!sqlRead.IsDBNull(11)) { WmsInEntity.STORAGENAME = sqlRead.GetString(11); }// 仓库名称 if (!sqlRead.IsDBNull(12)) { WmsInEntity.AREACODE = sqlRead.GetString(12); }// 库位编码 if (!sqlRead.IsDBNull(13)) { WmsInEntity.AREANAME = sqlRead.GetString(13); }// 库位名称 if (!sqlRead.IsDBNull(14)) { WmsInEntity.GOODSCODE = sqlRead.GetString(14); }// 货物编号 if (!sqlRead.IsDBNull(15)) { WmsInEntity.GOODSNAME = sqlRead.GetString(15); }// 货物名称 if (!sqlRead.IsDBNull(16)) { WmsInEntity.GOODSTYPE = sqlRead.GetString(16); }// 货物类型 if (!sqlRead.IsDBNull(17)) { WmsInEntity.GOODSMODEL = sqlRead.GetString(17); }// 牌号 if (!sqlRead.IsDBNull(18)) { WmsInEntity.GOODSSTANDARD = sqlRead.GetString(18); }// 规格 if (!sqlRead.IsDBNull(19)) { WmsInEntity.GOODSPACK = sqlRead.GetDecimal(19); }// 件数 if (!sqlRead.IsDBNull(20)) { WmsInEntity.CHARGEUNIT = sqlRead.GetString(20); }// 计费单位 if (!sqlRead.IsDBNull(21)) { WmsInEntity.GOODSRKSL = sqlRead.GetDecimal(21); }// 入库量 if (!sqlRead.IsDBNull(22)) { WmsInEntity.GOODSSTOCK = sqlRead.GetDecimal(22); }// 库存量 if (!sqlRead.IsDBNull(23)) { WmsInEntity.ISLOCK = sqlRead.GetBoolean(23); }// 是否锁定 if (!sqlRead.IsDBNull(24)) { WmsInEntity.LOCKTIME = sqlRead.GetDateTime(24); }// 锁定时间 if (!sqlRead.IsDBNull(25)) { WmsInEntity.LOCKUSER = sqlRead.GetString(25); }// 锁定操作人 if (!sqlRead.IsDBNull(26)) { WmsInEntity.ISDELETE = sqlRead.GetBoolean(26); }// 是否废除 if (!sqlRead.IsDBNull(27)) { WmsInEntity.DELETETIME = sqlRead.GetDateTime(27); }// 废除时间 if (!sqlRead.IsDBNull(28)) { WmsInEntity.DELETEUSER = sqlRead.GetString(28); }// 废除操作人 if (!sqlRead.IsDBNull(29)) { WmsInEntity.CREATEUSER = sqlRead.GetString(29); }// 创建人 if (!sqlRead.IsDBNull(30)) { WmsInEntity.CREATETIME = sqlRead.GetDateTime(30); }// 创建时间 if (!sqlRead.IsDBNull(31)) { WmsInEntity.MODIFIEDUSER = sqlRead.GetString(31); }// 最后一次更新操作人 if (!sqlRead.IsDBNull(32)) { WmsInEntity.MODIFIEDTIME = sqlRead.GetDateTime(32); }// 最后一次更新操作时间 if (!sqlRead.IsDBNull(33)) { WmsInEntity.REMARK = sqlRead.GetString(33); }// 备注 if (!sqlRead.IsDBNull(34)) { WmsInEntity.FREESTORAGEPERIOD = sqlRead.GetInt32(34); }// 免仓储期 if (!sqlRead.IsDBNull(35)) { WmsInEntity.GOODSPACKSTOCK = sqlRead.GetDecimal(35); }// 剩余件数 if (!sqlRead.IsDBNull(36)) { WmsInEntity.GOODSKGS = sqlRead.GetDecimal(36); }// 重量 if (!sqlRead.IsDBNull(37)) { WmsInEntity.CLIENTCODEOLD = sqlRead.GetString(37); }// 原客户编码 if (!sqlRead.IsDBNull(38)) { WmsInEntity.CLIENTNAMEOLD = sqlRead.GetString(38); }// 原客户名称 if (!sqlRead.IsDBNull(39)) { WmsInEntity.KINDPKGS = sqlRead.GetString(39); }// if (!sqlRead.IsDBNull(40)) { WmsInEntity.ARFEE = sqlRead.GetDecimal(40); }// if (!sqlRead.IsDBNull(41)) { WmsInEntity.APFEE = sqlRead.GetDecimal(41); }// if (!sqlRead.IsDBNull(42)) { WmsInEntity.CORPID = sqlRead.GetString(42); }// if (!sqlRead.IsDBNull(43)) { WmsInEntity.MARKETVALUE = sqlRead.GetDecimal(43); }// if (!sqlRead.IsDBNull(44)) { WmsInEntity.BANKVALUE = sqlRead.GetDecimal(44); }// if (!sqlRead.IsDBNull(45)) { WmsInEntity.LINENUM = sqlRead.GetInt32(45); }// } sqlRead.Close(); sqlRead.Dispose(); #endregion WmsInEntity.GID = Guid.NewGuid().ToString(); WmsInEntity.ASSOCIATEDNO = WmsEntity.GID; WmsInEntity.BLNO = model.MBLNONEW; // #region 提取规则编号 getCodeRule("入库明细单号", "BSNO", "wms_in") // // 提取规则编号 // // 规则项目名称 // 需要加规则的字段 // //protected String getCodeRule(string strRULENAME, string strfield) //{ //调用编码规则 string tbBSNO = ""; string strRULEYEAR1 = ""; string strRULECONTENT1 = ""; string strCODENAME1 = ""; string strDEPTNO1 = ""; string strRULENOLENGTH1 = ""; int iRULENOLENGTH1 = 0; int inum1 = 0; string strCONTENT1 = ""; DataSet ds2 = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='入库明细单号' and RULETYPE=3"); if (ds2 != null) { if (ds2.Tables[0].Rows.Count > 0) { if (ds2.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled("入库明细单号", "BSNO"); // if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { //return ""; tbBSNO = ""; } DateTime dETD = System.Convert.ToDateTime(ds2.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = dETD.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = dETD.ToString("yy"); } } } else if (ds2.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds2.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR1 = fwqdate.ToString("yyyy"); } else if (ds2.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR1 = fwqdate.ToString("yy"); } } } // if (ds2.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME1 = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds2.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO1 = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT1 = ds2.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT1 = strRULECONTENT1.Replace("《COMPANY》", strCODENAME1); strRULECONTENT1 = strRULECONTENT1.Replace("《DEPT》", strDEPTNO1); // if (ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH1 = 0; } else { iRULENOLENGTH1 = int.Parse(ds2.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT1 = strRULECONTENT1 + strRULEYEAR1; // //获取分公司的票号头字符 string tempBANKSHEAD = ""; string strSQL = "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"; DataSet ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { tempBANKSHEAD = ds21.Tables[0].Rows[0]["BANKSHEAD"].ToString().Trim(); } } strCONTENT1 = tempBANKSHEAD + strCONTENT1; // strSQL = "select top 1 BSNO from [wms_in] where BSNO like '" + strCONTENT1.Trim() + "%' order by BSNO DESC"; ds21 = SqlHelper.ExecuteQueryDataset(sqlTran, CommandType.Text, strSQL, null); if (ds21 != null) { if (ds21.Tables[0].Rows.Count > 0) { strRULENOLENGTH1 = ds21.Tables[0].Rows[0]["BSNO"].ToString().Trim(); } } if (strRULENOLENGTH1 == "") { strRULENOLENGTH1 = "1"; } else { strRULENOLENGTH1 = strRULENOLENGTH1.Replace(strCONTENT1.Trim(), ""); inum1 = int.Parse(strRULENOLENGTH1.Trim()); inum1 = inum1 + 1; strRULENOLENGTH1 = inum1.ToString(); } int j = iRULENOLENGTH1 - strRULENOLENGTH1.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH1 = "0" + strRULENOLENGTH1; } // strCONTENT1 = strCONTENT1 + strRULENOLENGTH1; tbBSNO = strCONTENT1; //return strCONTENT1; } } } // return ""; //} #endregion WmsInEntity.BSNO = tbBSNO;//调用编码规则 // WmsInEntity.DODATE = model.DODATE; WmsInEntity.CLIENTNAME = this.h_outcustomer.Value.ToString().Trim(); WmsInEntity.GOODSRKSL = WmsOutDetailEntity.GOODSPFSL;//入库数量 WmsInEntity.GOODSSTOCK = WmsOutDetailEntity.GOODSPFSL;//入库数量 WmsInEntity.GOODSPACK = WmsOutDetailEntity.GOODSPACKPFSL;//件数 WmsInEntity.GOODSPACKSTOCK = WmsOutDetailEntity.GOODSPACKPFSL;//件数 WmsInEntity.REMARK = "货权转移"; WmsInEntity.CREATEUSER = strUserID;// 创建人 WmsInEntity.MODIFIEDUSER = strUserID;// 最后一次更新操作人 WmsInEntity.CLIENTNAMEOLD = WmsOutDetailEntity.CUSTOMERNAME;//货权转移前货主 WmsInEntity.ARFEE = 0; WmsInEntity.APFEE = 0; WmsInEntity.ISLOCK = WmsEntity.ISLOCK;// true; WmsInEntity.LOCKUSER = WmsEntity.LOCKUSER; WmsInEntity.CORPID = strCompanyID; SqlParameter[] parms = new SqlParameter[]{ new SqlParameter("@GID",SqlDbType.VarChar,100),//惟一编号 new SqlParameter("@ASSOCIATEDNO",SqlDbType.VarChar,100),//关联号 new SqlParameter("@BLNO",SqlDbType.VarChar,30),//提单号 new SqlParameter("@CONTRACTNO",SqlDbType.VarChar,100),//合同号 new SqlParameter("@CNTRNO",SqlDbType.VarChar,30),//箱号 new SqlParameter("@SEALNO",SqlDbType.VarChar,12),//封号 new SqlParameter("@BSNO",SqlDbType.VarChar,100),//仓单明细号 new SqlParameter("@CLIENTCODE",SqlDbType.VarChar,20),//客户编码 new SqlParameter("@CLIENTNAME",SqlDbType.VarChar,20),//客户名称 new SqlParameter("@STORAGECODE",SqlDbType.VarChar,50),//仓库编码 new SqlParameter("@STORAGENAME",SqlDbType.VarChar,100),//仓库名称 new SqlParameter("@AREACODE",SqlDbType.VarChar,50),//库位编码 new SqlParameter("@AREANAME",SqlDbType.VarChar,100),//库位名称 new SqlParameter("@GOODSCODE",SqlDbType.VarChar,50),//货物编号 new SqlParameter("@GOODSNAME",SqlDbType.VarChar,100),//货物名称/品名 new SqlParameter("@GOODSTYPE",SqlDbType.VarChar,50),//货物类型 new SqlParameter("@GOODSMODEL",SqlDbType.VarChar,100),//牌号 new SqlParameter("@GOODSSTANDARD",SqlDbType.VarChar,100),//规格 new SqlParameter("@GOODSPACK",SqlDbType.Decimal),//件数 new SqlParameter("@CHARGEUNIT",SqlDbType.VarChar,10),//计费单位 new SqlParameter("@GOODSRKSL",SqlDbType.Decimal),//入库量 new SqlParameter("@GOODSSTOCK",SqlDbType.Decimal) ,//库存量 new SqlParameter("@ISLOCK",SqlDbType.Bit),//是否锁定 new SqlParameter("@LOCKUSER",SqlDbType.VarChar,36),//锁定操作人 new SqlParameter("@ISDELETE",SqlDbType.Bit),//是否废除 new SqlParameter("@DELETEUSER",SqlDbType.VarChar,36),//废除操作人 new SqlParameter("@CREATEUSER",SqlDbType.VarChar,36),//创建人 new SqlParameter("@MODIFIEDUSER",SqlDbType.VarChar,36),//最后一次更新操作人 new SqlParameter("@REMARK",SqlDbType.VarChar,1024),//备注 new SqlParameter("@FREESTORAGEPERIOD",SqlDbType.Int),// new SqlParameter("@GOODSPACKSTOCK",SqlDbType.Decimal),// new SqlParameter("@GOODSKGS",SqlDbType.Decimal),//重量 new SqlParameter("@CLIENTCODEOLD",SqlDbType.VarChar,20),//原客户编码 new SqlParameter("@CLIENTNAMEOLD",SqlDbType.VarChar,20),//原客户名称 new SqlParameter("@KINDPKGS",SqlDbType.VarChar,20),// new SqlParameter("@ARFEE",SqlDbType.Decimal),// new SqlParameter("@APFEE",SqlDbType.Decimal),// new SqlParameter("@CORPID",SqlDbType.VarChar,36), new SqlParameter("@MARKETVALUE", SqlDbType.Decimal) , new SqlParameter("@BANKVALUE", SqlDbType.Decimal) }; parms[0].Value = WmsInEntity.GID;// 惟一编号 parms[1].Value = WmsInEntity.ASSOCIATEDNO;// 关联号 parms[2].Value = WmsInEntity.BLNO;// 提单号 parms[3].Value = WmsInEntity.CONTRACTNO;// 合同号 parms[4].Value = WmsInEntity.CNTRNO;// 箱号 parms[5].Value = WmsInEntity.SEALNO;// 封号 parms[6].Value = WmsInEntity.BSNO;// 仓单明细号 parms[7].Value = WmsInEntity.CLIENTCODE;// 客户编码 parms[8].Value = WmsInEntity.CLIENTNAME;// 客户名称 parms[9].Value = WmsInEntity.STORAGECODE;// 仓库编码 parms[10].Value = WmsInEntity.STORAGENAME;// 仓库名称 parms[11].Value = WmsInEntity.AREACODE;// 库位编码 parms[12].Value = WmsInEntity.AREANAME;// 库位名称 parms[13].Value = WmsInEntity.GOODSCODE;// 货物编号 parms[14].Value = WmsInEntity.GOODSNAME;// 货物名称 parms[15].Value = WmsInEntity.GOODSTYPE;// 货物类型 parms[16].Value = WmsInEntity.GOODSMODEL;// 牌号 parms[17].Value = WmsInEntity.GOODSSTANDARD;// 规格 parms[18].Value = WmsInEntity.GOODSPACK;// 件数 parms[19].Value = WmsInEntity.CHARGEUNIT;// 计费单位 parms[20].Value = WmsInEntity.GOODSRKSL;// 入库量 parms[21].Value = WmsInEntity.GOODSSTOCK;// 库存量 parms[22].Value = WmsInEntity.ISLOCK;// 是否锁定 parms[23].Value = WmsInEntity.LOCKUSER;// 锁定操作人 parms[24].Value = WmsInEntity.ISDELETE;// 是否废除 parms[25].Value = WmsInEntity.DELETEUSER;// 废除操作人 parms[26].Value = WmsInEntity.CREATEUSER;// 创建人 parms[27].Value = WmsInEntity.MODIFIEDUSER;// 最后一次更新操作人 parms[28].Value = WmsInEntity.REMARK;// 备注 parms[29].Value = WmsInEntity.FREESTORAGEPERIOD;// parms[30].Value = WmsInEntity.GOODSPACKSTOCK;// parms[31].Value = WmsInEntity.GOODSKGS;// 重量 parms[32].Value = WmsInEntity.CLIENTCODEOLD;// 客户编码 parms[33].Value = WmsInEntity.CLIENTNAMEOLD;// 客户名称 parms[34].Value = WmsInEntity.KINDPKGS;// parms[35].Value = WmsInEntity.ARFEE;// parms[36].Value = WmsInEntity.APFEE;// parms[37].Value = WmsInEntity.CORPID;// parms[38].Value = WmsInEntity.MARKETVALUE; parms[39].Value = WmsInEntity.BANKVALUE; // lsSql = "insert into wms_in(GID,ASSOCIATEDNO,BLNO,CONTRACTNO,CNTRNO,SEALNO,BSNO,CLIENTCODE,CLIENTNAME,{0}STORAGECODE,STORAGENAME,AREACODE,AREANAME,GOODSCODE,GOODSNAME,GOODSTYPE,GOODSMODEL,GOODSSTANDARD,GOODSPACK,CHARGEUNIT,GOODSRKSL,GOODSSTOCK,ISLOCK,LOCKUSER,ISDELETE,DELETEUSER,CREATEUSER,CREATETIME,MODIFIEDUSER,MODIFIEDTIME,REMARK,FREESTORAGEPERIOD,GOODSPACKSTOCK,GOODSKGS,CLIENTCODEOLD,CLIENTNAMEOLD,KINDPKGS,ARFEE,APFEE,LOCKTIME,CORPID,MARKETVALUE,BANKVALUE,LINENUM) " + " values(@GID,@ASSOCIATEDNO,@BLNO,@CONTRACTNO,@CNTRNO,@SEALNO,@BSNO,@CLIENTCODE,@CLIENTNAME,{1}@STORAGECODE,@STORAGENAME,@AREACODE,@AREANAME,@GOODSCODE,@GOODSNAME,@GOODSTYPE,@GOODSMODEL,@GOODSSTANDARD,@GOODSPACK,@CHARGEUNIT,@GOODSRKSL,@GOODSSTOCK,@ISLOCK,@LOCKUSER,@ISDELETE,@DELETEUSER,@CREATEUSER,getdate(),@MODIFIEDUSER,getdate(),@REMARK,@FREESTORAGEPERIOD,@GOODSPACKSTOCK,@GOODSKGS,@CLIENTCODEOLD,@CLIENTNAMEOLD,@KINDPKGS,@ARFEE,@APFEE,getdate(),@CORPID,@MARKETVALUE,@BANKVALUE," + n + ")"; // string strDODATE = model.DODATE.ToString().IndexOf("0001") > -1 ? "" : "'" + model.DODATE.ToString() + "',"; string strDODATE_name = strDODATE.Equals("") ? "" : "DODATE,"; lsSql = String.Format(lsSql, strDODATE_name, strDODATE); // iState = SqlHelper.ExecuteNonQuery(sqlTran, CommandType.Text, lsSql, parms); if (iState != 1) { sqlTran.Rollback(); result = -9; Clearh(); return result; } } #endregion // #endregion // this.h_newcust.Value = WmsInEntity.CLIENTNAME; this.h_IsSetRate.Value = "1"; //货权转移,可以设置费率 result = 1;//状态为1表示删除成功 sqlTran.Commit(); Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", ""); } #endregion } catch (Exception execError) { result = -1;//有异常,插入失败 sqlTran.Rollback(); result = -2;//插入异常,事务已回滚成功 Clearh(); throw execError; } finally { SqlHelper.CloseConnection(); } } return result; } #endregion #region 将页面post获取的出库信息读入到实体类中 /// /// 将页面post获取的出库信息读入到实体类中 /// /// /// /// 将页面post获取的出库信息读入到实体类中 private WmsOutEntity ResolveWoJSON(string tempJSON, WmsOutEntity tempWoEntity) { string OutGid = ""; string OutBsno = ""; DateTime OutDate = new DateTime(); string strFilter = ""; WmsOutEntity WmsOutEntity = new WmsOutEntity(); if (tempJSON.IndexOf("[") >= 0 && tempJSON.IndexOf("]") > 0) { strFilter = tempJSON.Substring(tempJSON.IndexOf("[") + 1, tempJSON.IndexOf("]") - tempJSON.IndexOf("[") - 1); string[] strFees = strFilter.Split(new string[] { "},{" }, System.StringSplitOptions.RemoveEmptyEntries); if (strFees.Length > 0) { for (int i = 0; i < strFees.Length; i++) { strFees[i] = strFees[i].ToString().Replace("{", ""); strFees[i] = strFees[i].ToString().Replace("}", ""); string[] strCell = strFees[i].Split(new char[] { ',' }); if (strCell.Length > 0) { for (int j = 0; j < strCell.Length; j++) { string[] strArg = strCell[j].Split(new char[] { ':' }); switch (strArg[0].Replace("\"", "")) { case "cust": //WmsOutEntity.CUSTOMERNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); WmsOutEntity.CUSTOMERNAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); h_customer.Value = WmsOutEntity.CUSTOMERNAME; break; case "outcus": WmsOutEntity.CLIENTNAMEOLD = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); h_outcustomer.Value = WmsOutEntity.CLIENTNAMEOLD; break; //case "cusold": // cusold = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); // break; case "outdate": WmsOutEntity.DODATE =DateTime.Parse(strArg[1].ToString().Replace("\"", "")); OutDate = WmsOutEntity.DODATE; h_outdate.Value = WmsOutEntity.DODATE.ToString(); break; case "goodsname": //WmsOutEntity.GOODSNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.GOODSNAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); h_goods.Value = WmsOutEntity.GOODSNAME; break; case "goodsmodel": //WmsOutEntity.GOODSMODEL = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.GOODSMODEL = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.h_goodsmodel.Value = WmsOutEntity.GOODSMODEL; txt_goodsmodel.Value = h_goodsmodel.Value; break; case "outnum": Decimal tmpoutnum = Decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.GOODSPFSL =decimal.Parse( Round(tmpoutnum, 4).ToString()); this.h_goodspfsl.Value = WmsOutEntity.GOODSPFSL.ToString(); //this.txt_goodspfsl.Value = this.h_goodspfsl.Value; break; case "outpacknum": decimal outpacknum= decimal.Parse(strArg[1].ToString().Replace("\"", "")); WmsOutEntity.GOODSPACKPFSL =Convert.ToInt16( Math.Round(outpacknum,0)); this.h_packnum.Value = WmsOutEntity.GOODSPACKPFSL.ToString(); //this.txt_packnum.Value = this.h_packnum.Value; break; case "remark": //WmsOutEntity.REMARK = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.REMARK = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.h_remark.Value = WmsOutEntity.REMARK.ToString().Trim(); this.txt_remark.Value = WmsOutEntity.REMARK.ToString().Trim(); break; case "inspectionno": WmsOutEntity.INSPECTIONNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); this.txt_inspectionno.Value = WmsOutEntity.INSPECTIONNO; break; case "validdate": WmsOutEntity.VALIDDATE = DateTime.Parse(strArg[1].ToString().Replace("\"", "").Trim() == "" ? "0001-01-01 00:00:00" : strArg[1].ToString().Replace("\"", "").Trim()); this.txt_inspectionno.Value = strArg[1].ToString().Replace("\"", "").Trim(); break; case "remark2": //WmsOutEntity.REMARK2 = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.REMARK2 = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.txt_inspectionno.Value = WmsOutEntity.REMARK2; break; case "totalno": //WmsOutEntity.TOTALNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.TOTALNO = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.txt_totalno.Value = WmsOutEntity.TOTALNO; break; case "clientbsno": WmsOutEntity.CLIENTBSNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); this.txt_clientbsno.Value = WmsOutEntity.CLIENTBSNO; break; case "customno": WmsOutEntity.CUSTOMNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); this.txt_customno.Value = WmsOutEntity.CUSTOMNO; break; case "truckno": //WmsOutEntity.TRUCKNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.TRUCKNO = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.h_truckno.Value = WmsOutEntity.TRUCKNO.ToString().Trim(); break; case "storage": //WmsOutEntity.STORAGENAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutEntity.STORAGENAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); this.h_storage.Value = WmsOutEntity.STORAGENAME; break; case "arclient"://应收 WmsOutEntity.ARCLIENT = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); hd_comboARCLIENT.Value = WmsOutEntity.ARCLIENT; //if (hd_comboARCLIENT.Value.Trim() == "" && this.h_storage.Value.Trim() != "") //{ // WmsOutEntity.ARCLIENT = this.h_storage.Value.Trim(); // hd_comboARCLIENT.Value = this.h_storage.Value.Trim(); //} break; case "arclientwmsout"://应收 WmsOutEntity.ARCLIENTWMSOUT = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); hd_comboARCLIENTWMSOUT.Value = WmsOutEntity.ARCLIENTWMSOUT; break; case "truckname"://应付 WmsOutEntity.TRUCKNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); hd_comboTRUCKNAME.Value = WmsOutEntity.TRUCKNAME; //if (hd_comboTRUCKNAME.Value.Trim() == "" && this.h_storage.Value.Trim() != "") //{ // WmsOutEntity.TRUCKNAME = this.h_storage.Value.Trim(); // hd_comboTRUCKNAME.Value = this.h_storage.Value.Trim(); //} break; case "opseaibsno": WmsOutEntity.ASSOCIATEDNO = strArg[1].ToString().Replace("\"", "").Trim(); this.h_opseaibsno.Value = WmsOutEntity.ASSOCIATEDNO; this.h_associatedno.Value = WmsOutEntity.ASSOCIATEDNO; this.h_bsno.Value = WmsOutEntity.ASSOCIATEDNO; break; case "isJsFee": this.ck_jsfee.Checked = bool.Parse(strArg[1].ToString().Replace("\"", "")); break; case "oldcustfeedate": this.txt_oldcustFeeDate.Value = strArg[1].ToString().Replace("\"", ""); WmsOutEntity.OLDCUSTFEEDATE = this.txt_oldcustFeeDate.Value.Trim() == "0001-01-01 00:00:00" ? DateTime.Parse("") : DateTime.Parse(this.txt_oldcustFeeDate.Value.Trim()); break; case "mblnonew": //string ls = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); string ls = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "")))); ls = ls.Replace("·","/"); this.h_mblnonew.Value = ls; WmsOutEntity.MBLNONEW = this.h_mblnonew.Value.Trim(); break; case "chargeunit": WmsOutEntity.CHARGEUNIT = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "")))); break; case "bztchno": WmsOutEntity.BZTCHNO = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "")))); break; case "iscollecting": WmsOutEntity.ISCOLLECTING = Boolean.Parse(strArg[1].ToString().Replace("\"", "")); break; default: break; } } if (this.h_storage.Value.Equals(null) || this.h_storage.Value.Trim().Equals("")) { WmsOutEntity.STORAGENAME = ""; } else { WmsOutEntity.STORAGENAME = this.h_storage.Value.Trim(); } WmsOutEntity.CREATEUSER = strShowName; //if ((this.txt_outbsno.Value.Trim().Equals("") || this.txt_outbsno.Value.Equals(null)) || this.h_addmode.Value.Equals("1")) if (this.h_Handle.Value.Trim().Equals("edit")) { OutBsno = this.txt_outbsno.Value.Trim(); this.h_outbsno.Value = OutBsno; OutGid = this.h_outgid.Value.Trim(); } else { OutGid= getBSNO(); OutBsno = getCodeRuleWmsOut("出库单号", "BSNO"); this.h_outgid.Value = OutGid; this.h_outbsno.Value = OutBsno; this.txt_outbsno.Value = OutBsno; } WmsOutEntity.GID = OutGid; WmsOutEntity.BSNO = OutBsno; //WmsOutEntity.STORAGENAME = h_storage.Value; //WmsOutEntity.TRUCKNO = h_truckno.Value; } } } } return WmsOutEntity; } #endregion #region 将页面post获取的出库明细信息读入到实体类中 /// /// 将页面post获取的出库明细信息读入到实体类中 /// /// /// /// 将页面post获取的出库信息读入到实体类中 private IList ResolveWoDetailJSON(string tempJSON, IList tempWoDetailEntities) { string strFilter = ""; if (tempJSON.IndexOf("[") >= 0 && tempJSON.IndexOf("]") > 0) { strFilter = tempJSON.Substring(tempJSON.IndexOf("[") + 1, tempJSON.IndexOf("]") - tempJSON.IndexOf("[") - 1); string[] strFees = strFilter.Split(new string[] { "},{" }, System.StringSplitOptions.RemoveEmptyEntries); if (strFees.Length > 0) { for (int i = 0; i < strFees.Length; i++) { strFees[i] = strFees[i].ToString().Replace("{", ""); strFees[i] = strFees[i].ToString().Replace("}", ""); string[] strCell = strFees[i].Split(new char[] { ',' }); if (strCell.Length > 0) { WmsOutDetailEntity WmsOutDetailEntity = new WmsOutDetailEntity(); for (int j = 0; j < strCell.Length; j++) { string[] strArg = strCell[j].Split(new char[] { ':' }); switch (strArg[0].Replace("\"", "")) { case "cust": //WmsOutDetailEntity.CUSTOMERNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); WmsOutDetailEntity.CUSTOMERNAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; case "outcus": WmsOutDetailEntity.CLIENTNAMEOLD = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); break; case "inbsno": WmsOutDetailEntity.INBSNO =strArg[1].ToString().Replace("\"", ""); WmsOutDetailEntity.GOODSSTANDARD = T_ALL_DA.GetStrSQL("GOODSSTANDARD", "select top 1 GOODSSTANDARD from wms where gid='" + WmsOutDetailEntity.INBSNO.ToString() + "'"); WmsOutDetailEntity.BZTCHNO = T_ALL_DA.GetStrSQL("BZTCHNO", "select top 1 BZTCHNO from wms where gid='" + WmsOutDetailEntity.INBSNO.ToString() + "'"); break; case "wmsoutdetailgid": string wmsoutdetailgid = strArg[1].ToString().Replace("\"", ""); if(wmsoutdetailgid.Trim()!="") { WmsOutDetailEntity.GID = wmsoutdetailgid; WmsOutDetailEntity.BSNO = T_ALL_DA.GetStrSQL("BSNO", "select top 1 BSNO from wms_out_detail where gid='" + wmsoutdetailgid + "'"); } break; case "indate": WmsOutDetailEntity.DODATE =DateTime.Parse(strArg[1].ToString().Replace("\"", "")); break; case "goodsname": //WmsOutDetailEntity.GOODSNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutDetailEntity.GOODSNAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; case "goodsmodel": //WmsOutDetailEntity.GOODSMODEL = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutDetailEntity.GOODSMODEL = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; case "truckno": //WmsOutDetailEntity.TRUCKNO = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); WmsOutDetailEntity.TRUCKNO = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; case "storage": WmsOutDetailEntity.STORAGENAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); break; case "opseaibsno": WmsOutDetailEntity.ASSOCIATEDNO = strArg[1].ToString().Replace("\"", "").Trim(); break; case "outnum": Decimal tmpoutnum = strArg[1].ToString().Replace("\"", "").ToString().Trim() == "" ? 0 : Decimal.Parse(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutDetailEntity.GOODSPFSL = decimal.Parse( Round(tmpoutnum, 4).ToString()); break; case "outpacknum": WmsOutDetailEntity.GOODSPACKPFSL = strArg[1].ToString().Replace("\"", "").ToString().Trim() == "" ? 0 : decimal.Parse(strArg[1].ToString().Replace("\"", "").ToString()); break; case "remark": //WmsOutDetailEntity.REMARK = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutDetailEntity.REMARK = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; case "custparent": WmsOutDetailEntity.CUSTOMERNAMEPARENT=strArg[1].ToString().Replace("\"", "").Trim(); //CustParent.Add(WmsOutDetailEntity.CUSTOMERNAMEPARENT); break; case "arfee": WmsOutDetailEntity.ARFEE = strArg[1].ToString().Replace("\"", "").ToString().Trim() == "" ? 0 : decimal.Parse(strArg[1].ToString().Replace("\"", "").ToString()); break; case "apfee": WmsOutDetailEntity.APFEE = strArg[1].ToString().Replace("\"", "").ToString().Trim() == "" ? 0 : decimal.Parse(strArg[1].ToString().Replace("\"", "").ToString()); break; case "startbillingdate": WmsOutDetailEntity.STARTBILLINGDATE = strArg[1].ToString().Replace("\"", "") == "" ? DateTime.Parse("0001-01-01 00:00:00") : DateTime.Parse(strArg[1].ToString().Replace("\"", ""));//应收开始计费日期 if (this.h_isUpdateSTARTBILLINGDATE.Value.Trim() == "1" && WmsOutDetailEntity.INBSNO.ToString().Trim() != "") { WmsOutDetailEntity.STARTBILLINGDATE = DateTime.Parse(T_ALL_DA.GetStrSQL("STARTBILLINGDATE", "select top 1 convert(char(10),STARTBILLINGDATE,120) as STARTBILLINGDATE from wms where gid='" + WmsOutDetailEntity.INBSNO.ToString().Trim() + "'")); } break; case "startbillingdateap": WmsOutDetailEntity.STARTBILLINGDATEAP = strArg[1].ToString().Replace("\"", "") == "" ? DateTime.Parse("0001-01-01 00:00:00") : DateTime.Parse(strArg[1].ToString().Replace("\"", ""));//应付开始计费日期 break; case "chargeunit": WmsOutDetailEntity.CHARGEUNIT = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "")))); break; case "marketvalue": WmsOutDetailEntity.MARKETVALUE = strArg[1].ToString().Replace("\"", "").ToString().Trim() == "" ? 0 : decimal.Parse(strArg[1].ToString().Replace("\"", "").ToString()); break; case "areaname": //WmsOutDetailEntity.AREANAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "").Trim()); WmsOutDetailEntity.AREANAME = unicode.GetString(unicode.GetBytes(Regex.Unescape(strArg[1].ToString().Replace("\"", "").Trim()))); break; default: break; } } if (!this.h_storage.Value.ToString().Equals("") && !this.h_storage.Value.Equals(null)) { WmsOutDetailEntity.STORAGENAME = this.h_storage.Value.ToString(); } else { WmsOutDetailEntity.STORAGENAME = " "; } WmsOutDetailEntity.CREATEUSER =strShowName; tempWoDetailEntities.Add(WmsOutDetailEntity); } } } } return tempWoDetailEntities; } #endregion #region 统计合计数 /// /// 统计合计数 /// /// public void getHJ() { if (this.h_outgid.Value.Trim() != "") { this.h_outbsno.Value = T_ALL_DA.GetStrSQL("bsno", "select top 1 bsno from wms_out where gid='" + this.h_outgid.Value.Trim() + "'"); txt_outbsno.Value = this.h_outbsno.Value; this.h_wmsoutbsno.Value = this.h_outbsno.Value; // DataSet ds = T_ALL_DA.GetAllSQL("select GOODSPACKPFSL=isnull(sum(GOODSPACKPFSL),0),GOODSPFSL=isnull(sum(GOODSPFSL),0),ARFEE=isnull(sum(ARFEE),0),APFEE=isnull(sum(APFEE),0),GOODSOUTFEE=isnull(sum(GOODSOUTFEE),0),GOODSOUTFEEAP=isnull(sum(GOODSOUTFEEAP),0) from wms_out_detail where OUTBSNO='" + this.h_outbsno.Value.Trim() + "'"); if (ds != null) { //件数 this.dvGOODSPACKVal.InnerText = ds.Tables[0].Rows[0]["GOODSPACKPFSL"].ToString().Trim(); //this.txt_packnum.Value = ds.Tables[0].Rows[0]["GOODSPACKPFSL"].ToString().Trim(); this.h_packnum.Value = ds.Tables[0].Rows[0]["GOODSPACKPFSL"].ToString().Trim(); //计费数量 this.dvProfitTotalVal.InnerText = ds.Tables[0].Rows[0]["GOODSPFSL"].ToString().Trim(); this.h_outnum.Value = ds.Tables[0].Rows[0]["GOODSPFSL"].ToString().Trim(); this.h_goodspfsl.Value = this.h_outnum.Value.Trim(); //this.txt_goodspfsl.Value = this.h_outnum.Value.Trim(); //出库应收 this.dvRecvTotalVal.InnerText = ds.Tables[0].Rows[0]["ARFEE"].ToString().Trim(); //出库应付 this.dvPaySumVal.InnerText = ds.Tables[0].Rows[0]["APFEE"].ToString().Trim(); //仓储费应收 this.dvRVal.InnerText = ds.Tables[0].Rows[0]["GOODSOUTFEE"].ToString().Trim(); this.h_outfee.Value = ds.Tables[0].Rows[0]["GOODSOUTFEE"].ToString().Trim(); //仓储费应付 this.dvPVal.InnerText = ds.Tables[0].Rows[0]["GOODSOUTFEEAP"].ToString().Trim(); } // ds = T_ALL_DA.GetAllSQL("select *,convert(char(10),DODATE,20) as DODATE2,convert(char(10),OLDCUSTFEEDATE,20) as OLDCUSTFEEDATE2,(case when isnull(VALIDDATE,'')='' then '' else convert(char(10),VALIDDATE,20) end) as VALIDDATE2 from wms_out where gid='" + this.h_outgid.Value.Trim() + "'"); if (ds != null) { this.h_customer.Value = ds.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim(); this.txt_customer.Value = this.h_customer.Value; this.h_outdate.Value = ds.Tables[0].Rows[0]["DODATE2"].ToString().Trim(); this.txt_outdate.Value = h_outdate.Value; this.h_storage.Value = ds.Tables[0].Rows[0]["STORAGENAME"].ToString().Trim(); this.txt_storage.Value = this.h_storage.Value; this.h_goods.Value = ds.Tables[0].Rows[0]["GOODSNAME"].ToString().Trim(); this.txt_goods.Value = this.h_goods.Value; this.h_goodsmodel.Value = ds.Tables[0].Rows[0]["GOODSMODEL"].ToString().Trim(); this.txt_goodsmodel.Value = h_goodsmodel.Value; this.h_storage.Value = ds.Tables[0].Rows[0]["STORAGENAME"].ToString().Trim(); this.h_remark.Value = ds.Tables[0].Rows[0]["REMARK"].ToString().Trim(); this.txt_remark.Value = this.h_remark.Value.Trim(); this.h_associatedno.Value = ds.Tables[0].Rows[0]["ASSOCIATEDNO"].ToString().Trim(); this.h_opseaibsno.Value = h_associatedno.Value; this.h_bsno.Value = h_associatedno.Value; if (this.h_opseaibsno.Value.Trim() == "") { this.txt_blno.Value = T_ALL_DA.GetStrSQL("BLNO", "select top 1 BLNO from wms where gid in (select inbsno from wms_out_detail where outbsno='" + ds.Tables[0].Rows[0]["bsno"].ToString().Trim() + "')"); } else { this.txt_blno.Value = T_ALL_DA.GetStrSQL("MBLNO", "select top 1 MBLNO from VW_Settlement where bsno='" + this.h_opseaibsno.Value.Trim() + "'"); } this.h_outcustomer.Value = ds.Tables[0].Rows[0]["CLIENTNAMEOLD"].ToString().Trim(); this.h_newcust.Value = this.h_outcustomer.Value; this.sel_outcustomer.Value = this.h_outcustomer.Value; this.h_mblnonew.Value = ds.Tables[0].Rows[0]["MBLNONEW"].ToString().Trim(); this.hd_comboARCLIENT.Value = ds.Tables[0].Rows[0]["ARCLIENT"].ToString().Trim(); this.hd_comboARCLIENTWMSOUT.Value = ds.Tables[0].Rows[0]["ARCLIENTWMSOUT"].ToString().Trim(); this.hd_comboTRUCKNAME.Value = ds.Tables[0].Rows[0]["TRUCKNAME"].ToString().Trim(); this.txt_customno.Value = ds.Tables[0].Rows[0]["CUSTOMNO"].ToString().Trim(); this.txt_inspectionno.Value = ds.Tables[0].Rows[0]["INSPECTIONNO"].ToString().Trim(); this.txt_validdate.Value = ds.Tables[0].Rows[0]["VALIDDATE2"].ToString().Trim(); this.txt_remark2.Value = ds.Tables[0].Rows[0]["REMARK2"].ToString().Trim(); this.txt_totalno.Value = ds.Tables[0].Rows[0]["TOTALNO"].ToString().Trim(); this.txt_clientbsno.Value = ds.Tables[0].Rows[0]["CLIENTBSNO"].ToString().Trim(); this.txt_oldcustFeeDate.Value = ds.Tables[0].Rows[0]["OLDCUSTFEEDATE2"].ToString().Trim(); this.txt_outdate.Value = ds.Tables[0].Rows[0]["DODATE2"].ToString().Trim(); this.txt_bztchno.Value = ds.Tables[0].Rows[0]["BZTCHNO"].ToString().Trim(); this.cbISCOLLECTING.Checked = Boolean.Parse(ds.Tables[0].Rows[0]["ISCOLLECTING"].ToString().Trim()); } } } #endregion #region 是否允许改 /// /// 是否允许改 /// /// public void setIsDisabled(bool isdisabled, bool ishdRangeO, bool islock) { this.h_isdisabled.Value = isdisabled.ToString(); // Div7.Disabled = isdisabled; Div8.Disabled = isdisabled; btn_Out.Disabled = isdisabled; ck_jsfee.Disabled = isdisabled; mygrid_container_wmsin.Disabled = isdisabled; btislock.Disabled = isdisabled; btnotislock.Disabled = isdisabled; // //货主名称 sel_customer.Visible = false; txt_customer.Visible = true; txt_customer.Disabled = true; //提单号 txt_blno.Disabled = true; //仓库名称 sel_storage.Visible = false; txt_storage.Visible = true; txt_storage.Disabled = true; //出库单号 txt_outbsno.Disabled = true; //品名 sel_goods.Visible = false; txt_goods.Visible = true; txt_goods.Disabled = true; //牌号 txt_goodsmodel.Disabled = true; // //应收仓储客户 ddlARCLIENTWMSOUT.Disabled = isdisabled; //应收出库客户 ddlARCLIENT.Disabled = isdisabled; //应付客户 ddlTRUCKNAME.Disabled = isdisabled; //出库日期 txt_outdate.Disabled = isdisabled; //结束计费日期 txt_oldcustFeeDate.Disabled = isdisabled; //转移对象 sel_outcustomer.Disabled = isdisabled; //转移单号 sel_mblnonew.Disabled = isdisabled; //备案清单号 txt_customno.Disabled = isdisabled; //重量 //txt_goodspfsl.Disabled = isdisabled; //件数 //txt_packnum.Disabled = isdisabled; //审批单号 txt_inspectionno.Disabled = isdisabled; //有效期 txt_validdate.Disabled = isdisabled; //备注2 txt_remark2.Disabled = isdisabled; //重量大写 txt_totalno.Disabled = isdisabled; //客户仓单号 txt_clientbsno.Disabled = isdisabled; //备注 txt_remark.Disabled = isdisabled; //批次号 txt_bztchno.Disabled = isdisabled; //是否代收费 this.cbISCOLLECTING.Disabled = isdisabled; // if (this.h_Handle.Value.Trim() == "edit") { //刷新 divrefresh2.Disabled = isdisabled; //列表 mygrid_recv_2.Disabled = isdisabled; //更改结束计费日期 btOldCustFeeDate.Disabled = (!isdisabled); if (islock == true) { btOldCustFeeDate.Disabled = islock; btUpdateGOODSOUTFEE.Disabled = islock; } if (ishdRangeO == true) { btOldCustFeeDate.Disabled = isdisabled; btUpdateGOODSOUTFEE.Disabled = isdisabled; } } } #endregion #endregion #region 仓储操作 #region 将页面post获取的仓储费率信息保存或更新“仓储费率明细表”wms_rate_detail,并返回操作结果 /// /// 将页面post获取的仓储费率信息保存或更新“仓储费率明细表”wms_rate_detail,并返回操作结果 /// private void SaveRateAction() { IList rateEntities = new List(); if (!recvJSON_2.Trim().Equals("")) { rateEntities = ResolverecvJSON_2(recvJSON_2.Trim(), rateEntities); this.recvContainer_2.Value = ""; } WmsRateDetailDA rateDA = new WmsRateDetailDA(); foreach (WmsRateDetailEntity rateentity in rateEntities) { string strwhere = String.Format(" GID='{0}' ", rateentity.GID); int strExists = rateDA.GetRecordCount(strwhere); if (strExists == 1) { int iRecvState = rateDA.Update(rateentity, strShowName, this.txt_outbsno.Value.Trim()); } else if (strExists == 0) { int iRecvState = rateDA.Add(rateentity, strShowName, this.txt_outbsno.Value.Trim()); } //更新出库wms_out、wms_out的仓储费??? } } #endregion #region 将页面post获取的仓储费率明细读入到仓储费率明细表实体类wms_rate_detail中 /// /// 将页面post获取的仓储费率明细读入到仓储费率明细表实体类wms_rate_detail中 /// /// /// private IList ResolverecvJSON_2(string tempJSON, IList tempRateEntities) { string strFilter = ""; if (tempJSON.IndexOf("[") >= 0 && tempJSON.IndexOf("]") > 0) { strFilter = tempJSON.Substring(tempJSON.IndexOf("[") + 1, tempJSON.IndexOf("]") - tempJSON.IndexOf("[") - 1); string[] strFees = strFilter.Split(new string[] { "},{" }, System.StringSplitOptions.RemoveEmptyEntries); if (strFees.Length > 0) { for (int i = 0; i < strFees.Length; i++) { strFees[i] = strFees[i].ToString().Replace("{", ""); strFees[i] = strFees[i].ToString().Replace("}", ""); string[] strCell = strFees[i].Split(new char[] { ',' }); if (strCell.Length > 0) { WmsRateDetailEntity RateEntity = new WmsRateDetailEntity(); for (int j = 0; j < strCell.Length; j++) { string[] strArg = strCell[j].Split(new char[] { ':' }); switch (strArg[0].Replace("\"", "")) { case "id": RateEntity.GID = strArg[1].ToString().Replace("\"", "").Trim(); break; case "cus": RateEntity.CUSTOMERNAME = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); break; case "fgrade": RateEntity.FEEGRADE = int.Parse(strArg[1].ToString().Replace("\"", "")); break; case "feetype": RateEntity.FEETYPE = int.Parse(strArg[1].ToString().Replace("\"", "")); break; case "startbillingdate": RateEntity.STARTBILLINGDATE = DateTime.Parse(strArg[1].ToString().Replace("\"", "") == "" ? "0001-01-01" : strArg[1].ToString().Replace("\"", "")); break; case "endbillingdate": RateEntity.ENDBILLINGDATE = DateTime.Parse(strArg[1].ToString().Replace("\"", "") == "" ? "0001-01-01" : strArg[1].ToString().Replace("\"", "")); break; case "fscale": RateEntity.FEESCALE = int.Parse(strArg[1].ToString().Replace("\"", "")); break; case "funit": RateEntity.FEEUNIT = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); break; case "fprice": RateEntity.FEEPRICE = decimal.Parse(strArg[1].ToString().Replace("\"", "")); break; case "goodspfsl": RateEntity.GOODSPFSL = decimal.Parse(strArg[1].ToString().Replace("\"", "")); break; case "outfee": RateEntity.OUTFEE = decimal.Parse(strArg[1].ToString().Replace("\"", "")); break; case "remark": RateEntity.REMARK = UnicodeToGB(strArg[1].ToString().Replace("\"", "")); break; case "associatedno": RateEntity.ASSOCIATEDNO = strArg[1].ToString().Replace("\"", ""); break; default: break; } } RateEntity.CREATEUSER = this.strUserID; RateEntity.MODIFIEDUSER = this.strUserID; tempRateEntities.Add(RateEntity); } } } } return tempRateEntities; } #endregion #endregion #region 基本信息 /// /// 正数四舍五入,负数是五舍六入。(个人以为第一种方法合适处置货泉盘算) /// /// 四舍五入的数 /// 表示要保存的小数点后为数 /// private Decimal Round(Decimal value, int decimals, string money) { if (value < 0) { return Math.Round(value + (Decimal)(5 / Math.Pow(10, decimals + 1)), decimals, MidpointRounding.AwayFromZero); } else { return Math.Round(value, decimals, MidpointRounding.AwayFromZero); } } /// /// 正负数都四舍五入(适合数据统计的显示) /// /// 四舍五入的数 /// 表示要保存的小数点后为数 /// private Decimal Round(Decimal d, int i) { if (d >= 0) { d += (Decimal)(5 * Math.Pow(10, -(i + 1))); } else { d += (Decimal)(-5 * Math.Pow(10, -(i + 1))); } string str = d.ToString(); string[] strs = str.Split('.'); int idot = str.IndexOf('.'); string prestr = strs[0]; string poststr = strs[1]; if (poststr.Length > i) { poststr = str.Substring(idot + 1, i); } string strd = prestr + "." + poststr; d = Decimal.Parse(strd); return d; } private void Clearh() { this.h_post_2.Value = ""; this.h_associatedno.Value = ""; this.h_opseaibsno.Value = ""; this.h_bsno.Value = ""; this.h_wmsoutbsno.Value = ""; this.h_outgid.Value = ""; this.h_outbsno.Value = ""; txt_outbsno.Value = ""; //txt_packnum.Value = ""; h_packnum.Value = ""; //txt_goodspfsl.Value = ""; h_goodspfsl.Value = ""; } #region Unicode-GB Code转换 /// /// Unicode-GB Code转换 /// /// 将Unicode编码字符转换成GB编码字符 /// GB Code字符串 public string UnicodeToGB(string text) { UnicodeEncoding unicode = new UnicodeEncoding(); text = unicode.GetString(unicode.GetBytes(Regex.Unescape(text.Trim()))); return text; } /// /// Unicode-GB Code转换 /// /// 将Unicode编码字符转换成GB编码字符 /// GB Code字符串 public string UnicodeToGB_Old(string text) { MatchCollection mc = Regex.Matches(text, "([\\w]+)|(\\\\u([\\w]{4}))"); if (mc != null && mc.Count > 0) { StringBuilder sb = new StringBuilder(); foreach (Match m2 in mc) { string v = m2.Value; if (v.IndexOf("\\") >= 0) { string word = v.Substring(2); byte[] codes = new byte[2]; int code = Convert.ToInt32(word.Substring(0, 2), 16); int code2 = Convert.ToInt32(word.Substring(2), 16); codes[0] = (byte)code2; codes[1] = (byte)code; sb.Append(Encoding.Unicode.GetString(codes)); } else { sb.Append(v); } } return sb.ToString(); } else { return text; } } #endregion #region getBSNO protected String getBSNO() { string strBSNO = Guid.NewGuid().ToString(); strBSNO = strBSNO.Replace("-", ""); strBSNO = "WmsOut" + strBSNO; return strBSNO; } #endregion #region 提取规则编号 getCodeRuleWmsOutDetail /// /// 提取规则编号 /// /// 规则项目名称 /// 需要加规则的字段 /// protected String getCodeRuleWmsOutDetail(string strRULENAME, string strfield) { //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='" + strRULENAME.Trim() + "' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled(strRULENAME, strfield); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { return ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // //DataSet ds1 = T_ALL_DA.GetAllSQL("select top 1 " + strfield + " from [wms_out_detail] where " + strfield + " like '" + strCONTENT.Trim() + "%' order by " + strfield + " DESC"); //if (ds1 != null) //{ // if (ds.Tables[0].Rows.Count > 0) // { // strRULENOLENGTH = ds1.Tables[0].Rows[0][0].ToString().Trim(); // } //} T_ALL_DA.GetStrSQL(strfield, "select top 1 " + strfield + " from [wms_out_detail] where " + strfield + " like '" + strCONTENT.Trim() + "%' order by " + strfield + " DESC");// and isnull(ISDELETE,0)=0 if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; return strCONTENT; } } } return ""; } #endregion #region 提取规则编号 getCodeRuleWmsOut /// /// 提取规则编号 /// /// 规则项目名称 /// 需要加规则的字段 /// protected String getCodeRuleWmsOut(string strRULENAME, string strfield) { //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='" + strRULENAME.Trim() + "' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled(strRULENAME, strfield); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { return ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // strRULENOLENGTH = T_ALL_DA.GetStrSQL(strfield, "select top 1 " + strfield + " from [wms_out] where " + strfield + " like '" + strCONTENT.Trim() + "%' and isnull(ISDELETE,0)=0 order by " + strfield + " DESC"); if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; return strCONTENT; } } } return ""; } #endregion #region 提取规则编号 getCodeRuleEnabled /// /// 提取规则编号 /// /// 规则项目名称 /// 需要加规则的字段 /// protected void getCodeRuleEnabled(string strRULENAME, string strfield) { //是否生成之后允许编辑 DataSet ds = T_ALL_DA.GetAllSQL("select * from code_rule where RULENAME='" + strRULENAME.Trim() + "' and RULETYPE=3"); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { if (strfield == "BSNO") { if (ds.Tables[0].Rows[0]["ISALLOWEDITS"].ToString().Trim().Equals("True")) { txt_outbsno.Disabled=false; } else { txt_outbsno.Disabled=true; } } } } } } #endregion #region 提取规则编号 /// /// 提取规则编号 /// /// 规则项目名称 /// 需要加规则的字段 /// protected String getCodeRuleWmsIn(string strRULENAME, string strfield, SqlTransaction trans) { //调用编码规则 string strRULEYEAR = ""; string strRULECONTENT = ""; string strCODENAME = ""; string strDEPTNO = ""; string strRULENOLENGTH = ""; int iRULENOLENGTH = 0; int inum = 0; string strCONTENT = ""; DataSet ds = new DataSet(); //DataSet ds = T_ALL_DA.GetAllSQL("select *,getdate() DODATE from code_rule where RULENAME='" + strRULENAME.Trim() + "' and RULETYPE=3"); SqlParameter parm = new SqlParameter("@RULENAME", SqlDbType.VarChar, 100); parm.Value=strRULENAME.Trim(); string ststt="select *,getdate() DODATE from code_rule where RULENAME=@RULENAME and RULETYPE=3 "; ds = SqlHelper.ExecuteQueryDataset(trans, CommandType.Text, ststt, parm); if (ds != null) { if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["ISSTARTUSING"].ToString().Trim().Equals("True")) { getCodeRuleEnabled(strRULENAME, strfield); // if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("业务日期")) { //if (tbDODATE.Text.Trim() == "") //{ // return ""; //} if (ds.Tables[0].Rows[0]["DODATE"].ToString().Trim() == "") { return ""; } DateTime dETD = System.Convert.ToDateTime(ds.Tables[0].Rows[0]["DODATE"].ToString().Trim()); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy") + dETD.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy") + dETD.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = dETD.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = dETD.ToString("yy"); } } } else if (ds.Tables[0].Rows[0]["RULEDATE"].ToString().Trim().Equals("自然月份")) { DateTime fwqdate = System.Convert.ToDateTime(T_ALL_DA.GetStrSQL("fwqdate", "select fwqdate=getdate()")); if (ds.Tables[0].Rows[0]["ISCLEAREDINEARLY"].ToString().Trim().Equals("True")) { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy") + fwqdate.ToString("MM"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy") + fwqdate.ToString("MM"); } } else { if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "4") { strRULEYEAR = fwqdate.ToString("yyyy"); } else if (ds.Tables[0].Rows[0]["RULEYEAR"].ToString().Trim() == "2") { strRULEYEAR = fwqdate.ToString("yy"); } } } // if (ds.Tables[0].Rows[0]["ISCOMPANY"].ToString().Trim().Equals("True")) { //strCODENAME = T_ALL_DA.GetStrSQL("CODENAME", "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); SqlParameter parm1 = new SqlParameter("@USERID", SqlDbType.VarChar, 100); parm1.Value = strUserID; ststt = "select CODENAME from [company] where GID=(select top 1 COMPANYID from user_company where USERID=@USERID)"; ds = SqlHelper.ExecuteQueryDataset(trans, CommandType.Text, ststt, parm1); strCODENAME = ds.Tables[0].Rows[0]["CODENAME"].ToString().Equals(null) ? "" : ds.Tables[0].Rows[0]["CODENAME"].ToString(); } if (ds.Tables[0].Rows[0]["ISDEPT"].ToString().Trim().Equals("True")) { //strDEPTNO = T_ALL_DA.GetStrSQL("DEPTNO", "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID='" + strUserID + "')"); SqlParameter parm2 = new SqlParameter("@USERID", SqlDbType.VarChar, 100); parm2.Value = strUserID; ststt = "select DEPTNO from [sys_dept] where LINKID=(select top 1 COMPANYID from user_company where USERID=@USERID"; ds = SqlHelper.ExecuteQueryDataset(trans, CommandType.Text, ststt, parm2); strDEPTNO = ds.Tables[0].Rows[0]["DEPTNO"].ToString().Equals(null) ? "" : ds.Tables[0].Rows[0]["DEPTNO"].ToString(); } strRULECONTENT = ds.Tables[0].Rows[0]["RULECONTENT"].ToString().Trim(); strRULECONTENT = strRULECONTENT.Replace("《COMPANY》", strCODENAME); strRULECONTENT = strRULECONTENT.Replace("《DEPT》", strDEPTNO); // if (ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim() == "") { iRULENOLENGTH = 0; } else { iRULENOLENGTH = int.Parse(ds.Tables[0].Rows[0]["RULENOLENGTH"].ToString().Trim()); } strCONTENT = strRULECONTENT + strRULEYEAR; //获取分公司的票号头字符 string tempBANKSHEAD = T_ALL_DA.GetStrSQL("BANKSHEAD", "SELECT TOP 1 BANKSHEAD FROM company WHERE GID='" + strCompanyID.Trim() + "'"); strCONTENT = tempBANKSHEAD + strCONTENT; // //strRULENOLENGTH = T_ALL_DA.GetStrSQL(strfield, "select top 1 " + strfield + " from [wms_in] where " + strfield + " like '" + strCONTENT.Trim() + "%' and ISDELETE=0 order by " + strfield + " DESC"); SqlParameter parm3 = new SqlParameter("@BSNO", SqlDbType.VarChar, 100); parm3.Value = strCONTENT.Trim(); ststt = "select top 1 BSNO from [wms_in] where BSNO like '"+strCONTENT.Trim()+ "%' and ISDELETE=0 order by BSNO DESC"; ds = SqlHelper.ExecuteQueryDataset(trans, CommandType.Text, ststt, parm3); if (!ds.Equals(null) && !ds.Tables[0].Equals(null) && ds.Tables[0].Rows.Count>0 ) { strRULENOLENGTH = ds.Tables[0].Rows[0]["BSNO"].ToString().Equals(null) ? "" : ds.Tables[0].Rows[0]["BSNO"].ToString(); } else { strRULENOLENGTH = ""; } if (strRULENOLENGTH == "") { strRULENOLENGTH = "1"; } else { strRULENOLENGTH = strRULENOLENGTH.Replace(strCONTENT.Trim(), ""); inum = int.Parse(strRULENOLENGTH.Trim()); inum = inum + 1; strRULENOLENGTH = inum.ToString(); } int j = iRULENOLENGTH - strRULENOLENGTH.Length; for (int i = 1; i <= j; i++) { strRULENOLENGTH = "0" + strRULENOLENGTH; } // strCONTENT = strCONTENT + strRULENOLENGTH; return strCONTENT; } } } return ""; } #endregion protected String getBSNOWmsIn() { string strBSNO = Guid.NewGuid().ToString(); strBSNO = strBSNO.Replace("-", ""); strBSNO = "WmsIn" + strBSNO; return strBSNO; } protected String getWMSNO() { string strWMSNO = Guid.NewGuid().ToString(); strWMSNO = strWMSNO.Replace("-", ""); strWMSNO = "Wms" + strWMSNO; return strWMSNO; } #endregion } }