private bool FreshQuick(_GoodsFreshStr goodInfo, GoodsFresh objFresh) { lock (m_hLockTableEx) { //如果无货,循环检测 while (!m_bHaveGood) { TimeSpan tSpan = DateTime.Now - m_dateLastCheckTime; if (tSpan.TotalSeconds > m_iCheckGoodInterval) { m_bHaveGood = IsGoodExist(goodInfo); m_dateLastCheckTime = DateTime.Now; if (m_bHaveGood) { ShowLogString("商品有货了 " + DateTime.Now.ToString()); break; } else { ShowLogString("商品无货 " +DateTime.Now.ToString()); } } System.Threading.Thread.Sleep(1500); } } string strError = ""; goodInfo.strFreshStatus = "正在登录..."; ShowStatusInfo(goodInfo); bool bRet = Login(goodInfo.webPost, goodInfo.strAcc, goodInfo.strPwd, ref strError, false); if (!bRet) { if (strError.IndexOf("为保证账户安全,请填写验证码") < 0) { ShowLogString("为保证账户安全,请填写验证码"); goodInfo.strFreshStatus = "登录失败:" + strError; ShowStatusInfo(goodInfo); return false; } bRet = Login(goodInfo.webPost, goodInfo.strAcc, goodInfo.strPwd, ref strError, true); if (!bRet) { goodInfo.strFreshStatus = "登录失败:" + strError; ShowStatusInfo(goodInfo); return false; } } goodInfo.strFreshStatus = "正在添加商品至购物车..."; ShowStatusInfo(goodInfo); bRet = objFresh.AddToCart(goodInfo); if (!bRet) { goodInfo.strFreshStatus = "加入购物车失败:" + goodInfo.strFreshStatus; ShowStatusInfo(goodInfo); return false; } goodInfo.strFreshStatus = "正在设置寄送地址..."; ShowStatusInfo(goodInfo); bRet = objFresh.AddAddress(goodInfo); if (!bRet) { goodInfo.strFreshStatus = "设置寄送地址失败:" + goodInfo.strFreshStatus; ShowStatusInfo(goodInfo); } goodInfo.strFreshStatus = "正在设置寄送方式、支持方式、提交定单..."; ShowStatusInfo(goodInfo); bRet = objFresh.SetTransTypeAndPayType(goodInfo); if (!bRet) { goodInfo.strFreshStatus = "设置寄送方式、支持方式、提交定单失败:" + goodInfo.strFreshStatus; ShowStatusInfo(goodInfo); } return true; }