Example #1
0
        /// ****************************************************************************
        /// <summary>
        /// 提交数据
        /// </summary>
        /// ****************************************************************************
        public void SubmitData()
        {
            DAL.QueryStrategy.BiddingReturnStrategyBuilder sb = new RmsPM.DAL.QueryStrategy.BiddingReturnStrategyBuilder();
            sb.AddStrategy(new Strategy(DAL.QueryStrategy.BiddingReturnStrategyName.BiddingEmitCode, this.ApplicationCode));

            string sql = sb.BuildMainQueryString();

            EntityData entity = new EntityData("BiddingReturn");

            dao.FillEntity(sql, entity);

            for (int i = 0; i < this.Repeater1.Items.Count; i++)
            {
                string _BiddingReturnCode = ((HtmlInputText)this.Repeater1.Items[i].FindControl("txtBiddingReturnCode")).Value.Trim();
                string _Design            = ((RadioButtonList)this.Repeater1.Items[i].FindControl("RadioDesign")).SelectedValue;
                string _Project           = ((RadioButtonList)this.Repeater1.Items[i].FindControl("RadioProject")).SelectedValue;
                string _Consultant        = ((RadioButtonList)this.Repeater1.Items[i].FindControl("RadioConsultant")).SelectedValue;
                string _State             = ((HtmlGenericControl)this.Repeater1.Items[i].FindControl("txtState")).InnerText.Trim();
                string _Flag = "0";

                if (((HtmlInputCheckBox)this.Repeater1.Items[i].FindControl("chkAuditing")).Checked)
                {
                    _Flag = "1";
                    //string flag="1";
                    try
                    {
                        string          supplier = ((HtmlInputText)this.Repeater1.Items[i].FindControl("hiddenSupplierCode")).Value.Trim();
                        BLL.BiddingEmit bemit    = new RmsPM.BLL.BiddingEmit();
                        bemit.IsLowOfPriceByBiddingCode(_BiddingReturnCode);
                    }
                    catch (Exception ex)
                    {
                        Response.Write(Rms.Web.JavaScript.Alert(true, ex.Message));
                    }
                }

                DataRow[] dr = entity.CurrentTable.Select("BiddingReturnCode=" + _BiddingReturnCode);
                if (_Design != "" && this.State1 == ModuleState.Operable)
                {
                    dr[0]["Design"] = _Design;
                }
                if (_Project != "" && this.State2 == ModuleState.Operable)
                {
                    dr[0]["Project"] = _Project;
                }
                if (_Consultant != "" && this.State3 == ModuleState.Operable)
                {
                    dr[0]["Consultant"] = _Consultant;
                }
                if (_State != "" && this.State4 == ModuleState.Operable)
                {
                    dr[0]["State"] = _State;
                }
                if (this.State == ModuleState.Operable)
                {
                    dr[0]["Flag"] = _Flag;
                }
            }

            dao.SubmitEntity(entity);
            if (this.MainState == ModuleState.Operable)
            {
                this.AttachMentAdd1.SaveAttachMent(this.ApplicationCode);
            }
            if (this.State == ModuleState.Operable)
            {
                BLL.Bidding bidding = new BLL.Bidding();
                bidding.BiddingCode = this.BiddingCode;
                bidding.dao         = this.dao;
                bidding.State       = "4";
                bidding.BiddingSubmit();
            }
        }
Example #2
0
        /// ****************************************************************************
        /// <summary>
        /// 提交数据
        /// </summary>
        /// ****************************************************************************
        public void SubmitData()
        {
            if (this.ApplicationCode != "")
            {
                DAL.QueryStrategy.BiddingReturnStrategyBuilder sb = new RmsPM.DAL.QueryStrategy.BiddingReturnStrategyBuilder();
                sb.AddStrategy(new Strategy(DAL.QueryStrategy.BiddingReturnStrategyName.BiddingCode, this.BiddingCode));

                string sql = sb.BuildMainQueryString();

                EntityData entity = new EntityData("BiddingReturn");
                dao.FillEntity(sql, entity);
                //删除原有排名
                BLL.BiddingSystem.DelHistoryPlace(this.BiddingCode);
                //产生一张新表
                DataTable dt = new DataTable();
                dt.Columns.Add("BiddingReturnCode", System.Type.GetType("System.String"));
                dt.Columns.Add("Money", System.Type.GetType("System.Decimal"));
                dt.Columns.Add("Remark", System.Type.GetType("System.String"));
                dt.Columns.Add("ReturnDate", System.Type.GetType("System.String"));
                dt.Columns.Add("State", System.Type.GetType("System.String"));
                dt.Columns.Add("BiddingDtlCode", System.Type.GetType("System.String"));
                DataRow dr;
                //读取表中信息,并产生排名
                for (int i = 0; i < this.dgListEdit.Items.Count; i++)
                {
                    dr = dt.NewRow();
                    dr["BiddingReturnCode"] = this.dgListEdit.Items[i].Cells[0].Text.Trim();
                    dr["Money"]             = this.GetControl(i).TotalMoney;
                    dr["Remark"]            = ((HtmlTextArea)this.dgListEdit.Items[i].FindControl("txtRemark")).Value.Trim();
                    dr["ReturnDate"]        = ((AspWebControl.Calendar) this.dgListEdit.Items[i].FindControl("txtReturnDate")).Value;
                    dr["BiddingDtlCode"]    = this.dgListEdit.Items[i].Cells[8].Text.Trim();
                    //dr["State"]=i+1;
                    dt.Rows.Add(dr);
                }
                BLL.Bidding bd = new BLL.Bidding();
                bd.BiddingCode = this.BiddingCode;
                BLL.BiddingReturn br = new BLL.BiddingReturn();
                br.BiddingEmitCode = bd.BiddingLastEmit;
                DataTable dtreturn = br.GetBiddingReturns();
                foreach (DataRow drr in dtreturn.Rows)
                {
                    if (dt.Select("BiddingReturnCode ='" + drr["BiddingReturnCode"].ToString() + "'").Length == 0)
                    {
                        dr = dt.NewRow();
                        dr["BiddingReturnCode"] = drr["BiddingReturnCode"];
                        dr["BiddingDtlCode"]    = drr["BiddingDtlCode"];
                        dr["Money"]             = drr["Money"];
                        dr["Remark"]            = drr["Remark"];
                        dr["ReturnDate"]        = drr["ReturnDate"];
                        //dr.ItemArray.CopyTo(drr.ItemArray, 0);
                        dt.Rows.Add(dr);
                    }
                }


                DataView dv = new DataView(dt);

                dv.Sort = "BiddingDtlCode,Money";
                //for(int i=0;i<dv.Rows.Count;i++)
                int     j            = 0;
                string  tempBDtlCode = "";
                decimal tempMoney    = 0;

                foreach (DataRowView dr2 in dv)
                {
                    if (tempBDtlCode != dr2["BiddingDtlCode"].ToString())
                    {
                        tempBDtlCode = dr2["BiddingDtlCode"].ToString();
                        j            = 0;
                        tempMoney    = 0;
                    }


                    DataRow[] dr1 = entity.CurrentTable.Select("BiddingReturnCode='" + dr2["BiddingReturnCode"].ToString() + "' and " + "BiddingDtlCode='" + dr2["BiddingDtlCode"].ToString() + "'");

                    if (dr1.Length > 0)
                    {
                        dr1[0]["Money"]      = dr2["Money"];
                        dr1[0]["Remark"]     = dr2["Remark"];
                        dr1[0]["ReturnDate"] = dr2["ReturnDate"];
                        //State字段中存放商务标排名,规则为:如果回标金额为0或者为空时不参与商务标排名;金额一样的单位,名次一样。
                        if (!dr2["Money"].ToString().Equals("0") && !dr2["Money"].ToString().Equals(""))
                        {
                            if (tempMoney != System.Convert.ToDecimal(dr2["Money"]))
                            {
                                j++;
                            }
                            dr1[0]["State"] = j;
                        }
                        else
                        {
                            dr1[0]["State"] = "";
                        }
                        tempMoney = System.Convert.ToDecimal(dr2["Money"]);
                    }
                }

                dao.SubmitEntity(entity);
                BLL.Bidding bidding = new BLL.Bidding();
                bidding.BiddingCode = this.BiddingCode;
                bidding.State       = NowState;
                bidding.dao         = dao;
                bidding.BiddingSubmit();
                //更新备注
                BLL.BiddingEmit addRemark = new RmsPM.BLL.BiddingEmit();
                addRemark.BiddingEmitCode = this.BiddingEmitCode;
                addRemark.TotalRemark     = this.txtTotalRemark.Text;
                addRemark.dao             = dao;
                addRemark.BiddingEmitUpdate();
            }
            else
            {
                //删除历史排序记录
                BLL.BiddingSystem.DelHistoryPlace(this.BiddingCode);
                DataTable           dt   = (DataTable)ViewState["dt"];
                BLL.BiddingSupplier BSup = new RmsPM.BLL.BiddingSupplier();

                DAL.QueryStrategy.BiddingReturnStrategyBuilder sb = new RmsPM.DAL.QueryStrategy.BiddingReturnStrategyBuilder();
                sb.AddStrategy(new Strategy(DAL.QueryStrategy.BiddingReturnStrategyName.BiddingEmitCode, this.BiddingEmitCode));

                string sql = sb.BuildMainQueryString();

                EntityData entity = new EntityData("BiddingReturn");
                dao.FillEntity(sql, entity);

                if (dt.Rows.Count > 0)
                {
                    dao.DeleteAllRow(entity);
                    dao.SubmitEntity(entity);
                    string stat = "0";
                    string tempsuppliercodestr = "";
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (((CheckBox)dgListView.Items[i].FindControl("CheckBox1")).Checked == true)
                        {
                            DataRow dr = entity.GetNewRecord();
                            dr["BiddingReturnCode"] = dt.Rows[i]["BiddingReturnCode"].ToString();
                            dr["BiddingDtlCode"]    = dt.Rows[i]["BiddingDtlCode"].ToString();
                            dr["SupplierCode"]      = dt.Rows[i]["SupplierCode"].ToString();
                            dr["OrderCode"]         = dt.Rows[i]["OrderCode"].ToString();
                            dr["BiddingEmitCode"]   = this.BiddingEmitCode;
                            dr["Abnegate"]          = 0;
                            entity.AddNewRecord(dr);
                            //更新供应商表
                            stat = "1";


                            //添加评分信息
                            RmsPM.BLL.BiddingGradeMessage cbiddingGradeMessage = new RmsPM.BLL.BiddingGradeMessage();

                            cbiddingGradeMessage.ApplicationCode      = dt.Rows[i]["BiddingReturnCode"].ToString();
                            cbiddingGradeMessage.BiddingGradeTypeCode = "100002";
                            if (cbiddingGradeMessage.GetBiddings().Rows.Count == 0)
                            {
                                cbiddingGradeMessage.BiddingGradeMessageCode = "";
                                cbiddingGradeMessage.ProjectManage           = "";
                                cbiddingGradeMessage.State = "1";
                                cbiddingGradeMessage.dao   = dao;
                                cbiddingGradeMessage.BiddingGradeMessageAdd();
                            }

                            ////////////////网上招投标数据产生////////////////////
                            if (tempsuppliercodestr.IndexOf(dt.Rows[i]["SupplierCode"].ToString()) == -1 && this.CheckBox2.Checked)
                            {
                                tempsuppliercodestr += "," + dt.Rows[i]["SupplierCode"].ToString();
                                EmitToInsert(dt.Rows[i]["SupplierCode"].ToString(), this.BiddingEmitCode);
                            }
                            ///////////////////////////////////////////////////////
                        }
                        //更新供应商列表

                        BSup.BiddingSupplierCode = this.dgListView.DataKeys[i].ToString();
                        BSup.State = stat;
                        BSup.dao   = dao;
                        BSup.BiddingSupplierUpdate();



                        //BSup.BiddingSupplierUpdate();
                    }
                    dao.SubmitEntity(entity);
                    entity.Dispose();
                }

                //保存开标人
                if (this.CheckBox2.Checked)
                {
                    BiddingBFL.Emit_SendMail(this.BiddingEmitCode, Server.MapPath(ConfigurationManager.AppSettings["VirtualDirectory"].ToString()) + @"\EmailTemplate.xml");
                    foreach (ListItem opener in chkOpener.Items)
                    {
                        if (opener.Selected)
                        {
                            BiddingBFL.InsertBiddingOpener(this.BiddingEmitCode, opener.Value);
                        }
                    }
                }
            }
        }