/// <summary> /// 销售单保存 /// </summary> /// <param name="sell">销售单单实体</param> /// <param name="sd">销售明细实体</param> /// <param name="sp">销售流程实体</param> /// <param name="inStock">是否生成入库单</param> /// <returns></returns> public int SaveSellOdd(Sell sell, List <SellDetail> sd, SellProcess sp, bool inStock) { try { dal.SaveSellOdd(sell, sd, sp, inStock); return(1); } catch (Exception ex) { throw ex; } }
public int Add(SellProcess sps) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into T_Sell("); strSql.Append("Sell_Code,Sell_Type,Sell_Date,Sell_TransportType,Sell_Review,Sell_ChangeDate,Sell_Operation,Sell_Auditman,Sell_Remark,Sell_Satetyone,Sell_Satetytwo,"); strSql.Append("Sell_IsPay,Sell_IsPutSto,Sell_PayMathod,Sell_GetDate,Sell_Logistics,Sell_LogCode,Sell_LogPhone,Sell_Clear,Sell_OddMoney,Sell_AccountCode,Sell_InMoney,Sell_LastMoney)"); strSql.Append(" values ("); strSql.Append("@Sell_Code,@Sell_Type,@Sell_Date,@Sell_TransportType,@Sell_Review,@Sell_ChangeDate,@Sell_Operation,@Sell_Auditman,@Sell_Remark,@Sell_Satetyone,@Sell_Satetytwo,"); strSql.Append("@Sell_IsPay,@Sell_IsPutSto,@Sell_PayMathod,@Sell_GetDate,@Sell_Logistics,@Sell_LogCode,@Sell_LogPhone,@Sell_Clear,@Sell_OddMoney,@Sell_AccountCode,@Sell_InMoney,@Sell_LastMoney)"); strSql.Append(";select @@IDENTITY"); SqlParameter[] parameters = { new SqlParameter("@SP_Code", SqlDbType.NVarChar, 512), new SqlParameter("@SP_SellLineno", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Datetime", SqlDbType.DateTime), new SqlParameter("@SP_Opt", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Ope", SqlDbType.Int, 4), new SqlParameter("@SP_Remark", SqlDbType.DateTime), new SqlParameter("@SP_Clear", SqlDbType.NVarChar, 512) }; parameters[0].Value = sps.Sp_Code; parameters[1].Value = sps.Sp_SellLineno; parameters[2].Value = sps.Sp_Datetime; parameters[3].Value = sps.Sp_Opt; parameters[4].Value = sps.Sp_Ope; parameters[5].Value = sps.Sp_Remark; parameters[6].Value = sps.Sp_Clear; object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters); if (obj == null) { return(0); } else { return(Convert.ToInt32(obj)); } }
public void SellTestHasExisitingRequest() { //arrange MQReq query = new MQReq(); CommStubStaticReturn comm = new CommStubStaticReturn(null, null, null, query, null, null, null, null); SellProcess testProcess = new SellProcess(false, comm, 1, 1, 1, 1); //initial assert Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.repeat, false); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act object output = testProcess.run(); //assert Assert.AreEqual(testProcess.repeat, false); Assert.AreEqual(testProcess.queue, LogicQueue.last); Assert.IsInstanceOfType(output, typeof(LogicProcess)); Assert.AreEqual(testProcess.currIndex, 0); }
public void SellTestFullProcess() { //arrange MBuySell sell = new MBuySell(); sell.id = "666"; MQReq query = new MQReq(); MQCommodity market = new MQCommodity(); market.bid = "1"; MarketException excp = new MarketException(); //create valid user query response MQUser user = new MQUser(); user.commodities = new Dictionary <String, int>(); user.commodities.Add("1", 3); int test = user.commodities["1"]; CommStubStaticReturn comm = new CommStubStaticReturn(null, sell, null, excp, market, user, null, null); SellProcess testProcess = new SellProcess(true, comm, 1, 1, 1, 1); //initial assert Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act1 object output = testProcess.run(); //assert1 Assert.AreEqual(testProcess.currIndex, 1); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act2 output = testProcess.run(); //assert2 Assert.AreEqual(testProcess.currIndex, 2); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act3 output = testProcess.run(); //assert3 Assert.AreEqual(testProcess.currIndex, 3); Assert.AreEqual(testProcess.queue, LogicQueue.first); //act4 output = testProcess.run(); //assert4 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); //update communicator stub comm = new CommStubStaticReturn(null, sell, null, query, market, user, null, null); testProcess.comm = comm; //act5 output = testProcess.run(); //assert5 Assert.AreEqual(testProcess.currIndex, 0); Assert.AreEqual(testProcess.queue, LogicQueue.last); }
//public DataSet GetListSellInDetail() //{ //} /// <summary> /// 得到一个对象实体 /// </summary> //public Sell GetModel(int Sell_ID) //{ // StringBuilder strSql = new StringBuilder(); // strSql.Append("select top 1 Sell_ID,Sell_Code,Sell_Type,Sell_Date,Sell_TransportType,Sell_Review,Sell_ChangeDate,Sell_Operation,Sell_Auditman,Sell_Remark,Sell_Satetyone,Sell_Satetytwo,Sell_Clear from T_Sell "); // strSql.Append(" where Sell_ID=@Sell_ID"); // SqlParameter[] parameters = { // new SqlParameter("@Sell_ID", SqlDbType.Int,4) // }; // parameters[0].Value = Sell_ID; // Sell model = new Sell(); // DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); // if (ds.Tables[0].Rows.Count > 0) // { // return DataRowToModel(ds.Tables[0].Rows[0]); // } // else // { // return null; // } //} public void SaveSellOdd(Sell sell, List <SellDetail> sdl, SellProcess sp, bool inStock) { StringBuilder strSql = new StringBuilder(); Hashtable hashtable = new Hashtable(); //销售主表操作 strSql.Append("insert into T_Sell("); strSql.Append("Sell_Code,Sell_Type,Sell_Date,Sell_TransportType,Sell_Review,Sell_ChangeDate,Sell_Operation,Sell_Auditman,Sell_Remark,Sell_Satetyone,Sell_Satetytwo,"); strSql.Append("Sell_IsPay,Sell_IsPutSto,Sell_PayMathod,Sell_GetDate,Sell_Logistics,Sell_LogCode,Sell_LogPhone,Sell_Clear,Sell_OddMoney,Sell_AccountCode,Sell_InMoney,Sell_LastMoney,Sell_Address,Sell_ClientName,Sell_CliPhone,Sell_Salesman,Sell_LinkMan,Sell_OddStatus,Sell_jiajiState,Sell_zuiwanshijian,Sell_fukuanfangshi)"); strSql.Append(" values ("); strSql.Append("@Sell_Code,@Sell_Type,@Sell_Date,@Sell_TransportType,@Sell_Review,@Sell_ChangeDate,@Sell_Operation,@Sell_Auditman,@Sell_Remark,@Sell_Satetyone,@Sell_Satetytwo,"); strSql.Append("@Sell_IsPay,@Sell_IsPutSto,@Sell_PayMathod,@Sell_GetDate,@Sell_Logistics,@Sell_LogCode,@Sell_LogPhone,@Sell_Clear,@Sell_OddMoney,@Sell_AccountCode,@Sell_InMoney,@Sell_LastMoney,@Sell_Address,@Sell_ClientName,@Sell_CliPhone,@Sell_Salesman,@Sell_LinkMan,@Sell_OddStatus,@Sell_jiajiState,@Sell_zuiwanshijian,@Sell_fukuanfangshi)"); SqlParameter[] parameters = { new SqlParameter("@Sell_Code", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Type", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Date", SqlDbType.DateTime), new SqlParameter("@Sell_TransportType", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Review", SqlDbType.Int, 4), new SqlParameter("@Sell_ChangeDate", SqlDbType.DateTime), new SqlParameter("@Sell_Operation", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Auditman", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Remark", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Satetyone", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Satetytwo", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_IsPay", SqlDbType.Int, 4), new SqlParameter("@Sell_IsPutSto", SqlDbType.Int, 4), new SqlParameter("@Sell_PayMathod", SqlDbType.Int, 4), new SqlParameter("@Sell_GetDate", SqlDbType.DateTime), new SqlParameter("@Sell_Logistics", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_LogCode", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_LogPhone", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Clear", SqlDbType.Int, 4), new SqlParameter("@Sell_OddMoney", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_AccountCode", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_InMoney", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_LastMoney", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Address", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_ClientName", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_CliPhone", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Salesman", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_LinkMan", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_OddStatus", SqlDbType.Int, 4), new SqlParameter("@Sell_jiajiState", SqlDbType.Int, 4), new SqlParameter("@Sell_zuiwanshijian", SqlDbType.DateTime), new SqlParameter("@Sell_fukuanfangshi", SqlDbType.NVarChar, 512) }; parameters[0].Value = sell.Sell_Code; parameters[1].Value = sell.Sell_Type; parameters[2].Value = sell.Sell_Date; parameters[3].Value = sell.Sell_TransportType; parameters[4].Value = sell.Sell_Review; parameters[5].Value = sell.Sell_ChangeDate; parameters[6].Value = sell.Sell_Operation; parameters[7].Value = sell.Sell_Auditman; parameters[8].Value = sell.Sell_Remark; parameters[9].Value = sell.Sell_Satetyone; parameters[10].Value = sell.Sell_Satetytwo; parameters[11].Value = sell.Sell_IsPay; parameters[12].Value = sell.Sell_IsPutSto; parameters[13].Value = sell.Sell_PayMathod; parameters[14].Value = sell.Sell_GetDate; parameters[15].Value = sell.Sell_Logistics; parameters[16].Value = sell.Sell_LogCode; parameters[17].Value = sell.Sell_LogPhone; parameters[18].Value = sell.Sell_Clear; parameters[19].Value = sell.Sell_OddMoney; parameters[20].Value = sell.Sell_AccountCode; parameters[21].Value = sell.Sell_InMoney; parameters[22].Value = sell.Sell_LastMoney; parameters[23].Value = sell.Sell_Address; parameters[24].Value = sell.Sell_ClientName; parameters[25].Value = sell.Sell_CliPhone; parameters[26].Value = sell.Sell_Salesman; parameters[27].Value = sell.Sell_LinkMan; parameters[28].Value = sell.Sell_OddStatus; parameters[29].Value = sell.Sell_jiajiState; parameters[30].Value = sell.Sell_zuiwanshijian; parameters[31].Value = sell.Sell_fukuanfangshi; //添加到列表中 hashtable.Add(strSql.ToString(), parameters); //销售明细表操作 string moresqlstr = ""; //该sql将插入多行 List <SqlParameter[]> paraList = new List <SqlParameter[]>(); //多行的值参数列表 strSql = new StringBuilder(); strSql.Append("insert into T_SellDetail("); strSql.Append("Sell_Code,Sell_StockCode,Sell_StockName,Sell_LineCode,Sell_MaID,Sell_MaName,Sell_Model,Sell_Unit,Sell_CurNumber,"); strSql.Append("Sell_ReNumber,Sell_LostNumber,Sell_DiscountAPrice,Sell_Discount,Sell_DiscountBPrice,Sell_Money,Sell_Clear,Sell_Safetyone,Sell_Safetytwo,Sell_Remark)"); strSql.Append(" values ("); strSql.Append("@Sell_Code,@Sell_StockCode,@Sell_StockName,@Sell_LineCode,@Sell_MaID,@Sell_MaName,@Sell_Model,@Sell_Unit,@Sell_CurNumber,"); strSql.Append("@Sell_ReNumber,@Sell_LostNumber,@Sell_DiscountAPrice,@Sell_Discount,@Sell_DiscountBPrice,@Sell_Money,@Sell_Clear,@Sell_Safetyone,@Sell_Safetytwo,@Sell_Remark)"); moresqlstr = strSql.ToString(); foreach (var sd in sdl) { SqlParameter[] parametersDetail = { new SqlParameter("@Sell_Code", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_StockCode", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_StockName", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_LineCode", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_MaID", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_MaName", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Model", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Unit", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_CurNumber", SqlDbType.Decimal), new SqlParameter("@Sell_ReNumber", SqlDbType.Decimal), new SqlParameter("@Sell_LostNumber", SqlDbType.Decimal), new SqlParameter("@Sell_DiscountAPrice", SqlDbType.Decimal), new SqlParameter("@Sell_Discount", SqlDbType.Decimal), new SqlParameter("@Sell_DiscountBPrice", SqlDbType.Decimal), new SqlParameter("@Sell_Money", SqlDbType.Decimal), new SqlParameter("@Sell_Clear", SqlDbType.Int, 4), new SqlParameter("@Sell_Safetyone", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Safetytwo", SqlDbType.NVarChar, 512), new SqlParameter("@Sell_Remark", SqlDbType.NVarChar, 1024) }; parametersDetail[0].Value = sd.Sell_Code; parametersDetail[1].Value = sd.Sell_StockCode; parametersDetail[2].Value = sd.Sell_StockName; parametersDetail[3].Value = sd.Sell_LineCode; parametersDetail[4].Value = sd.Sell_MaID; parametersDetail[5].Value = sd.Sell_MaName; parametersDetail[6].Value = sd.Sell_Model; parametersDetail[7].Value = sd.Sell_Unit; parametersDetail[8].Value = sd.Sell_CurNumber; parametersDetail[9].Value = sd.Sell_ReNumber; parametersDetail[10].Value = sd.Sell_LostNumber; parametersDetail[11].Value = sd.Sell_DiscountAPrice; parametersDetail[12].Value = sd.Sell_Discount; parametersDetail[13].Value = sd.Sell_DiscountBPrice; parametersDetail[14].Value = sd.Sell_Money; parametersDetail[15].Value = sd.Sell_Clear; parametersDetail[16].Value = sd.Sell_Safetyone; parametersDetail[17].Value = sd.Sell_Safetytwo; parametersDetail[18].Value = sd.Sell_Remark; //添加到列表中 paraList.Add(parametersDetail); } //操作过程表操作 strSql = new StringBuilder(); strSql.Append("insert into T_SellProcess("); strSql.Append("SP_Code,SP_SellLineno,SP_Datetime,SP_Opt,SP_Ope,SP_Remark,SP_Clear )"); strSql.Append(" values ("); strSql.Append("@SP_Code,@SP_SellLineno,@SP_Datetime,@SP_Opt,@SP_Ope,@SP_Remark,@SP_Clear)"); SqlParameter[] parametersProcess = { new SqlParameter("@SP_Code", SqlDbType.NVarChar, 512), new SqlParameter("@SP_SellLineno", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Datetime", SqlDbType.DateTime), new SqlParameter("@SP_Opt", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Ope", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Remark", SqlDbType.NVarChar, 512), new SqlParameter("@SP_Clear", SqlDbType.NVarChar, 512) }; parametersProcess[0].Value = sp.Sp_Code; parametersProcess[1].Value = sp.Sp_SellLineno; parametersProcess[2].Value = sp.Sp_Datetime; parametersProcess[3].Value = sp.Sp_Opt; parametersProcess[4].Value = sp.Sp_Ope; parametersProcess[5].Value = sp.Sp_Remark; parametersProcess[6].Value = sp.Sp_Clear; //添加到列表中 hashtable.Add(strSql.ToString(), parametersProcess); if (inStock) { //入库单生成 } DbHelperSQL.ExecuteSqlTran(hashtable, moresqlstr, paraList); }