Skip to content

Instantly share code, notes, and snippets.

@Gaubee
Last active August 29, 2015 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Gaubee/9251553 to your computer and use it in GitHub Desktop.
Save Gaubee/9251553 to your computer and use it in GitHub Desktop.

JAVA排队系统

数据表

用户:user

	u_id
	u_name
	u_email
	u_password

管理员:admin

	a_id
	a_name
	a_type

业务:business

	b_id
	b_name

排队:queue

	q_id
	q_a_id
	q_u_id
	q_b_id
	q_begin_time
	q_end_time

实现描述:

排队主要实现的功能是时间的预算,这需要对各种业务做独立的时间统计。计算出出各种业务的平均处理时间。 而后才能算出当前排队说要花销的大概时间。

算法描述:

我们并不取全部的操作历史来算平均数。业务的处理可能随着业务人员的处理能力提升而加快速度。 因此我们采用3:7分的方法来合并过去的业务处理速度与当下的业务处理速度。 其中过去的业务处理速度我们采用随机抽样来获取最近30天业务处理记录做样品并做平均占30%, 当下的业务我们采用最近7天内的所有业务处理记录做样品并做平均占70%。 从而达到最合理的时间预算。

RESTful:

1. 队列信息

Get:
	
	URL:
		/queue

	Parameters:
		q_begin_time(可选)
		q_end_time(可选)

	Response:
		Json-Array:Array([queue Object])

Get:
	
	URL:
		/queue/:q_id

	Response:
		Json-Array:[queue Object]

Post:
	
	URL:
		/queue

	Parameters:
		q_u_id
		q_b_id
		q_begin_time
		q_end_time

	Response:
		Get:Json-Object:[info Object]

PUT:
	
	URL:
		/queue/:q_id

	Parameters:
		q_u_id
		q_b_id
		q_begin_time
		q_end_time

	Response:
		Get:Json-Object:[info Object]

DELETE:
	
	URL:
		/queue/:q_id

	Response:
		Get:Json-Object:[info Object]

2. 用户信息

Get:
	
	URL:
		/user

	Parameters:
		number(可选)

	Response:
		Json-Array:Array([user Object])

Get:
	
	URL:
		/user/:u_id

	Response:
		Json-Array:[user Object]

Post:
	
	URL:
		/user

	Parameters:
		u_name
		u_email
		u_password

	Response:
		Get:Json-Object:[info Object]

PUT:
	
	URL:
		/user/:u_id

	Parameters:
		u_name
		u_email
		u_password

	Response:
		Get:Json-Object:[info Object]

DELETE:
	
	URL:
		/user/:u_id

	Response:
		Get:Json-Object:[info Object]

3. 业务信息

Get:
	
	URL:
		/business

	Response:
		Json-Array:Array([business Object])

Get:
	
	URL:
		/business/:b_id

	Response:
		Json-Array:[business Object]

Post:
	
	URL:
		/business

	Parameters:
		b_name

	Response:
		Get:Json-Object:[info Object]

PUT:
	
	URL:
		/business/:b_id

	Parameters:
		b_name

	Response:
		Get:Json-Object:[info Object]

DELETE:
	
	URL:
		/business/:b_id

	Response:
		Get:Json-Object:[info Object]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment