Selaa lähdekoodia

合同支付相关

MaiXinRong 5 vuotta sitten
vanhempi
commit
b37a8193a9

+ 7 - 0
DataModules/DealPaymentDm.dfm

@@ -125,6 +125,13 @@ object DealPaymentData: TDealPaymentData
       end
       item
         FieldName = 'RangePrice'
+      end
+      item
+        FieldName = 'EndTotalPrice'
+        KeyFields = 'ID'
+        LookupDataSet = sddDealPayment
+        LookupKeyFields = 'ID'
+        LookupResultField = 'TotalPrice'
       end>
     BeforeAddRecord = sdvDealPaymentBeforeAddRecord
     OnGetText = sdvDealPaymentGetText

+ 2 - 0
DataModules/DealPaymentDm.pas

@@ -235,6 +235,8 @@ begin
   begin
     sdvDealPayment.Columns.FindColumn('CurTotalPrice').LookupDataSet := PhasePayData.sddPhasePay;
     sdvDealPayment.Columns.FindColumn('CurTotalPrice').LookupResultField := 'TotalPrice' + IntToStr(StageIndex);
+    sdvDealPayment.Columns.FindColumn('EndTotalPrice').LookupDataSet := PhasePayData.sddPhasePay;
+    sdvDealPayment.Columns.FindColumn('EndTotalPrice').LookupResultField := 'EndTotalPrice' + IntToStr(StageIndex);
   end;
 end;
 

+ 3 - 2
DataModules/PhasePayDm.pas

@@ -248,8 +248,9 @@ begin
   // ¼ÆËã½ØÖ¹Êý¾Ý
   Rec.ValueByName('End' + sTPField).AsFloat := FDecimal.TotalPrice.RoundTo(Rec.ValueByName(sTPField).AsFloat
       + Rec.ValueByName('Pre' + sTPField).AsFloat);
-  with TProjectData(TPhaseData(FPhaseData).ProjectData).DealPaymentData do
-    SetTotalPrice(AID, Rec.ValueByName('End' + sTPField).AsFloat);
+  with TProjectData(TPhaseData(FPhaseData).ProjectData) do
+    if StageDataReadOnly then
+      DealPaymentData.SetTotalPrice(AID, Rec.ValueByName('End' + sTPField).AsFloat);
 end;
 
 function TPhasePayData.GetPayablePrice(AIndex: Integer): Double;

+ 19 - 0
Frames/DealPaymentFme.dfm

@@ -237,6 +237,24 @@ object DealPaymentFrame: TDealPaymentFrame
         ReadOnly = False
       end
       item
+        Title.Caption = #25130#27490#26412#26399#37329#39069
+        Title.CaptionAcrossCols = '1'
+        Title.Font.Charset = GB2312_CHARSET
+        Title.Font.Color = clWindowText
+        Title.Font.Height = -12
+        Title.Font.Name = #23435#20307
+        Title.Font.Style = []
+        Alignment = taRightJustify
+        Font.Charset = GB2312_CHARSET
+        Font.Color = clWindowText
+        Font.Height = -12
+        Font.Name = #23435#20307
+        Font.Style = []
+        FieldName = 'EndTotalPrice'
+        Width = 60
+        ReadOnly = True
+      end
+      item
         Title.Caption = #32047#35745#37329#39069
         Title.CaptionAcrossCols = '1'
         Title.Font.Charset = GB2312_CHARSET
@@ -252,6 +270,7 @@ object DealPaymentFrame: TDealPaymentFrame
         Font.Style = []
         FieldName = 'TotalPrice'
         Width = 60
+        Visible = False
         ReadOnly = True
       end
       item

+ 1 - 1
Frames/DealPaymentFme.pas

@@ -177,7 +177,7 @@ end;
 
 procedure TDealPaymentFrame.actnCalculatePhasePayUpdate(Sender: TObject);
 begin
-  TAction(Sender).Enabled := TProjectData(FDealPaymentData.ProjectData).PhaseData.Active;
+  TAction(Sender).Enabled := not TProjectData(FDealPaymentData.ProjectData).StageDataReadOnly;
 end;
 
 procedure TDealPaymentFrame.zgDealPaymentCellGetColor(Sender: TObject;

+ 1 - 1
Units/PhaseData.pas

@@ -145,7 +145,7 @@ end;
 
 function TPhaseData.GetStageDataReadOnly: Boolean;
 begin
-  Result := not IsLastStage or PhaseProperty.FinalAudit;
+  Result := not (IsLastStage and not PhaseProperty.FinalAudit);
 end;
 
 function TPhaseData.GetFileName: string;