Procházet zdrojové kódy

Merge branch 'master' of http://192.168.1.12:3000/maixinrong/measure

MaiXinRong před 9 roky
rodič
revize
a4f681b7f7

+ 2 - 2
Dprs/CSL/Measure_Cloud.dof

@@ -115,7 +115,7 @@ AutoIncBuild=1
 MajorVer=3
 MinorVer=1
 Release=3
-Build=1069
+Build=1072
 Debug=0
 PreRelease=0
 Special=0
@@ -126,7 +126,7 @@ CodePage=936
 [Version Info Keys]
 CompanyName=珠海纵横创新软件有限公司
 FileDescription=纵横结算决算计量一体化云版
-FileVersion=3.1.3.1069
+FileVersion=3.1.3.1072
 InternalName=Measure
 LegalCopyright=版权所有(C) 珠海纵横创新软件有限公司 2003-2014。保留所有权利。
 LegalTrademarks=Measure

binární
Dprs/CSL/Measure_Cloud.res


+ 2 - 2
Dprs/Pro/Measure.dof

@@ -115,7 +115,7 @@ AutoIncBuild=1
 MajorVer=3
 MinorVer=1
 Release=5
-Build=211
+Build=214
 Debug=0
 PreRelease=0
 Special=0
@@ -126,7 +126,7 @@ CodePage=936
 [Version Info Keys]
 CompanyName=珠海纵横创新软件有限公司
 FileDescription=纵横结算决算计量一体化专业版
-FileVersion=3.1.5.211
+FileVersion=3.1.5.214
 InternalName=
 LegalCopyright=版权所有(C)珠海纵横创新软件有限公司2003-2016
 LegalTrademarks=Measure

binární
Dprs/Pro/Measure.res


+ 2 - 2
Dprs/Pro/Measure_Cloud.dof

@@ -115,7 +115,7 @@ AutoIncBuild=1
 MajorVer=3
 MinorVer=1
 Release=5
-Build=211
+Build=212
 Debug=0
 PreRelease=0
 Special=0
@@ -126,7 +126,7 @@ CodePage=936
 [Version Info Keys]
 CompanyName=珠海纵横创新软件有限公司
 FileDescription=纵横结算决算计量一体化云版
-FileVersion=3.1.5.211
+FileVersion=3.1.5.212
 InternalName=
 LegalCopyright=版权所有(C)珠海纵横创新软件有限公司2003-2016
 LegalTrademarks=Measure

binární
Dprs/Pro/Measure_Cloud.res


+ 3 - 3
Dprs/Pro/Measure_GuangDong.dof

@@ -115,7 +115,7 @@ AutoIncBuild=1
 MajorVer=3
 MinorVer=1
 Release=5
-Build=211
+Build=213
 Debug=0
 PreRelease=0
 Special=0
@@ -126,10 +126,10 @@ CodePage=936
 [Version Info Keys]
 CompanyName=珠海纵横创新软件有限公司
 FileDescription=纵横结算决算计量一体化广东专业版
-FileVersion=3.1.5.211
+FileVersion=3.1.5.213
 InternalName=
 LegalCopyright=版权所有(C)珠海纵横创新软件有限公司2003-2016
-LegalTrademarks=Measur
+LegalTrademarks=Measure
 OriginalFilename=
 ProductName=纵横公路工程结算决算一体化软件
 ProductVersion=3.1.5.2

binární
Dprs/Pro/Measure_GuangDong.res


+ 2 - 2
Dprs/Pro/Measure_GuangDong_Cloud.dof

@@ -115,7 +115,7 @@ AutoIncBuild=1
 MajorVer=3
 MinorVer=1
 Release=5
-Build=211
+Build=212
 Debug=0
 PreRelease=0
 Special=0
@@ -126,7 +126,7 @@ CodePage=936
 [Version Info Keys]
 CompanyName=珠海纵横创新软件有限公司
 FileDescription=纵横结算决算计量一体化广东云版
-FileVersion=3.1.5.211
+FileVersion=3.1.5.212
 InternalName=
 LegalCopyright=版权所有(C)珠海纵横创新软件有限公司2003-2016
 LegalTrademarks=Measure

binární
Dprs/Pro/Measure_GuangDong_Cloud.res


+ 11 - 4
Frames/OrderCheckerFme.pas

@@ -61,6 +61,7 @@ type
     procedure SetOrder(const Value: Integer);
     procedure SetCheckStatus(const Value: TCheckStatus);
     procedure SetCheckerMemo(const Value: string);
+    procedure SetCheckeTime(const Value: string);
     { Private declarations }
   public
     { Public declarations }
@@ -80,7 +81,7 @@ type
     property CheckerFrameType: TCheckerFrameType read FCheckerFrameType write FCheckerFrameType;   // 审核人类型
     property CheckStatus: TCheckStatus read FCheckStatus write SetCheckStatus;     // 审核状态
     property CheckerMemo: string read FCheckerMemo write SetCheckerMemo;           // 审核意见
-    property CheckeTime: string read FCheckeTime write FCheckeTime;
+    property CheckeTime: string read FCheckeTime write SetCheckeTime;
     property CheckeOnLine: Integer read FCheckeOnLine write FCheckeOnLine;  // 0 线下审批(默认);1 线上审批。
   end;
 
@@ -135,15 +136,13 @@ begin
 
       if CheckStatus in [csFinished, csNotPass] then
       begin
-        CheckeTime := ACheckeTime;
         CheckeOnLine := ACheckeOnLine;
         if ACheckeOnLine = 0 then
           sOnLine := '线下审核'
         else if ACheckeOnLine = 1 then
           sOnLine := '线上审核';
 
-        lblOrderCheckerTime.Caption := Format('[%s][%s]', [ACheckeTime, sOnLine]);
-        lblOrderCheckerTime.Left := btnDelete.Left + btnDelete.Width - lblOrderCheckerTime.Width;
+        CheckeTime := Format('[%s][%s]', [ACheckeTime, sOnLine]);
       end;
 
       CheckerMemo := RecoverCharsFromJson(ACheckerMemo);
@@ -286,4 +285,12 @@ begin
 end;
 
 
+procedure TOrderCheckerFrame.SetCheckeTime(const Value: string);
+begin
+  FCheckeTime := Value;
+
+  lblOrderCheckerTime.Caption := Value;
+  lblOrderCheckerTime.Left := btnDelete.Left + btnDelete.Width - lblOrderCheckerTime.Width;
+end;
+
 end.

+ 4 - 9
Frames/ProjectFme.pas

@@ -990,24 +990,19 @@ begin
             CheckerFrame.FirstChecker.CheckStatus := csChecking;
             CheckerFrame.AddFrame.Visible := False;
           end
-          else if ProjectData.CurUserIsChecker then
+          else
           begin
             if ACheckPassed then
             begin
               CheckerFrame.Me.CheckStatus := csFinished;
-              CheckerFrame.NextChecker.CheckStatus := csChecking;
+              if ProjectData.CurUserIsChecker then
+                CheckerFrame.NextChecker.CheckStatus := csChecking;
             end
             else
               CheckerFrame.Me.CheckStatus := csNotPass;
 
             CheckerFrame.Me.CheckerMemo := sCheckerMemo;
-          end
-          else if ProjectData.CurUserIsOwner then
-          begin
-            if ACheckPassed then
-              CheckerFrame.Me.CheckStatus := csFinished
-            else
-              CheckerFrame.Me.CheckStatus := csNotPass;
+            CheckerFrame.Me.CheckeTime := Format('[%s][ÏßÏÂÉóºË]',[DateToStr(Date)]);
           end;
         end;
 

+ 20 - 11
Frames/ProjectManagerFme.pas

@@ -1055,7 +1055,7 @@ var
 
         Continue;
       end;
-      
+
       AddChecker(cftChecker, vCArr[i]);
     end;
     if vOwner[0] <> '' then
@@ -1269,9 +1269,11 @@ end;
 
 procedure TProjectManagerFrame.DoBatchReceiveOnline(ARequestType: Integer);
 var
-  sURL, sHint: string;
+  sURL, sCheckersURL, sHint: string;
   vArr: TOVArr;
   i, iFolderID, iSubFolderID: Integer;
+  vPSArr: TStrArr;
+  vCArr: TOVArr;    // Checkers
 begin
   // 查询等待我审核的标段文件,杰哥说分三种:①业主未审核 ②业主审核中 ③审核人审核中 (为什么加①?问杰哥)
   case PHPWeb.Search(PHPWeb.MeasureURL + 'user/get/audit/project', ['audituid', 'RequestType'],
@@ -1298,7 +1300,18 @@ begin
           CheckBidName(PHPWeb.UserID, FWebID, FWebBidName_OnLine);
 
           if FWebMD5_OnLine <> FWebMD5_Local then
+          begin
+            sCheckersURL := Format('%smeasure/status/%d/get', [PHPWeb.MeasureURL, FWebID]);
+            if PHPWeb.Search(sCheckersURL, [''], [''], 3, vPSArr, vCArr) = 1 then
+              OnLineChecker(vCArr, FOnLineCheckerBegin, FOnLineCheckerEnd)
+            else
+            begin
+              FOnLineCheckerBegin := 0;
+              FOnLineCheckerEnd := 0;
+            end;
+
             if not FileDownAndReceive(sURL, 1) then Exit;
+          end;
         end;
 
         BubbleSortProjects;
@@ -1681,26 +1694,22 @@ begin
   sLocalFile := PHPWeb.UserPath + ExtractFileName(ADownURL);
   if not PHPWeb.DownFile(ADownURL, sLocalFile) then
   begin
-    if AReceiveKind = 1 then
-      sHint := Format('云端已找到[%s]的新文件,但由于网络原因下载失败!请重试!', [FWebBidName_Local])
-    else if AReceiveKind = 2 then
-      sHint := '云端已找到原报上传的无锁文件,但因网络出错无法下载,本次操作已取消。请重试!';
-
+    sHint := Format('云端已找到[%s]的新文件,但由于网络原因下载失败!请重试!', [FWebBidName_Local]);
     Application.MessageBox(PChar(sHint), '系统提醒', MB_OK + MB_ICONWARNING);
     Exit;
   end;
 
-  // 打回情况,重新接收原报文件
+  // 接收前先检验原报文件是否正确(审核不通过打回)
   if AReceiveKind = 2 then
   begin
-    // 有时原报文件出错:包含了1审2审的数据。所以导入前须检测。
+    // 有时原报文件出错:包含了1审2审的数据。
     vFileCheck := TTenderFileChecker.Create;
     try
       // 有一期以上数据,且最新期数据审核状态为原报
       bCanImp := vFileCheck.CheckFileValid(sLocalFile) and (vFileCheck.PhaseCount > 0) and (vFileCheck.AuditStatus = 0);
       if not bCanImp then
       begin
-        Application.MessageBox(PChar('已从云端下载原报文件到本地,但文件有错误,禁止导入!请致电纵横服务人员以获取帮助。'),
+        Application.MessageBox(PChar('已从云端下载原报文件到本地,但文件有错误(包含1审数据)禁止接收!请致电纵横服务人员以获取帮助。'),
           '警告', MB_OK + MB_ICONWARNING);
         Exit;
       end;
@@ -1747,7 +1756,7 @@ begin
     vCS := TCheckStatus(StrToInt(AAr[i, 5])-1);
     if vCS = csChecking then
     begin
-      n := i;  // 非常重要:传入的数组必须从第一个审核人到轮到工作中的那个人的前一个人
+      n := i - 1;  // 非常重要:传入的数组必须从第一个审核人到轮到工作中的那个人的前一个人
       Break;
     end;
   end;