Exemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            bool _IsLogin = EyouSoft.Security.Membership.UserProvider.IsUserLogin(out SiteUserInfo);


            if (!IsPostBack)
            {
                this.hidDocName.Value = EyouSoft.Common.Utils.GetQueryStringValue("docName");
                this.hidDocName.Value = "个人详细信息";

                if (SiteUserInfo == null)
                {
                    EyouSoft.BLL.SysStructure.SystemDomain   bll    = new EyouSoft.BLL.SysStructure.SystemDomain();
                    EyouSoft.Model.SysStructure.SystemDomain domain = bll.GetDomain(Request.Url.Host.ToLower());
                    CurrentUserCompanyID = domain.CompanyId;
                    EyouSoft.BLL.CompanyStructure.Customer Customer = new EyouSoft.BLL.CompanyStructure.Customer();
                    EyouSoft.Model.CompanyStructure.CompanyPrintTemplate CustomerConfig = GetTemplateByCompaneyId(CurrentUserCompanyID);

                    if (CustomerConfig != null)
                    {
                        DepartStamp  = CustomerConfig.DepartStamp;
                        PageHeadFile = CustomerConfig.PageHeadFile;
                        PageFootFile = CustomerConfig.PageFootFile;
                    }
                }
                else
                {
                    if (SiteUserInfo.ContactInfo.UserType == EyouSoft.Model.EnumType.CompanyStructure.CompanyUserType.专线用户)
                    {
                        CurrentUserCompanyID = SiteUserInfo.CompanyID;
                        EyouSoft.Model.CompanyStructure.CompanyPrintTemplate modelDepartmentPrint = GetTemplate();

                        if (modelDepartmentPrint != null)
                        {
                            DepartStamp  = modelDepartmentPrint.DepartStamp;
                            PageHeadFile = modelDepartmentPrint.PageHeadFile;
                            PageFootFile = modelDepartmentPrint.PageFootFile;
                        }
                    }

                    else if (SiteUserInfo.ContactInfo.UserType == EyouSoft.Model.EnumType.CompanyStructure.CompanyUserType.组团用户)
                    {
                        CurrentUserCompanyID = SiteUserInfo.TourCompany.TourCompanyId;
                        EyouSoft.BLL.CompanyStructure.Customer         Customer       = new EyouSoft.BLL.CompanyStructure.Customer();
                        EyouSoft.Model.CompanyStructure.CustomerConfig CustomerConfig = Customer.GetCustomerConfigModel(CurrentUserCompanyID);

                        if (CustomerConfig != null)
                        {
                            DepartStamp  = CustomerConfig.CustomerStamp;
                            PageHeadFile = CustomerConfig.PageHeadFile;
                            PageFootFile = CustomerConfig.PageFootFile;
                        }
                    }
                }
            }
            this.ibtnWord.Attributes.Add("onclick", "ReplaceInput();");
        }
Exemplo n.º 2
0
        /// <summary>
        /// 根据用户编号和公司编号获取公司打印文件实体(如果当前用户部门获取到的实体为NULL,则获取总部的)
        /// </summary>
        /// <param name="userId">用户编号</param>
        /// <param name="companyId">公司编号</param>
        /// <returns></returns>
        public EyouSoft.Model.CompanyStructure.CompanyPrintTemplate GetDeptPrint(int userId, int companyId)
        {
            //begin
            //if exists(
            //    select 1 from tbl_CompanyDepartment
            //    where Id = (select DepartId from tbl_CompanyUser where Id = 131)
            //    and CompanyId = 1)

            //    select PageHeadFile,PageFootFile,TemplateFile,DepartStamp from tbl_CompanyDepartment
            //    where Id = (select DepartId from tbl_CompanyUser where Id = 131)
            //    and CompanyId = 1
            //else
            //    select PageHeadFile,PageFootFile,TemplateFile,DepartStamp  from tbl_CompanyDepartment where CompanyId = 1 and PrevDepartId = 0
            //end
            EyouSoft.Model.CompanyStructure.CompanyPrintTemplate model = null;
            StringBuilder sql = new StringBuilder();

            //sql.AppendFormat("begin if exists(select 1 from tbl_CompanyDepartment where Id = (select DepartId from tbl_CompanyUser where Id = {0}) and CompanyId = {1})",
            //                    userId, companyId);
            sql.AppendFormat(" select PageHeadFile,PageFootFile,TemplateFile,DepartStamp from tbl_CompanyDepartment "
                             + " where Id = (select DepartId from tbl_CompanyUser where Id = {0}) and CompanyId = {1}", userId, companyId);
            //sql.AppendFormat(" else select PageHeadFile,PageFootFile,TemplateFile,DepartStamp  from tbl_CompanyDepartment "
            //                + " where CompanyId = {0} and PrevDepartId = 0 end", companyId);
            DbCommand cmd = this._db.GetSqlStringCommand(sql.ToString());

            using (IDataReader rdr = EyouSoft.Toolkit.DAL.DbHelper.ExecuteReader(cmd, this._db))
            {
                while (rdr.Read())
                {
                    model = new EyouSoft.Model.CompanyStructure.CompanyPrintTemplate();
                    model.PageHeadFile = rdr.IsDBNull(rdr.GetOrdinal("PageHeadFile")) ? "" : rdr.GetString(rdr.GetOrdinal("PageHeadFile"));
                    model.PageFootFile = rdr.IsDBNull(rdr.GetOrdinal("PageFootFile")) ? "" : rdr.GetString(rdr.GetOrdinal("PageFootFile"));
                    model.TemplateFile = rdr.IsDBNull(rdr.GetOrdinal("TemplateFile")) ? "" : rdr.GetString(rdr.GetOrdinal("TemplateFile"));
                    model.DepartStamp  = rdr.IsDBNull(rdr.GetOrdinal("DepartStamp")) ? "" : rdr.GetString(rdr.GetOrdinal("DepartStamp"));
                }
            }

            return(model);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取指定公司的系统配置信息
        /// </summary>
        /// <param name="CompanyId">公司编号</param>
        /// <returns></returns>
        public EyouSoft.Model.CompanyStructure.CompanyFieldSetting GetSetting(int CompanyId)
        {
            EyouSoft.Model.CompanyStructure.CompanyFieldSetting   model             = new EyouSoft.Model.CompanyStructure.CompanyFieldSetting();
            IList <EyouSoft.Model.CompanyStructure.PrintDocument> PrintDocumentList = new List <EyouSoft.Model.CompanyStructure.PrintDocument>();

            EyouSoft.Model.CompanyStructure.CompanyPrintTemplate CompanyPrintFile = new EyouSoft.Model.CompanyStructure.CompanyPrintTemplate();
            DbCommand cmd = this._db.GetSqlStringCommand(SQL_GetSetting);

            this._db.AddInParameter(cmd, "CompanyId", DbType.Int32, CompanyId);
            using (IDataReader dr = EyouSoft.Toolkit.DAL.DbHelper.ExecuteReader(cmd, this._db))
            {
                while (dr.Read())
                {
                    if (!dr.IsDBNull(dr.GetOrdinal("FieldName")))
                    {
                        string FieldName = dr[dr.GetOrdinal("FieldName")].ToString().Trim();
                        if (FieldName.Contains("PrintDocument_"))
                        {
                            EyouSoft.Model.CompanyStructure.PrintDocument PrintDocument = new EyouSoft.Model.CompanyStructure.PrintDocument();
                            PrintDocument.PrintTemplateType = (EyouSoft.Model.EnumType.CompanyStructure.PrintTemplateType) int.Parse(FieldName.Split('_')[1]);
                            PrintDocument.PrintTemplate     = dr[dr.GetOrdinal("FieldValue")].ToString();
                            PrintDocumentList.Add(PrintDocument);
                            PrintDocument = null;
                        }
                        else
                        {
                            switch (FieldName)
                            {
                            case "ContractReminderDays":
                                model.ContractReminderDays = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "DisplayAfterMonth":
                                model.DisplayAfterMonth = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "DisplayBeforeMonth":
                                model.DisplayBeforeMonth = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "ReservationTime":
                                model.ReservationTime = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "PriceComponent":
                                model.PriceComponent = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : (EyouSoft.Model.EnumType.CompanyStructure.PriceComponent) int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "LeaveTourDays":
                                model.LeaveTourReminderDays = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "BackTourDays":
                                model.BackTourReminderDays = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? 0 : int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "CompanyLogo":
                                model.CompanyLogo = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "DepartStamp":
                                CompanyPrintFile.DepartStamp = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "PageFootFile":
                                CompanyPrintFile.PageFootFile = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "PageHeadFile":
                                CompanyPrintFile.PageHeadFile = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "TemplateFile":
                                CompanyPrintFile.TemplateFile = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "AgencyFee":
                                model.AgencyFeeInfo = (EyouSoft.Model.EnumType.CompanyStructure.AgencyFeeType) int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "ProfitStatTourPagePath":
                                model.ProfitStatTourPagePath = dr.IsDBNull(dr.GetOrdinal("FieldValue")) ? string.Empty : dr[dr.GetOrdinal("FieldValue")].ToString();
                                break;

                            case "ComputeOrderType":
                                model.ComputeOrderType = (EyouSoft.Model.EnumType.CompanyStructure.ComputeOrderType) int.Parse(dr[dr.GetOrdinal("FieldValue")].ToString());
                                break;

                            case "TicketTravellerCheckedType":
                                model.TicketTravellerCheckedType = (EyouSoft.Model.EnumType.CompanyStructure.TicketTravellerCheckedType) int.Parse(dr["FieldValue"].ToString());
                                break;

                            case "ReceiptRemindType":
                                model.ReceiptRemindType = (EyouSoft.Model.EnumType.CompanyStructure.ReceiptRemindType) int.Parse(dr["FieldValue"].ToString());
                                break;

                            case "IsRequiredTraveller":
                                model.IsRequiredTraveller = this.GetBoolean(dr["FieldValue"].ToString());
                                break;

                            case "TeamNumberOfPeople":
                                model.TeamNumberOfPeople = (EyouSoft.Model.EnumType.CompanyStructure.TeamNumberOfPeople)EyouSoft.Toolkit.Utils.GetInt(dr["FieldValue"].ToString());
                                break;

                            case "TicketOfficeFillTime":
                                model.TicketOfficeFillTime = (EyouSoft.Model.EnumType.CompanyStructure.TicketOfficeFillTime)EyouSoft.Toolkit.Utils.GetInt(dr["FieldValue"].ToString());
                                break;

                            case "IsTicketOutRegisterPayment":
                                model.IsTicketOutRegisterPayment = this.GetBoolean(dr["FieldValue"].ToString());
                                break;

                            case "HuiKuanLvSFBHWeiShenHe":
                                model.HuiKuanLvSFBHWeiShenHe = GetBoolean(dr["FieldValue"].ToString());
                                break;

                            case "SiteTourDisplayType":
                                model.SiteTourDisplayType = Utils.GetEnumValue <EyouSoft.Model.EnumType.CompanyStructure.TourDisplayType>(dr["FieldValue"].ToString(), EyouSoft.Model.EnumType.CompanyStructure.TourDisplayType.明细团);
                                break;

                            case "SiteTemplateId":
                                model.SiteTemplate = Utils.GetEnumValue <EyouSoft.Model.EnumType.SysStructure.SiteTemplate>(dr["FieldValue"].ToString(), EyouSoft.Model.EnumType.SysStructure.SiteTemplate.None);
                                break;

                            case "TanChuangTiXingInterval":
                                model.TanChuangTiXingInterval = Utils.GetInt(dr["FieldValue"].ToString());
                                break;

                            case "SongTuanRenId":
                                model.SongTuanRenId = dr["FieldValue"].ToString();
                                break;

                            case "SongTuanRenName":
                                model.SongTuanRenName = dr["FieldValue"].ToString();
                                break;

                            case "JiHeDiDian":
                                model.JiHeDiDian = dr["FieldValue"].ToString();
                                break;

                            case "JiHeBiaoZhi":
                                model.JiHeBiaoZhi = dr["FieldValue"].ToString();
                                break;
                            }
                        }
                    }
                }
            }
            model.PrintDocument    = PrintDocumentList;
            model.CompanyPrintFile = CompanyPrintFile;
            return(model);
        }
Exemplo n.º 4
0
        /// <summary>
        /// word导出
        /// </summary>
        protected void ibtnWord_Click(object sender, ImageClickEventArgs e)
        {
            string printHtml    = Request.Form["hidPrintHTML"];
            string saveFileName = HttpUtility.UrlEncode(this.hidDocName.Value + ".doc");

            Response.ClearContent();
            Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", saveFileName));
            Response.ContentType     = "application/ms-word";
            Response.Charset         = "utf-8";
            Response.ContentEncoding = System.Text.Encoding.UTF8;

            StringBuilder strHtml = new StringBuilder();

            strHtml.Append("<html>\n<head>\n<meta http-equiv=Content-Type content=\"text/html; charset=gb2312\">\n<meta name=ProgId content=Word.Document>");
            strHtml.Append("<style>" + "\n" +
                           "<!--" + "\n" +
                           "BODY { MARGIN: 0px }" + "\n" +
                           "TABLE { BORDER-COLLAPSE: collapse }" + "\n" +
                           "TD { FONT-SIZE: 12px; WORD-BREAK: break-all; LINE-HEIGHT: 100%; TEXT-DECORATION: none }" + "\n" +
                           "BODY { FONT-SIZE: 12px; WORD-BREAK: break-all; TEXT-DECORATION: none;font-family:宋体;mso-bidi-font-family:宋体;mso-font-kerning:0pt }" + "\n" +
                           "p.MsoNormal, li.MsoNormal, div.MsoNormal" + "\n" +
                           "{mso-style-parent:\"\";" + "\n" +
                           "margin:0cm;" + "\n" +
                           "margin-bottom:.0001pt;" + "\n" +
                           "text-align:justify;" + "\n" +
                           "text-justify:inter-ideograph;" +
                           "mso-pagination:none;" + "\n" +
                           "font-size:10.5pt;" + "\n" +
                           "mso-bidi-font-size:12.0pt;" + "\n" +
                           "font-family:\"Times New Roman\";" + "\n" +
                           "mso-fareast-font-family:宋体;" + "\n" +
                           "mso-font-kerning:1.0pt;}" + "\n" +
                           "@page" + "\n" +
                           "{mso-page-border-surround-header:no;" + "\n" +
                           "mso-page-border-surround-footer:no;}" + "\n" +
                           "@page Section1" + "\n" +
                           "{size:595.3pt 841.9pt;" + "\n" +
                           "margin:1.0cm 1.0cm 1.0cm 1.0cm;" + "\n" +
                           "mso-header-margin:0cm;" + "\n" +
                           "mso-footer-margin:0cm;" + "\n" +
                           "mso-paper-source:0;" + "\n" +
                           "layout-grid:15.6pt;}" + "\n" +
                           "div.Section1" + "\n" +
                           "{page:Section1;}" + "\n" +
                           ".BlnFnt { FONT-WEIGHT: bold; FONT-SIZE: 14px }" + "\n" +
                           "table{min-height:24px;}" + "\n" +
                           ".hand{cursor:pointer;}" + "\n" +
                           "body{font:100% Verdana,Arial,Helvetica,sans-serif;font-size:12px;margin:0;padding:0; text-align:center;}" + "\n" +
                           "#divContent{width:760px; margin:0 auto;text-align:left;}" + "\n" +
                           ".underlineTextBox{border:none;border-bottom:1px solid black;text-align:center;}" + "\n" +
                           ".nonelineTextBox{border:none;text-align:center;border-color:white;}" +
                           "table{border-collapse:collapse;}table td{border-collapse:collapse;}.table_normal2{border:solid #000;border-width:1px 0 0 1px;}.table_normal2 td,.table_normal2 th{border:solid #000;border-width:0 1px 1px 0;}.table_normal{border:solid #000;border-width:1px 0 0 1px;border:1px solid black;margin:0px;padding:0px;}.table_normal .normaltd{border:solid #000;border-width:0 1px 1px 0;border:1px solid black;}.table_noneborder{border:none;}.table_l_border{border-left:1px solid #000;}.table_t_border{border-top:1px solid #000;}.table_r_border{border-right:1px solid #000;}.table_b_border{border-bottom:1px solid #000;}.td_noneborder{border:none;}.td_l_border{border-left:1px solid #000}.td_l_t_border{border-left:1px solid #000;border-top:1px solid #000;}.td_l_r_border{border-left:1px solid #000;border-right:1px solid #000;}.td_l_b_border{border-left:1px solid #000;border-bottom:1px solid #000;}.td_t_border{border-top:1px solid #000;}.td_t_r_border{border-top:1px solid #000;border-right:1px solid #000;}.td_t_b_border{border-top:1px solid #000;border-bottom:1px solid #000;}.td_r_border{border-right:1px solid #000;}.td_r_b_border{border-right:1px solid #000;border-bottom:1px solid #000}.td_b_border{border-bottom:1px solid #000}.Placeholder5{margin:0;padding:0;height:5px;width:100%;}.Placeholder10{margin:0;padding:0;height:10px;width:100%;}.Placeholder15{margin:0;padding:0;height:15px;width:100%;}.Placeholder20{margin:0;padding:0;height:20px;width:100%;}" +
                           "-->" + "\n" +
                           "</style>");
            strHtml.Append("</head>\n");
            strHtml.Append("<body lang=ZH-CN style='tab-interval:21.0pt;text-justify-trim:punctuation'>\n<div class=Section1 style='layout-grid:15.6pt'>\n");
            //内容开始
            strHtml.Append(printHtml);
            //内容结束
            strHtml.Append("</div>\n</body>\n</html>");
            //保存现有线路信息到文件
            Random rnd = new Random();
            //获得文件名
            string RouteInfoFileName = DateTime.Now.ToFileTime().ToString() + rnd.Next(1000, 99999).ToString() + ".doc";
            string tmpName           = DateTime.Now.ToFileTime().ToString() + rnd.Next(1000, 99999).ToString() + ".doc";
            string WordTemplateFile  = "/PrintTemplate/default.dot";

            if (SiteUserInfo == null)
            {
                EyouSoft.Model.CompanyStructure.CompanyPrintTemplate modelDepartmentPrint = GetTemplateByCompaneyId(CurrentUserCompanyID);
                if (modelDepartmentPrint != null)
                {
                    if (modelDepartmentPrint.TemplateFile != "" && System.IO.File.Exists(Server.MapPath(modelDepartmentPrint.TemplateFile)))
                    {
                        WordTemplateFile = modelDepartmentPrint.TemplateFile;
                    }
                    else
                    {
                        WordTemplateFile = "/PrintTemplate/default.dot";
                    }
                }
            }
            else
            {
                if (SiteUserInfo.ContactInfo.UserType == EyouSoft.Model.EnumType.CompanyStructure.CompanyUserType.专线用户)
                {
                    EyouSoft.Model.CompanyStructure.CompanyPrintTemplate modelDepartmentPrint = GetTemplate();
                    if (modelDepartmentPrint != null)
                    {
                        if (modelDepartmentPrint.TemplateFile != "" && System.IO.File.Exists(Server.MapPath(modelDepartmentPrint.TemplateFile)))
                        {
                            WordTemplateFile = modelDepartmentPrint.TemplateFile;
                        }
                        else
                        {
                            WordTemplateFile = "/PrintTemplate/default.dot";
                        }
                    }
                }
                else if (SiteUserInfo.ContactInfo.UserType == EyouSoft.Model.EnumType.CompanyStructure.CompanyUserType.组团用户)
                {
                    EyouSoft.Model.CompanyStructure.CustomerConfig modelCustomerConfig = GetCustomerConfigTemplate();
                    if (modelCustomerConfig != null)
                    {
                        if (modelCustomerConfig.TemplateFile != "" && System.IO.File.Exists(Server.MapPath(modelCustomerConfig.TemplateFile)))
                        {
                            WordTemplateFile = modelCustomerConfig.TemplateFile;
                        }
                        else
                        {
                            WordTemplateFile = "/PrintTemplate/default.dot";
                        }
                    }
                }
            }
            StringValidate objFile = new StringValidate();

            objFile.WriteTextToFile(Server.MapPath("/DocTmpFile/" + RouteInfoFileName), strHtml.ToString());
            //保存到WORD文件
            Adpost.Common.Office.InteropWord objWord = new Adpost.Common.Office.InteropWord(); //定义对象
            objWord.Add(Server.MapPath(WordTemplateFile));                                     //打开模板
            objWord.InsertWordFile(Server.MapPath("/DocTmpFile/" + RouteInfoFileName));
            objWord.SaveAs(Server.MapPath("/DocTmpFile/") + tmpName);
            objFile.FileDel(Server.MapPath("/DocTmpFile/" + RouteInfoFileName));
            objWord.Dispose();
            Response.Clear();
            Response.Redirect("/DocTmpFile/" + tmpName);
            Response.End();
        }
Exemplo n.º 5
0
 /// <summary>
 /// 得到专线用户打印模版变量
 /// </summary>
 private EyouSoft.Model.CompanyStructure.CompanyPrintTemplate GetTemplate()
 {
     EyouSoft.Model.CompanyStructure.CompanyPrintTemplate modelDepartmentPrint = EyouSoft.BLL.UserInfoExtension.GetDeptPrint(SiteUserInfo);
     return(modelDepartmentPrint);
 }