|
@@ -4,6 +4,8 @@
|
|
|
单元说明: 查找审核人。
|
|
|
|
|
|
作者时间: Chenshilong, 2014-07-11
|
|
|
+
|
|
|
+ 2017.06.19 该窗口定制太深,不通用,改成通用查询窗口。
|
|
|
*******************************************************************************}
|
|
|
|
|
|
unit FindUserFrm;
|
|
@@ -20,8 +22,8 @@ type
|
|
|
JimPageControl1: TJimPageControl;
|
|
|
JimPageControl1Page1: TJimPage;
|
|
|
JimPageControl1Page2: TJimPage;
|
|
|
- lbl1: TLabel;
|
|
|
- lbl2: TLabel;
|
|
|
+ lblHint1: TLabel;
|
|
|
+ lblHint2: TLabel;
|
|
|
edtMail: TcxTextEdit;
|
|
|
btnSearch: TcxButton;
|
|
|
pnlUser: TPanel;
|
|
@@ -35,27 +37,27 @@ type
|
|
|
btnAdd: TcxButton;
|
|
|
lblHint: TLabel;
|
|
|
procedure btnSearchClick(Sender: TObject);
|
|
|
- procedure FormCreate(Sender: TObject);
|
|
|
procedure edtMailKeyDown(Sender: TObject; var Key: Word;
|
|
|
Shift: TShiftState);
|
|
|
procedure btnAddClick(Sender: TObject);
|
|
|
procedure edtMailClick(Sender: TObject);
|
|
|
private
|
|
|
- FProjectData: TObject;
|
|
|
FOwner: TObject;
|
|
|
- procedure SetProjectData(const Value: TObject);
|
|
|
- procedure SetOwner(const Value: TObject);
|
|
|
+ FType: Integer;
|
|
|
+ FWebID: Integer;
|
|
|
+ FPhaseIndex: Integer;
|
|
|
+ FAccount: string;
|
|
|
{ Private declarations }
|
|
|
public
|
|
|
{ Public declarations }
|
|
|
- property ProjectData: TObject read FProjectData write SetProjectData;
|
|
|
- property Owner: TObject read FOwner write SetOwner;
|
|
|
+ // AType调用类型: 0审批人, 1关注人。 AValuesArr:第一个值WebID,第二个值PhaseIndex。
|
|
|
+ constructor Create(AOwner: TObject; AType: Integer; AValuesArr: array of Integer);
|
|
|
end;
|
|
|
|
|
|
implementation
|
|
|
|
|
|
-uses PHPWebDm, ConstUnit, ProjectData, CheckerFme, ProjectFme,
|
|
|
- OrderCheckerFme;
|
|
|
+uses PHPWebDm, ConstUnit, CheckerFme, ProjectFme,
|
|
|
+ OrderCheckerFme, SetGuestFrm;
|
|
|
|
|
|
{$R *.dfm}
|
|
|
|
|
@@ -64,12 +66,13 @@ var
|
|
|
PicPath: string;
|
|
|
|
|
|
procedure TFindUserForm.btnSearchClick(Sender: TObject);
|
|
|
-var bUsed, bSelf, bFull: Boolean;
|
|
|
+var bChecker, bSelf, bFull, bGuest: Boolean;
|
|
|
begin
|
|
|
Screen.Cursor := crHourGlass;
|
|
|
try
|
|
|
+ FAccount := Trim(edtMail.Text);
|
|
|
UserArr := VarArrayOf(['avatar', 'name', 'jobs', 'company', 'uid']);
|
|
|
- case PHPWeb.Search(PHPWeb.MeasureURL + 'user/get/search', ['uemail'], [AnsiToUtf8(Trim(edtMail.Text))], UserArr) of
|
|
|
+ case PHPWeb.Search(PHPWeb.MeasureURL + 'user/get/search', ['uemail'], [AnsiToUtf8(FAccount)], UserArr) of
|
|
|
1:
|
|
|
begin
|
|
|
lblHint.Caption := '';
|
|
@@ -80,20 +83,41 @@ begin
|
|
|
if PHPWeb.DownFile(UserArr[0], PicPath) then
|
|
|
imgUserPic.Picture.LoadFromFile(PicPath);
|
|
|
pnlUser.Visible := True;
|
|
|
- bUsed := TCheckerFrame(TOrderCheckerFrame(Owner).Owner).InCheckerList(StrToInt(UserArr[4]));
|
|
|
bSelf := StrToInt(UserArr[4]) = PHPWeb.UserID;
|
|
|
- bFull := (TCheckerFrame(TOrderCheckerFrame(Owner).Owner).List.Count >= 15); // AddFrame包含在List.Count中,等效于原报不在List.Count中
|
|
|
- btnAdd.Enabled := (not bUsed) and (not bSelf) and (not bFull);
|
|
|
-
|
|
|
- if bFull then
|
|
|
- btnAdd.Caption := '限添加14人'
|
|
|
- else if bSelf then
|
|
|
- btnAdd.Caption := '不能添加自己'
|
|
|
- else if bUsed then
|
|
|
- btnAdd.Caption := '已使用'
|
|
|
- else
|
|
|
- btnAdd.Caption := '使用Ta';
|
|
|
|
|
|
+ case FType of
|
|
|
+ 0:
|
|
|
+ begin
|
|
|
+ bChecker := TCheckerFrame(TOrderCheckerFrame(Owner).Owner).InCheckerList(StrToInt(UserArr[4]));
|
|
|
+ // AddFrame包含在List.Count中,等效于原报不在List.Count中
|
|
|
+ bFull := (TCheckerFrame(TOrderCheckerFrame(Owner).Owner).List.Count >= 15);
|
|
|
+ btnAdd.Enabled := (not bChecker) and (not bSelf) and (not bFull);
|
|
|
+
|
|
|
+ if bFull then
|
|
|
+ btnAdd.Caption := '限添加14人'
|
|
|
+ else if bSelf then
|
|
|
+ btnAdd.Caption := '不能添加自己'
|
|
|
+ else if bChecker then
|
|
|
+ btnAdd.Caption := '已使用'
|
|
|
+ else
|
|
|
+ btnAdd.Caption := '使用Ta';
|
|
|
+ end;
|
|
|
+
|
|
|
+ 1:
|
|
|
+ begin
|
|
|
+ bChecker := False; // AAAAA 判断是否是参与人
|
|
|
+ bGuest := TSetGuestForm(FOwner).HasGuest(StrToInt(UserArr[4]));
|
|
|
+ btnAdd.Enabled := (not bChecker) and (not bGuest);
|
|
|
+
|
|
|
+ if bChecker then
|
|
|
+ btnAdd.Caption := '已是参与人'
|
|
|
+ else if bGuest then
|
|
|
+ btnAdd.Caption := '已是关注人'
|
|
|
+ else
|
|
|
+ btnAdd.Caption := '使用Ta';
|
|
|
+ end;
|
|
|
+ else ;
|
|
|
+ end;
|
|
|
end;
|
|
|
-1:
|
|
|
begin
|
|
@@ -119,15 +143,6 @@ begin
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
-procedure TFindUserForm.FormCreate(Sender: TObject);
|
|
|
-begin
|
|
|
- lblHint.Caption := '';
|
|
|
- pnlUser.Visible := False;
|
|
|
-
|
|
|
- if G_IsTest then
|
|
|
- edtMail.Text := 'sp1@qq.com';
|
|
|
-end;
|
|
|
-
|
|
|
procedure TFindUserForm.edtMailKeyDown(Sender: TObject; var Key: Word;
|
|
|
Shift: TShiftState);
|
|
|
begin
|
|
@@ -138,37 +153,41 @@ end;
|
|
|
procedure TFindUserForm.btnAddClick(Sender: TObject);
|
|
|
var sURL: string;
|
|
|
vArr: array of string;
|
|
|
- vProj: TProjectData;
|
|
|
vOwner: TCheckerFrame;
|
|
|
begin
|
|
|
- sURL := PHPWeb.MeasureURL + 'user/add/audit/measure';
|
|
|
vArr := VarArrayOf(['msg']);
|
|
|
- vProj := TProjectData(ProjectData);
|
|
|
- // 标段ID(网络)、谁添加的、添加的谁、期号
|
|
|
- if PHPWeb.Search(sURL, ['pmid', 'creatoruid', 'auditoruid', 'numpname'],
|
|
|
- [IntToStr(vProj.WebID), IntToStr(PHPWeb.UserID), UserArr[4],
|
|
|
- IntToStr(vProj.PhaseIndex)], vArr) = 1 then
|
|
|
- begin
|
|
|
- btnAdd.Enabled := False;
|
|
|
- btnAdd.Caption := '添加成功';
|
|
|
- vOwner := TCheckerFrame(TOrderCheckerFrame(Owner).Owner);
|
|
|
- vOwner.AddNewChecker(cftChecker, StrToInt(UserArr[4]), UserArr[1], UserArr[2], UserArr[3], PicPath, '', csNotBegin, '', -1);
|
|
|
- vOwner.RepairOrder;
|
|
|
- vOwner.RepairDelete(True);
|
|
|
- end;
|
|
|
-end;
|
|
|
|
|
|
-procedure TFindUserForm.SetProjectData(const Value: TObject);
|
|
|
-begin
|
|
|
- FProjectData := Value;
|
|
|
-end;
|
|
|
-
|
|
|
-procedure TFindUserForm.SetOwner(const Value: TObject);
|
|
|
-begin
|
|
|
- FOwner := Value;
|
|
|
+ case FType of
|
|
|
+ 0:
|
|
|
+ begin
|
|
|
+ sURL := PHPWeb.MeasureURL + 'user/add/audit/measure';
|
|
|
+ // 标段ID(网络)、谁添加的、添加的谁、期号
|
|
|
+ if PHPWeb.Search(sURL, ['pmid', 'creatoruid', 'auditoruid', 'numpname'],
|
|
|
+ [IntToStr(FWebID), IntToStr(PHPWeb.UserID), UserArr[4], IntToStr(FPhaseIndex)], vArr) = 1 then
|
|
|
+ begin
|
|
|
+ btnAdd.Enabled := False;
|
|
|
+ btnAdd.Caption := '添加成功';
|
|
|
+ vOwner := TCheckerFrame(TOrderCheckerFrame(FOwner).Owner);
|
|
|
+ vOwner.AddNewChecker(cftChecker, StrToInt(UserArr[4]), UserArr[1], UserArr[2], UserArr[3], PicPath, '', csNotBegin, '', -1);
|
|
|
+ vOwner.RepairOrder;
|
|
|
+ vOwner.RepairDelete(True);
|
|
|
+ end;
|
|
|
+ end;
|
|
|
+ 1:
|
|
|
+ begin
|
|
|
+ sURL := ''; // AAAAA 添加关注人
|
|
|
+ // 标段ID(网络)、谁添加的、添加的谁
|
|
|
+ if PHPWeb.Search(sURL, ['pmid', 'creatoruid', 'auditoruid'],
|
|
|
+ [IntToStr(FWebID), IntToStr(PHPWeb.UserID), UserArr[4]], vArr) = 1 then
|
|
|
+ begin
|
|
|
+ btnAdd.Enabled := False;
|
|
|
+ btnAdd.Caption := '添加成功';
|
|
|
+ TSetGuestForm(FOwner).AddGuest(StrToInt(UserArr[4]), UserArr[1], FAccount);
|
|
|
+ end;
|
|
|
+ end;
|
|
|
+ end;
|
|
|
end;
|
|
|
|
|
|
-
|
|
|
procedure TFindUserForm.edtMailClick(Sender: TObject);
|
|
|
begin
|
|
|
if G_IsTest then
|
|
@@ -216,4 +235,28 @@ begin
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
+constructor TFindUserForm.Create(AOwner: TObject; AType: Integer; AValuesArr: array of Integer);
|
|
|
+var sName: string;
|
|
|
+begin
|
|
|
+ inherited Create(nil);
|
|
|
+ FOwner := AOwner;
|
|
|
+ FType := AType;
|
|
|
+ FWebID := AValuesArr[0];
|
|
|
+ FPhaseIndex := AValuesArr[1];
|
|
|
+
|
|
|
+ lblHint.Caption := '';
|
|
|
+ pnlUser.Visible := False;
|
|
|
+
|
|
|
+ case AType of
|
|
|
+ 0: sName := '审批人';
|
|
|
+ 1: sName := '关注人';
|
|
|
+ else sName := '用户';
|
|
|
+ end;
|
|
|
+
|
|
|
+ self.Caption := '添加' + sName;
|
|
|
+ JimPageControl1Page1.Caption := Format('查询新%s', [sName]);
|
|
|
+ lblHint1.Caption := Format('输入%s的通行帐号注册邮箱,查询并确认后,点击“使用Ta”完成添加%s。', [sName, sName]);
|
|
|
+ lblHint2.Caption := Format('添加新%s', [sName]);
|
|
|
+end;
|
|
|
+
|
|
|
end.
|