public ActionResult UpdatePersonalInformation(InsertPersonUser insertPersonUser)
        {
            var entity = sopace.personal_information.Where(e =>
                                                           e.NIP == insertPersonUser.Personal_Information.NIP).FirstOrDefault();

            if (entity != null)
            {
                personal_information pInfo = insertPersonUser.Personal_Information;
                user User = insertPersonUser.User;
                sopace.Entry(entity).CurrentValues.SetValues(pInfo);

                var entityUser = sopace.users.Where(e => e.NIP == insertPersonUser.User.NIP).FirstOrDefault();
                if (entityUser != null)
                {
                    file_dokumen fd = insertPersonUser.File_Dokumen;
                    sopace.users.Remove(entityUser);
                    User.password = encryptor.Encrypt(User.password);
                    sopace.users.Add(User);

                    var entityFileDok = sopace.file_dokumen.Where(e => e.NIP == insertPersonUser.User.NIP).FirstOrDefault();
                    if (entityFileDok != null)
                    {
                        sopace.Entry(entityFileDok).CurrentValues.SetValues(fd);
                    }
                }

                sopace.SaveChanges();
            }
            return(RedirectToAction("ViewAll"));
        }
        public JsonResult InsertPersonalInformation(InsertPersonUser insertPersonUser)
        {
            file_dokumen fd = new file_dokumen();
            DateTime     joinDate = insertPersonUser.Personal_Information.tgl_masuk.Value;
            string       jsonResult = "", personNIP = insertPersonUser.Personal_Information.NIP;
            int          cekCount = sopace.pr_cekNipAlready(personNIP).ElementAt(0).Value;

            if (cekCount > 0)
            {
                jsonResult = "NIP sudah ada dalam database";
            }
            else
            {
                insertPersonUser.Personal_Information.status_aktif = "aktif";
                sopace.personal_information.Add(insertPersonUser.Personal_Information);
                insertPersonUser.User.password = encryptor.Encrypt(insertPersonUser.User.password);
                sopace.users.Add(insertPersonUser.User);
                sopace.file_dokumen.Add(insertPersonUser.File_Dokumen);
                sopace.SaveChanges();

                insertTableElse(personNIP, joinDate);
                jsonResult = "Insert Data Successfully..";
            }
            return(Json(jsonResult, JsonRequestBehavior.AllowGet));
        }
        public InsertPersonUser DataForEdit(string username)
        {
            InsertPersonUser     insertPersonUser = new InsertPersonUser();
            personal_information pInfo            = sopace.users.Where(u => u.username == username)
                                                    .Join(sopace.personal_information, u => u.NIP, p => p.NIP, (u, p) => p).FirstOrDefault();
            user         user = sopace.users.Where(e => e.username == username).FirstOrDefault();
            file_dokumen fd   = sopace.users.Where(u => u.username == username).Join(sopace.file_dokumen,
                                                                                     u => u.NIP,
                                                                                     fdo => fdo.NIP,
                                                                                     (u, fdo) => fdo).FirstOrDefault();

            user.password         = encryptor.Decrypt(user.password);
            insertPersonUser.User = user;
            insertPersonUser.Personal_Information = pInfo;
            TempData["tglLahir"] = pInfo.tgl_lahir.Value.ToString("yyyy-MM-dd");
            TempData["tglMasuk"] = pInfo.tgl_masuk.Value.ToString("yyyy-MM-dd");

            if (fd != null)
            {
                if (fd.foto_profil != null)
                {
                    TempData["fotoProfil"] = fd.foto_profil;
                }
                if (fd.foto_buku_rekening != null)
                {
                    TempData["fotoBkRek"] = fd.foto_buku_rekening.ToString();
                }
                if (fd.cv != null)
                {
                    TempData["CV"] = fd.cv.ToString();
                }
                TempData["nip"] = fd.NIP;
            }
            return(insertPersonUser);
        }