[Mono-list] Re: [Bpd] Re: a start at the arm app

Bryan Buchanan bryanb@webbtide.com
Tue, 26 Apr 2005 21:45:54 +1000


--=-KAnFCThN11IvGqdfNa8L
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

Sorry, try this attachment.

--=-KAnFCThN11IvGqdfNa8L
Content-Disposition: attachment; filename=classes.cs
Content-Type: text/plain; name=classes.cs; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

//
// class definitions for CRM app
//
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Text;
using Gtk;
using com.db4o;
using com.db4o.ext;
using com.db4o.query;

namespace wEbbTide {

	//
	// statuses for calls
	//
	public enum Status {Planned, Held, Closed, Other}

	//
	// define an Account (aka customer or supplier
	//
	public class Account : CodeFile {
		public string name;
		public StringCollection address;	// string
		public Postcode postcode;
		public string acn;
		public string fax;
		public string telephone;
		public string email;
		public Contact contact;
		public Industry industry;
		public AccountType accountType;
		public DateTime created;

	}

	//
	// type of account supplier, customer, something else ?
	//
	public class AccountType : CodeFile {
		public string description;
	
	}

	//
	// a call. This is what it's all about
	//
	public class Call : CodeFile {
		public StringCollection subject;
		public StringCollection description;
		public DateTime started;
		public DateTime finished;
		public DateTime followupDate;
		public Contact contact;
		public Salesperson takenBy;
		public Salesperson assignedTo;
		public Call previous;
		public Status status;
		public bool initiated;

	}

	//
	// each call must be assosciated with a contact
	//
	public class Contact : CodeFile {
		public string name;
		public string title;
		public StringCollection address;
		public Postcode postcode;
		public string telephone;
		public string mobile;
		public string otherPhone;
		public string fax;
		public string email;
		public string department;
		public string reportsTo;
		public LeadSource leadSource;
		public Salesperson accountManager;
		public Account account;
		public DateTime created;
		public DateTime modified;
		
	}

	//
	// industry codes. Each Account has an industry code
	//
	public class Industry : CodeFile {
		public string description;

	}

	//
	// a list of pre-determined lead sources. Each contact has a lead
	//
	public class LeadSource : CodeFile {
		public string description;

	}

	//
	// Notes. Random notes for a contact
	//
	public class Note : CodeFile {
		public StringCollection subject;
		public StringCollection description;
		public Contact contact;
		public Salesperson enteredBy;
		public DateTime enteredDate;
		public Call references;

	}

	//
	// people who work for us
	//
	public class Salesperson : CodeFile {
		public string name;
		public string email;
		public string phone;

	}

	//
	// Tasks. Our todo list
	//
	public class Task : CodeFile {
		public StringCollection subject;
		public StringCollection description;
		public Contact contact;
		public Salesperson enteredBy;
		public DateTime enteredDate;
		public DateTime toBeCompletedBy;
		public Call references;
		public Status status;

	}
}

--=-KAnFCThN11IvGqdfNa8L--