· 9 years ago · Dec 06, 2016, 04:58 PM
1//-------CLASSE QUE FAZ INSERT,ALTER,DELETE ATRAVES DE DADOSDADOS PELA CLASSE AGENDARF(CLASSE COM OS EDTTEXTS E SPINNERS)
2
3package com.example.userlocal.oficinadocabelo.Agenda;
4
5import android.content.ContentValues;
6import android.content.Context;
7import android.database.Cursor;
8import android.database.sqlite.SQLiteDatabase;
9
10
11import com.example.userlocal.oficinadocabelo.banco.banco;
12
13/**
14* Created by danrock on 19/11/2016.
15*/
16public class ControlarAgedamento {
17
18private SQLiteDatabase db;
19private banco banco;
20
21public ControlarAgedamento(Context context){banco = new banco(context);
22}
23
24public String insereAgenda(String nome, String dia, String horario, String corte, String valor){
25 ContentValues valores;
26 long resultado;
27
28 db = banco.getWritableDatabase();
29 valores = new ContentValues();
30 valores.put(banco.NOMECLIAGE, nome);
31 valores.put(banco.DATA, dia );
32 valores.put(banco.HORA, horario);
33 valores.put(banco.SERVICO,corte );
34 valores.put(banco.VALOR,valor );
35 validar(dia,horario);
36 resultado = db.insert(banco.TABELAAGE, null, valores);
37 db.close();
38
39 if (resultado ==-1)
40 return "Erro ao inserir registro";
41 else
42 return "Registro Inserido com sucesso";
43
44}
45
46public Cursor carregaDados(){
47 Cursor cursor;
48 String[] campos = {banco.IDAGE,banco.NOMECLIAGE,banco.DATA,banco.HORA,banco.SERVICO,banco.VALOR};
49 db = banco.getReadableDatabase();
50 cursor = db.query(banco.TABELAAGE, campos, null, null, null, null, null, null);
51
52 if(cursor!=null){
53 cursor.moveToFirst();
54 }
55 db.close();
56 return cursor;
57}
58
59public Cursor carregaDadoById(int id){
60 Cursor cursor;
61 String[] campos = {banco.IDAGE,banco.NOMECLIAGE,banco.DATA,banco.HORA,banco.SERVICO,banco.VALOR};
62 String where = banco.IDAGE + "=" + id;
63 db = banco.getReadableDatabase();
64 cursor = db.query(banco.TABELAAGE,campos,where, null, null, null, null, null);
65
66 if(cursor!=null){
67 cursor.moveToFirst();
68 }
69 db.close();
70 return cursor;
71}
72
73public void alteraHorario(int id, String nome, String telefone, boolean email, String idade, String valor){
74 ContentValues valores;
75 String where;
76
77 db = banco.getWritableDatabase();
78
79 where = banco.IDAGE + "=" + id;
80
81 valores = new ContentValues();
82 valores.put(banco.NOMECLIAGE, nome);
83 valores.put(banco.DATA, telefone);
84 valores.put(banco.HORA, email);
85 valores.put(banco.SERVICO, idade);
86 valores.put(banco.VALOR, valor);
87
88
89 db.update(banco.TABELAAGE,valores,where,null);
90 db.close();
91}
92public void deletaRegistro(int id){
93 String where = banco.IDAGE + "=" + id;
94 db = banco.getReadableDatabase();
95 db.delete(banco.TABELAAGE,where,null);
96 db.close();
97}
98
99public Integer validarData(final String DATA, final String HORA){
100
101 SQLiteDatabase db = banco.getWritableDatabase();
102 final Cursor cursor = db.query(banco.TABELAAGE, new String[]{"id"}, "DATA = ? AND HORA =?", new String[]{DATA,HORA}, null, null, null, null);
103 //se nulo ou vazio não encontrou nenhum com a mesma data e hora, retorna -1
104 if (null == cursor || !cursor.moveToFirst()) return -1;
105
106 final Integer id = cursor.getInt(0);
107 cursor.close();
108 return id;
109}
110
111public void validar(String dia, String horario) {
112 Integer idComDataEHora = validarData(dia, horario);
113 if (idComDataEHora.equals(-1)) {
114 // não exite nenhum registro
115 } else {
116 /// Se vc está editando, verifique se o id é igual ao que está editando!
117
118 }
119
120}
121}
122
123
124
125
126//////Classe que cria o banco
127
128
129package com.example.userlocal.oficinadocabelo.banco;
130
131import android.content.Context;
132import android.database.Cursor;
133import android.database.sqlite.SQLiteDatabase;
134import android.database.sqlite.SQLiteOpenHelper;
135
136public class banco extends SQLiteOpenHelper {
137 public static final String NOME_BANCOCLI = "bancocli";
138 public static final String TABELACLI = "cliente";
139 public static final int VERSAOCLI = 1;
140 public static final String IDCLI = "_id";
141 public static final String IMGCLI = "img";
142 public static final String NOMECLI = "nome";
143 public static final String TELEFONECLI = "telefone";
144 public static final String CELULARCLI = "celular";
145 public static final String EMAILCLI = "email";
146 public static final String SEXOCLI = "sexo";
147 public static final String CODCLI = "codigo";
148 //---------------------------------------------------------
149 public static final String TABELAFUN = "funcionario";
150 public static final String IDFUN = "_id";
151 public static final String IMGFUN = "imagem";
152 public static final String NOMEFUN = "nome";
153 public static final String TELEFONEFUN = "telefone";
154 public static final String CELULARFUN = "celular";
155 public static final String CARGOFUN = "cargo";
156 public static final String SALARIOFUN = "salario";
157 public static final String SEXOFUN = "sexo";
158//----------------------------------------------------------
159
160 public static final String TABELAPRO = "produto";
161 public static final String IDPRO = "_id";
162 public static final String IMGPRO = "imagem";
163 public static final String NOMEPRO = "nome";
164 public static final String QUANTIDADEPRO = "quantidade";
165 public static final String MARCAPRO = "marca";
166 //---------------------------------------------------------
167 public static final String TABELAAGE = "agenda";
168 public static final String IDAGE = "_id";
169 public static final String NOMECLIAGE = "nome";
170 public static final String DATA = "dia";
171 public static final String HORA = "hora";
172 public static final String SERVICO = "corte";
173 public static final String VALOR = "valor";
174
175
176 public banco(Context context){
177 super(context, NOME_BANCOCLI, null, VERSAOCLI);
178 }
179
180
181 @Override
182 public void onCreate(SQLiteDatabase db) {
183 String sql = "CREATE TABLE "+TABELACLI+"("
184 +IDCLI+ " integer primary key autoincrement,"
185 +IMGCLI+ " blob,"
186 +NOMECLI+ " text not null,"
187 +TELEFONECLI+ " text not null,"
188 +CELULARCLI+ " text not null,"
189 +EMAILCLI+ " text not null,"
190 +SEXOCLI+ " text not null,"
191 +CODCLI+ " text not null"
192 +");";
193
194 db.execSQL(sql);
195
196 String sql2 = "CREATE TABLE "+TABELAFUN+"("
197 +IDFUN+ " integer primary key autoincrement,"
198 +IMGFUN+ " blob,"
199 +NOMEFUN+ " text not null,"
200 +TELEFONEFUN+ " text not null,"
201 +CELULARFUN+ " text not null,"
202 +SALARIOFUN+ " text not null,"
203 +CARGOFUN+ " text not null,"
204 +SEXOFUN+ " text not null"
205 +");";
206
207 db.execSQL(sql2);
208
209 String sql3 ="CREATE TABLE "+TABELAPRO+"("
210 +IDPRO+ " integer primary key autoincrement,"
211 +IMGPRO+ " blob,"
212 +NOMEPRO+ " text not null,"
213 +MARCAPRO+ " text,"
214 +QUANTIDADEPRO+ " text not null"
215 +");";
216
217 db.execSQL(sql3);
218
219 String sql4 ="CREATE TABLE "+TABELAAGE+"("
220 +IDAGE+ " integer primary key autoincrement,"
221 +NOMECLIAGE+ " text not null,"
222 +DATA+ " text not null,"
223 +HORA+ " text not null,"
224 +SERVICO+ " text not null,"
225 +VALOR+ " text not null"
226 +")";
227
228 db.execSQL(sql4);
229
230 }
231
232 @Override
233 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
234 db.execSQL("DROP TABLE IF EXISTS" + TABELACLI);
235 onCreate(db);
236 db.execSQL("DROP TABLE IF EXISTS" + TABELAAGE);
237 onCreate(db);
238 db.execSQL("DROP TABLE IF EXISTS" + TABELAFUN);
239 onCreate(db);
240 db.execSQL("DROP TABLE IF EXISTS" + TABELAPRO);
241 onCreate(db);
242 }
243
244
245
246
247}
248
249////CLASSE AGENDARF
250
251
252package com.example.userlocal.oficinadocabelo.Agenda;
253
254import android.app.Activity;
255import android.app.DatePickerDialog;
256import android.app.Dialog;
257import android.app.TimePickerDialog;
258import android.content.Context;
259import android.content.Intent;
260import android.database.Cursor;
261import android.database.sqlite.SQLiteDatabase;
262import android.support.v7.app.AlertDialog;
263import android.support.v7.app.AppCompatActivity;
264import android.os.Bundle;
265import android.view.View;
266import android.widget.ArrayAdapter;
267import android.widget.Button;
268import android.widget.DatePicker;
269import android.widget.EditText;
270import android.widget.ImageButton;
271import android.widget.ImageView;
272import android.widget.Spinner;
273import android.widget.TimePicker;
274import android.widget.Toast;
275
276import java.util.Calendar;
277
278import com.example.userlocal.oficinadocabelo.R;
279import com.example.userlocal.oficinadocabelo.TelaInicial;
280import com.example.userlocal.oficinadocabelo.banco.banco;
281
282public class AgendarF extends AppCompatActivity implements Button.OnClickListener {
283
284
285private EditText Nome,Dia,Corte,valor;
286private AlertDialog alerta;
287private ImageButton data;
288private ImageView btncadastrar,btnvoltar;
289static final int DATE_DIALOG_ID = 0;
290private String DataFinal;
291private Spinner Hora;
292
293private banco banco;
294
295
296
297@Override
298protected void onCreate(Bundle savedInstanceState) {
299 super.onCreate(savedInstanceState);
300 setContentView(R.layout.cadastrar_horario);
301 data =(ImageButton) findViewById(R.id.imgdata);
302 data.setOnClickListener(this);
303
304
305 btncadastrar =(ImageView)findViewById(R.id.btnCadastrarHorarioSalvar);
306 Nome =(EditText) findViewById(R.id.edtNome);
307 Hora =(Spinner) findViewById(R.id.spinerhorario);
308 Dia = (EditText) findViewById(R.id.txtData);
309 Corte =(EditText) findViewById(R.id.edtCorte);
310 data=(ImageButton) findViewById(R.id.imgdata);
311 valor=(EditText) findViewById(R.id.edtValor);
312
313 ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.spinnerhorario, android.R.layout.simple_spinner_item);
314 Hora.setAdapter(adapter);
315
316 btncadastrar.setOnClickListener(new View.OnClickListener(){
317 @Override
318 public void onClick(View v) {
319 String spvalor = Hora.getSelectedItem().toString();
320 if(Dia.getText().length() == 0 ||Hora.equals(null) ||Corte.getText().length() == 0){
321 Toast.makeText(getApplicationContext(), "Nenhum campo pode estar vazio", Toast.LENGTH_LONG).show();
322 }else {
323
324
325 ControlarAgedamento ca = new ControlarAgedamento(getBaseContext());
326 String nomeString = Nome.getText().toString();
327 String diaString = Dia.getText().toString();
328 String horaString = spvalor;
329 String corteString = Corte.getText().toString();
330 String valorString = valor.getText().toString();
331
332 String resultado;
333
334 resultado = ca.insereAgenda(nomeString, diaString, horaString, corteString, valorString );
335
336 Intent i = new Intent(AgendarF.this, Agenda.class);
337 startActivity(i);
338 finish();
339 Toast.makeText(getApplicationContext(), "Horario Marcado", Toast.LENGTH_LONG).show();
340 }
341 }
342 });
343
344}
345@Override
346protected Dialog onCreateDialog(int id) {
347 Calendar calendario = Calendar.getInstance();
348
349 int ano = calendario.get(Calendar.YEAR);
350 int mes = calendario.get(Calendar.MONTH);
351 int dia = calendario.get(Calendar.DAY_OF_MONTH);
352
353 switch (id) {
354 case DATE_DIALOG_ID:
355 return new DatePickerDialog(this, mDateSetListener, ano, mes,
356 dia);
357 }
358 return null;
359}
360
361private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
362 public void onDateSet(DatePicker view, int year, int monthOfYear,
363 int dayOfMonth) {
364 String data = String.valueOf(dayOfMonth) + " /"
365 + String.valueOf(monthOfYear+1) + " /" + String.valueOf(year);
366 Toast.makeText(AgendarF.this,
367 "DATA = " + data, Toast.LENGTH_SHORT)
368 .show();
369 DataFinal= data;
370 Dia.setText(DataFinal);
371 }
372};
373
374@Override
375public void onClick(View v) {
376 if (v == data)
377 showDialog(DATE_DIALOG_ID);
378}
379//////////////Acaba Calendario//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
380////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
381
382
383
384
385}