Ejemplo n.º 1
0
        //信息错误提醒,提醒前一天内错误信息
        protected void getcwtx()
        {
            net.sogal.www.WebService aa = new SFYWebApi.net.sogal.www.WebService();
            string strjson = aa.GetPoRequisition(DateTime.Parse(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd")), DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")));//传入参数

            DataTable dtbl = new DataTable();

            dtbl = Json2Dtb(strjson);
            DataTable newdt  = new DataTable();
            string    sqlCmd = "select * from SFYOrderTab where CREATION_DATE between '" + DateTime.Parse(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd")) + "' and '" + DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")) + "'";

            SqlSel.GetSqlSel(ref newdt, sqlCmd);
            if (dtbl.Rows.Count > newdt.Rows.Count)//当索菲亚服务端大于本地
            {
                Label3.Text += "索菲亚数据和本地数据不对应!在" + DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + ",请重新获取!";
            }
        }
Ejemplo n.º 2
0
        protected void Button2_Click(object sender, EventArgs e)
        {
            string sqlcmd = ""; string sqltr = "";

            for (int i = 0; i < GridView1.Rows.Count; i++)
            {
                string hdid    = this.GridView1.Rows[i].Cells[13].Text;
                string lineid  = this.GridView1.Rows[i].Cells[14].Text;
                string orderid = this.GridView1.Rows[i].Cells[15].Text;
                string fhrq    = ((TextBox)(GridView1.Rows[i].Cells[0].Controls[0]).FindControl("TextBox3")).Text.Trim().ToString();
                string bzrmk   = ((TextBox)(GridView1.Rows[i].Cells[0].Controls[0]).FindControl("txtBZRMK")).Text.Trim().ToString();
                //TextBox txb = GridView1.Rows[i].Cells[8].FindControl("TextBox3") as TextBox;
                //string data = txb.Text.Trim();
                if (fhrq != "" || bzrmk != "")
                {
                    sqltr = "select YJFHRQ from yjfhtab where OrderID='" + orderid + "' and FKSate=0 "; //未同步到索菲亚
                    String YJFH = Convert.ToString(SqlSel.GetSqlScale(sqltr));
                    sqltr = "select YJFHRQ from yjfhtab where OrderID='" + orderid + "' and FKSate=1 "; //已同步到索菲亚
                    String YJFH2 = Convert.ToString(SqlSel.GetSqlScale(sqltr));
                    if (YJFH != "")                                                                     //可更新
                    {
                        sqlcmd = "update YJFHTab set Header_ID='" + hdid + "',Line_ID='" + lineid + "',YJFHRQ='" + fhrq + "',Remark='" + bzrmk + "',FKSate=0 where OrderID='" + orderid + "'  ";
                        int execountsp = SqlSel.ExeSql(sqlcmd);
                        if (execountsp == 0)
                        {
                            break;
                        }
                    }
                    else if (YJFH2 != "")//直接跳出
                    {
                        break;
                    }
                    else
                    {
                        sqlcmd = "insert into YJFHTab(Header_ID,Line_ID,YJFHRQ,Remark,FKSate,OrderID) values('" + hdid + "','" + lineid + "','" + fhrq + "','" + bzrmk + "',0,'" + orderid + "')  ";
                        int execounts = SqlSel.ExeSql(sqlcmd);
                        if (execounts == 0)
                        {
                            break;
                        }
                    }
                }
            }
            Label1.Text = "保存成功。";
        }
Ejemplo n.º 3
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            //获取所有网店管家省市区信息
            //addMap = wdgjService.wdgj_AddressMap();
            //获取网店管家省市区实时信息
            //DataSet addMap = new DataSet();
            if (System.Web.HttpContext.Current.Session["addMap"] != null)
            {
                addMap = (DataSet)System.Web.HttpContext.Current.Session["addMap"];
            }
            else
            {
                wdgjWebService.wdgjWebService wdgjService = new SFYWebApi.wdgjWebService.wdgjWebService();
                addMap = wdgjService.wdgj_AddressMap();
                System.Web.HttpContext.Current.Session.Add("addMap", addMap);
            }

            DateTime date1 = Convert.ToDateTime(TextBox1.Text);
            DateTime date2 = Convert.ToDateTime(TextBox2.Text);

            string    sqlCmd = "select * from sfyorderTab where createdate>='" + date1 + "' and createdate<='" + date2 + "'";
            DataTable dt     = new DataTable();

            SqlSel.GetSqlSel(ref dt, sqlCmd);
            string AddrStr = "", province = "", city = "", area = "";

            string[] addrArr = new string[3];
            dt.Columns.Add("sendProvince");
            dt.Columns.Add("sendCity");
            dt.Columns.Add("sendArea");
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                AddrStr = dt.Rows[i]["Address"].ToString();
                addrArr = SplitAddressStr(AddrStr);
                dt.Rows[i]["sendProvince"] = addrArr[0];
                dt.Rows[i]["sendCity"]     = addrArr[1];
                dt.Rows[i]["sendArea"]     = addrArr[2];
            }

            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
Ejemplo n.º 4
0
        //判断是否是定制订单
        private bool isCustOrder(string GoodsNo)
        {
            DataTable goodsTable = new DataTable();
            string    sqlstr1    = "select * from t_MapGoodsList where goodsNo='" + GoodsNo + "'";

            SqlSel.GetSqlSel(ref goodsTable, sqlstr1);
            if (goodsTable.Rows.Count > 0)
            {
                if (Convert.ToBoolean(goodsTable.Rows[0]["isOrder"]) == true)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 5
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            Label1.Text = "订单正在获取中,请稍后。";
            Label2.Text = "";
            if (txtNeedDate.Value.Length == 0)
            {
                Label1.Text          = "请选择需求日期!";
                GridView1.DataSource = null;
                GridView1.DataBind();
                return;
            }
            net.sogal.www.WebService aa = new SFYWebApi.net.sogal.www.WebService();
            DateTime dt      = DateTime.Parse(txtNeedDate.Value);
            DateTime dt2     = DateTime.Parse(Text1.Value);
            string   strjson = aa.GetPoRequisition(dt, dt2);
            //Label4.Text = strjson;
            DataTable dtbl = new DataTable();

            dtbl = Json2Dtb(strjson);
            //编码对照表
            DataTable goodsTable = new DataTable();
            string    sqlstr1    = "select * from t_MapGoodsList";

            SqlSel.GetSqlSel(ref goodsTable, sqlstr1);

            for (int i = 0; i < dtbl.Rows.Count; i++)
            {
                string itemNum = dtbl.Rows[i]["ITEM_NUMBER"].ToString();
                //int quantity = Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]);
                //if (dtbl.Rows[i]["ITEM_DESC"] != "" && dtbl.Rows[i]["ITEM_DESC"] != null)
                //{
                //    DataRow newRow;
                //    newRow = dtbl.NewRow();
                //    string orderid = dtbl.Rows[i]["HEADER_ID"].ToString() + "-" + dtbl.Rows[i]["LINE_ID"].ToString();


                //    if (dtbl.Rows[i]["ITEM_DESC"].ToString().Contains("["))
                //    {
                //        //判断物料描述中【】内计量单位与实际计量单位是否相符
                //        string descunitA = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('/')[1];
                //        string descunit = descunitA.Substring(0, 1);
                //        string realunit = dtbl.Rows[i]["UOM_CODE"].ToString();
                //        if (descunit != realunit)
                //        {
                //            MessageBox.Show("订单号为" + orderid + "的备注计量单位与实际返回计量单位不符,请相关人员确认!", "请注意!");
                //        }
                //        string strcount = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('[')[1];
                //        string innerstr = strcount.Substring(0, strcount.IndexOf("]"));
                //        int itemcount = Convert.ToInt32(innerstr.Substring(0, GetIndexOfChinese(innerstr) + 1));
                //        dtbl.Rows[i]["QUANTITY"] = itemcount * Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]);
                //    }
                //    if (dtbl.Rows[i]["ITEM_DESC"].ToString().Contains("【"))
                //    {
                //        //判断物料描述中【】内计量单位与实际计量单位是否相符
                //        string descunitA = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('/')[1];
                //        string descunit = descunitA.Substring(0, 1);
                //        string realunit = dtbl.Rows[i]["UOM_CODE"].ToString();
                //        if (descunit != realunit)
                //        {
                //            MessageBox.Show("订单号为" + orderid + "的备注计量单位与实际返回计量单位不符,请相关人员确认!", "请注意!");
                //        }
                //        string strcount = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('【')[1];
                //        string innerstr = strcount.Substring(0, strcount.IndexOf("】"));
                //        int itemcount = Convert.ToInt32(innerstr.Substring(0, GetIndexOfChinese(innerstr) + 1));
                //        dtbl.Rows[i]["QUANTITY"] = itemcount * Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]);
                //    }
                //    if (dtbl.Rows[i]["ITEM_DESC"].ToString().Contains("("))
                //    {
                //        string dpm = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('(')[0];
                //        //获取()之间的字符
                //        int IndexofA = dtbl.Rows[i]["ITEM_DESC"].ToString().IndexOf("("); //或者(
                //        int IndexofB = dtbl.Rows[i]["ITEM_DESC"].ToString().IndexOf(")"); //或者)
                //        string pinname = dtbl.Rows[i]["ITEM_DESC"].ToString().Substring(IndexofA + 1, IndexofB - IndexofA - 1);
                //        dtbl.Rows[i]["ITEM_DESC"] = dpm;
                //        dtbl.Rows[i]["ITEM_NUMBER"] = pinname;

                //    }
                //    if (dtbl.Rows[i]["ITEM_DESC"].ToString().Contains("("))
                //    {
                //        string dtbln = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('(')[0];
                //        //获取()之间的字符
                //        int IndexofC = dtbl.Rows[i]["ITEM_DESC"].ToString().IndexOf("("); //或者(
                //        int IndexofD = dtbl.Rows[i]["ITEM_DESC"].ToString().IndexOf(")"); //或者)
                //        string pname = dtbl.Rows[i]["ITEM_DESC"].ToString().Substring(IndexofC + 1, IndexofD - IndexofC - 1);
                //        dtbl.Rows[i]["ITEM_DESC"] = dtbln;
                //        dtbl.Rows[i]["ITEM_NUMBER"] = pname;
                //    }

                //    string pname = dtbl.Rows[i]["ITEM_DESC"].ToString().Substring(dtbln.Length).Replace("(", "").Replace(")", "");


                //    string otherstr = dtbl.Rows[i]["ITEM_DESC"].ToString().Split('(')[1];
                //    string pinname = otherstr.Split(')')[0];
                //}

                //匹配商品编码
                if (!string.IsNullOrEmpty(itemNum))
                {
                    int find = -1;
                    for (int k = 0; k < goodsTable.Rows.Count; k++)
                    {
                        string sfyNo = goodsTable.Rows[k]["targetNo"].ToString();
                        if (sfyNo == itemNum)
                        {
                            find = k;
                            break;
                        }
                    }
                    if (find >= 0)
                    {
                        dtbl.Rows[i]["ITEM_NUMBER"] = goodsTable.Rows[find]["goodsNo"];
                        //非最小计量数量则乘以相关数量
                        if (Convert.ToBoolean(goodsTable.Rows[find]["isMinUnitOrNo"]) == true)
                        {
                            dtbl.Rows[i]["QUANTITY"] = (Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]) * (Convert.ToInt32(goodsTable.Rows[find]["UnitTimes"]))).ToString();
                        }
                        //定制款商品增加“索菲亚定制”备注,以便相关订单匹配定制仓库--2016年12月16日 19:17:36
                        if (Convert.ToBoolean(goodsTable.Rows[find]["isOrder"]) == true)
                        {
                            dtbl.Rows[i]["SPECIFICATION"] = dtbl.Rows[i]["SPECIFICATION"].ToString() + " 备注:索菲亚定制";
                        }
                    }
                }
            }

            GridView1.DataSource = dtbl;
            StringBuilder sbresault = new StringBuilder();

            sbresault.Append("");

            for (int i = 0; i < dtbl.Rows.Count; i++)
            {
                DataTable newdt   = new DataTable();
                string    orderid = dtbl.Rows[i]["HEADER_ID"].ToString() + "-" + dtbl.Rows[i]["LINE_ID"].ToString();
                string    sqlCmd  = "select * from SFYOrderTab where OrderId='" + orderid + "' ";
                SqlSel.GetSqlSel(ref newdt, sqlCmd);
                if (newdt.Rows.Count > 0)
                {
                    continue;
                    //sqlCmd = "select QUANTITY from SFYOrderTab where OrderId='" + orderid + "' and ITEM_NUMBER='" + dtbl.Rows[i]["ITEM_NUMBER"].ToString() + "'";
                    //int curcount = Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]);
                    //int befcount = Convert.ToInt32(SqlSel.GetSqlScale(sqlCmd));
                    //if (curcount!=befcount)
                    //{
                    //    sbresault.Append(string.Format("订单号为{0}的订单,货品数量发生改变:原始数量为{2},现数量为({1}),请通知相关人员!<br/>", orderid, curcount,befcount));
                    //    Label2.Text = sbresault.ToString();
                    //    continue;
                    //}
                    //else
                    //{
                    //    continue;
                    //}
                }
                else
                {
                    //联系人是否为空
                    if (dtbl.Rows[i]["CONTACT_NAME"].ToString() == "" || dtbl.Rows[i]["CONTACT_NAME"].ToString() == null)
                    {
                        sbresault.Append(string.Format("PO号为{0}的联系人为空,请查验!<br/>", dtbl.Rows[i]["CUST_PO_NUM"].ToString()));
                    }
                    //联系电话是否为空
                    if (dtbl.Rows[i]["PHONE_NUMBER"].ToString() == "" || dtbl.Rows[i]["PHONE_NUMBER"].ToString() == null)
                    {
                        sbresault.Append(string.Format("PO号为{0}的联系电话为空,请查验!<br/>", dtbl.Rows[i]["CUST_PO_NUM"].ToString()));
                    }
                    //判断订单地址是否存在疑问
                    if (dtbl.Rows[i]["Address"].ToString() == "" || dtbl.Rows[i]["Address"].ToString() == null)
                    {
                        sbresault.Append(string.Format("PO号为{0}的地址为空,请查验!<br/>", dtbl.Rows[i]["CUST_PO_NUM"].ToString()));
                    }
                    else
                    {
                        if (dtbl.Rows[i]["Address"].ToString().Length >= 8)
                        {
                            string    origAdr = dtbl.Rows[i]["Address"].ToString();
                            DataTable prodtl  = new DataTable();
                            string    sqlstr  = "select * from  tb_sys_capital";
                            SqlSel.GetSqlSel(ref prodtl, sqlstr);
                            int find = -1;
                            for (int j = 0; j < prodtl.Rows.Count; j++)
                            {
                                string provincename = prodtl.Rows[j]["CapitalName"].ToString();
                                if (origAdr.Substring(0, 8).Contains(provincename))
                                {
                                    find = j;
                                    break;
                                }
                            }
                            if (find < 0)
                            {
                                sbresault.Append(string.Format("PO号为{0}的地址可能不具体“{1}”,请查验!<br/>", dtbl.Rows[i]["CUST_PO_NUM"].ToString(), dtbl.Rows[i]["Address"].ToString()));
                            }
                        }
                        else
                        {
                            sbresault.Append(string.Format("PO号为{0}的地址可能不具体“{1}”,请查验!<br/>", dtbl.Rows[i]["CUST_PO_NUM"].ToString(), dtbl.Rows[i]["Address"].ToString()));
                        }
                    }

                    string guige    = "";
                    int    quantity = Convert.ToInt32(dtbl.Rows[i]["QUANTITY"]);
                    //定制款的实际数量transaction_quantity
                    int realQty;
                    try
                    {
                        realQty = Convert.ToInt32(dtbl.Rows[i]["transaction_quantity"]);
                    }
                    catch (Exception)
                    {
                        realQty = 0;
                    }
                    //如果定制数量大于0,则取定制数量
                    if (realQty > 0)
                    {
                        quantity = realQty;
                    }
                    string crationname = dtbl.Rows[i]["CONTACT_NAME"].ToString();
                    //判断是否是定制款
                    if (isCustOrder(dtbl.Rows[i]["ITEM_NUMBER"].ToString()))
                    {
                        guige = "  规格:" + dtbl.Rows[i]["SPECIFICATION"].ToString();
                        //插入原始数据记录表origDataLog
                        //sqlCmd = "insert into origDataLog (origId,origText,sourceTab) values ('" + orderid + "','transaction_quantity:" + dtbl.Rows[i]["QUANTITY"].ToString() + "','SFYOrderTab')";
                        //int curExeCount = SqlSel.ExeSql(sqlCmd);
                        //if (curExeCount == 0)
                        //{
                        //    return;
                        //}
                        //else
                        //{
                        //    //订单表SFYOrderTab中存储定制款的实际数量
                        //    quantity = realQty;
                        //    crationname = crationname + guige;
                        //}
                        crationname = crationname + guige;
                    }
                    //索菲亚关于部分需配备礼盒的商品生成相应订单(支持一个产品对应多个赠品的情况)
                    string    origGoods = dtbl.Rows[i]["ITEM_NUMBER"].ToString();
                    DataTable saledtl   = new DataTable();
                    sqlCmd  = "select (select goodsNo from goodslist where SaleAct.origgoodsid=goodslist.id) as origNo,(select goodsName from goodslist where SaleAct.origgoodsid=goodslist.id) as origName,";
                    sqlCmd += " (select goodsNo from goodslist where SaleAct.giftgoodsid=goodslist.id) as giftNo,(select goodsName from goodslist where SaleAct.giftgoodsid=goodslist.id) as giftName,* from SaleAct";
                    sqlCmd += " where enabled=1 and startdte<'" + DateTime.Now + "' and enddte>'" + DateTime.Now + "'";
                    SqlSel.GetSqlSel(ref saledtl, sqlCmd);
                    for (int bb = 0; bb < saledtl.Rows.Count; bb++)
                    {
                        string curGoodsNo = saledtl.Rows[bb]["origNo"].ToString();
                        if (origGoods == curGoodsNo)
                        {
                            sqlCmd  = "select * from SFYOrderTab where parentid is not null and ITEM_NUMBER='" + saledtl.Rows[bb]["giftNo"].ToString() + "' and";
                            sqlCmd += " parentid='" + dtbl.Rows[i]["HEADER_ID"].ToString() + "-" + dtbl.Rows[i]["LINE_ID"].ToString() + "'";
                            DataTable curdtl = new DataTable();
                            SqlSel.GetSqlSel(ref curdtl, sqlCmd);
                            if (curdtl.Rows.Count > 0)
                            {
                                continue;
                            }
                            else
                            {
                                sqlCmd  = "insert into SFYOrderTab (HEADER_ID,LINE_ID,PO_NUMBER,CUST_PO_NUM,ITEM_NUMBER,ITEM_DESC,NEED_BY_DATE,CREATION_DATE,QUANTITY,";
                                sqlCmd += " UOM_CODE,DESCRIPTION,CONTACT_NAME,PHONE_NUMBER,ADDRESS,ISNew,OrderId,OrderStatus,cipher,CreateDate,parentid) values (";
                                sqlCmd += " '" + dtbl.Rows[i]["HEADER_ID"].ToString() + "','" + dtbl.Rows[i]["LINE_ID"].ToString() + "','" + dtbl.Rows[i]["PO_NUMBER"].ToString() + "',";
                                sqlCmd += " '" + dtbl.Rows[i]["CUST_PO_NUM"].ToString() + "','" + saledtl.Rows[bb]["giftNo"].ToString() + "','" + saledtl.Rows[bb]["giftName"].ToString() + "',";
                                sqlCmd += " '" + dtbl.Rows[i]["NEED_BY_DATE"].ToString() + "','" + dtbl.Rows[i]["CREATION_DATE"].ToString() + "'," + quantity + ",'" + dtbl.Rows[i]["UOM_CODE"].ToString() + "',";
                                sqlCmd += " '" + dtbl.Rows[i]["CUST_PO_NUM"].ToString() + guige + "','" + crationname + "','" + dtbl.Rows[i]["PHONE_NUMBER"].ToString() + "',";
                                sqlCmd += " '" + dtbl.Rows[i]["ADDRESS"].ToString() + "',0,'SFY" + DateTime.Now.Ticks + "',";
                                sqlCmd += " 1,'MBH3Q2W876EG422','" + DateTime.Now + "','" + dtbl.Rows[i]["HEADER_ID"].ToString() + "-" + dtbl.Rows[i]["LINE_ID"].ToString() + "')";
                                int insertCounts = SqlSel.ExeSql(sqlCmd);
                                if (insertCounts == 0)
                                {
                                    break;
                                }
                            }
                            //break;
                        }
                    }
                    sqlCmd  = "insert into SFYOrderTab (HEADER_ID,LINE_ID,PO_NUMBER,CUST_PO_NUM,ITEM_NUMBER,ITEM_DESC,NEED_BY_DATE,CREATION_DATE,QUANTITY,";
                    sqlCmd += " UOM_CODE,DESCRIPTION,CONTACT_NAME,PHONE_NUMBER,ADDRESS,ISNew,OrderId,OrderStatus,cipher,CreateDate) values (";
                    sqlCmd += " '" + dtbl.Rows[i]["HEADER_ID"].ToString() + "','" + dtbl.Rows[i]["LINE_ID"].ToString() + "','" + dtbl.Rows[i]["PO_NUMBER"].ToString() + "',";
                    sqlCmd += " '" + dtbl.Rows[i]["CUST_PO_NUM"].ToString() + "','" + dtbl.Rows[i]["ITEM_NUMBER"].ToString() + "','" + dtbl.Rows[i]["ITEM_DESC"].ToString() + "',";
                    sqlCmd += " '" + dtbl.Rows[i]["NEED_BY_DATE"].ToString() + "','" + dtbl.Rows[i]["CREATION_DATE"].ToString() + "'," + quantity + ",'" + dtbl.Rows[i]["UOM_CODE"].ToString() + "',";
                    sqlCmd += " '" + dtbl.Rows[i]["CUST_PO_NUM"].ToString() + guige + "','" + crationname + "','" + dtbl.Rows[i]["PHONE_NUMBER"].ToString() + "',";
                    sqlCmd += " '" + dtbl.Rows[i]["ADDRESS"].ToString().Replace("'", "") + "',0,'" + dtbl.Rows[i]["HEADER_ID"].ToString() + "-" + dtbl.Rows[i]["LINE_ID"].ToString() + "',";
                    sqlCmd += " 1,'MBH3Q2W876EG422','" + DateTime.Now + "')";
                    int execounts = SqlSel.ExeSql(sqlCmd);
                    if (execounts == 0)
                    {
                        sbresault.Append(string.Format("客户{0}的信息存在异常,未能抓单成功,请校验!", dtbl.Rows[i]["CUST_PO_NUM"].ToString()));
                        continue;
                    }
                }
            }
            if (!string.IsNullOrEmpty(sbresault.ToString()))
            {
                Label2.Text = sbresault.ToString();
            }
            GridView1.DataBind();
            Label1.Text = "订单获取完成。";
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 订单查询
        /// </summary>
        /// <param name="cipher"></param>
        /// <param name="TimeStamp1">起始时间(时间戳),0表示不限制起始时间</param>
        /// <param name="TimeStamp2">截止时间(时间戳),0表示不限制截止时间</param>
        /// <param name="OrderStatus">0:表示所有,1:表示已经付款,2:表示未付款,3:表示已经取消,4:已经发货</param>
        /// <returns></returns>
        //[HttpPost]
        public static string mOrderSearch(string cipher, string TimeStamp1, string TimeStamp2, int OrderStatus)
        {
            DateTime apibeginTime = new DateTime();

            if (TimeStamp1 != "")
            {
                apibeginTime = DateTime.Parse(TimeStamp1.ToString());
            }
            DateTime apiendTime = DateTime.Parse(TimeStamp2.ToString());

            string ids = "";
            //查询订单

            //使用本地时间:
            object otmp    = SqlSel.GetSqlScale(" select top 1 AddedTime from WDApi_logs order by AddedTime desc");
            string addtime = "";

            if (otmp != null)
            {
                addtime = otmp.ToString();
            }
            string   beginTime = addtime;
            DateTime endTime   = DateTime.Now;

            string descrip = string.Format("【wdgj_抓单】起始时间{0},结束时间{1},订单状态{2}", beginTime, endTime, OrderStatus);

            //LogHelper.InsertApiLog(db, "订单查询", cipher, descrip, "wdgj_api");
            string IPAddress = IPHelp.ClientIP;
            string sqlCmd    = "insert into WDApi_logs ([PageUrl],[AddedTime],[UserName],[IPAddress],[Privilege],[Description],[cipher]) values ('','" + DateTime.Now + "','wdgj_api','" + IPAddress + "','订单查询','" + descrip + "','" + cipher + "')";
            //执行插入日志
            int execounts = SqlSel.ExeSql(sqlCmd);

            string sql = "select OrderId,OrderStatus,cipher from SFYOrderTab where cipher='" + cipher + "' AND ISnew=0 ";
            //if (beginTime.Length != 0)
            //{
            //    sql += OrderStatus == 1 ? " and CREATION_DATE>='" + beginTime+"' " : " and  CREATION_DATE>='" + beginTime+"' ";
            //}
            //if (endTime.ToString().Length != 0)
            //{
            //    sql += OrderStatus == 1 ? " and CREATION_DATE<'" + endTime + "' " : " and  CREATION_DATE<'" + endTime + "' ";
            //}
            //if (OrderStatus != 0)
            //{
            //    sql += "  and OrderStatus= " + OrderStatus;
            //}
            DataTable dtb1 = new DataTable();

            SqlSel.GetSqlSel(ref dtb1, sql);

            StringBuilder xml = new StringBuilder();

            xml.Append("<?xml version='1.0' encoding='gb2312'?>");
            xml.Append("<OrderList>");
            for (int item = 0; item < dtb1.Rows.Count; item++)
            {
                string oid = dtb1.Rows[item]["OrderId"].ToString();
                //List.Add(string.Format("{0}[{1}]", oid, 1));
                ids += oid + ", ";
                xml.Append("<OrderNO>" + oid + "</OrderNO>");
            }

            //LogHelper.debug(string.Format("【网店管家测试】--订单总数:{0};", data.Count));

            //InsertLogsFile("订单总数:" + dtb1.Rows.Count + "订单编号:" + ids +"/r/n"+ string.Format("【wdgj_抓单】本地调用起始时间{5},结束时间{6};API起始时间【{3}】{0},结束时间【{4}】{1},订单总数{2}", apibeginTime, apiendTime, dtb1.Rows.Count, TimeStamp1, TimeStamp2, beginTime, endTime)+"/r/n");

            xml.Append("<Page>1</Page>");
            xml.Append("<Result>" + "1" + "</Result>");
            xml.Append("<OrderCount>" + dtb1.Rows.Count + "</OrderCount>");
            xml.Append("</OrderList>");
            return(xml.ToString());
        }
Ejemplo n.º 7
0
        public static string mSndGoods(string OrderNO, string SndStyle, string BillID)
        {
            string    orderlist = "";
            DataTable dtn       = new DataTable();
            string    sqldt     = "select * from WLCode ";

            SqlSel.GetSqlSel(ref dtn, sqldt);
            for (int dd = 0; dd < dtn.Rows.Count; dd++)
            {
                string wlcode = dtn.Rows[dd]["EWL"].ToString();
                if (SndStyle.Contains(wlcode))
                {
                    orderlist = dtn.Rows[dd]["ZWL"].ToString();
                    break;
                }
            }
            //InsertLogsFile(string.Format("【wdgj_发货同步】订单号:{0},发货类型:{1},快递单号:{2} ", OrderNO, orderlist, BillID));
            string cipher = "MBH3Q2W876EG422";
            int    i      = OrderNO.Split(',').Length - 1;
            int    m      = 0;

            Encoding coding = Encoding.UTF8;
            //LogHelper.InsertLogToFile("wdgj_api", string.Format("【wdgj_发货同步】订单号:{0},发货时间{1},同步时间{2},发货类型:{3},用户:{4},快递单号:{5} ", OrderNO, SndDate, DateTime.Now, SndStyle, CustomerID, BillID));
            string IPAddress = IPHelp.ClientIP;

            //引用索菲亚接口
            //net.sogal.www.WebService aa = new SFYWebApi.net.sogal.www.WebService();
            foreach (var id in OrderNO.Split(','))
            {
                string    sqlcmd = "select cipher,CREATION_DATE,OrderStatus,QUANTITY from SFYOrderTab where OrderId='" + id + "' ";
                DataTable dtb1   = new DataTable();
                SqlSel.GetSqlSel(ref dtb1, sqlcmd);
                if (dtb1 == null)
                {
                    return(xml(0, OrderNO));
                }
                string dtbln   = id.Split('-')[0];
                string dline   = id.Substring(dtbln.Length + 1);
                string qunty   = dtb1.Rows[0]["QUANTITY"].ToString();
                string sqlCmd2 = "insert into WDApiFH ([Header_ID],[Line_ID],[OrderId],[TQuantity],[LOG_INFO],[FHSat],[Create_Date],[cipher]) values ('" + dtbln + "','" + dline + "','" + id + "','" + qunty + "','" + string.Format("订单号:{0},发货类型:{1},快递单号:{2} ", id, orderlist, BillID) + "','0','" + DateTime.Now + "','" + cipher + "')";
                //执行发货同步
                int execounts2 = SqlSel.ExeSql(sqlCmd2);
                if (execounts2 == 1)
                {
                    m += 1;
                }
                //aa.AddPoRequisition(Int32.Parse(dtbln), Int32.Parse(dline), Decimal.Parse(qunty), string.Format("订单号:{0},发货类型:{1},快递单号:{2} ", id, orderlist, BillID));//写入索菲亚接口
                //string sqlstr = "update WDApiFH set [FHSat]=1 where [OrderId]='" + id + "' ";
                //int execounts = SqlSel.ExeSql(sqlstr);
                //if (execounts == 0)
                //{
                //    break;
                //}
                //DataTable newdt = new DataTable();
                //string sqlCmd = "select * from WDApiFH where FHSat=0 and OrderId='" + id + "'";
                //SqlSel.GetSqlSel(ref newdt, sqlCmd);
                //string orderid = newdt.Rows[0]["OrderId"].ToString();
                //aa.AddPoRequisition(Int32.Parse(newdt.Rows[0]["Header_ID"].ToString()), Int32.Parse(newdt.Rows[0]["Line_ID"].ToString()), Decimal.Parse(newdt.Rows[0]["TQuantity"].ToString()), newdt.Rows[0]["LOG_INFO"].ToString());//传值测试
                //string sqlstr = "update WDApiFH set [FHSat]=1 where [OrderId]='" + orderid + "' ";
                //int execounts = SqlSel.ExeSql(sqlstr);
                //if (execounts == 0)
                //{
                //    break;
                //}
            }
            //写入索菲亚接口
            //net.sogal.www.WebService aa = new SFYWebApi.net.sogal.www.WebService();
            //DataTable newdt = new DataTable();
            //string sqlCmd = "select * from WDApiFH where FHSat=0 ";
            //SqlSel.GetSqlSel(ref newdt, sqlCmd);
            //for (int ii = 0; ii < newdt.Rows.Count; ii++)
            //{
            //    string RQTId = newdt.Rows[ii]["RQTId"].ToString();
            //    aa.AddPoRequisition(Int32.Parse(newdt.Rows[ii]["Header_ID"].ToString()), Int32.Parse(newdt.Rows[ii]["Line_ID"].ToString()), Decimal.Parse(newdt.Rows[ii]["TQuantity"].ToString()), newdt.Rows[ii]["LOG_INFO"].ToString());//传值测试
            //    string sqlstr = "update WDApiFH set [FHSat]=1 where [RQTId]='" + RQTId + "' ";
            //    int execounts = SqlSel.ExeSql(sqlstr);
            //    if (execounts == 0)
            //    {
            //        break;
            //    }
            //}
            string sqlCmdt = "insert into WDApi_logs ([PageUrl],[AddedTime],[UserName],[IPAddress],[Privilege],[Description],[cipher]) values ('','" + DateTime.Now + "','wdgj_api','" + IPAddress + "','发货同步','" + string.Format("【wdgj_发货同步】订单号:{0},同步时间{1},发货类型:{2},快递单号:{3} ", OrderNO.Replace(',', ','), DateTime.Now, orderlist, BillID) + "','" + cipher + "')";
            //执行插入日志
            int execountst = SqlSel.ExeSql(sqlCmdt);

            if (m == i + 1)
            {
                return(xml(1, "1"));
            }
            else
            {
                return(xml(0, OrderNO));
            }
        }
Ejemplo n.º 8
0
        // 订单下载
        //[HttpPost]
        public static string mGetOrder(string cipher, string OrderNO)
        {
            //var data = new DbObject();

            StringBuilder sb = new StringBuilder();

            string IPAddress = IPHelp.ClientIP;
            string sqlCmd    = "insert into WDApi_logs ([PageUrl],[AddedTime],[UserName],[IPAddress],[Privilege],[Description],[cipher]) values ('','" + DateTime.Now + "','wdgj_api','" + IPAddress + "','订单查询','" + string.Format("【wdgj_订单下载】时间{0},订单编号{1} ", DateTime.Now, OrderNO) + "','" + cipher + "')";
            //执行插入日志
            int execounts = SqlSel.ExeSql(sqlCmd);

            string sql   = @"select OrderId,CREATION_DATE,CUST_PO_NUM,CONTACT_NAME,PO_NUMBER,ITEM_NUMBER,ADDRESS,description,ITEM_DESC,NEED_BY_DATE,QUANTITY,UOM_CODE
                            ,PHONE_NUMBER from SFYOrderTab where OrderId='" + OrderNO + "' ";
            string ponum = "";

            string[]  addrArr  = new string[3];
            string    province = ""; //省
            string    city     = ""; //市
            string    area     = ""; //区
            DataTable dtb1     = new DataTable();

            SqlSel.GetSqlSel(ref dtb1, sql);
            if (dtb1 == null)
            {
                return("不存在该订单编号");
            }

            StringBuilder xml = new StringBuilder();

            //data.Add("Item", Items);
            if (dtb1.Rows.Count > 0)
            {
                string curdte       = Convert.ToDateTime(dtb1.Rows[0]["CREATION_DATE"]).ToString("yyyy-MM-dd HH:mm:ss");
                string contact_name = dtb1.Rows[0]["contact_name"].ToString().TrimEnd();
                string needdte      = Convert.ToDateTime(dtb1.Rows[0]["NEED_BY_DATE"]).ToString("yyyy-MM-dd");
                //DataTable prodtl =new DataTable();
                //string sqlstr="select * from  tb_sys_capital";
                //SqlSel.GetSqlSel(ref prodtl,sqlstr);
                string Address = dtb1.Rows[0]["Address"].ToString().TrimEnd();
                if (Address.Length >= 8)
                {
                    addrArr  = SplitAddress(Address);
                    province = addrArr[0];
                    city     = addrArr[1];
                    area     = addrArr[2];
                    //int find = -1;
                    //for (int f = 0; f < prodtl.Rows.Count; f++)
                    //{
                    //    string provincename = prodtl.Rows[f]["CapitalName"].ToString();
                    //    if (Address.Substring(0, 8).Contains(provincename))
                    //    {
                    //        find = f;
                    //        province = prodtl.Rows[f]["CapitalName"].ToString();
                    //        break;
                    //    }
                    //}
                    //if (find < 0)
                    //{
                    //    return "地址格式有误!";
                    //}
                }
                else
                {
                    return("地址格式有误!");
                }
                if (contact_name == "" || contact_name == null)
                {
                    contact_name = "-";
                }
                string TelPhone = dtb1.Rows[0]["PHONE_NUMBER"].ToString().TrimEnd();
                //if (TelPhone == ""|| TelPhone == null)
                //{
                //    TelPhone = "-";
                //}
                ponum = dtb1.Rows[0]["cust_po_num"].ToString();
                xml.Append("<Order>");
                xml.Append("<Result>1</Result>");
                xml.Append("<Cause></Cause>");
                xml.Append("<OrderNO>" + OrderNO + "</OrderNO>");
                xml.Append("<DateTime>" + curdte + "</DateTime>");
                xml.Append("<BuyerID><![CDATA[" + ponum + "]]></BuyerID>");
                xml.Append("<BuyerName><![CDATA[" + contact_name + "]]></BuyerName>");
                xml.Append("<Country><![CDATA[" + "中国" + "]]></Country>");
                xml.Append("<Province><![CDATA[" + province + "]]></Province>");
                xml.Append("<City><![CDATA[" + city + "]]></City>");
                xml.Append("<Town><![CDATA[" + area + "]]></Town>");
                xml.Append("<Adr><![CDATA[" + Address + "]]></Adr>");
                xml.Append("<Zip><![CDATA[" + "]]></Zip>");
                xml.Append("<Email><![CDATA[" + "]]></Email>");
                xml.Append("<Phone><![CDATA[" + TelPhone + "]]></Phone>");
                xml.Append("<Total>0</Total>");
                xml.Append("<Postage>0</Postage>");
                xml.Append("<PayAccount><![CDATA[支付宝]]></PayAccount>");  //支付方式
                xml.Append("<PayID><![CDATA[" + "" + "]]></PayID>");     //支付编号
                xml.Append("<logisticsName><![CDATA[" + "]]></logisticsName>");
                xml.Append("<chargetype><![CDATA[担保交易]]></chargetype>"); //结算方式
                xml.Append("<CustomerRemark><![CDATA[需求日期:" + needdte + "]]></CustomerRemark>");
                xml.Append("<Remark><![CDATA[" + dtb1.Rows[0]["description"].ToString() + "]]></Remark>");
                xml.Append("<InvoiceTitle><![CDATA[" + "" + "]]></InvoiceTitle>");

                xml.Append("<Item>");
                xml.Append("<GoodsID><![CDATA[" + dtb1.Rows[0]["ITEM_NUMBER"].ToString() + "]]></GoodsID>");
                xml.Append("<GoodsName><![CDATA[" + dtb1.Rows[0]["ITEM_DESC"].ToString() + "]]></GoodsName>");
                xml.Append("<GoodsSpec><![CDATA[" + dtb1.Rows[0]["uom_code"].ToString() + "]]></GoodsSpec>");
                xml.Append("<Count>" + dtb1.Rows[0]["quantity"].ToString() + "</Count>");
                xml.Append("<Price>0</Price>");
                xml.Append("</Item>");

                xml.Append("</Order>");
            }
            sql = "update SFYOrderTab set isnew=1 where  OrderId='" + OrderNO + "'";
            SqlSel.ExeSql(sql);
            //插入日志文件
            //InsertLogsFile(string.Format("【网店管家_订单下载】时间{0},订单编号{1},用户名{2} ", DateTime.Now, OrderNO, ponum));
            return(xml.ToString());
            //LogHelper.InsertLogToFile("wdgj_api", string.Format("【网店管家_订单下载】时间{0},订单编号{1},用户名{2} ", DateTime.Now, OrderNO, data["BuyerID"]));
        }
Ejemplo n.º 9
0
        public void DisplayData()
        {
            if (Request["uCode"] != null && Request["mType"] != null)
            {
                string uCode   = Request["uCode"].ToString();
                object otmp    = SqlSel.GetSqlScale(" select top 1 AddedTime from WDApi_logs order by AddedTime desc");
                string addtime = "";
                if (otmp != null)
                {
                    addtime = otmp.ToString();
                }
                string   beginTime = addtime;
                DateTime endTime   = DateTime.Now;
                if (1 == 1)
                {
                    if (Request["mType"] == "mOrderSearch" && uCode == SqlSel.getcipher())
                    {
                        Response.Write(wdgjV3API.mOrderSearch(SqlSel.getcipher(), beginTime, endTime.ToString(), 1));
                        Response.End();
                    }

                    else if (Request["mType"] == "mGetOrder" && uCode == SqlSel.getcipher())
                    {
                        string OrderNO = Request["OrderNO"].ToString();
                        byte[] buffer  = Encoding.Default.GetBytes(wdgjV3API.mGetOrder(uCode, OrderNO));
                        string strDest = Encoding.GetEncoding("gb2312").GetString(buffer);
                        Response.Clear();

                        Response.ContentType = "text/xml";
                        Response.Write("<?xml version='1.0' encoding='UTF-8'?>" + strDest);

                        Response.End();
                    }
                    else if (Request["mType"] == "mSndGoods" && uCode == SqlSel.getcipher())
                    {
                        //string orderlist = "";
                        string OrderNO  = Request["OrderNO"].ToString();
                        string SndStyle = Request["SndStyle"].ToString();
                        //string SndStyle = System.Text.Encoding.UTF8.GetBytes(sndsty).ToString();
                        string BillID = Request["BillID"].ToString();
                        //if (SndStyle.Contains("德邦"))
                        //{
                        //    orderlist = "debang";
                        //}
                        //else if (SndStyle.Contains("申通"))
                        //{
                        //    orderlist = "shentong";
                        //}
                        //else if (SndStyle.Contains("顺丰"))
                        //{
                        //    orderlist = "shunfeng";
                        //}
                        //else if (SndStyle.Contains("中通"))
                        //{
                        //    orderlist = "zhongtong";
                        //}
                        //else if (SndStyle.Contains("EMS"))
                        //{
                        //    orderlist = "ems";
                        //}
                        //else if (SndStyle.Contains("优速"))
                        //{
                        //    orderlist = "yousu";
                        //}
                        //else
                        //{
                        //    orderlist = "";
                        //}

                        string xml = wdgjV3API.mSndGoods(OrderNO, SndStyle, BillID);
                        Response.Write(xml);
                        Response.End();
                    }
                    else
                    {
                        Response.Write(wdgjV3API.xml(0, "canshu error"));
                        Response.End();
                    }
                }
                else
                {
                    Response.Write(wdgjV3API.xml(0, "uCode Error"));
                    Response.End();
                }
            }
            else
            {
                Response.Write(wdgjV3API.xml(0, "uCode Error or uCode is null"));
                Response.End();
            }
        }