Exemple #1
0
        public override void BindControl()
        {
            if (IsRefineInstead)
            {
                ddlRefineList.Visible  = true;
                txtRefineIntro.Visible = true;
                //btnSave.Visible = true;

                RefineDAL refDAL     = new RefineDAL();
                var       refineList = refDAL.GetRefineBySource(SysConst.SourceTypeOrder, OrderNo);
                var       result     = (from r in refineList
                                        select new NameValueItem()
                {
                    Name = r.Refine_No,
                    Value = r.Refine_No
                }).ToList();
                Utility.BindDataToDropdown(ddlRefineList, result);
                if (!string.IsNullOrEmpty(RefineNo))
                {
                    ddlRefineList.SelectedValue = RefineNo;
                }
                txtRefineIntro.Text = RefineIntro;
            }
            MachItemDAL dal       = new MachItemDAL();
            var         machItems = dal.GetMachItemsByMachId(MachId);

            Utility.BindDataToRepeater(rpItems, machItems);
        }
        public override void BindControl()
        {
            RefineDAL dal    = new RefineDAL();
            var       result = dal.GetRefineBySource(SourceType, SourceNo);

            string        enqNo    = string.Empty;
            List <Refine> refines2 = new List <Refine>();
            Order         ord      = new Order();

            if (string.Equals(SourceType, SysConst.SourceTypeEnquiry, StringComparison.OrdinalIgnoreCase))
            {
                ord = new OrderDAL().GetOrderByEnq(SourceNo);
                if (ord != null)
                {
                    refines2 = dal.GetRefineBySource(SysConst.SourceTypeOrder, ord.Order_No);
                }
            }
            else if (string.Equals(SourceType, SysConst.SourceTypeOrder, StringComparison.OrdinalIgnoreCase))
            {
                ord = new OrderDAL().GetOrderByNo(SourceNo);
                if (!string.IsNullOrEmpty(ord.EnqNo))
                {
                    var enq = new EnquiryDAL().GetEnquiryByNo(ord.EnqNo);
                    refines2 = dal.GetRefineByEnq(enq.Enquiry_No);
                }
            }
            result.AddRange(refines2);
            result = result.Distinct(new RefineComparer()).OrderBy(r => r.Refine_No).ToList();
            Utility.BindDataToRepeater(rpRefinement, result);
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            RefineDAL dal    = new RefineDAL();
            var       refine = dal.GetRefineByNo(RefNo);

            refine.RefineMan = Utility.GetSelectedText(ddlRefMan);
            if (!string.IsNullOrEmpty(txtCompletedDate.Text))
            {
                refine.RequestCompleteDate = DateTime.Parse(txtCompletedDate.Text);
            }
            AddFollowUp(followUpControl, refine.Status, Utility.GetSelectedText(ddlRefineStatus));
            refine.Status = Utility.GetSelectedText(ddlRefineStatus);
            refine.NeedCustomerConfirm  = chkConfirm.Checked;
            refine.CustomerConfirmIntro = txtConfirmIntro.Text;
            refine.IncludeMaching       = chkIncludeMachining.Checked;
            refine.NeedApprove          = chkNeedApprove.Checked;
            refine.RefineIntro          = txtRefineIntro.Text;
            refine.CustomerCompanyName  = customerInfoControl.CompanyName;
            refine.CustomerContactName  = customerInfoControl.ContactName;
            refine.CustomerAddress      = customerInfoControl.Address;
            refine.CustomerQQ           = customerInfoControl.QQ;
            refine.CustomerEmail        = customerInfoControl.Email;
            refine.CustomerPhone1       = customerInfoControl.Phone1;
            refine.CustomerPhone2       = customerInfoControl.Phone2;
            refine.CustomerOthers       = customerInfoControl.Other;

            dal.Save();
            //save new customer
            customerInfoControl.Save();
            SetFocus(sender);
        }
        private List <Refine> GetRefineList()
        {
            string   refNo       = txtRefineNo.Text;
            string   refMan      = Utility.GetSelectedText(ddlRefMan);
            string   enqOrdMan   = Utility.GetSelectedText(ddlEnqOrderResponder);
            string   status      = Utility.GetSelectedText(ddlRefineStatus);
            DateTime beginDate   = !string.IsNullOrEmpty(txtBeginDate.Text) ? DateTime.Parse(txtBeginDate.Text) : DateTime.MinValue;
            DateTime endDate     = !string.IsNullOrEmpty(txtEndDate.Text) ? DateTime.Parse(txtEndDate.Text) : DateTime.MaxValue;
            string   companyName = Utility.GetSelectedText(ddlCompany);
            string   contact     = Utility.GetSelectedText(ddlContact);
            string   email       = txtEmail.Text;
            string   phone       = txtPhone.Text;
            string   qq          = txtQQ.Text;

            RefineDAL dal    = new RefineDAL();
            var       result = dal.SearchRefine(refNo,
                                                refMan,
                                                enqOrdMan,
                                                status,
                                                beginDate,
                                                endDate,
                                                companyName,
                                                contact,
                                                email,
                                                phone,
                                                qq);

            return(result);
        }
        protected void btnChangeStatus_Click(object sender, EventArgs e)
        {
            RefineDAL dal    = new RefineDAL();
            var       refine = dal.GetRefineById(RefId);

            AddFollowUp(followUpControl, refine.Status, Utility.GetSelectedText(ddlRefineStatus));
            refine.Status = Utility.GetSelectedText(ddlRefineStatus);
            dal.Save();
            SetFocus(btnChangeStatus);
        }
        protected void rpEnqList_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Enquiry      enq  = e.Item.DataItem as Enquiry;
                RefineDAL    rDal = new RefineDAL();
                SurveyDAL    sDal = new SurveyDAL();
                QuotationDAL qDal = new QuotationDAL();

                Repeater rpRefinement = e.Item.FindControl("rpRefinement") as Repeater;
                Utility.BindDataToRepeater(rpRefinement, rDal.GetRefineBySource(SysConst.SourceTypeEnquiry, enq.Enquiry_No));

                Repeater rpSurvey = e.Item.FindControl("rpSurvey") as Repeater;
                Utility.BindDataToRepeater(rpSurvey, sDal.GetSurveyBySource(enq.Enquiry_No, SysConst.SourceTypeEnquiry));

                Repeater rpQuoationa = e.Item.FindControl("rpQuoation") as Repeater;
                Utility.BindDataToRepeater(rpQuoationa, qDal.GetQuotesBySource(SysConst.SourceTypeEnquiry, enq.Enquiry_No));

                FollowUpTop3UserControl followUp = e.Item.FindControl("followUpTop3UserControl") as FollowUpTop3UserControl;
                UIUtility.BindUserControl(followUp, SysConst.SourceTypeEnquiry, ((Enquiry)e.Item.DataItem).Enquiry_No);
            }
        }
        protected void btnCreateCADRefinement_Click(object sender, EventArgs e)
        {
            //get no
            SeedDAL sdal = new SeedDAL();
            string  no   = sdal.GetNoByTableName(SysConst.TableRefine, SysConst.SuffixRefine);
            //get enqordman
            string enqOrdMan   = string.Empty;
            string companyName = string.Empty;
            string contact     = string.Empty;
            string address     = string.Empty;
            string email       = string.Empty;
            string qq          = string.Empty;
            string phone1      = string.Empty;
            string phone2      = string.Empty;
            string other       = string.Empty;
            string enqNo       = string.Empty;

            if (string.Equals(SourceType, SysConst.SourceTypeEnquiry, StringComparison.OrdinalIgnoreCase))
            {
                EnquiryDAL enqDAL = new EnquiryDAL();
                var        enq    = enqDAL.GetEnquiryByNo(SourceNo);
                enqOrdMan   = enq.EnqMan;
                companyName = enq.CustomerCompanyName;
                contact     = enq.CustomerContactName;
                address     = enq.CustomerAddress;
                email       = enq.CustomerEmail;
                qq          = enq.CustomerQQ;
                phone1      = enq.CustomerPhone1;
                phone2      = enq.CustomerPhone2;
                other       = enq.CustomerOthers;
                enqNo       = SourceNo;
                //update enq status
                enq.Status = "申请CAD细化";
                enqDAL.Save();
            }
            if (string.Equals(SourceType, SysConst.SourceTypeSalesOrder, StringComparison.OrdinalIgnoreCase))
            {
                OrderDAL soDAL = new OrderDAL();
                var      so    = soDAL.GetOrderByNo(SourceNo);
                enqOrdMan   = so.OrderMan;
                companyName = so.CustomerCompanyName;
                contact     = so.CustomerContactName;
                address     = so.CustomerAddress;
                email       = so.CustomerEmail;
                qq          = so.CustomerQQ;
                phone1      = so.CustomerPhone1;
                phone2      = so.CustomerPhone2;
                other       = so.CustomerOthers;
                enqNo       = so.EnqNo;
                //update enq status
                so.Status = "申请CAD细化";
                soDAL.Save();
            }
            //new refine
            RefineDAL dal    = new RefineDAL();
            Refine    refine = new Refine()
            {
                Refine_No           = no,
                Status              = FirstStatusConsts.Refine,
                EnqOrdMan           = enqOrdMan,
                SourceType          = SourceType,
                SourceNo            = SourceNo,
                CreatedDate         = DateTime.Now,
                CreatedAt           = DateTime.Now,
                CreatedBy           = SMSContext.Current.User.UserName,
                CustomerCompanyName = companyName,
                CustomerContactName = contact,
                CustomerAddress     = address,
                CustomerEmail       = email,
                CustomerQQ          = qq,
                CustomerPhone1      = phone1,
                CustomerPhone2      = phone2,
                CustomerOthers      = other,
                EnqNo = enqNo
            };

            dal.AddRefine(refine);
            dal.Save();

            int    refid  = refine.Refine_Id;
            string refno  = refine.Refine_No;
            string url    = Page.ResolveUrl(string.Format("~/RefineForm.aspx?refid={0}&refno={1}&sourcetype={2}&sourceno={3}", refid, refno, SourceType, SourceNo));
            string script = string.Format("<script>window.open('{0}')</script>", url);

            Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "createrefine", script);
            BindControl();
            SetFocus(btnCreateCADRefinement);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Utility.BindDataToDropdown(ddlEnqOrdMan, Utility.GetUserList2(true));
                Utility.BindDataToDropdown(ddlRefMan, Utility.GetUserList2(true));

                if (!string.IsNullOrEmpty(SourceType) && !string.IsNullOrEmpty(SourceNo))
                {
                    //link
                    if (string.Equals(SourceType, SysConst.SourceTypeEnquiry, StringComparison.OrdinalIgnoreCase))
                    {
                        EnquiryDAL eDAL = new EnquiryDAL();
                        var        enq  = eDAL.GetEnquiryByNo(SourceNo);
                        lnkSource.NavigateUrl = Page.ResolveUrl(string.Format("~/enquiryform.aspx?enqno={0}&enqid={1}", SourceNo, enq.Enquiry_Id));
                    }
                    else
                    {
                        OrderDAL sDAL = new OrderDAL();
                        var      ord  = sDAL.GetOrderByNo(SourceNo);
                        lnkSource.NavigateUrl = Page.ResolveUrl(string.Format("~/orderform.aspx?ordno={0}&ordid={1}&sourcetype={2}&sourceno={3}", SourceNo, ord.Order_Id, ord.SourceType, ord.SourceNo));
                    }
                    lnkSource.Text = SourceNo;

                    RefineDAL dal    = new RefineDAL();
                    var       refine = dal.GetRefineByNo(RefNo);
                    //basic
                    txtCreatedDate.Text         = refine.CreatedDate.ToString("yyyy-MM-dd");
                    ddlEnqOrdMan.SelectedValue  = refine.EnqOrdMan;
                    ddlRefMan.SelectedValue     = refine.RefineMan;
                    txtCompletedDate.Text       = refine.RequestCompleteDate.HasValue ? refine.RequestCompleteDate.Value.ToString("yyyy-MM-dd") : string.Empty;
                    chkConfirm.Checked          = refine.NeedCustomerConfirm;
                    txtConfirmIntro.Text        = refine.CustomerConfirmIntro;
                    chkIncludeMachining.Checked = refine.IncludeMaching;
                    chkNeedApprove.Checked      = refine.NeedApprove;
                    txtRefineIntro.Text         = refine.RefineIntro;
                    //customer info
                    this.customerInfoControl.SetValue(
                        refine.CustomerCompanyName,
                        refine.CustomerContactName,
                        refine.CustomerAddress,
                        refine.CustomerEmail,
                        refine.CustomerQQ,
                        refine.CustomerPhone1,
                        refine.CustomerPhone2,
                        refine.CustomerOthers);
                    //history cad
                    UIUtility.BindUserControl(cADRefinementControl, SourceType, SourceNo);
                    //customer drawing
                    UIUtility.BindUserControl(customerDrawingControl, SourceType, SourceNo);
                    //survey
                    UIUtility.BindUserControl(surveyControl, SourceType, SourceNo);
                    //cad
                    cADFileListControl.RefineId = RefId;
                    UIUtility.BindUserControl(cADFileListControl, SourceType, SourceNo);
                    //followup
                    UIUtility.BindUserControl(followUpControl, SysConst.SourceTypeRefine, refine.Refine_No);

                    //status dropdown
                    var result = StatusEngine.GetRefineStatus(chkIncludeMachining.Checked, chkNeedApprove.Checked, chkConfirm.Checked);
                    ddlRefineStatus.Items.Clear();
                    foreach (var item in result)
                    {
                        ddlRefineStatus.Items.Add(new ListItem()
                        {
                            Text = item, Value = item
                        });
                    }
                    ddlRefineStatus.SelectedValue = refine.Status;
                }
            }
        }