cornstarch-beanbag
1. Experience Scheme
Experimental goals
a)
Design the pet
hostipal database
b)
Define the
application functionalities the project will
provide with the database.
c)
Implement this
application using developing tools.
By
finishing these three basic goals, we try to
understand deeply the knowledge of database we
study this term.
What
’
s more, we should know
how we can do better to apply database into our
project. To improve our ability of team
work is also one of the goal.
Experiment places,
apparatus, equipment and materials
Experiment
places
:
Jobs are
mostly done on our own computers.
Apparatus, equipment and materials:
During
the
experiment
we
need
both
software
tools
and
computers.
The
software
includes
Dreamweaver 8.0,
Tomcat 6.0,JDK1.60,JSP
+
SQL
server 2000 and Eclips.
Experimental
scheme
This project is
started for the goal of understanding the database
concepts and leaning to make
SQL Server
into an application. Two main tasks will be done
in the project, one is database design,
and the other is to implement a web-
based application with the using JSP+SQL SERVER
2000.
The following lists
the experiment procedures:
(1)
Determine
domain:
a)
a) A description of the application
domain of the project.
b) State as
clearly as possible what we will accomplish.
c) A description of the functionalities
what the project plan to offer.
(2)
Requirement
analysis:
a) Define the
function modules specifically.
b) Finish a
global chart of the function for the whole project
(3)
Determining
business rules
(4)
Conceptual model design:
a)
Entity sets and attributes determining b)
Relational sets and attributes determining
c) Overall E-R diagram
(5) Logical structure design
a)
Relational table reduction
b) Constraints definition
c)
Table and attributes description
d) Views design
(6) Physical design
(7)
Interface design
(8) Programming the
database application to finish all the SQL
sentences associate to the
Project.
(8) Implementing
using JSP+SQL SERVER 2000 with the help of
Dreamweaver 8.0.
(9) Design a plan for
testing and make it.
Task
division:
The
project
is
to
accomplish
by
a
team
of
three
students.
Xushaojun
and
Hewei
will
be
responsible for directing
and controlling the whole procedures. They will
also mainly take part in
designing the
database and finish the implementation. Shenzhen
take part in the work design the
functional modules and database to
decide the basic frame of what we try to
accomplish. For more
details, Xu does
most of the work on entities and handles data on
the whole tables. Hewei does
most of
the jobs on draw the relational table forms and
handle data on all the products.
The
opinions of the adviser to the experiment scheme
The
adviser
’
s
signature
:
Date(Y
ear/Month/Day)
:
I. Experiment Procedures
1.
Requirement Description
With the increasing number of urban
pets, many of the emerging pet industry in the
park cities
expected. Professional pet
bathing, pet tailors, pet photography, pet
matchmaking business services
and other
specialized industries such as sprung up to
develop, and formed a huge industry for the
pet, the inevitable result is more
professional pet services, exclusive of .
Pet Clinic pet care
industry is accompanied by the emergence of a new
industry. Large and
medium
cities
in
China
such
as
Beijing,
Shanghai
and
other
pet
hospitals,
pet
beauty
salons
are
already many, there are a number of
universities or research institutes to open the
pet clinic. Many
pet hospital services
include not only medical care, operating income
also includes sale of pets, pet
supplies and food sales, pet foster
care, pet grooming and so on. Along with the
universality of pet,
pet clinics in the
future the industry is bound to have a rapid
development. In order to improve the
efficiency of the treatment of pets,
most pet hospital uses a computer office.
From the Internet to
collect information on a number of pet hospitals,
pet clinics, staff work
needs
to
access
and
manage
the
following
information:
veterinary
clinics,
customers
and
clients
pets.
Veterinary clinics
have
different
expertise, such as dental,
some good, some good medicine
and
so
on.
If
these
are
manually
office
flowers,
which
will
greatly
reduce
the
speed
of
office,
increasing the company's costs and
reduce the company's profits.
Therefore, a need to
develop
a
clinic
office
systems,
clinic
staff
can
be
in
the
company's
access
to
any
computer
on
the
pet
information, customer
information, veterinary information. Pet Clinic
members can register users,
log
system,
query
Pet
related
information,
visit
the
pet
information,
reservation
services,
and
ordering pet products. Visitors
browsing static content only.
2. Requirement Analysis
The
system should have the corresponding
functions
:
(1)Employee:
1)
login system.
2)
browse veterinary clinics, as well as
their expertise.
3)
view pet owners (ie, members of the
clinic) and related information.
4)
updated information about
pet ownership.
5)
view pet related information.
6)
updated pet
related information.
7)
to the system to add a new pet.
8)
browse visit
pet history.
9)
pet's visit to the historical record to
add a visit.
10) updated regularly
static content (ie, pet information).
11) received orders for services and
goods.
(2) Member:
1)
registered members.
2)
login system.
3)
booking
service (medical, beauty).
4)
order pet products.
5)
query
information on pets and pet reminders
3. Determining Business Rules
(1)
All users
can browse pet information, but only registered
members can submit orders for
goods and
services in a single; only registered staff in
order to maintain the system information
and accept orders.
(2)
Each member is uniquely
identified by a membership number.
(3)
Each staff member is
uniquely identified by staff numbers.
(4)
product
number is the unique identification of goods.
System needs to record the number
of
the
current
inventory
for
each
commodity,
when
the
inventory
falls
below
a
certain
threshold, then notify the
replenishment.
(5)
purchase of goods must be placed in
shopping cart before generating orders,
subscription
services must generate a
ticket.
(6)
Each
order is uniquely identified with the order
number. Order number is
generated by
the system in chronological order,
orders submitted after the greater number of
orders.
(7)
Each
service
alone
a
single
number
that
uniquely
identifies
service.
Single-number
service in
chronological order by the system generated and
submitted to a single service with
greater service to a single number.
(8)
orders
and
tickets
need
to
record
the
current
state,
including
the
unaudited,
back,
moderated, so the state has dealt with
the end.
(9)
the
same order can order a variety of goods, and the
quantity can be different. Therefore,
an
order
may
include
multiple
product
details,
including
the
number
of
goods
trade
names,
order quantity, order price. Orders for
each product required to document their status,
including
non-delivery, has been
delivery, has been sent to other states.
(10)
agree
that
the
Service
alone
can
order
a
variety
of
services,
service
single
including
service numbers, service name and
service hours.
(11)
before receiving orders to allow
members to delete the selected commodities, modify
the
number of purchase of goods,
delivery information and invoice unit, or even
cancel the order.
However, after the
adoption of orders reviewed, then not allowed to
do any changes.
(12)
before receiving a single service
allows members to delete the selected service,
modify
the service number, service
name, or even cancel a ticket. But the service
after the adoption of
a single
examination, it is not allowed to do any changes.
(13)
orders and
tickets to the principle of first come first
serve.
(14)
distribution by just a single number
identity distribution. Orders and service orders
for
each delivery order number from a
single number is coupled with the system in
chronological
order, the composition of
the generated serial number.
(15)
When the orders are
delivered in a commodity, then update the status
of the book
been sent
to.
order status as
(16)
a member may make a number
of messages, a staff member can get back to more
than
one message.
figure 1
Pet hospital system
business processes
begin
register
member
?
N
register
login
Y
service choice
pet
shop
pet
hospital
pet
information
Fill
service
information
choice payment type
pay
online
?
Y
Financial settlement
N
Order create
end
figure 2
Visitors Business Process
begin
vistor
(access directly)
service
interface
pet
information
end
figure 3
System Administrator
Business Process
:
begin
login
update
system
serviec
order
?
Y
audit
return
N
true
?
N
Y
invoice
create
send
create
end
4. Conceptual model design
4.1 Determining entity sets and
attributes
er(
cust_id
,p_word,cust_name,sex,mail,adress,cost,rank)
figure 4
customer
cust_name
sex
mail
rank
cust_id
p_word
address
cost
customer
(
pet_no
,
cust_id,
< br>pet_name,pet_type,species,sex,age)
figure 5
pet
pet_name
type
sex
pet
species
age
pet_no
ee(
emp_no
,p_word,emp_name,sex,titl
e,salary,address,tel_no,rank)
figure 6
employee
address
emp_name
p_word
sex
salary
tel_no
rank
employee
emp_no
t(
prod_id
,prod_name,price,prod_place,
tel_no,amount,information)
figure 7
product
prod_place
price
prdo_name
prod_id
product
tel_no
information
n
qty
e(
service_no
,service_name,unit_price,cont
ent)
figure 8
service
unit_price
service_name
service_no
content
service
< br>e_record(
dise_no
,pet_no,d
oc_id,dise_name,sick_time,symptoms,curetime,prescr
iption)
figure 9
disease_record
dise_no
sicktime
symptoms
dise_name
curetime
prescriptions
doc_id
disease_record
_
form(
order_no
,cust_id,emp_no
,tot_amt,order_date,ship_date,invoice_no,status)
figure 10
order_form
emp_no
cust_id
order_no
ship_time
tot_amt
invoice_no
order_status
order_form
order_time
(
doc_id
,doc_name,title,salary,information)
figure 11
doctor
doc_name
doc_id
title
information
doc
salary
e_order(
service_id
,cus
t_id,emp_no,tot_amt,service_no,order_time,status)
figure 12
service_order
cust_id
service_id
service_no
emp_no
tot_amt
status
service_order
order_time
4.2 Determining relationship sets and
attributes
1. customer and
service_roder is one_to_ relation is
“<
/p>
choose
”
2. customer and order_form is one_to_
relation is
“
fill
”
3. service_order and sevice is many_to_
relation is
“
include
< br>”
4. order_form and
product is many_to_ relation is
“
order
”
5.
employee and order_form is one_to_ relation is
“
process
”
6. employee and service_order is
one_to_ relation is
“
process
”
7. customner
and pet is one_to_ relation is
“
feed
”
8. pet and disease_record is one_to_
relation is
“
own
”
9. doctor and disease_record is one_to_
relation is
“
write
”
4.3 Overall
E-R
diagram
figure 13
E-R diagram
status
processtim
e
process
employee
servic
e
include
service_orde
r
choose
order_time
pet
feed
customer
own
order_time
fill
status
disease_record
order_for
m
process
write
order
process_time
doctor
product
5. Logical structure design
5.1 Relational table reduction
< br>ee(
emp_no
,p_word,emp_name
,sex,title,salary,address,tel_no)
PK
:emp_no;
p_word
,emp_name,sex,title,salary,address,tel_no are not
null
_doc(
doc_id
,
doc_name,title,salary,information)
PK
:doce_id;
doc_name,title,salary are not null
e(
service_no
,service_
name,unit_price,content)
PK
:service_no;
service_name,unit_price are not null
p>
_item(
service_no
,
p>
service_id
,ser_qty,unit_price)
PK
:service_no,service_id;
FK
:service_no,service_id;
ser_qty,unit_price are not
null
(
pet_no
,
cust_id,
pet_name,pet_type,specie
s,sex,age)
PK
:pet_no;
FK
:cust_id
cust
_id,
pet_name,pet_type,species,sex are
not null
_rec(
dise_no
,
pet_no
,
doc_i
d
,dise_name,sick_time,symptoms,curetime
,prescription)
PK
:dise_no;
FK
:pet_no,doc_id;
pet_no
,
doc_id
,dise_name,sick_time,symptoms,c
uretime,prescription are not null
er(
p>
cust_id
,p_word,cust_name,sex,m
ail,adress,cost,rank)
PK
:cust_id
p_word,cust_name,sex,mail,adress are
not null
t(
prod_id
,prod_name,price,prod_place,tel_no,amount,informa
tion)
PK
:prod_id;
prod_name,price,prod_place,tel_no,amount are not
null
(
order_no
,cu
st_id,emp_no,tot_amt,order_date,ship_date,invoice_
no,status)
PK
:order_no;
FK
:cust_id,emp_no;
cust_id,emp_no,tot_amt,orde
r_date,ship_date,invoice_no are not null
_item(
order_no
,
prod_id
,qty,price)
PK
:order_no,prod_id;
FK
:order_no,prod_id;
qty,price are not null
5.2 Table and
attributes description (Using table form)
table 1
employee
table
employee
Attribute Name
Data
Structure
emp_no
p_word
emp_name
sex
title
char(8)
varchar(10)
varchar(12)
char(1)
char(4)
Attributes Description
Constraint
Employee numbers
Password
Employee Name
Employee sex
Employee title
PK
not null
not
null
not null
not null
salary
address
tel_no
numeric(6,1)
varchar(40)
varchar(15)
Employee salary
Employee
address
Employee telephone
not null
table 2
ani_doc
table
ani_doc
Attribute Name
Data Structure
doc_id
doc_name
title
salary
information
char(8)
varchar(12)
varchar(20)
numeric(6,1)
varchar(1000)
Attributes Description
Constraint
Doctor numbers
Doctor name
Doctor title
Doctor salary
Doctor
information
PK
not null
not null
not null
not null
table 3
service
table
service
Attribute Name
Data
Structure
service_no
service_name
unit_price
content
char(8)
varchar(10)
numberic(7
,
1)
varchar(100)
Attributes
Description
Constraint
Service numbers
Service name
Service unit price
Service
content
PK
not null
not null
not null
table 4 ser_master
table
ser_master
Attribute Name
Data Structure
service_id
service_no
cust_id
emp_no
pet_no
tot_amt
choose_time
status
char(8)
char(8)
char(8)
char(8)
char(10)
numeric(8,1)
datetime
char(4)
Attributes
Description
Constraint
Service order numbers
PK
Service item numbers
FK
Customer ID
Employee numbers
Pet numbers
Totle amount
Service order time
Order form status
FK
FK
FK
not null
not null
not null
table 5
service_item
table
service_item
Attribute Name
Data
Structure
service_no
service_id
ser_qty
unit_price
char(8)
char(8)
int
numberic(6
,
1)
table 6
pets
table
Attribute Name
Data
Structure
pet_no
cust_id
char(8)
char(9)
Attributes
Description
Constraint
Pet
numbers
Customer ID
PK
FK
Attributes Description
Constraint
Servie item
numbers
Service quantity
Service unit price
PK
not null
not null
Service order numbers
PK,FK
pets
pet_name
pet_type
species
sex
age
varchar(12)
varchar(30)
varchar(10)
char(1)
numeric
Pet name
Pet type
Pet species
Pet sex
Pet age
not null
not null
not null
not null
not null
table 7
dise_rec
table
dise_rec
Attribute Name
dise_no
pet_no
doc_id
dise_name
sick_time
symptoms
curetime
prescription
Data Structure
char(9)
char(8)
char(8)
varchar(9)
datetime
varchar(100)
datetime
varchar(100)
Attributes
Description
Pet numbers
Doctor numbers
Disease name
Sick time
Sick symptoms
Cure time
Disease
prescription
Constraint
FK
FK
not null
not
null
not null
not null
not null
Disease record
numbers
PK
table 8
customer
table
customer
Attribute Name
Data
Structure
cust_id
p_word
cust_name
sex
mail
address
cost
rank
char(8)
varchar(10)
varchar(12)
char(1)
varchar(20)
varchar(40)
numberic(10,2)
char(4)
Attributes
Description Constraint
Customner ID
Password
Customer name
Customer sex
Cutomer mail
Customer
address
Customer cost
Cutomer rank
PK
not null
not null
not null
not null
not null
table 9
product
table
product
Attribute Name
Data Structure
prod_id
prod_name
price
prod_place
tele_no
amount
information
char(8)
varchar(20)
numeric(8,2)
varchar(20)
varchar(11)
int
varchar(200)
Attributes Description Constraint
Product numbers
Product name
Product unit price
Produce place
Telephone
Product amount
PK
not null
not null
not null
not null
not null
Product information
table 10
sales
table
Attribute Name
Data
Structure
Attributes Description
Constraint
sales
order_no
cust_id
emp_no
tot_amt
order_date
ship_date
invoice_no
status
char(8)
char(8)
char(8)
int(8)
datetime
datetime
char(10)
char(1)
Order form numbers
PK
Customer ID
Employee numbers
Total
amount
Order time
Delivery time
Invoice
numbers
Order status
FK
FK
not null
not
null
not null
not null
not null
table 11
sale_item
table
sale_item
Attribute Name
Data
Structure
order_no
prod_id
qty
price
char(8)
char(8)
int
numberic()
Attributes
Description Constraint
Order item
numbers
PK
Product numbers
Product quantity
Product
unit price
not null
not null
not null
6. Views design
6.1
For the aim
of making some query more convenient, we create
several views here:
1) The view for
employee to query all information of customer
‘
cust
_view’
:
cust _view
(cu
st_id,p_word,cust_name,sex,mail,adress,cost,rank)
2) Used by members or employee to query
the hospital
’
s doctor
‘
doc
_view‘
:<
/p>
doc_view
(doc_id,d
oc_name,title,salary,information)
3)
The view for members to see the products
‘
product
_view’
product
_view
(prod_id,prod_name,price,prod_pla
ce,tel_no,amount,information)
4) The
view for members to see the services
‘
service
_view’:
service_v
iew
(service_no,service_name,unit_price,
content)
5) The view for the employee
to see the detailed product sales information
‘
prod_detial
_view’
prod_detial_view
(
_id,_no,_no,tot_amt,
_id,prod_name,qty)
6) The view for the employee to see the
detailed service sales information
‘
ser_detial
_view’:
ser_detia
l_view
(_id,_no,ser_e_id,tot_amt,service
.s
ervice_no,service_name,ser_qty)
6.2
About View
design codes:
1
、
/*scan
customer*/
create view cust_view
as select *
from customer
2
、
/*scan doctor*/
create view doc_view
as
select *
from ani_doc
3
、
/*scan
products*/
create view product_view
as
select *
from
product
4
、
/*scan
service*/
create view service_view
as
select *
from
service
5
、
/*scan
detailed product sales information */
create view prod_detial_view
as select
_id,_no,_no,tot_amt,_id,prod_name,qty
from
customer,employee,sales,sale_item,product
where _id=_id and _no=_no
and _no=sale__no and sale__id=_id
6
、
/*scan detailed
service sales information */
create
view ser_detial_view
as select
_id,_no,ser_e_id,tot_amt,e_
no,service_
name,ser_qty
from
customer,employee,ser_master,service_item,service
where _id=ser__id and _no=ser__no
and ser_e_id=service_e_id
and
service_e_no=e_no
rs and
Stored Procedures
7.1
/*ABOUT CUSTOMER*/
1)
/*insert customer*/
create proc
insert_cust
@cust_id char(8),
@p_word varchar(10),
@cust_name varchar(12),
@sex
char(1),
@mail varchar(20),
@address varchar(40),
@cost
numeric(10,2),
@rank char(4)
as
insert into
cu
stomer(cust_id,p_word,cust_name,sex,mail,address,c
ost,rank)
values(@cust_id,@p_word,@cust
_name,@sex,@mail,@address,@cost,@rank)
2) /*update customer*/
create proc update_cust
@cust_id char(8),
@p_word
varchar(10)
as
update
customer
set
p_word=@p_word
where
cust_id=@cust_id
3)
/*insert pets*/
create proc insert_pets
@pet_no char(8),
@cust_id
char(9),
@pet_name varchar(12),
@pet_type varchar(30),
@species varchar(10),
@sex
char(1),
@age numeric
as
insert into
pets(pet_no,cust
_id,pet_name,pet_type,species,sex,age)
values(@pet_no,@cust_id,@pet_name,@pet_type,@speci
es,@sex,@age)
4) /*query
customer total cost */
create proc
proc_tot_amt
as
select
_id,sum(_amt),sum(ser__amt)
from
sales,ser_master
where _id=ser__id
group by _id
5)
/*query customer pet
’
s
information*/
create proc proc_petinfo
varchar(8)
@cust_id
as
select *
from pets
where cust_id=@cust_id
6) /*buy product*/
create
proc buy_prod
@prod_id
@qty
as
insert into
sale_item(prod_id,qty)
values(select *
from product
where prod_id=@prod_id)
7) /*buy service*/
create
proc buy_prod
@service_no char(10)
@ser_qty char(10)
as
insert into
sale_item(service_no,ser_qty)
values(select *
from service
where service_no=@service_no)
8) /*query customer buy
product information*/
create proc
prod_detial @cust_id char(10)
as select
_id,_no,_no,tot_amt,_id,prod_name,qty
from
customer,employee,sales,sale_item,product
where _id=_id and _no=_no
and _no=sale__no and sale__id=_id
and _id=@cust_id
9) /*query customer
buyservice information*/
create proc
ser_detial @cust_id char(10)
as select
_id,_no,ser_e_id,tot_amt,e_
no,service_
name,ser_qty
from
customer,employee,ser_master,service_item,service
where _id=ser__id and _no=ser__no
and ser_e_id=service_e_id
and
service_e_no=e_no
and _id=@cust_id
10) /*query products by products name
and price*/
create proc query_prod
@prod_name char(10), @price
numeric(8,2)
as
select
prod_id,prod_name,price,amount,information
from product
where
prod_name=@prod_name and price<=@price
11) /*query service by service name and
price*/
create proc query_service
@service_name char(10),
@price numeric(8,2)
as
select
service_no,service_name,unit_price,content
from service
where
service_name=@service_name and unit_price<=@price
7.2 /*ABOUT EMPLOYEE*/
1)/*insert product*/
create
proc insert_prod
@prod_id
char(8),
@prod_name varchar(20),
@price numeric(8,2),
@prod_place varchar(20),
@tele_no varchar(11),
@amount int,
@information
varchar(200)
as
insert into
product(prod_id,prod_name,p
rice,prod_place,tel_no,amount,information)
values(@prod_id,@prod_name,@price,@prod_place,
@tele_no,@amount,@information)
2) /*update product*/
create
proc update_prod
@prod_id char(8),
@price numeric(8,2)
as
update product
set price=@price
where
prod_id=@prod_id
3)
/*delete product*/
create proc
delete_prod
@prod_id char(8)
as
delete from product
where prod_id=@prod_id
4) /*insert service*/
create
proc insert_service
@service_no
char(8),
@service_name varchar(10),
@unit_price numeric(7,1),
@content varchar(100)
as
insert into
service(service_
no,service_name,unit_price,content)
val
ues(@service_no,@service_name,@unit_price,@content
)
5) /*update product*/
create proc update_service
@service_no char(8),
@unit_price numeric(7,1)
as
update service
set
unit_price=@unit_price
where
service_no=@service_no
6)
/*delete service*/
create proc
delete_service
@service_no char(8)
as
delete from service
where service_no=@service_no
7) /*insert ani_doc*/
create proc insert_ani_doc
@doc_id char(8),
@doc_name
varchar(12),
@title char(20),
@salary numeric(6,1),
@information varchar(100)
as
insert into
ani_doc(doc_id,doc_name,title,salary,information)
values(@doc_id,@doc_name,@title,@salary
,@information)
8) /*upadate
ani_doc*/
create proc update_ani_doc
@doc_id char(8),
@title
char(20),
@salary numeric(6,1),
@information varchar(100)
as
update ani_doc
set
title=@title,
salary=@salary,
information=@information
where doc_id=@doc_id
9) /*delete ani_doc*/
create
proc delete_ani_doc
@doc_id char(8)
as
delete from ani_doc
where doc_id=@doc_id
7.3/* Query insert update delete order
*/
1) /*insert sales*/
create proc insert_sales
@order_no
char(8),
@cust_id
char(8),
@emp_no char(8),
@tot_amt
int,
@order_date
datetime,
@ship_date
datetime,
@invoice_no
char(10),
@status
char(1)
as
2) /*upadate sales*/
create
proc update_sales
@order_no
char(8)
@cust_id
char(8)
@emp_no char(8)
@tot_amt
int(8)
@order_date
datetime
@ship_date
datetime
@invoice_no
char(10)
@status
char(1)
update ani_doc
set
emp_no=@emp_no
tot_amt=@tot_amt
order_date=@order_date
ship_date=@ship_date
invoice=@invoice_no
status=@status
where
order_no=@order_no
3)
/*delete sales*/
create proc
delete_sales
@order_no char(8)
as
delete from sales
where order_no=@order_no
4) /*query
products
’
sales record */
create proc proc_sale_rec
as
select
sale__id,prod_name,sum(qty),sum(qty*sale_)
from product,sale_item
where
_id=sale__id
group by
sale__id,prod_name
order by sum(qty)
desc
8. Physical design
8.1 File Path definition
D:
database set nocount on
set dateformat ymd
use
master
go
if not exists(select *from
syslogins where name=' pethopital ')
exec sp_addlogin
pethopital, pethopital
go
/*create database*/
if
exists(select *from sysdatabases where name='
pethopital ')
drop database
pethopital
go
create database pethopital
on primary
(name=' pethopital ',
filename='D:database ',
size=1,
maxsize=5,
filegrowth=1)
log on
(name=
pethopital _log,
filename='
F:database pethopital _log',
size=1,
maxsize=5,
filegrowth=1)
go
9. Interface design
1) first
page
2) main page
3) free
information page
4)
customer register page
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
cornstarch-beanbag
-
上一篇:医院常用双语标识------卫生部版
下一篇:医院常用词汇