Example #1
0
        public int AddCAI_OrderCheck(int id)
        {
            CAI_OrderCheck order = new CAI_OrderCheck();

            order.CreatePer   = 1;
            order.CheckPer    = 1;
            order.CheckTime   = DateTime.Now;
            order.CheckRemark = "库存初始化";

            VAN_OA.Model.EFrom.tb_EForm eform = new tb_EForm();

            int userId = 1;

            eform.appPer     = userId;
            eform.appTime    = DateTime.Now;
            eform.createPer  = 1;
            eform.createTime = DateTime.Now;
            eform.proId      = 21;
            eform.state      = "不通过";
            eform.toPer      = 0;
            eform.toProsId   = 0;
            CAI_POCaiService       POSer     = new CAI_POCaiService();
            List <CAI_POCaiView>   modelList = POSer.GetListViewCai_POOrders_Cai_POOrderChecks_View(" id=" + id);
            List <CAI_OrderChecks> POOrders  = new List <CAI_OrderChecks>();

            foreach (var model in modelList)
            {
                CAI_OrderChecks checkModel = new CAI_OrderChecks();
                checkModel.Total          = model.Total;
                checkModel.CaiId          = model.POCaiId;
                checkModel.CheckGoodId    = model.GoodId;
                checkModel.CheckNum       = model.Num;
                checkModel.CheckPrice     = model.Price;
                checkModel.Good_Model     = model.Good_Model;
                checkModel.GoodName       = model.GoodName;
                checkModel.GoodNo         = model.GoodNo;
                checkModel.GoodSpec       = model.GoodSpec;
                checkModel.GoodTypeSmName = model.GoodTypeSmName;
                checkModel.GoodUnit       = model.GoodUnit;
                checkModel.GuestName      = model.GuestName;
                checkModel.POName         = model.POName;
                checkModel.PONo           = model.PONo;
                checkModel.SupplierName   = model.Supplier;

                checkModel.CaiProNo           = model.ProNo;
                checkModel.QingGou            = model.CaiGou;
                checkModel.CaiGouPer          = model.loginName;
                checkModel.CheckLastTruePrice = model.LastTruePrice;
                checkModel.GoodAreaNumber     = model.GoodAreaNumber;
                POOrders.Add(checkModel);
            }

            CAI_OrderCheckService POOrderSer = new CAI_OrderCheckService();
            int MainId = 0;

            return(POOrderSer.addTran(order, eform, POOrders, out MainId));
        }
Example #2
0
        private void LastUpdate(int id)
        {
            CAI_OrderInHousesService ordersSer = new CAI_OrderInHousesService();
            List <CAI_OrderInHouses> orders    = ordersSer.GetListArray(" 1=1 and CAI_OrderInHouses.id=1");

            CAI_OrderChecksService ordersSer111 = new CAI_OrderChecksService();
            List <CAI_OrderChecks> orders1111   = ordersSer111.GetListArray(" 1=1 and CAI_OrderChecks.CheckId=" + id);



            CAI_OrderCheckService mainSer = new CAI_OrderCheckService();
            CAI_OrderCheck        pp      = mainSer.GetModel(id);

            DBHelp.ExeCommand(string.Format(@" update CAI_OrderInHouse SET ChcEkProNo='{0}',pono='{1}',poname='{2}' where id=1;
            update CAI_OrderOutHouse set pono='{1}',poname='{2}' where ChcEkProNo='20120000';
update CAI_OrderCheck set status='通过' where id={3} ;update tb_EForm set state='通过',e_LastTime=getdate() where allE_id={3} and proId=21;", pp.ProNo,
                                            orders1111[0].PONo, orders1111[0].POName, id));


            using (SqlConnection conn = DBHelp.getConn())
            {
                conn.Open();
                SqlTransaction tan        = conn.BeginTransaction();
                SqlCommand     objCommand = conn.CreateCommand();
                objCommand.Transaction = tan;
                CAI_POCaiService CaiSer = new CAI_POCaiService();
                try
                {
                    objCommand.Parameters.Clear();

                    foreach (var caiIn in orders)
                    {
                        var check = orders1111.Single(t => t.CheckGoodId == caiIn.GooId);

                        string sql = string.Format(" update CAI_OrderInHouses set OrderCheckIds={1} where ids={0}", caiIn.Ids, check.Ids);
                        objCommand.CommandText = sql;
                        objCommand.ExecuteNonQuery();
                    }


                    tan.Commit();
                }
                catch (Exception)
                {
                    tan.Rollback();
                }
            }
        }
Example #3
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            int id = AddCai();

            CAI_POOrderService mainSer = new CAI_POOrderService();

            CAI_POOrder pp = mainSer.GetModel(id);


            CAI_POOrdersService ordersSer = new CAI_POOrdersService();
            List <CAI_POOrders> orders    = ordersSer.GetListArray(" 1=1 and CAI_POOrders.id=" + id);


            CAI_POCaiService CaiSer  = new CAI_POCaiService();
            List <CAI_POCai> caiList = CaiSer.GetListArray(" 1=1 and CAI_POCai.id=" + id);

            foreach (var cai in caiList)
            {
                var m = orders_CaiIn.Single(t => t.GooId == cai.GoodId);

                cai.Supplier      = "本部门(含税)";
                cai.SupperPrice   = m.GoodPrice;
                cai.UpdateUser    = "******";
                cai.Idea          = "";
                cai.Num           = m.GoodNum;
                cai.FinPrice1     = m.GoodPrice;
                cai.GoodId        = m.GooId;
                cai.cbifDefault1  = true;
                cai.lastSupplier  = "本部门(含税)";
                cai.IsHanShui     = true;
                cai.LastTruePrice = m.GoodPrice;
                cai.IfUpdate      = true;
            }

            CAI_POOrderService POOrderSer = new CAI_POOrderService();

            POOrderSer.UpdataCai(caiList);


            int checkId = AddCAI_OrderCheck(id);

            LastUpdate(checkId);

            base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('成功!');</script>");
        }
        private void Show()
        {
            if (!string.IsNullOrEmpty(txtPONo.Text.Trim()))
            {
                if (CheckPoNO(txtPONo.Text) == false)
                {
                    return;
                }
            }
            string totalWhere;
            string sql = getSql(out totalWhere);

            if (sql == "")
            {
                return;
            }
            List <Petitions> caiList = this.petitionsSer.GetListArray(sql, totalWhere, txtSalesUnit.Text.Trim());

            lblTotal.Text = caiList.Sum(t => t.Total).ToString();

            AspNetPager1.RecordCount = caiList.Count;
            this.gvList.PageIndex    = AspNetPager1.CurrentPageIndex - 1;

            string pono = "";

            for (int i = gvList.PageIndex * 10; i < (gvList.PageIndex + 1) * 10; i++)
            {
                if (caiList.Count - 1 < i)
                {
                    break;
                }
                pono += string.Format("'{0}',", caiList[i].PoNo);
            }
            pono         = pono.Trim(',');
            supplierList = new CAI_POCaiService().GetLastSupplier(pono);


            this.gvList.DataSource = caiList;
            this.gvList.DataBind();
        }
Example #5
0
        protected void LinkButton1_Click1(object sender, EventArgs e)
        {
            if (Session["Comm_CGPONo"] != null)
            {
                CG_POOrder model = POSer.GetSimpListArray(string.Format("and pono='{0}'", Session["Comm_CGPONo"]))[0];
                txtAE.Text        = model.AE;
                txtPONo.Text      = model.PONo;
                txtGuestName.Text = model.GuestName;
                txtName.Text      = model.POName;
                //var list = POSer.GetOrder_ToInvoice_1(string.Format(" PONo='{0}'", model.PONo));
                //if (list.Count > 0)
                //{
                //    txtTotal.Text = (list[0].POTotal - list[0].TuiTotal).ToString();
                //}
                var supplierList = new CAI_POCaiService().GetLastSupplier(string.Format("'{0}'", model.PONo));
                txtSalesUnit.Text      = string.Join(",", supplierList.Select(t => t.Supplier).ToArray());
                txtTotal.Text          = supplierList.Sum(t => t.Total).ToString();
                Session["Comm_CGPONo"] = null;

                var list = petitionsSer.GetListArray(string.Format(" PoNo='{0}'", txtPONo.Text), "", "");
                if (list.Count > 0)
                {
                    var modelPetition = list[0];
                    lblError.Text = string.Format("该项目已有签呈单,签呈单编号:{0},签呈单名称:{1}, 签订日期:{2}, 存放位置:{3}",
                                                  modelPetition.Number, modelPetition.Name, modelPetition.SignDate.ToString("yyyy-MM-dd"), modelPetition.Local_String);
                    btnAdd.Enabled    = false;
                    btnUpdate.Enabled = false;
                }
                else
                {
                    btnAdd.Enabled    = true;
                    btnUpdate.Enabled = true;
                    lblError.Text     = "";
                }
            }
        }
Example #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!base.IsPostBack)
            {
                for (var i = 1; i < 100; i++)
                {
                    ddlL_Month.Items.Add(new ListItem {
                        Text = i.ToString(), Value = i.ToString()
                    });
                }

                List <VAN_OA.Model.User>  user    = new List <VAN_OA.Model.User>();
                VAN_OA.Dal.SysUserService userSer = new VAN_OA.Dal.SysUserService();
                user = userSer.getAllUserByLoginName("");
                ddlHandler.DataSource = user;
                ddlHandler.DataBind();
                ddlHandler.DataTextField  = "LoginName";
                ddlHandler.DataValueField = "LoginName";

                if (base.Request["Id"] != null)
                {
                    this.btnAdd.Visible = false;
                    Petitions model = this.petitionsSer.GetModel(Convert.ToInt32(base.Request["Id"]));
                    txtName.Text           = model.Name;
                    this.ddlType.Text      = model.Type;
                    this.lblNumber.Text    = model.Number;
                    this.txtGuestName.Text = model.GuestName;
                    this.txtSalesUnit.Text = model.SalesUnit;
                    this.txtSummary.Text   = model.Summary;
                    this.txtTotal.Text     = model.Total.ToString();
                    this.txtSignDate.Text  = model.SignDate.ToString();
                    this.txtSumPages.Text  = model.SumPages.ToString();
                    this.txtSumCount.Text  = model.SumCount.ToString();
                    this.txtBCount.Text    = model.BCount.ToString();
                    this.txtPONo.Text      = model.PoNo;
                    this.txtAE.Text        = model.AE;
                    this.ddlHandler.Text   = model.Handler;
                    this.ddlLocal.Text     = model.Local;
                    this.ddlL_Year.Text    = model.L_Year.ToString();
                    this.ddlL_Month.Text   = model.L_Month.ToString();
                    this.txtRemark.Text    = model.Remark;

                    cbIsRequire.Checked = model.IsRequire;
                    if (model.IsRequire)
                    {
                        lbtnSelectPONo.Visible = false;
                    }
                    if (model.IsColse)
                    {
                        rabIsColseB.Checked = true;
                    }
                    hfYear.Value = model.L_Year.ToString();


                    var supplierList = new CAI_POCaiService().GetLastSupplier(string.Format("'{0}'", model.PoNo));
                    txtSalesUnit.Text = string.Join(",", supplierList.Select(t => t.Supplier).ToArray());
                    txtTotal.Text     = supplierList.Sum(t => t.Total).ToString();
                }
                else
                {
                    ddlHandler.Text        = "王汉中";
                    this.btnUpdate.Visible = false;
                }
            }
        }
Example #7
0
        private void LoadExcel(string fileAddress)
        {
            string strConn;

            strConn = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + fileAddress + "; Extended Properties='Excel 12.0 Xml;HDR=YES;IMEX=1'";
            OleDbConnection conn = new OleDbConnection(strConn);

            conn.Open();
            DataTable sheetNames = conn.GetOleDbSchemaTable
                                       (OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            int allSheets = 0;

            foreach (DataRow rowTable in sheetNames.Rows)
            {
                string sheetName = rowTable["TABLE_NAME"].ToString();

                conn = new OleDbConnection(strConn);
                conn.Open();
                OleDbCommand      objCommand      = new OleDbCommand(string.Format("select * from [" + sheetName + "]"), conn);
                int               rowIndex        = 1;
                BankFlowService   bandFlowService = new BankFlowService();
                PetitionsService  petSer          = new PetitionsService();
                CG_POOrderService POSer           = new CG_POOrderService();
                CAI_POCaiService  pocaiSer        = new CAI_POCaiService();
                using (SqlConnection sqlconn = DBHelp.getConn())
                {
                    sqlconn.Open();

                    SqlCommand sqlCommand = sqlconn.CreateCommand();


                    using (OleDbDataReader dataReader = objCommand.ExecuteReader())
                    {
                        while (dataReader.Read())
                        {
                            //if (rowIndex > 1)
                            //{
                            //    Petitions model = new Petitions();
                            //    model.Number = dataReader[0].ToString();
                            //    model.Type = dataReader[1].ToString();
                            //    model.OldIndex = dataReader[2].ToString();
                            //    var ojb = dataReader[3];
                            //    if (ojb != null && ojb != DBNull.Value)
                            //    {
                            //        model.SignDate = Convert.ToDateTime(ojb);
                            //    }

                            //    model.PoNo = dataReader[4].ToString();
                            //    model.Summary = dataReader[5].ToString();
                            //    ojb = dataReader[6];
                            //    if (ojb != null && ojb != DBNull.Value)
                            //    {
                            //        model.SumPages = Convert.ToInt32(ojb);
                            //    }
                            //    model.Local = dataReader[7].ToString();
                            //    model.L_Year = Convert.ToInt32(dataReader[8]);
                            //    model.L_Month = Convert.ToInt32(dataReader[9]);
                            //    model.Remark = dataReader[10].ToString();
                            //    model.SumCount = 1;
                            //    model.BCount = 1;
                            //    model.Handler = "王汉中";

                            //    var poList = POSer.GetSimpListArray(string.Format("and pono='{0}'", model.PoNo), sqlCommand);
                            //    if (poList.Count > 0)
                            //    {
                            //        CG_POOrder poorderModel = poList[0];

                            //        model.AE = poorderModel.AE;
                            //        model.GuestName = poorderModel.GuestName;
                            //        model.Name = poorderModel.POName;

                            //        //var supplierList = pocaiSer.GetLastSupplier(string.Format("'{0}'", model.PoNo), sqlCommand);
                            //        //model.SalesUnit = string.Join(",", supplierList.Select(t => t.Supplier).ToArray());
                            //        //model.Total = supplierList.Sum(t => t.Total);
                            //    }
                            //    petSer.Add(model,sqlCommand);
                            //}
                            if (rowIndex > 8)
                            {
                                BankFlow model = new BankFlow();
                                model.TransactionType = dataReader[0].ToString();
                                if (model.TransactionType == "")
                                {
                                    continue;
                                }
                                model.BusinessType           = dataReader[1].ToString();
                                model.PayerAccountBank       = dataReader[3].ToString();
                                model.DebitAccountNo         = dataReader[4].ToString();
                                model.OutPayerName           = dataReader[5].ToString();
                                model.BeneficiaryAccountBank = dataReader[7].ToString();
                                model.PayeeAccountNumber     = dataReader[8].ToString();
                                model.InPayeeName            = dataReader[9].ToString();
                                DateTime dt = DateTime.ParseExact(dataReader[10].ToString(), "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture);
                                model.TransactionDate            = Convert.ToDateTime(dt.ToString("yyyy-MM-dd") + " " + dataReader[11]);
                                model.TradeCurrency              = dataReader[12].ToString();
                                model.TradeAmount                = Convert.ToDecimal(dataReader[13]);
                                model.AfterTransactionBalance    = Convert.ToDecimal(dataReader[14]);
                                model.TransactionReferenceNumber = dataReader[17].ToString();
                                model.VoucherType                = dataReader[20].ToString();
                                model.Reference = dataReader[23].ToString();
                                model.Purpose   = dataReader[24].ToString();
                                model.Remark    = dataReader[25].ToString();
                                model.Remarks   = dataReader[26].ToString();
                                //判断是否重复
                                string sql = string.Format("SELECT top 1 ID FROM [BankFlow] WHERE TransactionReferenceNumber='{0}'", model.TransactionReferenceNumber);
                                sqlCommand.CommandText = sql;
                                var resultId = sqlCommand.ExecuteScalar();
                                if (!(resultId is DBNull) && resultId != null)
                                {
                                    model.Id = Convert.ToInt32(resultId);
                                    bandFlowService.Update(model, sqlCommand);
                                }
                                else
                                {
                                    bandFlowService.Add(model, sqlCommand);
                                }
                            }
                            rowIndex++;
                        }
                    }
                    sqlconn.Close();
                }
            }
        }
        public bool FormCheck()
        {
            #region 设置自己要判断的信息


            if (txtCheckPer.Text == "")
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写检验人!');</script>");
                txtCheckPer.Focus();
                return(false);
            }


            if (txtCheckTime.Text == "")
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写检验时间!');</script>");
                txtCheckTime.Focus();
                return(false);
            }
            else
            {
                if (CommHelp.VerifesToDateTime(txtCheckTime.Text) == false)
                {
                    base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('检验时间 格式错误!');</script>");
                    return(false);
                }
            }


            try
            {
                Convert.ToDateTime(txtCheckTime.Text);
            }
            catch (Exception)
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写检验时间有误!');</script>");
                txtCheckTime.Focus();
                return(false);
            }


            if (ddlPers.Visible == true && ddlPers.SelectedItem == null)
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请选择下一步审核人!');</script>");
                ddlPers.Focus();

                return(false);
            }



            if (DBHelp.ExeScalar(string.Format("select ID from tb_User where loginName='{0}'", txtName.Text)) == null)
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写申请用户不存在!');</script>");

                return(false);
            }

            if (DBHelp.ExeScalar(string.Format("select ID from tb_User where loginName='{0}'", txtCheckPer.Text)) == null)
            {
                base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写检验人不存在!');</script>");

                return(false);
            }

            #endregion


            if (Request["allE_id"] == null)
            {
                List <CAI_OrderChecks> POOrders = Session["Orders"] as List <CAI_OrderChecks>;

                if (POOrders == null || POOrders.Count <= 0)
                {
                    base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请添加明显信息!');</script>");
                    return(false);
                }


                var mycaiIds = new StringBuilder();
                foreach (var m in POOrders)
                {
                    mycaiIds.AppendFormat("{0},", m.CaiId);
                }
                if (mycaiIds.ToString() == "")
                {
                    base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请添加明细!');</script>");
                    return(false);
                }
                var ids = mycaiIds.ToString().Substring(0, mycaiIds.ToString().Length - 1);


                //--在创建/编辑 预付单时 判断是否已经有入库记录(包含正在执行的单子)
                string checkSql = string.Format(@"select COUNT(*) from TB_SupplierAdvancePayment left join TB_SupplierAdvancePayments on 
TB_SupplierAdvancePayment.Id=TB_SupplierAdvancePayments.Id where Status='执行中'
and CaiIds in ({0})", ids);//--增加采购订单的ID ( and CaiId=?)

                var errorText = new StringBuilder();
                var count     = DBHelp.ExeScalar(checkSql);
                if (count != null && Convert.ToInt32(count) > 0)
                {
                    errorText.Append("列表中采购数据,存在正在执行中的预付款单,请先将对应预付款单审批通过!");
                    base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('" + errorText.ToString() + "');</script>");
                    return(false);
                }


                Hashtable ht = new Hashtable();

                Hashtable htSupplier = new Hashtable();
                foreach (var model in POOrders)
                {
                    string key = model.CheckGoodId.ToString() + model.CaiProNo;
                    if (!ht.Contains(key))
                    {
                        ht.Add(key, null);
                    }
                    else
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('单号[{3}]-商品[{0}]\规格[{1}]\型号[{2}],信息重复!');</script>", model.GoodName, model.GoodSpec, model.Good_Model, model.CaiProNo));
                        return(false);
                    }

                    string aa = model.SupplierName + model.PONo + model.POName + model.CaiGouPer;

                    if (!htSupplier.Contains(aa))
                    {
                        if ((!model.PONo.Contains("KC")) && new CG_POOrderService().ExistPONO(model.PONo) == false)
                        {
                            base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('项目信息不存在!');</script>");
                            return(false);
                        }
                        htSupplier.Add(aa, null);
                        if (htSupplier.Keys.Count > 1)
                        {
                            base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('检验单中 项目单号,项目名称,供应商,采购人必选完全一样!');</script>"));
                            return(false);
                        }
                    }
                }
                CAI_POCaiService POSer = new CAI_POCaiService();
                for (int i = 0; i < gvList.Rows.Count; i++)
                {
                    TextBox txtNum = gvList.Rows[i].FindControl("txtNum") as TextBox;
                    if (txtNum != null)
                    {
                        if (CommHelp.VerifesToNum(txtNum.Text) == false)
                        {
                            base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('数量 格式错误!');</script>");
                            return(false);
                        }
                        POOrders[i].CheckNum = Convert.ToDecimal(txtNum.Text);
                    }
                    var model = POOrders[i];
                    if (model.CheckNum <= 0)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('商品[{0}]\规格[{1}]\型号[{2}],数量必须大于0!');</script>", model.GoodName, model.GoodSpec, model.Good_Model));
                        return(false);
                    }
                    if (model.CheckPrice < 0)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('商品[{0}]\规格[{1}]\型号[{2}],价格必须大于等于0!');</script>", model.GoodName, model.GoodSpec, model.Good_Model));
                        return(false);
                    }

                    string sql = string.Format(" 1=1 and Ids={0}", model.CaiId);
                    List <CAI_POCaiView> cars = POSer.GetListViewCai_POOrders_Cai_POOrderChecks_View(sql);
                    if (cars.Count <= 0)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('单号[{3}]-商品[{0}]\规格[{1}]\型号[{2}],在项目订单[{3}]中不存在!');</script>", model.GoodName, model.GoodSpec, model.Good_Model, model.PONo));
                        return(false);
                    }
                    if (model.CheckNum > cars[0].ResultNum)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('单号[{3}]-商品[{0}]\规格[{1}]\型号[{2}],检查数量剩余[{3}]!');</script>", model.GoodName, model.GoodSpec, model.Good_Model, cars[0].ResultNum));

                        return(false);
                    }
                }


                Session["Orders"] = POOrders;
            }
            else
            {
                List <CAI_OrderChecks> POOrders = Session["Orders"] as List <CAI_OrderChecks>;
                CAI_POCaiService       POSer    = new CAI_POCaiService();
                for (int i = 0; i < gvList.Rows.Count; i++)
                {
                    TextBox txtNum = gvList.Rows[i].FindControl("txtNum") as TextBox;
                    if (txtNum != null)
                    {
                        if (CommHelp.VerifesToNum(txtNum.Text) == false)
                        {
                            base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('数量 格式错误!');</script>");
                            return(false);
                        }
                        POOrders[i].CheckNum = Convert.ToDecimal(txtNum.Text);
                    }
                    var model = POOrders[i];
                    if (model.CheckNum <= 0)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('商品[{0}]\规格[{1}]\型号[{2}],数量必须大于0!');</script>", model.GoodName, model.GoodSpec, model.Good_Model));
                        return(false);
                    }
                    if (model.CheckPrice < 0)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('商品[{0}]\规格[{1}]\型号[{2}],价格必须大于等于0!');</script>", model.GoodName, model.GoodSpec, model.Good_Model));
                        return(false);
                    }

                    if (i == 0 && (!model.PONo.Contains("KC")) && new CG_POOrderService().ExistPONO(model.PONo) == false)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('项目信息不存在!');</script>");
                        return(false);
                    }


                    //查询订单原来的数量
                    string oldString = string.Format(@"select isnull(Num,0)-ISNULL(totalOrderNum,0)  as ResultNum from CAI_POCai 
left join CAI_POOrder on CAI_POCai.Id=CAI_POOrder.Id 
left join 
(
select  CaiId,SUM(CheckNum) as totalOrderNum from CAI_OrderChecks left join CAI_OrderCheck on 
CAI_OrderCheck.id=CAI_OrderChecks.CheckId
where CaiId<>0  and status<>'不通过' and CAI_OrderChecks.Ids<>{0}
group by CaiId
)
as newtable on CAI_POCai.Ids=newtable.CaiId where (CAI_POCai.Num>newtable.totalOrderNum or totalOrderNum is null)
and status='通过' and Ids={1}", model.Ids, model.CaiId);
                    var    oldNum    = DBHelp.ExeScalar(oldString);


                    if (oldNum is DBNull)
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('单号[{3}]-商品[{0}]\规格[{1}]\型号[{2}],在项目订单[{3}]中不存在!');</script>", model.GoodName, model.GoodSpec, model.Good_Model, model.PONo));
                        return(false);
                    }
                    if (model.CheckNum > Convert.ToDecimal(oldNum))
                    {
                        base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('单号[{3}]-商品[{0}]\规格[{1}]\型号[{2}],检查数量剩余[{3}]!');</script>", model.GoodName, model.GoodSpec, model.Good_Model, oldNum));

                        return(false);
                    }
                }
                Session["Orders"] = POOrders;
            }

            if (ddlResult.SelectedItem != null && ddlResult.SelectedItem.Text == "通过")
            {
                List <CAI_OrderChecks> POOrders = Session["Orders"] as List <CAI_OrderChecks>;
                //判断是否为特殊商品 并查询库存是否有库存
                TB_HouseGoodsService  goodHouseSer = new TB_HouseGoodsService();
                CAI_OrderCheckService checkSer     = new CAI_OrderCheckService();
                foreach (var m in POOrders)
                {
                    if (goodHouseSer.CheckGoodInHouse(m.CheckGoodId))
                    {
                        string mess = checkSer.GetPONoInfo(m.CheckGoodId, m.GoodNo, m.GoodName, m.GoodTypeSmName, m.GoodSpec);
                        if (mess == "")
                        {
                            base.ClientScript.RegisterStartupScript(base.GetType(), null, string.Format(@"<script>alert('数据异常!');</script>"));
                            return(false);
                        }
                        base.ClientScript.RegisterStartupScript(base.GetType(), null,
                                                                string.Format(@"<script>alert('{0}!');</script>",
                                                                              mess));
                        return(false);
                    }
                }
            }

            //判断有没有设置默认仓库
            if (ddlPers.Visible == false)
            {
                string sql = "select count(*) from TB_HouseInfo where IfDefault=1";
                if (Convert.ToInt32(DBHelp.ExeScalar(sql)) != 1)
                {
                    base.ClientScript.RegisterStartupScript(base.GetType(), null, "默认仓库设置错误!请检查");
                    return(false);
                }
            }

            return(true);
        }