]> git.llucax.com Git - z.facultad/75.10/miklolife.git/blob - demo/src/Dominio/Autoincrement.cs
Para guille :)
[z.facultad/75.10/miklolife.git] / demo / src / Dominio / Autoincrement.cs
1
2 namespace Dominio {
3
4 using Controlador;
5 using com.db4o;
6 using com.db4o.query;
7 using System;
8 using System.Collections;
9
10 public class Autoincrement {
11         public int codigo_afiliado = int.MinValue;
12         public int codigo_autorizacion = int.MinValue;
13         public int codigo_plan = int.MinValue;
14 }
15
16 public class AutoIncrementable : Controller {
17         Autoincrement ids;
18
19         private void Get ()
20         {
21                 Query query = Db.query();
22                 query.constrain(typeof(Autoincrement));
23                 ObjectSet result = query.execute ();
24                 Autoincrement i = (Autoincrement)result.next ();
25                 if (i == null) {
26                         Console.WriteLine ("Inicio Autoincrement");
27                         ids = new Autoincrement ();
28                         ids.codigo_afiliado = 0;
29                         ids.codigo_autorizacion = 0;
30                         ids.codigo_plan = 0;
31                 } else {
32                         ids = i;
33                 }
34         }
35
36         private void Set ()
37         {
38                 Db.set (ids);
39                 Db.commit ();
40         }
41
42         public int NextAfiliado ()
43         {
44                 Get ();
45                 ids.codigo_afiliado += 1;
46                 Set ();
47                 return ids.codigo_afiliado;
48         }       
49         
50         public int NextAutorizacion ()
51         {
52                 Get ();
53                 ids.codigo_autorizacion += 1;
54                 Set ();
55                 return ids.codigo_autorizacion;
56         }       
57
58         public int NextPlan ()
59         {
60                 Get ();
61                 ids.codigo_plan += 1;
62                 Set ();
63                 return ids.codigo_plan;
64         }       
65 }
66
67 }