Skip to content

Commit 56eb97e

Browse files
committed
Approve Activity
#12 - model Attendance extended of item usname from Settings preferences
1 parent 070d6f8 commit 56eb97e

File tree

10 files changed

+180
-83
lines changed

10 files changed

+180
-83
lines changed

app/src/main/java/com/eusecom/attendance/AbsServerAsBaseSearchActivity.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ private void saveAbsServer(String texttoast, Attendance model) {
212212

213213
writeAbsenceServerToFB(icox, userIDX, model.ume, model.dmxa, model.dmna, daods, dados, model.dnixa,
214214
model.hodxb, gpslon, gpslat, datms, model.usosc,
215-
mDatabase, key, cplxb );
215+
mDatabase, key, cplxb, model.usname );
216216

217217
writeKeyfToServer(icox, userIDX, model.ume, model.dmxa, model.dmna, daods, dados, model.dnixa,
218218
model.hodxb, gpslon, gpslat, datms, model.usosc,
@@ -256,10 +256,10 @@ private void writeKeyfToServer(String usico, String usid, String ume, String dmx
256256

257257
private void writeAbsenceServerToFB(String usico, String usid, String ume, String dmxa, String dmna, String daod, String dado, String dnixa,
258258
String hodxb, String longi, String lati, String datm, String usosc,
259-
DatabaseReference mDatabase, String key, String cplxb ) {
259+
DatabaseReference mDatabase, String key, String cplxb, String usname ) {
260260

261261

262-
Attendance attendance = new Attendance(usico, usid, ume, dmxa, dmna, daod, dado, dnixa, hodxb, longi, lati, datm, usosc );
262+
Attendance attendance = new Attendance(usico, usid, ume, dmxa, dmna, daod, dado, dnixa, hodxb, longi, lati, datm, usosc, usname );
263263
attendance.setCplxb(cplxb);
264264

265265
Map<String, Object> attValues = attendance.toMap();

app/src/main/java/com/eusecom/attendance/AbsServerBaseSearchActivity.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,14 +94,15 @@ protected List<Attendance> initListAbsServer() {
9494
final String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
9595
String icox = SettingsActivity.getUsIco(AbsServerBaseSearchActivity.this);
9696
String oscx = SettingsActivity.getUsOsc(AbsServerBaseSearchActivity.this);
97+
String usnx = SettingsActivity.getUsname(AbsServerBaseSearchActivity.this);
9798
Long tsLong = System.currentTimeMillis() / 1000;
9899
String ts = tsLong.toString();
99100

100-
Attendance attendance = new Attendance(icox, userId, "0", "1","Incoming work", ts, ts, "0", "0", "0", "0", ts, oscx );
101+
Attendance attendance = new Attendance(icox, userId, "0", "1","Incoming work", ts, ts, "0", "0", "0", "0", ts, oscx, usnx );
101102
listabsserver.add(attendance);
102-
attendance = new Attendance(icox, userId, "0", "2","Outcoming work", ts, ts, "0", "0", "0", "0", ts, oscx );
103+
attendance = new Attendance(icox, userId, "0", "2","Outcoming work", ts, ts, "0", "0", "0", "0", ts, oscx, usnx );
103104
listabsserver.add(attendance);
104-
attendance = new Attendance(icox, userId, "0", "506","Holliday", ts, ts, "0", "0", "0", "0", ts, oscx );
105+
attendance = new Attendance(icox, userId, "0", "506","Holliday", ts, ts, "0", "0", "0", "0", ts, oscx, usnx );
105106
listabsserver.add(attendance);
106107

107108
return listabsserver;

app/src/main/java/com/eusecom/attendance/ApproveActivity.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,9 @@
2929
import android.view.MenuItem;
3030
import android.view.View;
3131
import com.eusecom.attendance.fragment.AbsTypesFragment;
32+
import com.eusecom.attendance.fragment.ApproveListFragment;
33+
import com.eusecom.attendance.fragment.EmptyFragment;
3234
import com.eusecom.attendance.fragment.LiveFragment;
33-
import com.eusecom.attendance.fragment.MyApproveFragment;
3435
import com.google.firebase.auth.FirebaseAuth;
3536

3637

@@ -55,12 +56,12 @@ protected void onCreate(Bundle savedInstanceState) {
5556
// Create the adapter that will return a fragment for each section
5657
mPagerAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) {
5758
private final Fragment[] mFragments = new Fragment[] {
58-
new MyApproveFragment(),
59-
new AbsTypesFragment()
59+
new ApproveListFragment(),
60+
new EmptyFragment()
6061
};
6162
private final String[] mFragmentNames = new String[] {
6263
getString(R.string.approve),
63-
getString(R.string.abstypes)
64+
getString(R.string.empty)
6465
};
6566
@Override
6667
public Fragment getItem(int position) {

app/src/main/java/com/eusecom/attendance/MainActivity.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -198,10 +198,11 @@ public void onClick(DialogInterface dialog,
198198
final String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
199199
String icox = SettingsActivity.getUsIco(MainActivity.this);
200200
String oscx = SettingsActivity.getUsOsc(MainActivity.this);
201+
String usnx = SettingsActivity.getUsname(MainActivity.this);
201202
Long tsLong = System.currentTimeMillis() / 1000;
202203
String ts = tsLong.toString();
203204

204-
writeAttendance(icox, userId, "0", "1","Incoming work", ts, ts, "0", "0", "0", "0", ts, oscx);
205+
writeAttendance(icox, userId, "0", "1","Incoming work", ts, ts, "0", "0", "0", "0", ts, oscx, usnx);
205206

206207
}
207208
})
@@ -251,10 +252,11 @@ public void onClick(DialogInterface dialog,
251252
final String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
252253
String icox = SettingsActivity.getUsIco(MainActivity.this);
253254
String oscx = SettingsActivity.getUsOsc(MainActivity.this);
255+
String usnx = SettingsActivity.getUsname(MainActivity.this);
254256
Long tsLong = System.currentTimeMillis()/1000;
255257
String ts = tsLong.toString();
256258

257-
writeAttendance(icox,userId,"0","2","Leaving work",ts,ts,"0","0","0","0", ts, oscx );
259+
writeAttendance(icox,userId,"0","2","Leaving work",ts,ts,"0","0","0","0", ts, oscx, usnx );
258260

259261
}
260262
})
@@ -335,7 +337,7 @@ public void onClick(View v) {
335337

336338
// [START basic_write]
337339
private void writeAttendance(String usico, String usid, String ume, String dmxa, String dmna, String daod, String dado, String dnixa,
338-
String hodxb, String longi, String lati, String datm, String usosc) {
340+
String hodxb, String longi, String lati, String datm, String usosc, String usname) {
339341

340342
String key = mDatabase.child("attendances").push().getKey();
341343
String gpslat;
@@ -354,7 +356,7 @@ private void writeAttendance(String usico, String usid, String ume, String dmxa,
354356
mGPS.showSettingsAlert();
355357
}
356358

357-
Attendance attendance = new Attendance(usico, usid, ume, dmxa, dmna, daod, dado, dnixa, hodxb, gpslon, gpslat, datm, usosc );
359+
Attendance attendance = new Attendance(usico, usid, ume, dmxa, dmna, daod, dado, dnixa, hodxb, gpslon, gpslat, datm, usosc, usname );
358360

359361
Map<String, Object> attValues = attendance.toMap();
360362

app/src/main/java/com/eusecom/attendance/NewAbsenceActivity.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -337,10 +337,11 @@ public void onDataChange(DataSnapshot dataSnapshot) {
337337
// Write new absence
338338
String icox = SettingsActivity.getUsIco(NewAbsenceActivity.this);
339339
String oscx = SettingsActivity.getUsOsc(NewAbsenceActivity.this);
340+
String usnx = SettingsActivity.getUsname(NewAbsenceActivity.this);
340341
Long tsLong = System.currentTimeMillis() / 1000;
341342
String ts = tsLong.toString();
342343

343-
writeAbsence(icox, userId, "0", dmaxx, dmnxx, dateodlx, datedolx, "0", hodinyx, "0", "0", ts, oscx);
344+
writeAbsence(icox, userId, "0", dmaxx, dmnxx, dateodlx, datedolx, "0", hodinyx, "0", "0", ts, oscx, usnx);
344345

345346
}
346347

@@ -361,7 +362,7 @@ public void onCancelled(DatabaseError databaseError) {
361362

362363
// [START basic_write]
363364
private void writeAbsence(String usico, String usid, String ume, String dmxa, String dmna, String daod, String dado, String dnixa,
364-
String hodxb, String longi, String lati, String datm, String usosc) {
365+
String hodxb, String longi, String lati, String datm, String usosc, String usname) {
365366

366367
String userIDX = FirebaseAuth.getInstance().getCurrentUser().getUid();
367368
String key = mDatabase.child("absences").push().getKey();
@@ -381,7 +382,7 @@ private void writeAbsence(String usico, String usid, String ume, String dmxa, St
381382
mGPS.showSettingsAlert();
382383
}
383384

384-
Attendance attendance = new Attendance(usico, userIDX, ume, dmxa, dmna, daod, dado, dnixa, hodxb, gpslon, gpslat, datm, usosc );
385+
Attendance attendance = new Attendance(usico, userIDX, ume, dmxa, dmna, daod, dado, dnixa, hodxb, gpslon, gpslat, datm, usosc, usname );
385386

386387
Map<String, Object> attValues = attendance.toMap();
387388

app/src/main/java/com/eusecom/attendance/fragment/ApproveListFragment.java

Lines changed: 28 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import android.widget.Toast;
2121
import com.eusecom.attendance.Constants;
2222
import com.eusecom.attendance.FbmessClient;
23-
import com.eusecom.attendance.PostsFragment;
2423
import com.eusecom.attendance.SettingsActivity;
2524
import com.eusecom.attendance.animators.BaseItemAnimator;
2625
import com.eusecom.attendance.animators.FadeInAnimator;
@@ -38,7 +37,6 @@
3837
import com.eusecom.attendance.retrofit.RfUser;
3938
import com.eusecom.attendance.rxbus.RxBus;
4039
import com.eusecom.attendance.rxfirebase2.database.RxFirebaseDatabase;
41-
import com.eusecom.attendance.rxfirebase2models.BlogPostEntity;
4240
import com.google.firebase.auth.FirebaseAuth;
4341
import com.google.firebase.database.DataSnapshot;
4442
import com.google.firebase.database.DatabaseError;
@@ -57,7 +55,6 @@
5755
import java.util.Date;
5856
import java.util.List;
5957
import java.util.concurrent.TimeUnit;
60-
6158
import io.reactivex.Observable;
6259
import io.reactivex.android.schedulers.AndroidSchedulers;
6360
import io.reactivex.disposables.CompositeDisposable;
@@ -69,7 +66,7 @@
6966
import rx.Subscription;
7067
import static android.text.TextUtils.isEmpty;
7168

72-
public abstract class ApproveListFragment extends Fragment {
69+
public class ApproveListFragment extends Fragment {
7370

7471
private static final String TAG = "ApproveListFragment";
7572

@@ -132,14 +129,10 @@ public void onCreate(Bundle savedInstanceState) {
132129
if (event instanceof ApproveListFragment.TapEvent) {
133130
///_showTapText();
134131
}
135-
if (event instanceof BlogPostEntity) {
136-
//saveAbsServer(((Attendance) event).daod + " / " + ((Attendance) event).dado, ((Attendance) event));
137-
String keys = ((BlogPostEntity) event).getAuthor();
138-
139-
//showProgress(true);
140-
Log.d("In FRGM shortClick", keys);
141-
BlogPostEntity postx = new BlogPostEntity(null, null, null);
142-
//delBlogPostRx(postx,1, keys);
132+
if (event instanceof Attendance) {
133+
String keys = ((Attendance) event).getRok();
134+
Log.d("In FRGM longClick", keys);
135+
getApproveDialog( keys, (Attendance) event);
143136

144137
}
145138
}));
@@ -182,7 +175,7 @@ public View onCreateView (LayoutInflater inflater, ViewGroup container,
182175
public void onActivityCreated(Bundle savedInstanceState) {
183176
super.onActivityCreated(savedInstanceState);
184177

185-
mAdapter = new ApproveRxAdapter(Collections.<BlogPostEntity>emptyList(), _rxBus);
178+
mAdapter = new ApproveRxAdapter(Collections.<Attendance>emptyList(), _rxBus);
186179
getApproveSubscriber = new ApproveListFragment.GetApproveSubscriber();
187180

188181
DatabaseReference gettimestramp = FirebaseDatabase.getInstance().getReference("gettimestamp");
@@ -204,11 +197,6 @@ public void onCancelled(DatabaseError databaseError) { }
204197
mManager.setReverseLayout(true);
205198
mManager.setStackFromEnd(true);
206199
mRecycler.setLayoutManager(mManager);
207-
208-
// Set up FirebaseRecyclerAdapter with the Query
209-
Query absencesQuery = getQuery(mDatabase);
210-
211-
212200
mRecycler.setAdapter(mAdapter);
213201
mRecycler.setItemAnimator(new FadeInRightAnimator());
214202
mRecycler.getItemAnimator().setAddDuration(300);
@@ -222,13 +210,18 @@ public void onCancelled(DatabaseError databaseError) { }
222210

223211
private void loadAbsencesForApproving() {
224212

225-
Query fbQuery = firebaseRef.child("fireblog");
213+
final String companyIco = SettingsActivity.getUsIco(getActivity());
214+
Query recentAbsencesQuery = firebaseRef.child("company-absences").child(companyIco).orderByChild("aprv").equalTo("0")
215+
.limitToFirst(200);
216+
226217
//showProgress(true);
227-
RxFirebaseDatabase.getInstance().observeValueEvent(fbQuery).subscribe(getApproveSubscriber);
218+
showfProgressDialog();
219+
RxFirebaseDatabase.getInstance().observeValueEvent(recentAbsencesQuery).subscribe(getApproveSubscriber);
228220
}
229221

230-
private void renderApproveList(List<BlogPostEntity> blogPostEntities) {
222+
private void renderApproveList(List<Attendance> blogPostEntities) {
231223
//showProgress(false);
224+
hidefProgressDialog();
232225
mAdapter.setData(blogPostEntities);
233226
//Log.d("blogPostEntities", blogPostEntities.get(0).getTitle());
234227
//Log.d("blogPostEntities", blogPostEntities.get(1).getTitle());
@@ -244,15 +237,17 @@ public void onDestroy() {
244237
subscription.unsubscribe();
245238
}
246239
_disposables.dispose();
240+
if (getApproveSubscriber != null && !getApproveSubscriber.isUnsubscribed()) {
241+
getApproveSubscriber.unsubscribe();
242+
}
243+
247244
}
248245

249246
public String getUid() {
250247
return FirebaseAuth.getInstance().getCurrentUser().getUid();
251248
}
252249

253250

254-
public abstract Query getQuery(DatabaseReference databaseReference);
255-
256251
// [START deletefan_out]
257252
private void approveAbsenceToServer(String postkey, int anodaj, Attendance model) {
258253

@@ -324,7 +319,7 @@ public void onNext(Pair pair) {
324319
}
325320
// [END delete_fan_out]
326321

327-
private void getDialog(String postkey, Attendance model) {
322+
private void getApproveDialog(String postkey, Attendance model) {
328323

329324
//if savetofir > 0 then save to server
330325
String savetofir = SettingsActivity.getFir(getActivity());
@@ -335,7 +330,7 @@ private void getDialog(String postkey, Attendance model) {
335330
dialog.setContentView(R.layout.approve_dialog);
336331
dialog.setTitle(R.string.item);
337332
// set the custom dialog components - text, image and button
338-
String textx = getString(R.string.item) + " " + abskeydel;
333+
String textx = getString(R.string.item) + " " + postkey;
339334
TextView text = (TextView) dialog.findViewById(R.id.text);
340335
text.setText(textx);
341336
ImageView image = (ImageView) dialog.findViewById(R.id.image);
@@ -534,31 +529,32 @@ public void onNext(Message message) {
534529
private final class GetApproveSubscriber extends Subscriber<DataSnapshot> {
535530
@Override public void onCompleted() {
536531
//showProgress(false);
537-
//getPostsSubscriber.unsubscribe();
532+
hidefProgressDialog();
533+
getApproveSubscriber.unsubscribe();
538534
}
539535

540536
@Override public void onError(Throwable e) {
541537
//showProgress(false);
542538
//showError(e.getMessage());
543-
//getPostsSubscriber.unsubscribe();
539+
hidefProgressDialog();
540+
getApproveSubscriber.unsubscribe();
544541
}
545542

546543
@SuppressWarnings("unchecked") @Override public void onNext(DataSnapshot dataSnapshot) {
547-
List<BlogPostEntity> blogPostEntities = new ArrayList<>();
544+
List<Attendance> blogPostEntities = new ArrayList<>();
548545
for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
549546
String keys = childDataSnapshot.getKey();
550547
Log.d("keys ", keys);
551-
BlogPostEntity resultx = childDataSnapshot.getValue(BlogPostEntity.class);
552-
resultx.setAuthor(keys);
548+
Attendance resultx = childDataSnapshot.getValue(Attendance.class);
549+
resultx.setRok(keys);
553550
blogPostEntities.add(resultx);
554551
}
555552
renderApproveList(blogPostEntities);
556553

557554
}
558-
}//end of GetPostsSubscriber
555+
}//end of getApproveSubscriber
559556

560557
public static class TapEvent {}
561558

562559

563-
564560
}

0 commit comments

Comments
 (0)