lazhen
2024-05-31 b0612bf1f3bbd4640b36f2db6ccb166ecae69d37
_Main/BL/Type_Archive/StaticMethod_Archive.qbl
@@ -3,7 +3,10 @@
StaticMethod Archive (
  JSON respJSON,
  Archive archive,
  String archiveType
  String archiveType,
  BinaryValue ppaBinaryValue,
  String curveFileName,
  BinaryValue curveBinaryValue
)
{
  TextBody:
@@ -11,6 +14,7 @@
    code             := respJSON.Get( "code" ).GetNumber();
    archiveFileJSONs := respJSON.Get( "archiveFiles" );
    info( archiveFileJSONs.AsString() );
    if ( code = 200 ) {
      for ( i := 0; i < archiveFileJSONs.Size(); i++ ) {
        archiveFileJSON := archiveFileJSONs.Get( i );
@@ -40,12 +44,21 @@
            archive.ArchiveBudget( relnew, Name := fileName, FilePath := filePath );
          }
        } else if ( archiveType = "PPA" ) {
          // 存档PPA
          appa := select( archive, ArchivePPA, tempAPPA, tempAPPA.Name() = fileName );
          if ( not isnull( appa ) ) {
            appa.FilePath( filePath );
            appa.SourceFileBinaryValue( ppaBinaryValue );
          } else {
            archive.ArchivePPA( relnew, Name := fileName, FilePath := filePath );
            archive.ArchivePPA( relnew, Name := fileName, FilePath := filePath, SourceFileBinaryValue := ppaBinaryValue );
          }
          // 存档Curve
          ac := select( archive, ArchiveCurve, tempAC, true );
          if ( not isnull( ac ) ) {
            ac.Delete();
          }
          archive.ArchiveCurve( relnew, Name := "始终只存一版.xlsx", FilePath := curveFileName, SourceFileBinaryValue := curveBinaryValue );
        }
      }
    }