예제 #1
0
 /// <summary>
 ///  Получить обновленный документ
 /// </summary>
 /// <param name="num_doc"></param>
 /// <returns></returns>
 public UZ_DOC GetDocumentOfDB_NumDoc(string num_doc)
 {
     try
     {
         UZ_Convert convert = new UZ_Convert(this.servece_owner);
         UZ_DOC     doc     = null;
         EFUZ_Data  ef_data = new EFUZ_Data(new EFSMSDbContext());
         UZ_Data    uzd     = ef_data.Context.Where(d => d.doc_Id == num_doc).FirstOrDefault();
         if (uzd != null)
         {
             string xml_final = convert.XMLToFinalXML(uzd.raw_xml);
             OTPR   otpr      = convert.FinalXMLToOTPR(xml_final);
             // Документ найден
             doc                = new UZ_DOC();
             doc.id_doc         = uzd.doc_Id;
             doc.revision       = uzd.doc_Revision;
             doc.status         = GetStatus(uzd.doc_Status);
             doc.sender_code    = uzd.depart_code;
             doc.recipient_code = uzd.arrived_code;
             doc.dt             = uzd.dt;
             doc.xml            = uzd.raw_xml;
             doc.xml_final      = xml_final;
             doc.otpr           = otpr;
         }
         return(doc);
     }
     catch (Exception e)
     {
         e.ExceptionMethodLog(String.Format("GetDocumentOfDB_NumDoc(num_doc={0})", num_doc), this.servece_owner, eventID);
         return(null);
     }
 }
예제 #2
0
        /// <summary>
        /// Получить UZ_DOC документ из UZ_Data (Промежуточной базы)
        /// </summary>
        /// <param name="uz_doc"></param>
        /// <returns></returns>
        public UZ_DOC Convert_UZ_Data_To_UZ_DOC(UZ_Data uz_doc)
        {
            try
            {
                UZ_Convert convert   = new UZ_Convert(this.servece_owner);
                string     xml_final = convert.XMLToFinalXML(uz_doc.raw_xml);
                OTPR       otpr      = convert.FinalXMLToOTPR(xml_final);

                // Документ найден
                UZ_DOC doc = new UZ_DOC()
                {
                    id_doc         = uz_doc.doc_Id,
                    revision       = uz_doc.doc_Revision,
                    status         = GetStatus(uz_doc.doc_Status),
                    sender_code    = uz_doc.depart_code,
                    recipient_code = uz_doc.arrived_code,
                    dt             = uz_doc.dt,
                    xml            = uz_doc.raw_xml,
                    xml_final      = xml_final,
                    otpr           = otpr,
                };
                return(doc);
            }
            catch (Exception e)
            {
                e.ExceptionMethodLog(String.Format("Convert_UZ_Data_To_UZ_DOC(doc={0})", uz_doc), this.servece_owner, eventID);
                return(null);
            }
        }
예제 #3
0
        /// <summary>
        /// Получить XML перевозочного документа из промежуточной базой KRR-PA-VIZ-Other_DATA по номеру вагона
        /// </summary>
        /// <param name="num"></param>
        /// <returns></returns>
        public UZ_DOC GetDocumentOfDB_Num(int num)
        {
            try
            {
                UZ_DOC         doc      = null;
                EFUZ_VagonData ef_vagon = new EFUZ_VagonData(new EFSMSDbContext());
                EFUZ_Data      ef_data  = new EFUZ_Data(new EFSMSDbContext());
                UZ_VagonData   vagon    = ef_vagon.Context.Where(v => v.nomer == num.ToString()).OrderByDescending(c => c.dt).FirstOrDefault();
                if (vagon != null)
                {
                    // вагон найден. найдем документ
                    UZ_Data data = ef_data.Context.Where(d => d.doc_Id == vagon.nom_doc).FirstOrDefault();
                    if (data != null)
                    {
                        UZ_Convert convert   = new UZ_Convert(this.servece_owner);
                        string     xml_final = convert.XMLToFinalXML(data.raw_xml);
                        OTPR       otpr      = convert.FinalXMLToOTPR(xml_final);

                        // Документ найден
                        doc                = new UZ_DOC();
                        doc.id_doc         = data.doc_Id;
                        doc.revision       = data.doc_Revision;
                        doc.status         = GetStatus(data.doc_Status);
                        doc.sender_code    = data.depart_code;
                        doc.recipient_code = data.arrived_code;
                        doc.dt             = data.dt;
                        doc.xml            = data.raw_xml;
                        doc.xml_final      = xml_final;
                        doc.otpr           = otpr;
                    }
                }
                return(doc);
            }
            catch (Exception e)
            {
                e.ExceptionMethodLog(String.Format("GetDocumentOfDB_Num(num={0})", num), this.servece_owner, eventID);
                return(null);
            }
        }