Example #1
0
 JsonResult IBase <MKontak> .Update(Models.Dto.MKontak obj)
 {
     throw new NotImplementedException();
 }
Example #2
0
        JsonResult IKontak.Update(long iduser, Models.Dto.MKontak obj)
        {
            JsonResult hasil = new JsonResult {
                JSONResult = false, JSONMessage = "Data tidak ditemukan", JSONRows = 0, JSONValue = null
            };
            List <MKontak> list = new List <MKontak>();

            using (NpgsqlConnection conn = GetConnection())
            {
                using (NpgsqlCommand com = new NpgsqlCommand())
                {
                    using (NpgsqlDataAdapter oDA = new NpgsqlDataAdapter())
                    {
                        try
                        {
                            conn.Open();
                            com.Connection     = conn;
                            com.CommandTimeout = conn.ConnectionTimeout;
                            com.Transaction    = com.Connection.BeginTransaction();

                            com.CommandText = "delete from mkontakd where idkontak=@id and iduser=@iduser";
                            com.Parameters.Clear();
                            com.Parameters.AddWithValue("@id", obj.id);
                            com.Parameters.AddWithValue("@iduser", iduser);
                            com.ExecuteNonQuery();

                            //cek data sudah ada atau belum
                            com.CommandText = "select id from mkontak where right(hp, LENGTH(hp)-2) = @hp LIMIT 1";
                            com.Parameters.Clear();
                            com.Parameters.AddWithValue("@hp", obj.hp);
                            long jml = RepUtils.NullToLong(com.ExecuteScalar());

                            if (jml == obj.id)
                            {
                                //com.CommandText = "update mkontak set kode=@kode,nama=@nama,alamat1=@alamat1,alamat2=@alamat2,alamat3=@alamat3,hp=@hp,telpon=@telpon,iswhatsapp=@iswhatsapp,norekening=@norekening,bank=@bank,atasnamarekening=@atasnamarekening where id=@id";
                                //com.Parameters.Clear();
                                //com.Parameters.Add("@id", NpgsqlTypes.NpgsqlDbType.Bigint).Value = obj.id;
                                //com.Parameters.Add("@kode", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.kode.Trim();
                                //com.Parameters.Add("@nama", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.nama.Trim();
                                //com.Parameters.Add("@alamat1", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.alamat1.Trim();
                                //com.Parameters.Add("@alamat2", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.alamat2.Trim();
                                //com.Parameters.Add("@alamat3", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.alamat3.Trim();
                                //com.Parameters.Add("@hp", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.hp.Trim();
                                //com.Parameters.Add("@telpon", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.telpon.Trim();
                                //com.Parameters.Add("@bank", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.bank.Trim();
                                //com.Parameters.Add("@iswhatsapp", NpgsqlTypes.NpgsqlDbType.Bit).Value = obj.iswhatsapp;
                                //com.Parameters.Add("@norekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.norekening.Trim();
                                //com.Parameters.Add("@atasnamarekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.atasnamarekening.Trim();

                                //com.ExecuteNonQuery();
                            }
                            else
                            {
                                if (jml == 0)
                                {
                                    com.CommandText = "select max(id) from mkontak";
                                    obj.id          = RepUtils.NullToLong(com.ExecuteScalar()) + 1;
                                    com.CommandText = "insert into mkontak (id,kode,nama,alamat1,alamat2,alamat3,hp,telpon,iswhatsapp,norekening,bank,atasnamarekening)" +
                                                      "values (@id,@kode,@nama,@alamat1,@alamat2,@alamat3,@hp,@telpon,@iswhatsapp,@norekening,@bank,@atasnamarekening)";
                                    com.Parameters.Clear();
                                    com.Parameters.Add("@id", NpgsqlTypes.NpgsqlDbType.Bigint).Value                = obj.id;
                                    com.Parameters.Add("@kode", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.kode.Trim();
                                    com.Parameters.Add("@nama", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.nama.Trim();
                                    com.Parameters.Add("@alamat1", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat1.Trim();
                                    com.Parameters.Add("@alamat2", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat2.Trim();
                                    com.Parameters.Add("@alamat3", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat3.Trim();
                                    com.Parameters.Add("@hp", NpgsqlTypes.NpgsqlDbType.Varchar).Value               = obj.hp.Trim();
                                    com.Parameters.Add("@telpon", NpgsqlTypes.NpgsqlDbType.Varchar).Value           = obj.telpon.Trim();
                                    com.Parameters.Add("@bank", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.bank.Trim();
                                    com.Parameters.Add("@iswhatsapp", NpgsqlTypes.NpgsqlDbType.Bit).Value           = obj.iswhatsapp;
                                    com.Parameters.Add("@norekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value       = obj.norekening.Trim();
                                    com.Parameters.Add("@atasnamarekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.atasnamarekening.Trim();

                                    com.ExecuteNonQuery();
                                }
                                else
                                {
                                    obj.id = jml;
                                }
                            }

                            com.CommandText = "insert into mkontakd (iduser,idkontak,nama,alamat1,alamat2,alamat3,hp,telpon,iswhatsapp,norekening,bank,atasnamarekening)" +
                                              "values (@iduser,@id,@nama,@alamat1,@alamat2,@alamat3,@hp,@telpon,@iswhatsapp,@norekening,@bank,@atasnamarekening)";
                            com.Parameters.Clear();
                            com.Parameters.Add("@iduser", NpgsqlTypes.NpgsqlDbType.Bigint).Value            = iduser;
                            com.Parameters.Add("@id", NpgsqlTypes.NpgsqlDbType.Bigint).Value                = obj.id;
                            com.Parameters.Add("@kode", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.kode.Trim();
                            com.Parameters.Add("@nama", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.nama.Trim();
                            com.Parameters.Add("@alamat1", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat1.Trim();
                            com.Parameters.Add("@alamat2", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat2.Trim();
                            com.Parameters.Add("@alamat3", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = obj.alamat3.Trim();
                            com.Parameters.Add("@hp", NpgsqlTypes.NpgsqlDbType.Varchar).Value               = obj.hp.Trim();
                            com.Parameters.Add("@telpon", NpgsqlTypes.NpgsqlDbType.Varchar).Value           = obj.telpon.Trim();
                            com.Parameters.Add("@bank", NpgsqlTypes.NpgsqlDbType.Varchar).Value             = obj.bank.Trim();
                            com.Parameters.Add("@iswhatsapp", NpgsqlTypes.NpgsqlDbType.Bit).Value           = obj.iswhatsapp;
                            com.Parameters.Add("@norekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value       = obj.norekening.Trim();
                            com.Parameters.Add("@atasnamarekening", NpgsqlTypes.NpgsqlDbType.Varchar).Value = obj.atasnamarekening.Trim();

                            com.ExecuteNonQuery();

                            com.Transaction.Commit();
                            hasil = new JsonResult
                            {
                                JSONMessage = "Data tersimpan",
                                JSONResult  = true,
                                JSONRows    = 1,
                                JSONValue   = obj
                            };
                        }
                        catch (Exception ex)
                        {
                            hasil = new JsonResult
                            {
                                JSONMessage = ex.Message,
                                JSONResult  = false,
                                JSONRows    = 0,
                                JSONValue   = ex
                            };
                        }
                    }
                }
            }
            return(hasil);
        }