Ejemplo n.º 1
0
        public int addTran(VAN_OA.Model.EFrom.TB_UseCarDetail model, VAN_OA.Model.EFrom.tb_EForm eform)
        {
            int id = 0;

            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    model.State = eform.state;
                    tb_EFormService eformSer = new tb_EFormService();
                    objCommand.Parameters.Clear();
                    string proNo = eformSer.GetAllE_No("TB_UseCarDetail", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    id = Add(model, objCommand);


                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 2
0
        public int addTran(VAN_OA.Model.JXC.CAI_OrderInHouse model, VAN_OA.Model.EFrom.tb_EForm eform, List <CAI_OrderInHouses> orders, SqlCommand objCommand)
        {
            int id = 0;


            CAI_OrderInHousesService OrdersSer = new CAI_OrderInHousesService();

            TB_HouseGoodsService houseGoodsSer = new TB_HouseGoodsService();

            objCommand.Parameters.Clear();
            tb_EFormService eformSer = new tb_EFormService();
            string          proNo    = eformSer.GetAllE_No("CAI_OrderInHouse", objCommand);

            model.ProNo = proNo;
            eform.E_No  = proNo;

            model.Status = eform.state;
            id           = Add(model, objCommand);


            eform.allE_id = id;
            eformSer.Add(eform, objCommand);
            for (int i = 0; i < orders.Count; i++)
            {
                orders[i].id  = id;
                orders[i].Ids = OrdersSer.Add(orders[i], objCommand);

                if (eform.state == "通过")
                {
                    houseGoodsSer.InHouse(model.HouseID, orders[i].GooId, orders[i].GoodNum, orders[i].GoodPrice, objCommand);
                }
            }

            return(id);
        }
Ejemplo n.º 3
0
        public bool updateTran(VAN_OA.Model.EFrom.TB_UseCarDetail model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    model.State = eform.state;
                    objCommand.Parameters.Clear();
                    Update(model, objCommand);


                    tb_EFormService eformSer = new tb_EFormService();

                    eformSer.Update(eform, objCommand);


                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 4
0
        public bool updateTran(VAN_OA.Model.EFrom.TB_UseCarDetail model, VAN_OA.Model.EFrom.tb_EForm eform)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    model.State = eform.state;
                    objCommand.Parameters.Clear();
                    Update(model, objCommand);
                    string updateEform = string.Format("update  tb_EForm set toPer={0} where id={1}", eform.toPer, eform.id);
                    objCommand.CommandText = updateEform;
                    objCommand.ExecuteNonQuery();

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 5
0
        public bool updateTran(TB_ToInvoice model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    model.State = eform.state;
                    objCommand.Parameters.Clear();
                    model.UpAccount = accountXishu(model, eform, objCommand);
                    Update(model, objCommand);

                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);
                    //判断是否是删除 -到款单删除
                    if (eform.proId == 38 && eform.state == "通过")
                    {
                        //及到款单删除会有两个层面,
                        //1,预付款模式,这时只需要在审批的最后一个流程总经理点确定时,删除相应的到款单;并弹出一个提示框,该预付到款单已删除,点确定,完成。
                        //2,发票到款模式,我们需要在最后一个审批流程点确定时,删除相应项目编号针对该发票号的发票签回单(如果有在审批执行中或已完成审批的),再删除该项目编号针对该发票号的到款单,
                        //并弹出一个提示框,该发票到款单已删除,点确定,完成。
                        if (model.BusType == 0)//实际发票到款
                        {
                            //删除发票签回单(如果有)
                            string deleteFPBack = string.Format("delete tb_EForms where e_Id in (select id from tb_EForm where proId=29 and allE_id in (select id from Sell_OrderFPBack where PId={0}));", model.FPId);
                            deleteFPBack += string.Format("delete tb_EForm where proId=29 and allE_id in (select id from Sell_OrderFPBack where PId={0});", model.FPId);
                            deleteFPBack += string.Format("delete Sell_OrderFPBacks  where Id in (select id from Sell_OrderFPBack where PId={0});delete Sell_OrderFPBack  where PId={0};", model.FPId);

                            objCommand.CommandText = deleteFPBack;
                            objCommand.ExecuteNonQuery();
                        }

                        //删除发票删除单 审批流
                        string deleteFPDelete = string.Format("delete tb_EForms where e_Id in (select id from tb_EForm where proId in (26,34,37) and allE_id={0});", model.Id);
                        deleteFPDelete        += string.Format("delete tb_EForm where proId in (27,38) and allE_id={0};", model.Id);
                        objCommand.CommandText = deleteFPDelete;
                        objCommand.ExecuteNonQuery();

                        string DeleteAll = string.Format("delete from [TB_ToInvoice] where id={0};", model.Id);
                        objCommand.CommandText = DeleteAll;
                        objCommand.ExecuteNonQuery();
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 6
0
        public int addTran(VAN_OA.Model.JXC.Sell_OrderOutHouse model, VAN_OA.Model.EFrom.tb_EForm eform, List <Sell_OrderOutHouses> orders, out int MainId)
        {
            decimal total = 0;

            for (int i = 0; i < orders.Count; i++)
            {
                total += orders[i].GoodSellPriceTotal;
            }
            model.SellTotal = total;

            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                Sell_OrderOutHousesService OrdersSer = new Sell_OrderOutHousesService();

                TB_HouseGoodsService houseGoodsSer = new TB_HouseGoodsService();
                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("Sell_OrderOutHouse", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    model.Status = eform.state;
                    id           = Add(model, objCommand);
                    MainId       = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].id = id;
                        OrdersSer.Add(orders[i], objCommand);

                        if (eform.state == "通过")
                        {
                            houseGoodsSer.OutHouse(orders[i].HouseID, orders[i].GooId, orders[i].GoodNum, orders[i].GoodPrice, objCommand);
                        }
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 7
0
        public bool updateTran(VAN_OA.Model.JXC.TB_SupplierAdvancePayment model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <SupplierToInvoiceView> orders, string IDS)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    objCommand.Parameters.Clear();
                    model.Status = eform.state;
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);

                    TB_SupplierAdvancePaymentsService OrdersSer = new TB_SupplierAdvancePaymentsService();
                    for (int i = 0; i < orders.Count; i++)
                    {
                        if (orders[i].IfCheck == false)
                        {
                            continue;
                        }
                        var modelSupplierInvoices = new TB_SupplierAdvancePayments();
                        modelSupplierInvoices.Ids                  = orders[i].payIds;
                        modelSupplierInvoices.Id                   = model.Id;
                        modelSupplierInvoices.CaiIds               = orders[i].Ids;
                        modelSupplierInvoices.SupplierFPNo         = orders[i].SupplierFPNo;
                        modelSupplierInvoices.SupplierInvoiceDate  = orders[i].SupplierInvoiceDate.Value;
                        modelSupplierInvoices.SupplierInvoiceNum   = orders[i].SupplierInvoiceNum;
                        modelSupplierInvoices.SupplierInvoicePrice = orders[i].SupplierInvoicePrice;
                        modelSupplierInvoices.SupplierInvoiceTotal = orders[i].SupplierInvoiceTotal;
                        if (eform.state == "通过" && (orders[i].SupplierProNo == null || orders[i].SupplierProNo == ""))
                        {
                            modelSupplierInvoices.SupplierProNo = GetAllE_No("TB_SupplierAdvancePayments", objCommand);
                        }
                        OrdersSer.Update(modelSupplierInvoices, objCommand);
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 8
0
        public bool updateTran(VAN_OA.Model.EFrom.Tb_ProjectInv model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <Tb_ProjectInvs> proInvs, string IDS)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;


                Tb_ProjectInvsService prosInvsSer = new Tb_ProjectInvsService();
                try
                {
                    objCommand.Parameters.Clear();
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);


                    for (int i = 0; i < proInvs.Count; i++)
                    {
                        proInvs[i].PId = model.Id;

                        if (proInvs[i].IfUpdate == true && proInvs[i].Id != 0)
                        {
                            prosInvsSer.Update(proInvs[i], objCommand);
                        }
                        else if (proInvs[i].Id == 0)
                        {
                            prosInvsSer.Add(proInvs[i], objCommand);
                        }
                    }
                    if (IDS != "")
                    {
                        IDS = IDS.Substring(0, IDS.Length - 1);
                        prosInvsSer.DeleteByIds(IDS, objCommand);
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 9
0
        public bool updateTran(VAN_OA.Model.JXC.Sell_OrderOutHouseBack model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <Sell_OrderOutHouseBacks> orders, string IDS)
        {
            decimal total = 0;

            for (int i = 0; i < orders.Count; i++)
            {
                total += orders[i].GoodSellPriceTotal;
            }
            model.SellTotal = total;

            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;

                Sell_OrderOutHouseBacksService OrdersSer = new Sell_OrderOutHouseBacksService();
                try
                {
                    objCommand.Parameters.Clear();
                    model.Status = eform.state;
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);

                    //====删除所有子单据
                    string delete = "delete from Sell_OrderOutHouseBacks where id=" + model.Id;
                    objCommand.CommandText = delete;
                    objCommand.ExecuteNonQuery();
                    //====

                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].id = model.Id;
                        OrdersSer.Add(orders[i], objCommand);
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 10
0
        public int addTran(VAN_OA.Model.EFrom.tb_FundsUse model, VAN_OA.Model.EFrom.tb_EForm eform, out int MainId)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("tb_FundsUse", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    model.State = eform.state;
                    id          = Add(model, objCommand);
                    MainId      = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    if (eform.state == "通过")
                    {
                        string[] nos = model.HouseNo.Split('/');
                        if (nos.Length > 0)
                        {
                            string sql = string.Format("update CAI_OrderInHouse set FPNo='{0}' where ProNo in (", model.Invoce);
                            foreach (var no in nos)
                            {
                                sql += string.Format(" {0}", no);
                            }
                            sql += ")";

                            objCommand.CommandText = sql;
                            objCommand.ExecuteNonQuery();
                        }
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 11
0
        public int addTran(VAN_OA.Model.JXC.Sell_OrderFPBack model, VAN_OA.Model.EFrom.tb_EForm eform, List <Sell_OrderFPBacks> orders, out int MainId)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                Sell_OrderFPBacksService OrdersSer = new Sell_OrderFPBacksService();


                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("Sell_OrderFPBack", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    decimal total = 0;
                    foreach (var m in orders)
                    {
                        total += m.GoodSellPriceTotal;
                    }
                    model.Total  = total;
                    model.Status = eform.state;
                    id           = Add(model, objCommand);
                    MainId       = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);


                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].id = id;
                        OrdersSer.Add(orders[i], objCommand);
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 12
0
        public int addTran(VAN_OA.Model.EFrom.Tb_ExpInv model, VAN_OA.Model.EFrom.tb_EForm eform, List <Tb_ExpInvs> proInvs)
        {
            int id     = 0;
            int MainId = 0;

            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                Tb_ExpInvsService proInvsSer = new Tb_ExpInvsService();
                try
                {
                    tb_EFormService eformSer = new tb_EFormService();
                    objCommand.Parameters.Clear();
                    string proNo = eformSer.GetAllE_No("Tb_ExpInv", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    id     = Add(model, objCommand);
                    MainId = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    for (int i = 0; i < proInvs.Count; i++)
                    {
                        proInvs[i].PId = id;
                        proInvsSer.Add(proInvs[i], objCommand);
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 13
0
        private decimal accountXishu(TB_ToInvoice model, VAN_OA.Model.EFrom.tb_EForm eform, SqlCommand objCommand)
        {
            if (eform.state == "通过")
            {
                string sql = string.Format(@"declare @cou int;
                                        declare @lastDate datetime;
                                        select @cou=COUNT(*) from TB_ToInvoice where FPId={2};
                                        if (@cou=0)
                                        begin  
                                        select @lastDate=DaoKuanDate from TB_ToInvoice where State='通过' and PoNo='{0}' and Id<>{1} order by DaoKuanDate
                                        end
                                        select @lastDate;", model.PoNo, model.Id, model.FPId);
                objCommand.CommandText = sql;
                object objdate = objCommand.ExecuteScalar();

                //查找第一次销售出库日期

                sql = string.Format("select  top 1 rutime from Sell_OrderOutHouse where pono='{0}' order by rutime ", model.PoNo);
                objCommand.CommandText = sql;
                DateTime sellDate = Convert.ToDateTime(objCommand.ExecuteScalar());

                DateTime fristDate = DateTime.Now;
                if (objdate is DBNull)
                {
                    fristDate = model.DaoKuanDate;
                }
                else
                {
                    fristDate = Convert.ToDateTime(objdate);
                }
                TimeSpan ts = fristDate - sellDate;
                sql = string.Format("select top 1 accountXishu from TB_AccountPeriod where  accountName<={0}  order by accountName desc", ts.Days);
                objCommand.CommandText = sql;
                decimal accountXishu = Convert.ToDecimal(objCommand.ExecuteScalar());
                return(accountXishu);
            }
            return(0);
        }
Ejemplo n.º 14
0
        public int addTran(VAN_OA.Model.JXC.Sell_OrderFP model, VAN_OA.Model.EFrom.tb_EForm eform, List <Sell_OrderFPs> orders, out int MainId)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                Sell_OrderFPsService OrdersSer = new Sell_OrderFPsService();


                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("Sell_OrderFP", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    decimal total = 0;
                    foreach (var m in orders)
                    {
                        total += m.GoodSellPriceTotal;
                    }
                    model.Total  = total;
                    model.Status = eform.state;

                    //
                    TB_ToInvoiceService invoiceSer = new TB_ToInvoiceService();
                    model.ZhuanPayTotal = invoiceSer.GetPayTotal(model.PONo, model.Total);


                    id     = Add(model, objCommand);
                    MainId = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);

                    System.Collections.Hashtable hs = new System.Collections.Hashtable();
                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].id = id;
                        OrdersSer.Add(orders[i], objCommand);
                        if (eform.state == "通过")
                        {
                            if (!hs.Contains(orders[i].SellOutPONO))
                            {
                                hs.Add(orders[i].SellOutPONO, null);
                            }
                        }
                    }


                    foreach (var key in hs.Keys)
                    {
                        //更改销售订单的发票号
                        //string sql = string.Format("update Sell_OrderOutHouse set FPNo=FPNo+'{0}/' where ProNo='{1}'", model.FPNo, key);
                        //objCommand.CommandText = sql;
                        //objCommand.ExecuteNonQuery();


                        //更改项目订单的发票号
                        string sql = string.Format("update CG_POOrder set FPTotal=isnull(FPTotal,'')+'{0}/' where PONo='{1}' and ifzhui=0 ", model.FPNo, model.PONo);
                        objCommand.CommandText = sql;
                        objCommand.ExecuteNonQuery();
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 15
0
        public bool updateTran(VAN_OA.Model.JXC.Sell_OrderFP model, VAN_OA.Model.EFrom.tb_EForm eform,
                               tb_EForms forms, List <Sell_OrderFPs> orders, string IDS, bool isBackUp, bool isBackUpInvoice)
        {
            //判断是否是删除 -销售发票删除
            if (eform.proId == 37)
            {
                using (SqlConnection conn = DBHelp.getConn())
                {
                    conn.Open();
                    SqlTransaction tan        = conn.BeginTransaction();
                    SqlCommand     objCommand = conn.CreateCommand();
                    objCommand.Transaction = tan;
                    try
                    {
                        objCommand.Parameters.Clear();
                        model.Status = eform.state;
                        if (eform.state == "不通过")
                        {
                            model.Status = "通过";
                        }
                        UpdateToDelete(model, objCommand);
                        tb_EFormService eformSer = new tb_EFormService();
                        eformSer.Update(eform, objCommand, isBackUp);
                        tb_EFormsService eformsSer = new tb_EFormsService();
                        eformsSer.Add(forms, objCommand);

                        if (eform.state == "通过")
                        {
                            //删除发票签回单(如果有)
                            string deleteFPBack = string.Format("delete tb_EForms where e_Id in (select id from tb_EForm where proId=29 and allE_id in (select id from Sell_OrderFPBack where PId={0}));", model.Id);
                            deleteFPBack += string.Format("delete tb_EForm where proId=29 and allE_id in (select id from Sell_OrderFPBack where PId={0});", model.Id);
                            deleteFPBack += string.Format("delete Sell_OrderFPBacks  where Id in (select id from Sell_OrderFPBack where PId={0});delete Sell_OrderFPBack  where PId={0};", model.Id);

                            objCommand.CommandText = deleteFPBack;
                            objCommand.ExecuteNonQuery();

                            //删除发票删除单
                            string deleteFPDelete = string.Format("delete tb_EForms where e_Id in (select id from tb_EForm where proId in (26,34,37) and allE_id={0});", model.Id);
                            deleteFPDelete        += string.Format("delete tb_EForm where proId in (26,34,37) and allE_id={0};", model.Id);
                            objCommand.CommandText = deleteFPDelete;
                            objCommand.ExecuteNonQuery();

                            //删除发票单
                            string DeleteAll = string.Format(@"declare @oldFPNo  varchar(500);declare @oldPONo  varchar(500);
select top 1  @oldFPNo=FPNo,@oldPONo=PONo from Sell_OrderFP where id={0}
update  CG_POOrder set FPTotal=replace( FPTotal, @oldFPNo+'/','')
where PONo  in (select PONo from Sell_OrderFP where id={0}) and ifzhui=0;", model.Id);

                            Dal.EFrom.tb_EFormService efromSer = new VAN_OA.Dal.EFrom.tb_EFormService();
                            //var efromModel = efromSer.GetModel(Convert.ToInt32(model.Id));
                            //if (efromModel.state == "通过")
                            //{
                            DeleteAll += "update CG_POOrder set POStatue3='' where PONo=@oldPONo;";
                            //}

                            DeleteAll += string.Format("delete from Sell_OrderFP where id={0};delete from Sell_OrderFPs where id={0}; ", model.Id);

                            objCommand.CommandText = DeleteAll;
                            objCommand.ExecuteNonQuery();
                        }
                        tan.Commit();
                    }
                    catch (Exception)
                    {
                        tan.Rollback();
                        return(false);
                    }
                }
                if (eform.state == "通过")
                {
                    new Sell_OrderFPBackService().SellFPOrderBackUpdatePoStatus(model.PONo);
                    new VAN_OA.Dal.JXC.CG_POOrdersService().GetListArrayToFpsAndUpdatePoStatue(model.PONo, "通过");
                }
            }
            else
            {
                using (SqlConnection conn = DBHelp.getConn())
                {
                    conn.Open();
                    SqlTransaction tan        = conn.BeginTransaction();
                    SqlCommand     objCommand = conn.CreateCommand();
                    objCommand.Transaction = tan;

                    string backUpPoNos = "";
                    if (isBackUp)
                    {
                        BackUpFPInfoService backUpSer = new BackUpFPInfoService();
                        backUpPoNos = backUpSer.BackUp(model.Id, objCommand);
                    }
                    //最后进行 删除 到款单 ,以及发票签回单& 备份
                    if (isBackUpInvoice && eform.state == "通过")
                    {
                        BackUpFPInfoService backUpSer = new BackUpFPInfoService();
                        backUpPoNos = backUpSer.BackUpOthers(model.Id, objCommand, model.InvoiceNowGuid);
                    }
                    //CG_POOrdersService OrdersSer = new CG_POOrdersService();
                    //CG_POCaiService CaiSer = new CG_POCaiService();
                    try
                    {
                        decimal total = 0;
                        foreach (var m in orders)
                        {
                            total += m.GoodSellPriceTotal;
                        }
                        model.Total = total;
                        System.Collections.Hashtable hs = new System.Collections.Hashtable();
                        objCommand.Parameters.Clear();
                        model.Status = eform.state;
                        Update(model, objCommand);
                        tb_EFormService eformSer = new tb_EFormService();
                        eformSer.Update(eform, objCommand, isBackUp);
                        tb_EFormsService eformsSer = new tb_EFormsService();
                        eformsSer.Add(forms, objCommand);
                        TB_HouseGoodsService houseGoodsSer = new TB_HouseGoodsService();
                        Sell_OrderFPsService OrdersSer     = new Sell_OrderFPsService();
                        if (isBackUp)
                        {
                            //删除之前的数据
                            objCommand.CommandText = string.Format("delete from Sell_OrderFPs where id=" + model.Id);
                            objCommand.ExecuteNonQuery();

                            for (int i = 0; i < orders.Count; i++)
                            {
                                orders[i].id = model.Id;
                                OrdersSer.Add(orders[i], objCommand);

                                if (eform.state == "通过")
                                {
                                    if (!hs.Contains(orders[i].SellOutOrderId))
                                    {
                                        hs.Add(orders[i].SellOutOrderId, null);
                                    }
                                }
                            }
                        }


                        //foreach (var key in hs.Keys)
                        //{
                        //    //更改销售订单的发票号
                        //    string sql = string.Format("update Sell_OrderOutHouse set FPNo=FPNo+'{0}/' where ProNo='{1}'", model.FPNo, key);
                        //    objCommand.CommandText = sql;
                        //    objCommand.ExecuteNonQuery();
                        if (eform.state == "通过")
                        {
                            //更改项目订单的发票号
                            string sql = string.Format("update CG_POOrder set FPTotal=isnull(FPTotal,'')+'{0}/' where PONo='{1}' and ifzhui=0 ", model.FPNo, model.PONo);
                            objCommand.CommandText = sql;
                            objCommand.ExecuteNonQuery();
                        }
                        //}

                        //for (int i = 0; i < orders.Count; i++)
                        //{
                        //    orders[i].Id = model.Id;
                        //    //if (orders[i].IfUpdate == true && orders[i].Ids != 0)
                        //    //{

                        //        OrdersSer.Update(orders[i], objCommand);

                        //    //}
                        //    //else if (orders[i].Ids == 0)
                        //    //{
                        //    //    OrdersSer.Add(orders[i], objCommand);

                        //    //}
                        //}
                        //if (IDS != "")
                        //{
                        //    IDS  = IDS.Substring(0, IDS.Length - 1);
                        //    OrdersSer.DeleteByIds(IDS, objCommand);
                        //}


                        tan.Commit();


                        if (backUpPoNos != "")
                        {
                            foreach (string pono in backUpPoNos.Split(','))
                            {
                                if (!string.IsNullOrEmpty(pono))
                                {
                                    new Sell_OrderFPBackService().SellFPOrderBackUpdatePoStatus(pono);
                                    new CG_POOrderService().GetOrder_ToInvoiceAndUpdatePoStatus(pono);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        tan.Rollback();
                        return(false);
                    }
                }
            }
            return(true);
        }
Ejemplo n.º 16
0
        public bool updateTran(VAN_OA.Model.JXC.CAI_POOrder model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <CAI_POOrders> orders, string IDS,
                               List <CAI_POCai> Cais, string CAI_IDS)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;

                CAI_POOrdersService OrdersSer = new CAI_POOrdersService();
                CAI_POCaiService    CaiSer    = new CAI_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();
                    model.Status = eform.state;
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);


                    //for (int i = 0; i < orders.Count; i++)
                    //{
                    //    orders[i].Id = model.Id;
                    //    //if (orders[i].IfUpdate == true && orders[i].Ids != 0)
                    //    //{

                    //        OrdersSer.Update(orders[i], objCommand);

                    //    //}
                    //    //else if (orders[i].Ids == 0)
                    //    //{
                    //    //    OrdersSer.Add(orders[i], objCommand);

                    //    //}
                    //}
                    //if (IDS != "")
                    //{
                    //    IDS  = IDS.Substring(0, IDS.Length - 1);
                    //    OrdersSer.DeleteByIds(IDS, objCommand);
                    //}



                    #region 采购
                    for (int i = 0; i < Cais.Count; i++)
                    {
                        Cais[i].Id = model.Id;
                        if (Cais[i].IfUpdate == true && Cais[i].Ids != 0)
                        {
                            CaiSer.Update(Cais[i], objCommand);
                        }
                        else if (Cais[i].Ids == 0)
                        {
                            CaiSer.Add(Cais[i], objCommand);
                        }
                    }
                    //if (CAI_IDS != "")
                    //{
                    //    CAI_IDS = CAI_IDS.Substring(0, CAI_IDS.Length - 1);
                    //    CaiSer.DeleteByIds(CAI_IDS, objCommand);
                    //}
                    #endregion


                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 17
0
        public int addTran(VAN_OA.Model.JXC.CAI_POOrder model, VAN_OA.Model.EFrom.tb_EForm eform, List <CAI_POOrders> orders, List <CAI_POCai> caiOrders, out int MainId, bool isCopy = false)
        {
            CG_POCaiService poCaiSer = new CG_POCaiService();
            var             caiList  = poCaiSer.GetCaiList(model.CG_ProNo);
            int             id       = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                CAI_POOrdersService OrdersSer = new CAI_POOrdersService();

                CAI_POCaiService caiSer = new CAI_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("CAI_POOrder", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    model.Status = eform.state;
                    id           = Add(model, objCommand);
                    MainId       = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].Id = id;

                        OrdersSer.Add(orders[i], objCommand);

                        if (isCopy == false)
                        {
                            CAI_POCai cai = new CAI_POCai();
                            cai.GuestName = orders[i].GuestName;
                            cai.Num       = orders[i].Num;
                            cai.InvName   = orders[i].InvName;
                            cai.Id        = id;
                            cai.GoodId    = orders[i].GoodId;

                            var pocaiModel = caiList.Find(p => p.GoodId == orders[i].GoodId);
                            if (pocaiModel != null)
                            {
                                cai.FinPrice1    = pocaiModel.FinPrice1;
                                cai.FinPrice2    = pocaiModel.FinPrice2;
                                cai.FinPrice3    = pocaiModel.FinPrice3;
                                cai.SupperPrice  = pocaiModel.SupperPrice;
                                cai.SupperPrice1 = pocaiModel.SupperPrice1;
                                cai.SupperPrice2 = pocaiModel.SupperPrice2;
                                cai.Supplier     = pocaiModel.Supplier;
                                cai.Supplier1    = pocaiModel.Supplier1;
                                cai.Supplier2    = pocaiModel.Supplier2;
                            }
                            caiSer.Add(cai, objCommand);
                        }
                        else
                        {
                            var pocaiModel = caiOrders.Find(p => p.GoodId == orders[i].GoodId);
                            pocaiModel.GuestName = orders[i].GuestName;
                            pocaiModel.Num       = orders[i].Num;
                            pocaiModel.InvName   = orders[i].InvName;
                            pocaiModel.Id        = id;
                            caiSer.Add(pocaiModel, objCommand);
                        }
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 18
0
        public bool updateTran(VAN_OA.Model.JXC.Sell_OrderInHouse model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <Sell_OrderInHouses> orders, string IDS)
        {
            decimal total = 0;

            for (int i = 0; i < orders.Count; i++)
            {
                total += orders[i].GoodSellPriceTotal;
            }
            model.TuiTotal = total;

            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                Sell_OrderInHousesService OrdersSer = new Sell_OrderInHousesService();
                //CG_POOrdersService OrdersSer = new CG_POOrdersService();
                //CG_POCaiService CaiSer = new CG_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();
                    model.Status = eform.state;
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);
                    TB_HouseGoodsService houseGoodsSer = new TB_HouseGoodsService();

                    for (int i = 0; i < orders.Count; i++)
                    {
                        if (orders[i].GoodPriceSecond != 0)
                        {
                            orders[i].id = model.Id;


                            OrdersSer.Update(orders[i], objCommand);
                        }

                        //else if (orders[i].Ids == 0)
                        //{
                        //    OrdersSer.Add(orders[i], objCommand);

                        //}
                    }
                    //if (IDS != "")
                    //{
                    //    IDS  = IDS.Substring(0, IDS.Length - 1);
                    //    OrdersSer.DeleteByIds(IDS, objCommand);
                    //}
                    for (int i = 0; i < orders.Count; i++)
                    {
                        if (eform.state == "通过")
                        {
                            if (orders[i].GoodPriceSecond != 0)
                            {
                                houseGoodsSer.InHouse(orders[i].HouseID, orders[i].GooId, orders[i].GoodNum, orders[i].GoodPriceSecond, objCommand);
                            }
                            else
                            {
                                houseGoodsSer.InHouse(orders[i].HouseID, orders[i].GooId, orders[i].GoodNum, orders[i].GoodPrice, objCommand);
                            }
                        }
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 19
0
        public bool updateTran(VAN_OA.Model.JXC.CAI_OrderCheck model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms, List <CAI_OrderChecks> orders, string IDS)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;

                CG_POOrdersService OrdersSer = new CG_POOrdersService();
                CG_POCaiService    CaiSer    = new CG_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();

                    model.Status = eform.state;
                    Update(model, objCommand);
                    tb_EFormService eformSer = new tb_EFormService();
                    eformSer.Update(eform, objCommand);
                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);

                    CAI_OrderChecksService myOrderChecks = new CAI_OrderChecksService();
                    for (int i = 0; i < orders.Count; i++)
                    {
                        // orders[i].CheckId = model.Id;
                        //if (orders[i].IfUpdate == true && orders[i].Ids != 0)
                        //{

                        myOrderChecks.Update(orders[i], objCommand);

                        //}
                        //else if (orders[i].Ids == 0)
                        //{
                        //    OrdersSer.Add(orders[i], objCommand);

                        //}
                    }

                    //入库
                    if (eform.state == "通过")
                    {
                        tb_EForm eformMain = new tb_EForm();
                        int      proId     = 0;
                        string   sql       = "select Pro_Id from A_ProInfo where pro_Type='采购入库'";
                        objCommand.CommandText = sql;

                        proId = Convert.ToInt32(objCommand.ExecuteScalar());

                        eformMain.appPer     = eform.appPer;
                        eformMain.appTime    = DateTime.Now;
                        eformMain.createPer  = eform.appPer;
                        eformMain.createTime = DateTime.Now;
                        eformMain.proId      = proId;
                        eformMain.state      = "通过";
                        eformMain.toPer      = 0;
                        eformMain.toProsId   = 0;

                        CAI_OrderInHouseService orderInHouse = new CAI_OrderInHouseService();
                        sql = "select top 1 id from TB_HouseInfo where ifdefault=1 ";
                        objCommand.CommandText = sql;
                        int objhouseId = Convert.ToInt32(objCommand.ExecuteScalar());
                        CAI_OrderInHouse orderInModel = new CAI_OrderInHouse()
                        {
                            ChcekProNo   = model.ProNo,
                            CreateTime   = DateTime.Now,
                            CreateUserId = eform.appPer,
                            GuestName    = orders[0].GuestName,
                            HouseID      = objhouseId,
                            POName       = orders[0].POName,
                            PONo         = orders[0].PONo,
                            RuTime       = DateTime.Now,
                            Status       = "通过",
                            Supplier     = orders[0].SupplierName,
                            DoPer        = orders[0].CaiGouPer,
                            DaiLi        = orders[0].CaiGouPer,
                            FPNo         = "",
                            Remark       = ""
                        };
                        List <CAI_OrderInHouses> ordersInHouses = new List <CAI_OrderInHouses>();
                        foreach (var m in orders)
                        {
                            CAI_OrderInHouses orderM = new CAI_OrderInHouses()
                            {
                                GooId            = m.CheckGoodId,
                                GoodNum          = m.CheckNum,
                                GoodPrice        = m.CheckPrice,
                                OrderCheckIds    = m.Ids,
                                QingGouPer       = m.QingGou,
                                CaiLastTruePrice = m.CheckLastTruePrice
                            };
                            ordersInHouses.Add(orderM);
                        }

                        orderInHouse.addTran(orderInModel, eformMain, ordersInHouses, objCommand);
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 20
0
        public bool updateTran(VAN_OA.Model.EFrom.tb_FundsUse model, VAN_OA.Model.EFrom.tb_EForm eform, tb_EForms forms)
        {
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                try
                {
                    model.State = eform.state;
                    objCommand.Parameters.Clear();
                    Update(model, objCommand);


                    tb_EFormService eformSer = new tb_EFormService();

                    eformSer.Update(eform, objCommand);


                    tb_EFormsService eformsSer = new tb_EFormsService();
                    eformsSer.Add(forms, objCommand);


                    if (eform.state == "通过")
                    {
                        string[] nos = model.HouseNo.Split('/');
                        if (nos.Length > 0)
                        {
                            string sql = string.Format("update CAI_OrderInHouse set FPNo='{0}' where ProNo in (", model.Invoce);
                            foreach (var no in nos)
                            {
                                sql += string.Format(" '{0}',", no);
                            }
                            sql  = sql.Substring(0, sql.Length - 1);
                            sql += ")";

                            objCommand.CommandText = sql;
                            objCommand.ExecuteNonQuery();

                            foreach (var no in nos)
                            {
                                if (no == "")
                                {
                                    continue;
                                }
                                string insertRu = string.Format("insert into TB_CaiXiaoNo values ('入库','{0}')", no);
                                objCommand.CommandText = insertRu;
                                objCommand.ExecuteNonQuery();
                            }
                        }

                        string[] chuNo = model.ExpNo.Split('/');
                        foreach (var no in chuNo)
                        {
                            if (no == "")
                            {
                                continue;
                            }
                            string insertRu = string.Format("insert into TB_CaiXiaoNo values ('出库','{0}')", no);
                            objCommand.CommandText = insertRu;
                            objCommand.ExecuteNonQuery();
                        }
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 21
0
        public int addTran(VAN_OA.Model.EFrom.TB_POOrder model, VAN_OA.Model.EFrom.tb_EForm eform, List <TB_POOrders> orders, List <TB_POCai> caiOrders, out int MainId)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                TB_POOrdersService OrdersSer = new TB_POOrdersService();

                TB_POCaiService caiSer = new TB_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("TB_POOrder", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;


                    id     = Add(model, objCommand);
                    MainId = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].Id = id;

                        OrdersSer.Add(orders[i], objCommand);

                        TB_POCai cai = new TB_POCai();
                        cai.GuestName = orders[i].GuestName;
                        cai.Num       = orders[i].Num;
                        cai.InvName   = orders[i].InvName;
                        cai.Id        = id;
                        caiSer.Add(cai, objCommand);
                    }


                    //for (int i = 0; i < caiOrders.Count; i++)
                    //{
                    //    caiOrders[i].Id = id;

                    //    caiSer.Add(caiOrders[i], objCommand);


                    //}



                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 22
0
        public int addTran(VAN_OA.Model.JXC.TB_SupplierAdvancePayment model, VAN_OA.Model.EFrom.tb_EForm eform, List <SupplierToInvoiceView> orders, out int MainId)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                TB_SupplierAdvancePaymentsService OrdersSer = new TB_SupplierAdvancePaymentsService();
                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No1("TB_SupplierAdvancePayment", objCommand);
                    model.ProNo   = proNo;
                    eform.E_No    = proNo;
                    model.Status  = eform.state;
                    id            = Add(model, objCommand);
                    MainId        = id;
                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);

                    for (int i = 0; i < orders.Count; i++)
                    {
                        if (orders[i].IfCheck == false)
                        {
                            continue;
                        }
                        var modelSupplierInvoices = new TB_SupplierAdvancePayments();
                        modelSupplierInvoices.Id                   = id;
                        modelSupplierInvoices.CaiIds               = orders[i].Ids;
                        modelSupplierInvoices.SupplierFPNo         = orders[i].SupplierFPNo;
                        modelSupplierInvoices.SupplierInvoiceDate  = orders[i].SupplierInvoiceDate.Value;
                        modelSupplierInvoices.SupplierInvoiceNum   = orders[i].SupplierInvoiceNum;
                        modelSupplierInvoices.SupplierInvoicePrice = orders[i].SupplierInvoicePrice;
                        modelSupplierInvoices.SupplierInvoiceTotal = orders[i].SupplierInvoiceTotal;
                        if (eform.state == "通过" && (orders[i].SupplierProNo == null || orders[i].SupplierProNo == ""))
                        {
                            modelSupplierInvoices.SupplierProNo = GetAllE_No("TB_SupplierAdvancePayments", objCommand);
                        }
                        OrdersSer.Add(modelSupplierInvoices, objCommand);
                    }
                    var otherOrders = orders.FindAll(t => t.IfCheck == false);
                    foreach (var otherOrder in otherOrders)
                    {
                        string insertSql = string.Format("insert into TB_TempSupplierInvoice values(0,{1},{0})", id, otherOrder.payIds);
                        objCommand.CommandText = insertSql;
                        objCommand.ExecuteNonQuery();
                    }
                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }
Ejemplo n.º 23
0
        public int addTran(VAN_OA.Model.JXC.CAI_OrderCheck model, VAN_OA.Model.EFrom.tb_EForm eform, List <CAI_OrderChecks> orders, out int MainId, List <string> ids = null)
        {
            int id = 0;

            MainId = 0;
            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                CAI_OrderChecksService OrdersSer = new CAI_OrderChecksService();


                try
                {
                    objCommand.Parameters.Clear();
                    tb_EFormService eformSer = new tb_EFormService();
                    string          proNo    = eformSer.GetAllE_No("CAI_OrderCheck", objCommand);
                    model.ProNo = proNo;
                    eform.E_No  = proNo;

                    model.Status = eform.state;
                    id           = Add(model, objCommand);
                    model.Id     = id;
                    MainId       = id;

                    eform.allE_id = id;
                    eformSer.Add(eform, objCommand);
                    for (int i = 0; i < orders.Count; i++)
                    {
                        orders[i].CheckId = id;
                        orders[i].Ids     = OrdersSer.Add(orders[i], objCommand);
                    }

                    //入库
                    if (eform.state == "通过")
                    {
                        tb_EForm eformMain = new tb_EForm();
                        int      proId     = 0;
                        string   sql       = "select Pro_Id from A_ProInfo where pro_Type='采购入库'";
                        objCommand.CommandText = sql;

                        proId = Convert.ToInt32(objCommand.ExecuteScalar());

                        eformMain.appPer     = eform.appPer;
                        eformMain.appTime    = DateTime.Now.AddSeconds(1);
                        eformMain.createPer  = eform.appPer;
                        eformMain.createTime = DateTime.Now.AddSeconds(1);
                        eformMain.proId      = proId;
                        eformMain.state      = "通过";
                        eformMain.toPer      = 0;
                        eformMain.toProsId   = 0;
                        eform.E_LastTime     = DateTime.Now.AddSeconds(1);
                        CAI_OrderInHouseService orderInHouse = new CAI_OrderInHouseService();
                        sql = "select top 1 id from TB_HouseInfo where ifdefault=1 ";
                        objCommand.CommandText = sql;
                        int objhouseId = Convert.ToInt32(objCommand.ExecuteScalar());
                        CAI_OrderInHouse orderInModel = new CAI_OrderInHouse()
                        {
                            ChcekProNo   = model.ProNo,
                            CreateTime   = DateTime.Now.AddSeconds(1),
                            CreateUserId = eform.appPer,
                            GuestName    = orders[0].GuestName,
                            HouseID      = objhouseId,
                            POName       = orders[0].POName,
                            PONo         = orders[0].PONo,
                            RuTime       = DateTime.Now.AddSeconds(1),
                            Status       = "通过",
                            Supplier     = orders[0].SupplierName,
                            DoPer        = orders[0].CaiGouPer,
                            DaiLi        = orders[0].CaiGouPer,
                            FPNo         = "",
                            Remark       = ""
                        };
                        List <CAI_OrderInHouses> ordersInHouses = new List <CAI_OrderInHouses>();
                        foreach (var m in orders)
                        {
                            CAI_OrderInHouses orderM = new CAI_OrderInHouses()
                            {
                                GooId            = m.CheckGoodId,
                                GoodNum          = m.CheckNum,
                                GoodPrice        = m.CheckPrice,
                                OrderCheckIds    = m.Ids,
                                QingGouPer       = m.QingGou,
                                CaiLastTruePrice = m.CheckLastTruePrice
                            };
                            ordersInHouses.Add(orderM);
                        }
                        orderInHouse.addTran(orderInModel, eformMain, ordersInHouses, objCommand);
                        if (ids != null)
                        {
                            foreach (var ordersIn in ordersInHouses)
                            {
                                ids.Add(ordersIn.Ids.ToString());
                            }
                        }
                    }

                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                    return(0);
                }
                return(id);
            }
        }