chenshilong 7 年之前
父节点
当前提交
01f99121a8
共有 3 个文件被更改,包括 41 次插入5 次删除
  1. 2 0
      Frames/ProjectManagerFme.dfm
  2. 37 0
      Frames/ProjectManagerFme.pas
  3. 2 5
      Units/ProjectData.pas

+ 2 - 0
Frames/ProjectManagerFme.dfm

@@ -89,6 +89,8 @@ object ProjectManagerFrame: TProjectManagerFrame
     OnCurrentChanged = zgProjectsCurrentChanged
     OnDrawCellText = zgProjectsDrawCellText
     OnShowHint = zgProjectsShowHint
+    OnCellGetColor = zgProjectsCellGetColor
+    OnCellGetFont = zgProjectsCellGetFont
     OnMouseDown = zgProjectsMouseDown
     Align = alClient
   end

+ 37 - 0
Frames/ProjectManagerFme.pas

@@ -100,6 +100,10 @@ type
     procedure actnGuestUpdate(Sender: TObject);
     procedure actnEpureExecute(Sender: TObject);
     procedure actnEpureUpdate(Sender: TObject);
+    procedure zgProjectsCellGetColor(Sender: TObject; ACoord: TPoint;
+      var AColor: TColor);
+    procedure zgProjectsCellGetFont(Sender: TObject; ACoord: TPoint;
+      AFont: TFont);
   private
     FProjectManagerData: TProjectManagerData;
 
@@ -2027,4 +2031,37 @@ begin
       HasCompletePhase(stdProjects.IDTree.Selected.Rec);
 end;
 
+procedure TProjectManagerFrame.zgProjectsCellGetColor(Sender: TObject;
+  ACoord: TPoint; var AColor: TColor);
+var
+  vItem: TsdIDTreeNode;
+  value: String;
+begin
+  if ACoord.X = 11 then
+  begin
+    vItem := stdProjects.IDTree.Items[ACoord.Y - zgProjects.FixedRowCount];
+    value := vItem.Rec.ValueByName('AuditStatus').asString;
+
+    if (value = '-1') then
+      AColor := TColor($00daedd4);
+  end;
+end;
+
+procedure TProjectManagerFrame.zgProjectsCellGetFont(Sender: TObject;
+  ACoord: TPoint; AFont: TFont);
+//var
+//  vItem: TsdIDTreeNode;
+//  value: String;
+begin
+//  if ACoord.X = 11 then
+//  begin
+//    vItem := stdProjects.IDTree.Items[ACoord.Y - zgProjects.FixedRowCount];
+//    value := vItem.Rec.ValueByName('AuditStatus').asString;
+//
+//    if (value = '-1') then
+//      AFont.Color := TColor($00daedd4);
+//
+//  end;
+end;
+
 end.

+ 2 - 5
Units/ProjectData.pas

@@ -538,11 +538,8 @@ begin
   InfoRec.ValueByName('PreTotalPrice').AsFloat := PhaseRec.ValueByName('PreGatherTotalPrice').AsFloat;
   InfoRec.ValueByName('PhasePay').AsFloat := PhaseRec.ValueByName('PhasePay').AsFloat;
   InfoRec.ValueByName('PhaseCount').AsInteger := FProjProperties.PhaseCount;
-  if G_IsCloud then   // 云版的批复始终要显示"批复",不能从属性表读数字显示成3审(如果业主是3审的话)
-  begin
-    if CurUserIsOwner then
-      InfoRec.ValueByName('AuditStatus').AsInteger := -1;
-  end
+  if (G_IsCloud and CurUserIsOwner) then   // 云版的批复始终要显示"批复",不能从属性表读数字显示成3审(如果业主是3审的话)
+    InfoRec.ValueByName('AuditStatus').AsInteger := -1
   else
     InfoRec.ValueByName('AuditStatus').AsInteger := FProjProperties.AuditStatus;
   InfoRec.ValueByName('CommonDigit').AsInteger := FProjProperties.DecimalManager.Common.TotalPrice.TrueDigit;