Ejemplo n.º 1
0
        /// <summary>
        /// 复制数据对象
        /// </summary>
        /// <param name="sou">源对象,需从DataPacket继承</param>
        public override void AssignFrom(DataPacket sou)
        {
            base.AssignFrom(sou);
            CtaDzTableData s = sou as CtaDzTableData;

            if (s != null)
            {
                _ctaStatus  = s._ctaStatus;
                _errorCount = s._errorCount;
                _dzTable.AssignFrom(s._dzTable);
            }
        }
Ejemplo n.º 2
0
        public CtaData ContrastCjz(CjzData CjzData, CjzData CtaCjzData, int Option)
        {
            CtaData ret = new CtaData();

            ret.fileName    = CjzData.fileName;
            ret.ctaFileName = CtaCjzData.fileName;
            ret.cjzData     = CjzData;
            ret.ctaCjzData  = CtaCjzData;

            foreach (DocData doc in CjzData.docList)
            {
                CtaDocData ctaDoc = new CtaDocData();
                ret.docList.Add(ctaDoc);
                ctaDoc.docData   = doc;
                ctaDoc.docName   = doc.docName;
                ctaDoc.docLevel  = doc.docLevel;
                ctaDoc.docType   = doc.docType;
                ctaDoc.docDataId = doc.UniqId;
                ctaDoc.parentUid = doc.parentUid;
                DocData ddoc = GetContrastDoc(doc, CjzData.docList.IndexOf(doc), CtaCjzData);

                if (ddoc != null)
                {
                    ctaDoc.ctaDocData   = ddoc;
                    ctaDoc.ctaDocDataId = ddoc.UniqId;
                    ctaDoc.errorCount   = 0;

                    foreach (TableData table in doc.tableList)
                    {
                        CtaDzTableData ctaDzTable = new CtaDzTableData();
                        ctaDoc.tableList.Add(ctaDzTable);
                        ctaDzTable.tableName = table.tableName;
                        ctaDzTable.souTable  = table;
                        ctaDzTable.ReFormFields();
                        ctaDzTable.RefreshRecs();
                        ctaDzTable.ReSetRecStatus();

                        TableData dtable = GetContrastTable(table, ddoc);
                        if (dtable != null)
                        {
                            CtaTableData ctaTable = ctaDzTable.dzTable;
                            ctaTable.tableName = dtable.tableName;
                            ctaTable.souTable  = dtable;
                            ctaTable.ReFormFields();
                            ctaTable.RefreshRecs();
                            ctaTable.ReSetRecStatus();

                            ctaDzTable.FormCtaRelates();
                            ctaDoc.errorCount = ctaDoc.errorCount + ctaDzTable.errorCount;
                        }
                        else
                        {
                            ctaDzTable.ctaStatus = (int)_ctaStatusEnum.csAdd;
                            ctaDoc.errorCount    = ctaDoc.errorCount + 1;
                        }
                    }
                }
                else
                {
                    ctaDoc.ctaStatus  = (int)_ctaStatusEnum.csAdd;
                    ctaDoc.errorCount = 1;
                }
            }

            foreach (DocData doc in CtaCjzData.docList)
            {
                DocData ddoc = GetContrastDoc(doc, CtaCjzData.docList.IndexOf(doc), CjzData);
                if (ddoc == null)
                {
                    CtaDocData ctaDoc = new CtaDocData();
                    ret.docList.Add(ctaDoc);
                    ctaDoc.ctaDocData   = doc;
                    ctaDoc.docName      = doc.docName;
                    ctaDoc.docLevel     = doc.docLevel;
                    ctaDoc.docType      = doc.docType;
                    ctaDoc.ctaDocDataId = doc.UniqId;
                    ctaDoc.ctaStatus    = (int)_ctaStatusEnum.csDecrease;
                    ctaDoc.errorCount   = 1;
                }
            }

            return(ret);
        }