Beispiel #1
0
 public static ProphSubsection[] GetSubsections(OrderSection section, bool pediatric)
 {
     if (section != OrderSection.D3)
     {
         return(new ProphSubsection[] { ProphSubsection.None });
     }
     else
     {
         if (pediatric)
         {
             return(new ProphSubsection[] {
                 ProphSubsection.Stage1,
                 ProphSubsection.Stage2,
                 ProphSubsection.Prophylaxis,
                 ProphSubsection.DispChildrenTight,
                 ProphSubsection.DispChildrenAdopted,
                 ProphSubsection.ProphChildren
             });
         }
         else
         {
             return(new ProphSubsection[] {
                 ProphSubsection.Stage1,
                 ProphSubsection.Stage2,
                 ProphSubsection.Prophylaxis
             });
         }
     }
 }
Beispiel #2
0
        void WriteSectionTitle(OrderSection section)
        {
            ConsoleColor fg = Console.ForegroundColor;

            Console.ForegroundColor = COLOR_TITLE;

            switch (section)
            {
            case OrderSection.D1:
                WriteCenter("Случаи обращения с лечебной целью");
                break;

            case OrderSection.D2:
                WriteCenter("Случаи ВМП");
                break;

            case OrderSection.D3:
                WriteCenter("Профосмотры и диспансеризация ("
                            + ProphSubsectionHelper.AsString(invoiceFilename.Subsection)
                            + ")");
                break;

            case OrderSection.D4:
                WriteCenter("Онкология");
                break;
            }
            Console.ForegroundColor = fg;
        }
Beispiel #3
0
        public void Write(Lib.XmlExporter xml, Data.IInvoice pool, OrderSection section)
        {
            xml.Writer.WriteStartElement("PERS");

            xml.WriteIfValid("ID_PAC", ID);
            xml.WriteIfValid("FAM", Family);
            xml.WriteIfValid("IM", Name);
            xml.WriteIfValid("OT", Patronymic);
            xml.Writer.WriteElementString("W", Sex.ToString());
            xml.Writer.WriteElementString("DR", BirthDate.AsXml());

            WritePersonIdentityError(xml);

            if (section == OrderSection.D3)
            {
                xml.WriteIfValid("TEL", Phone);
            }

            if (Representative != null)
            {
                Representative.Write(xml, pool);
            }

            // FOMS
            //xml.WriteIfValid("MR", Address);
            xml.WriteIfValid("MR", BirthPlace);

            xml.WriteIfValid("DOCTYPE", DocumentType);

#if FOMS
            xml.WriteIfValid("SOC", SocialPosition);
#endif

            xml.WriteIfValid("DOCSER", DocumentSerial);
            xml.WriteIfValid("DOCNUM", DocumentNumber);
#if FOMS
            if (DocumentDate.HasValue)
            {
                xml.Writer.WriteElementString("DOCDATE", DocumentDate.Value.AsXml());
            }
            xml.WriteIfValid("DOCORG", DocumentOrganization);
#endif

            xml.WriteIfValid("SNILS", Snils);
#if FOMS
            xml.Writer.WriteElementString("OKATOG", ResidenceOkato);
#else
            xml.WriteIfValid("OKATOG", ResidenceOkato);
#endif
            xml.WriteIfValid("OKATOP", PresenceOkato);

#if FOMS
            xml.WriteIfValid("KT", SocialFavour);
#endif

            xml.WriteIfValid("COMENTP", Comment);

            xml.Writer.WriteEndElement();
        }
Beispiel #4
0
        /// <summary>
        /// Save service instance to a XML
        /// </summary>
        /// <param name="xml">XML exporter to use</param>
        /// <param name="pool">Datapool</param>
        /// <param name="section">Section of the order #59</param>
        /// <param name="irec">Invoice record parental to the event</param>
        /// <param name="evt">Event to which this service belongs</param>
        public void Write(Lib.XmlExporter xml, Data.IInvoice pool, OrderSection section, InvoiceRecord irec, Recourse rec, Event evt)
        {
            switch (section)
            {
            case OrderSection.D1:
                WriteD1(xml, pool, irec, rec, evt);
                break;

            case OrderSection.D2:
                WriteD2(xml, pool, irec, rec, evt);
                break;

            case OrderSection.D3:
                WriteD3(xml, pool, irec, rec, evt);
                break;
            }
        }
Beispiel #5
0
        public static string AsString(OrderSection section, ProphSubsection subsection)
        {
            switch (section)
            {
            case OrderSection.D1:
                return("с лечебной целью");

            case OrderSection.D2:
                return("ВМП");

            case OrderSection.D3:
                return("профилактики и диспансеризации ("
                       + ProphSubsectionHelper.AsString(subsection) + ")");

            case OrderSection.D4:
                return("онкологии");
            }
            return(string.Empty);
        }
Beispiel #6
0
        /// <summary>
        /// Save person data to invoice XML
        /// </summary>
        /// <param name="xml">XML exporter to write to</param>
        /// <param name="section">Order #59 section</param>
        public void Write(Lib.XmlExporter xml, OrderSection section)
        {
            switch (section)
            {
            case OrderSection.D1:
                WriteD1(xml);
                break;

            case OrderSection.D2:
                WriteD2(xml);
                break;

            case OrderSection.D3:
                WriteD3(xml);
                break;

            case OrderSection.D4:
                WriteD4(xml);
                break;
            }
        }
 protected override void Initialize()
 {
     base.Initialize();
     MainPage     = OpenMainPage();
     OrderSection = MainPage.MainOverlay.OrderSection;
 }
Beispiel #8
0
        /// <summary>
        /// Save invoice record to XML
        /// </summary>
        /// <param name="xml">XML exporter to use</param>
        /// <param name="onRecourse">Callback to call on each recourse</param>
        /// <param name="pool">Datapool</param>
        /// <param name="section">Order #59 section</param>
        public void Write(Lib.XmlExporter xml, Action onRecourse, Data.IInvoice pool, OrderSection section, Model.ProphSubsection subsection)
        {
            foreach (Recourse recourse in pool.LoadRecourses(this, section, subsection))
            {
                ++Identity;
                xml.Writer.WriteStartElement("ZAP");
                xml.Writer.WriteElementString("N_ZAP", Identity.ToString());
                xml.WriteBool("PR_NOV", Revised);
                Person.Write(xml, section);
                recourse.Write(xml, pool, section, this);
                xml.Writer.WriteEndElement();

                onRecourse();
            }
        }