@ -0,0 +1,17 @@
|
|||||||
|
package com.hms;
|
||||||
|
|
||||||
|
//TIP 要<b>运行</b>代码,请按 <shortcut actionId="Run"/> 或
|
||||||
|
// 点击装订区域中的 <icon src="AllIcons.Actions.Execute"/> 图标。
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//TIP 当文本光标位于高亮显示的文本处时按 <shortcut actionId="ShowIntentionActions"/>
|
||||||
|
// 查看 IntelliJ IDEA 建议如何修正。
|
||||||
|
System.out.printf("Hello and welcome!");
|
||||||
|
|
||||||
|
for (int i = 1; i <= 5; i++) {
|
||||||
|
//TIP 按 <shortcut actionId="Debug"/> 开始调试代码。我们已经设置了一个 <icon src="AllIcons.Debugger.Db_set_breakpoint"/> 断点
|
||||||
|
// 但您始终可以通过按 <shortcut actionId="ToggleLineBreakpoint"/> 添加更多断点。
|
||||||
|
System.out.println("i = " + i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package com.hms.dao;
|
||||||
|
|
||||||
|
import com.hms.entity.Admin;
|
||||||
|
import com.hms.utils.JdbcHelper;
|
||||||
|
import com.hms.entity.Admin;
|
||||||
|
import com.hms.utils.JdbcHelper;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
|
||||||
|
public class AdminDao {
|
||||||
|
|
||||||
|
public Admin getByUsername(String username){
|
||||||
|
JdbcHelper helper = new JdbcHelper();
|
||||||
|
ResultSet resultSet = helper.executeQuery("select * from admin where username = ?",username);
|
||||||
|
try {
|
||||||
|
if(resultSet.next()){
|
||||||
|
Admin admin = new Admin();
|
||||||
|
admin.setUsername( resultSet.getString("username"));
|
||||||
|
admin.setPassword( resultSet.getString("password"));
|
||||||
|
return admin;
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}finally {
|
||||||
|
helper.closeDB();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
package com.hms.dao;
|
||||||
|
|
||||||
|
import com.hms.entity.Admin;
|
||||||
|
import com.hms.entity.DoctorUser;
|
||||||
|
import com.hms.utils.JdbcHelper;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
|
||||||
|
public class DUserDao {
|
||||||
|
public DoctorUser getByUsername(String username){
|
||||||
|
JdbcHelper helper = new JdbcHelper();
|
||||||
|
ResultSet resultSet = helper.executeQuery("select * from doctor_user where username = ?",username);
|
||||||
|
try {
|
||||||
|
if(resultSet.next()){
|
||||||
|
DoctorUser doctorUser = new DoctorUser();
|
||||||
|
doctorUser.setUsername( resultSet.getString("username"));
|
||||||
|
doctorUser.setPassword( resultSet.getString("password"));
|
||||||
|
return doctorUser;
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}finally {
|
||||||
|
helper.closeDB();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
package com.hms.dao;
|
||||||
|
|
||||||
|
import com.hms.entity.DoctorUser;
|
||||||
|
import com.hms.entity.PatientUser;
|
||||||
|
import com.hms.utils.JdbcHelper;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
|
||||||
|
public class PUserDao {
|
||||||
|
public PatientUser getByUsername(String username){
|
||||||
|
JdbcHelper helper = new JdbcHelper();
|
||||||
|
ResultSet resultSet = helper.executeQuery("select * from patient_user where username = ?",username);
|
||||||
|
try {
|
||||||
|
if(resultSet.next()){
|
||||||
|
PatientUser patientUser = new PatientUser();
|
||||||
|
patientUser.setUsername( resultSet.getString("username"));
|
||||||
|
patientUser.setPassword( resultSet.getString("password"));
|
||||||
|
return patientUser;
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}finally {
|
||||||
|
helper.closeDB();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class Admin {
|
||||||
|
private String username;//用户名
|
||||||
|
private String password;//密码
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class Department {
|
||||||
|
private String department_id;
|
||||||
|
private String departmentName; // 科室名称
|
||||||
|
private String location; // 科室位置
|
||||||
|
|
||||||
|
private int availableBeds ;
|
||||||
|
private int doctorCount;
|
||||||
|
|
||||||
|
public int getDoctorCount() {
|
||||||
|
return doctorCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDoctorCount(int doctorCount) {
|
||||||
|
this.doctorCount = doctorCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDepartment_id() {
|
||||||
|
return department_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDepartment_id(String department_id) {
|
||||||
|
this.department_id = department_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getAvailableBeds() {
|
||||||
|
return availableBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAvailableBeds(int availableBeds) {
|
||||||
|
this.availableBeds = availableBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取科室名称
|
||||||
|
public String getDepartmentName() {
|
||||||
|
return departmentName;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置科室名称
|
||||||
|
public void setDepartmentName(String departmentName) {
|
||||||
|
this.departmentName = departmentName;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取科室位置
|
||||||
|
public String getLocation() {
|
||||||
|
return location;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置科室位置
|
||||||
|
public void setLocation(String location) {
|
||||||
|
this.location = location;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,72 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class Doctor {
|
||||||
|
// 属性
|
||||||
|
private String name; // 姓名
|
||||||
|
private String phoneNumber; // 电话号码
|
||||||
|
private String email; // 电子邮件
|
||||||
|
private int departmentId; // 所属科室ID
|
||||||
|
private int yearsOfExperience; // 工作经验年数
|
||||||
|
|
||||||
|
// 构造方法
|
||||||
|
public Doctor(String name, String phoneNumber, String email, int departmentId, int yearsOfExperience) {
|
||||||
|
this.name = name;
|
||||||
|
this.phoneNumber = phoneNumber;
|
||||||
|
this.email = email;
|
||||||
|
this.departmentId = departmentId;
|
||||||
|
this.yearsOfExperience = yearsOfExperience;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Getter 和 Setter 方法
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPhoneNumber() {
|
||||||
|
return phoneNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPhoneNumber(String phoneNumber) {
|
||||||
|
this.phoneNumber = phoneNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEmail() {
|
||||||
|
return email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEmail(String email) {
|
||||||
|
this.email = email;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getDepartmentId() {
|
||||||
|
return departmentId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDepartmentId(int departmentId) {
|
||||||
|
this.departmentId = departmentId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getYearsOfExperience() {
|
||||||
|
return yearsOfExperience;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setYearsOfExperience(int yearsOfExperience) {
|
||||||
|
this.yearsOfExperience = yearsOfExperience;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重写 toString 方法,方便输出信息
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Doctor{" +
|
||||||
|
"name='" + name + '\'' +
|
||||||
|
", phoneNumber='" + phoneNumber + '\'' +
|
||||||
|
", email='" + email + '\'' +
|
||||||
|
", departmentId=" + departmentId +
|
||||||
|
", yearsOfExperience=" + yearsOfExperience +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class DoctorUser {
|
||||||
|
private String username;//用户名
|
||||||
|
private String password;//密码
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,87 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
public class Patient {
|
||||||
|
private String patientId; // 病人id
|
||||||
|
private String name; // 姓名
|
||||||
|
private String gender; // 性别,'M'表示男性,'F'表示女性
|
||||||
|
private Date birthdate; // 出生日期
|
||||||
|
private String contactNumber; // 电话
|
||||||
|
private String address;//地址
|
||||||
|
private String insuranceId; // 医保号
|
||||||
|
|
||||||
|
public String getAddress() {
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAddress(String address) {
|
||||||
|
this.address = address;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Integer attendingDoctorId; // 主治医生id
|
||||||
|
private String visitType; // 就诊类型
|
||||||
|
|
||||||
|
public String getVisitType() {
|
||||||
|
return visitType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVisitType(String visitType) {
|
||||||
|
this.visitType = visitType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInsuranceId() {
|
||||||
|
return insuranceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInsuranceId(String insuranceId) {
|
||||||
|
this.insuranceId = insuranceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPatientId() {
|
||||||
|
return patientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPatientId(String patientId) {
|
||||||
|
this.patientId = patientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getContactNumber() {
|
||||||
|
return contactNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setContactNumber(String contactNumber) {
|
||||||
|
this.contactNumber = contactNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getBirthdate() {
|
||||||
|
return birthdate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBirthdate(Date birthdate) {
|
||||||
|
this.birthdate = birthdate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getAttendingDoctorId() {
|
||||||
|
return attendingDoctorId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAttendingDoctorId(Integer attendingDoctorId) {
|
||||||
|
this.attendingDoctorId = attendingDoctorId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getGender() {
|
||||||
|
return gender;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGender(String gender) {
|
||||||
|
this.gender = gender;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class PatientUser {
|
||||||
|
private String username;//用户名
|
||||||
|
private String password;//密码
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,61 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
public class Record {
|
||||||
|
private String recordId; // 记录ID
|
||||||
|
private String patientId; // 病人ID
|
||||||
|
private String doctorId; // 医生ID
|
||||||
|
private Date visitDate; // 就诊日期
|
||||||
|
private String diagnosis; // 诊断
|
||||||
|
private String treatmentPlan; // 治疗方案
|
||||||
|
|
||||||
|
// Getter和Setter方法
|
||||||
|
public String getPatientId() {
|
||||||
|
return patientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPatientId(String patientId) {
|
||||||
|
this.patientId = patientId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDoctorId() {
|
||||||
|
return doctorId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDoctorId(String doctorId) {
|
||||||
|
this.doctorId = doctorId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getVisitDate() {
|
||||||
|
return visitDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVisitDate(Date visitDate) {
|
||||||
|
this.visitDate = visitDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDiagnosis() {
|
||||||
|
return diagnosis;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDiagnosis(String diagnosis) {
|
||||||
|
this.diagnosis = diagnosis;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTreatmentPlan() {
|
||||||
|
return treatmentPlan;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTreatmentPlan(String treatmentPlan) {
|
||||||
|
this.treatmentPlan = treatmentPlan;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRecordId() {
|
||||||
|
return recordId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRecordId(String recordId) {
|
||||||
|
this.recordId = recordId;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
package com.hms.entity;
|
||||||
|
|
||||||
|
public class Ward {
|
||||||
|
private int totalBeds; // 总床位数
|
||||||
|
private int availableBeds; // 可用床位数
|
||||||
|
private String departmentId; // 科室编号
|
||||||
|
|
||||||
|
// 获取总床位数
|
||||||
|
public int getTotalBeds() {
|
||||||
|
return totalBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置总床位数
|
||||||
|
public void setTotalBeds(int totalBeds) {
|
||||||
|
this.totalBeds = totalBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取可用床位数
|
||||||
|
public int getAvailableBeds() {
|
||||||
|
return availableBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置可用床位数
|
||||||
|
public void setAvailableBeds(int availableBeds) {
|
||||||
|
this.availableBeds = availableBeds;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取科室编号
|
||||||
|
public String getDepartmentId() {
|
||||||
|
return departmentId;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置科室编号
|
||||||
|
public void setDepartmentId(String departmentId) {
|
||||||
|
this.departmentId = departmentId;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,13 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.AdminDao;
|
||||||
|
import com.hms.entity.Admin;
|
||||||
|
|
||||||
|
|
||||||
|
public class AdminService {
|
||||||
|
AdminDao adminDao = new AdminDao();
|
||||||
|
public Admin getByUsername(String username){
|
||||||
|
return adminDao.getByUsername(username);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.DUserDao;
|
||||||
|
import com.hms.entity.DoctorUser;
|
||||||
|
|
||||||
|
public class DUserService {
|
||||||
|
DUserDao dUserDao = new DUserDao();
|
||||||
|
public DoctorUser getByUsername(String username){
|
||||||
|
return dUserDao.getByUsername(username);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
import com.hms.dao.DepartmentDao;
|
||||||
|
import com.hms.entity.Department;
|
||||||
|
import java.util.List;
|
||||||
|
public class DepartmentService {
|
||||||
|
DepartmentDao dao = new DepartmentDao();
|
||||||
|
|
||||||
|
// 调试
|
||||||
|
// public static void main(String[] args) {
|
||||||
|
// DepartmentService service = new DepartmentService();
|
||||||
|
// List<Department> statistics = service.statistics();
|
||||||
|
// System.out.println(statistics.size());
|
||||||
|
// System.out.println(service.count());
|
||||||
|
// }
|
||||||
|
|
||||||
|
//查询科室数量
|
||||||
|
public int count(){
|
||||||
|
return dao.count();
|
||||||
|
}
|
||||||
|
//查询科室病房空闲
|
||||||
|
public List<Department> statistics(){
|
||||||
|
return dao.statistics();
|
||||||
|
}
|
||||||
|
|
||||||
|
//查询科室医生数量
|
||||||
|
public List<Department> statisticsD(){
|
||||||
|
return dao.statisticsD();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,17 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.DoctorDao;
|
||||||
|
import com.hms.entity.Department;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class DoctorService {
|
||||||
|
DoctorDao dao = new DoctorDao();
|
||||||
|
/**
|
||||||
|
* 获取医生的总数量
|
||||||
|
* @return 医生的总数量
|
||||||
|
*/
|
||||||
|
public int count() {
|
||||||
|
return dao.count();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.MedicationDao;
|
||||||
|
|
||||||
|
public class MedicationService {
|
||||||
|
private MedicationDao medicationDao = new MedicationDao();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取药品的总数量
|
||||||
|
* @return 药品总数量
|
||||||
|
*/
|
||||||
|
public int count() {
|
||||||
|
return medicationDao.count();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.PUserDao;
|
||||||
|
import com.hms.entity.PatientUser;
|
||||||
|
|
||||||
|
public class PUserService {
|
||||||
|
PUserDao pUserDao = new PUserDao();
|
||||||
|
public PatientUser getByUsername(String username){
|
||||||
|
return pUserDao.getByUsername(username);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,114 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
|
||||||
|
import com.hms.dao.PatientDao;
|
||||||
|
import com.hms.entity.Patient;
|
||||||
|
import com.hms.utils.vo.PagerVO;
|
||||||
|
|
||||||
|
import java.sql.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class PatientService {
|
||||||
|
// 引入 PatientDao 用于访问数据库
|
||||||
|
PatientDao dao = new PatientDao();
|
||||||
|
|
||||||
|
// 新增病人
|
||||||
|
public String insert(Patient patient) {
|
||||||
|
// 校验病人信息是否完整
|
||||||
|
if (patient.getName() == null || patient.getName().equals("")) {
|
||||||
|
return "病人姓名不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getGender() == null || patient.getGender().equals("")) {
|
||||||
|
return "性别不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getBirthdate() == null) {
|
||||||
|
return "出生日期不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getContactNumber() == null || patient.getContactNumber().equals("")) {
|
||||||
|
return "联系方式不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getAddress() == null || patient.getAddress().equals("")) {
|
||||||
|
return "地址不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getInsuranceId() == null || patient.getInsuranceId().equals("")) {
|
||||||
|
return "医保号不可为空!";
|
||||||
|
}
|
||||||
|
if (patient.getVisitType() == null || patient.getVisitType().equals("")) {
|
||||||
|
return "就诊类型不可为空!";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 校验病人是否已经存在(可以根据病人姓名或医保号等唯一标识判断)
|
||||||
|
Patient exists = dao.getByName(patient.getName());
|
||||||
|
if (exists != null) {
|
||||||
|
return "病人姓名已存在!";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 插入病人
|
||||||
|
int res = dao.insert(patient);
|
||||||
|
if(res == 1) return null;// 插入成功
|
||||||
|
else return "插入失败";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改病人信息
|
||||||
|
public String update(Patient patient) {
|
||||||
|
if (patient.getName() == null || patient.getName().equals("")) {
|
||||||
|
return "被修改病人姓名不可为空!";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 校验病人是否存在
|
||||||
|
Patient exists = dao.getByName(patient.getName());
|
||||||
|
if (exists == null) {
|
||||||
|
return "病人姓名不存在!";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新病人信息
|
||||||
|
dao.update(patient);
|
||||||
|
return null; // 更新成功
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String delete(String name) {
|
||||||
|
// 调用 DAO 层的删除方法
|
||||||
|
int result = dao.delete(name);
|
||||||
|
|
||||||
|
// 判断删除是否成功
|
||||||
|
if (result > 0) return null;
|
||||||
|
else return "删除失败";
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取所有病人的信息
|
||||||
|
public List<Patient> getAllPatients() {
|
||||||
|
return dao.getAllPatients();
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取病人总数
|
||||||
|
public int count() {
|
||||||
|
return dao.count(); // 调用 PatientDao 中的 countPatients 方法
|
||||||
|
}
|
||||||
|
|
||||||
|
// 根据病人的 ID 获取病人信息
|
||||||
|
public Patient getByName(String patientName) {
|
||||||
|
return dao.getByName(patientName); // 假设 PatientDao 中有 getPatientById 方法
|
||||||
|
}
|
||||||
|
|
||||||
|
//分页查询
|
||||||
|
public PagerVO<Patient> page(int current, int size, String patientId, String name, String gender, String visitType) {
|
||||||
|
String whereSql = " WHERE 1=1 "; // 默认条件
|
||||||
|
|
||||||
|
if (patientId != null && !patientId.isEmpty()) {
|
||||||
|
whereSql += " AND patient_id = '" + patientId + "' ";
|
||||||
|
}
|
||||||
|
if (name != null && !name.isEmpty()) {
|
||||||
|
whereSql += " AND name LIKE '%" + name + "%' ";
|
||||||
|
}
|
||||||
|
if (gender != null && !gender.isEmpty()) {
|
||||||
|
whereSql += " AND gender = '" + gender + "' ";
|
||||||
|
}
|
||||||
|
if (visitType != null && !visitType.isEmpty()) {
|
||||||
|
whereSql += " AND visit_type = '" + visitType + "' ";
|
||||||
|
}
|
||||||
|
|
||||||
|
return dao.page(current, size, whereSql);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package com.hms.service;
|
||||||
|
import com.hms.dao.WardDao;
|
||||||
|
import com.hms.entity.Ward;
|
||||||
|
import com.hms.dao.WardDao;
|
||||||
|
|
||||||
|
public class WardService {
|
||||||
|
|
||||||
|
WardDao dao = new WardDao();
|
||||||
|
|
||||||
|
public int count() {
|
||||||
|
return dao.count();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,53 @@
|
|||||||
|
package com.hms.servlet;
|
||||||
|
|
||||||
|
import com.hms.entity.Department;
|
||||||
|
import com.hms.entity.Ward;
|
||||||
|
import com.hms.service.*;
|
||||||
|
import com.hms.utils.ApiResult;
|
||||||
|
|
||||||
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.annotation.WebServlet;
|
||||||
|
import javax.servlet.http.HttpServlet;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
/**
|
||||||
|
* 首页的数据
|
||||||
|
*/
|
||||||
|
@WebServlet("/index")
|
||||||
|
public class IndexServlet extends HttpServlet {
|
||||||
|
WardService wardService = new WardService();
|
||||||
|
DepartmentService departmentService = new DepartmentService();
|
||||||
|
DoctorService doctorService = new DoctorService();
|
||||||
|
PatientService patientService = new PatientService();
|
||||||
|
MedicationService medicationService = new MedicationService();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
|
||||||
|
req.setCharacterEncoding("utf-8");// 设置编码,否则从前端获取参数乱码
|
||||||
|
resp.setContentType("application/json; charset=utf-8");
|
||||||
|
|
||||||
|
int departmentCount = departmentService.count();
|
||||||
|
int wardCount =wardService.count();
|
||||||
|
int doctorCount = doctorService.count();
|
||||||
|
int patientCount = patientService.count();
|
||||||
|
int medicationC = medicationService.count();
|
||||||
|
List<Department> departments = departmentService.statistics();
|
||||||
|
List<Department> departmentsD = departmentService.statisticsD();
|
||||||
|
|
||||||
|
Map<String,Object> res = new HashMap<>();
|
||||||
|
|
||||||
|
res.put("departmentCount",departmentCount);
|
||||||
|
res.put("wardCount",wardCount);
|
||||||
|
res.put("doctorCount",doctorCount);
|
||||||
|
res.put("patientCount",patientCount);
|
||||||
|
res.put("medicationC",medicationC);
|
||||||
|
res.put("departments",departments);
|
||||||
|
res.put("departmentsD",departmentsD);
|
||||||
|
|
||||||
|
resp.getWriter().write(ApiResult.json(true,"成功",res));
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,80 @@
|
|||||||
|
package com.hms.servlet;
|
||||||
|
|
||||||
|
import com.hms.entity.*;
|
||||||
|
import com.hms.service.*;
|
||||||
|
import com.hms.utils.ApiResult;
|
||||||
|
import com.hms.service.AdminService;
|
||||||
|
import com.hms.utils.ApiResult;
|
||||||
|
|
||||||
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.annotation.WebServlet;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
/**
|
||||||
|
* 用于登录的Servlet
|
||||||
|
*/
|
||||||
|
@WebServlet("/login")
|
||||||
|
public class LoginServlet extends HttpServlet {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
|
||||||
|
req.setCharacterEncoding("utf-8");// 设置编码,否则从前端获取参数乱码
|
||||||
|
resp.setContentType("application/json; charset=utf-8");
|
||||||
|
|
||||||
|
//获取请求参数
|
||||||
|
String username = req.getParameter("username");
|
||||||
|
String password = req.getParameter("password");
|
||||||
|
String usertype = req.getParameter("usertype");
|
||||||
|
//根据账号获取数据库信息
|
||||||
|
if (usertype.equals("admin")) {
|
||||||
|
AdminService adminService = new AdminService();
|
||||||
|
Admin admin = adminService.getByUsername(username);
|
||||||
|
if(admin == null){
|
||||||
|
resp.getWriter().print(ApiResult.json(false,"用户不存在"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(admin.getPassword().equals(password)){
|
||||||
|
req.getSession().setAttribute("role","admin");
|
||||||
|
req.getSession().setAttribute("user",admin.getUsername());
|
||||||
|
resp.getWriter().print(ApiResult.json(true,"登录成功"));
|
||||||
|
return;
|
||||||
|
}else{
|
||||||
|
resp.getWriter().print(ApiResult.json(false,"密码错误,登录失败"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}else if(usertype.equals("doctor")){
|
||||||
|
DUserService dUserService = new DUserService();
|
||||||
|
DoctorUser doctorUser = dUserService.getByUsername(username);
|
||||||
|
if(doctorUser == null){
|
||||||
|
resp.getWriter().print(ApiResult.json(false,"用户不存在"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(doctorUser.getPassword().equals(password)){
|
||||||
|
req.getSession().setAttribute("role","doctor");
|
||||||
|
req.getSession().setAttribute("user",doctorUser.getUsername());
|
||||||
|
resp.getWriter().print(ApiResult.json(true,"登录成功"));
|
||||||
|
return;
|
||||||
|
}else{
|
||||||
|
resp.getWriter().print(ApiResult.json(false,"密码错误,登录失败"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}else if (usertype.equals("patient")) {
|
||||||
|
PUserService pUserService = new PUserService();
|
||||||
|
PatientUser patientUser = pUserService.getByUsername(username);
|
||||||
|
|
||||||
|
if (patientUser == null) {
|
||||||
|
resp.getWriter().print(ApiResult.json(false, "用户不存在"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (patientUser.getPassword().equals(password)) {
|
||||||
|
req.getSession().setAttribute("role", "patient");
|
||||||
|
req.getSession().setAttribute("user", patientUser.getUsername());
|
||||||
|
resp.getWriter().print(ApiResult.json(true, "登录成功"));
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
resp.getWriter().print(ApiResult.json(false, "密码错误,登录失败"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,19 @@
|
|||||||
|
package com.hms.servlet;
|
||||||
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.annotation.WebServlet;
|
||||||
|
import javax.servlet.http.HttpServlet;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.IOException;
|
||||||
|
/**
|
||||||
|
* 用于登出的Servlet
|
||||||
|
*/
|
||||||
|
@WebServlet("/logout")
|
||||||
|
public class LogoutServlet extends HttpServlet {
|
||||||
|
@Override
|
||||||
|
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
|
||||||
|
req.setCharacterEncoding("utf-8");// 设置编码,否则从前端获取参数乱码
|
||||||
|
req.getSession().invalidate();
|
||||||
|
req.getRequestDispatcher("/login.jsp").forward(req, resp);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,50 @@
|
|||||||
|
package com.hms.utils;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import java.io.Serializable;
|
||||||
|
/**
|
||||||
|
* ajax请求返回内容
|
||||||
|
* success表示成功与否
|
||||||
|
* message是提示消息
|
||||||
|
* data是数据
|
||||||
|
*/
|
||||||
|
public class ApiResult implements Serializable {
|
||||||
|
private Boolean success;
|
||||||
|
private String message;
|
||||||
|
private Object data;
|
||||||
|
public ApiResult(Boolean success, String message, Object data) {
|
||||||
|
this.success = success;
|
||||||
|
this.message = message;
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
public static String json(Boolean success, String message, Object data) {
|
||||||
|
return JSON.toJSONString(new ApiResult(success,message,data));
|
||||||
|
}
|
||||||
|
public static String json(Boolean success, String message) {
|
||||||
|
return JSON.toJSONString(new ApiResult(success,message,null));
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean getSuccess() {
|
||||||
|
return success;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSuccess(Boolean success) {
|
||||||
|
this.success = success;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getData() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setData(Object data) {
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,117 @@
|
|||||||
|
package com.hms.utils.vo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页工具
|
||||||
|
*/
|
||||||
|
public class PagerVO<T> {
|
||||||
|
int current;
|
||||||
|
int size;
|
||||||
|
int total;
|
||||||
|
List<T> list;
|
||||||
|
int totalPages;
|
||||||
|
boolean showLeft;
|
||||||
|
boolean showRight;
|
||||||
|
int[] pageNums;
|
||||||
|
|
||||||
|
public void init(){
|
||||||
|
//计算页数
|
||||||
|
totalPages = total / size;
|
||||||
|
if(total % size > 0){
|
||||||
|
totalPages ++;
|
||||||
|
}
|
||||||
|
//向左向右
|
||||||
|
if(current == 1){
|
||||||
|
showLeft = false;
|
||||||
|
}else{
|
||||||
|
showLeft = true;
|
||||||
|
}
|
||||||
|
if(current == totalPages){
|
||||||
|
showRight = false;
|
||||||
|
}else{
|
||||||
|
showRight = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//计算起始页码和结束页码
|
||||||
|
int min = current - 5;
|
||||||
|
int max = current + 5;
|
||||||
|
if(min < 1){
|
||||||
|
min = 1;
|
||||||
|
}
|
||||||
|
if (max > totalPages){
|
||||||
|
max = totalPages;
|
||||||
|
}
|
||||||
|
int length = max - min + 1;
|
||||||
|
pageNums = new int[length];
|
||||||
|
for (int i = 0; i < length; i++) {
|
||||||
|
pageNums[i] = i + min;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getSize() {
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCurrent() {
|
||||||
|
return current;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTotal() {
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotal(int total) {
|
||||||
|
this.total = total;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<T> getList() {
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setList(List<T> list) {
|
||||||
|
this.list = list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCurrent(int current) {
|
||||||
|
this.current = current;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSize(int size) {
|
||||||
|
this.size = size;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isShowRight() {
|
||||||
|
return showRight;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setShowRight(boolean showRight) {
|
||||||
|
this.showRight = showRight;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getTotalPages() {
|
||||||
|
return totalPages;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTotalPages(int totalPages) {
|
||||||
|
this.totalPages = totalPages;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isShowLeft() {
|
||||||
|
return showLeft;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setShowLeft(boolean showLeft) {
|
||||||
|
this.showLeft = showLeft;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] getPageNums() {
|
||||||
|
return pageNums;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPageNums(int[] pageNums) {
|
||||||
|
this.pageNums = pageNums;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,235 @@
|
|||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<!--左侧导航-->
|
||||||
|
<aside class="lyear-layout-sidebar">
|
||||||
|
|
||||||
|
<!-- logo -->
|
||||||
|
<div id="logo" class="sidebar-header">
|
||||||
|
<a href="index.html"><img src="${pageContext.request.contextPath}/assets/logo1.png" /></a>
|
||||||
|
</div>
|
||||||
|
<div class="lyear-layout-sidebar-scroll">
|
||||||
|
|
||||||
|
<nav class="sidebar-main">
|
||||||
|
<ul class="nav nav-drawer">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/index.jsp"><i class="mdi mdi-home"></i> 首页</a> </li>
|
||||||
|
|
||||||
|
<c:if test="${sessionScope.role == 'admin'}">
|
||||||
|
<li class="nav-item active nav-item-has-subnav open">
|
||||||
|
<a href="javascript:void(0)"><i class="mdi mdi-human"></i> 病人管理</a>
|
||||||
|
<ul class="nav nav-subnav">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/patient">基础信息管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="#">医嘱管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="#">处方管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/record">就诊记录管理</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="nav-item active"> <a href="#"><i class="mdi mdi-worker"></i> 医生管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="#"><i class="mdi mdi-hospital"></i> 科室管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="#"><i class="mdi mdi-page-layout-sidebar-right"></i> 病房管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="#"><i class="mdi mdi-medical-bag"></i> 药品管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/zhangwu.jsp"><i class="mdi mdi-cash-usd"></i> 账务明细</a> </li>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
<c:if test="${sessionScope.role == 'patient'}">
|
||||||
|
<li class="nav-item active nav-item-has-subnav open">
|
||||||
|
<a href="javascript:void(0)"><i class="mdi mdi-seat-recline-normal"></i> 就诊大厅</a>
|
||||||
|
<ul class="nav nav-subnav">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/jiuzhen-gerenxinxi.jsp">个人信息表单</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/jiuzhen-guahao.jsp">挂号表单</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="nav-item active nav-item-has-subnav open">
|
||||||
|
<a href="javascript:void(0)"><i class="mdi mdi-history"></i> 就诊记录</a>
|
||||||
|
<ul class="nav nav-subnav">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/record">历史就诊信息</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/shoufeimingxi.jsp">历史收费明细</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
<c:if test="${sessionScope.role == 'doctor'}">
|
||||||
|
<li class="nav-item active nav-item-has-subnav open">
|
||||||
|
<a href="javascript:void(0)"><i class="mdi mdi-pen"></i> 接诊大厅</a>
|
||||||
|
<ul class="nav nav-subnav">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/patient">病人基础信息</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/record">病人就诊记录</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="nav-item active nav-item-has-subnav open">
|
||||||
|
<a href="javascript:void(0)"><i class="mdi mdi-clock"></i> 接诊记录</a>
|
||||||
|
<ul class="nav nav-subnav">
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/yizhu.jsp">病人医嘱管理</a> </li>
|
||||||
|
<li class="nav-item active"> <a href="${pageContext.request.contextPath}/chufang.jsp">病人处方管理</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</aside>
|
||||||
|
<!--End 左侧导航-->
|
||||||
|
|
||||||
|
<!--头部信息-->
|
||||||
|
<header class="lyear-layout-header">
|
||||||
|
|
||||||
|
<nav class="navbar navbar-default">
|
||||||
|
<div class="topbar">
|
||||||
|
|
||||||
|
<div class="topbar-left">
|
||||||
|
<div class="lyear-aside-toggler">
|
||||||
|
<span class="lyear-toggler-bar"></span>
|
||||||
|
<span class="lyear-toggler-bar"></span>
|
||||||
|
<span class="lyear-toggler-bar"></span>
|
||||||
|
</div>
|
||||||
|
<span class="navbar-page-title"> 医院管理系统 </span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="topbar-right">
|
||||||
|
<li class="dropdown dropdown-profile">
|
||||||
|
<a href="javascript:void(0)" data-toggle="dropdown">
|
||||||
|
<img class="img-avatar img-avatar-48 m-r-10" src="${pageContext.request.contextPath}/assets/images/users/avatar.png" alt="山科logo" />
|
||||||
|
<span>${sessionScope.user}<span class="caret"></span></span>
|
||||||
|
</a>
|
||||||
|
<ul class="dropdown-menu dropdown-menu-right">
|
||||||
|
<li> <a href="#" data-toggle="modal" data-target="#exampleModal" data-whatever="@mdo"><i class="mdi mdi-account"></i> 个人信息</a> </li>
|
||||||
|
<li class="divider"></li>
|
||||||
|
<li> <a href="${pageContext.request.contextPath}/logout"><i class="mdi mdi-logout-variant"></i> 退出登录</a> </li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
</header>
|
||||||
|
<!--End 头部信息-->
|
||||||
|
|
||||||
|
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||||
|
<h4 class="modal-title" id="exampleModalLabel">个人信息</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<%
|
||||||
|
// 先获取和处理用户类型
|
||||||
|
String userType = (String)session.getAttribute("role");
|
||||||
|
String username = (String)session.getAttribute("user");
|
||||||
|
String userTypeText = "";
|
||||||
|
|
||||||
|
if("admin".equals(userType)) {
|
||||||
|
userTypeText = "管理员";
|
||||||
|
} else if("doctor".equals(userType)) {
|
||||||
|
userTypeText = "医生";
|
||||||
|
} else if("patient".equals(userType)) {
|
||||||
|
userTypeText = "用户";
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
<form>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="recipient-name" class="control-label">用户权限:</label>
|
||||||
|
<input type="text" class="form-control" id="recipient-role" value="<%= userTypeText %>">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="recipient-name" class="control-label">用户名:</label>
|
||||||
|
<input type="text" class="form-control" id="recipient-name" value="<%= username %>">
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-primary" data-dismiss="modal">关闭</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 添加样式 -->
|
||||||
|
<style>
|
||||||
|
/* 侧边栏暗色主题 */
|
||||||
|
.lyear-layout-sidebar {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-header {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
.lyear-layout-sidebar-scroll {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 侧边栏菜单样式 */
|
||||||
|
.sidebar-main .nav li a {
|
||||||
|
color: #8c8c8c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-main .nav li:hover > a,
|
||||||
|
.sidebar-main .nav li.active > a {
|
||||||
|
color: #fff;
|
||||||
|
background-color: rgba(255, 255, 255, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-drawer > .nav-item.active > a,
|
||||||
|
.nav-drawer > .nav-item.active:hover > a {
|
||||||
|
color: #fff;
|
||||||
|
background-color: rgba(255, 255, 255, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 头部导航暗色主题 */
|
||||||
|
.lyear-layout-header {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
.navbar-default {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
.navbar-default .navbar-nav > li > a,
|
||||||
|
.navbar-page-title {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 折叠按钮样式 */
|
||||||
|
.lyear-aside-toggler .lyear-toggler-bar {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 头部下拉菜单样式 */
|
||||||
|
.dropdown-menu {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-menu > li > a {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-menu > li > a:hover {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 子菜单样式 */
|
||||||
|
.nav-subnav {
|
||||||
|
background-color: rgba(99, 227, 227, 0.97);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-subnav > .nav-item > a {
|
||||||
|
color: #8c8c8c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-subnav > .nav-item.active > a,
|
||||||
|
.nav-subnav > .nav-item.active:hover > a {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 头像区域样式 */
|
||||||
|
.dropdown-profile > a {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.img-avatar {
|
||||||
|
background-color: rgba(255, 255, 255, 0.2);
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,77 @@
|
|||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||||
|
<h1> 医院资源简要图示 </h1>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-6 col-lg-3">
|
||||||
|
<div class="card bg-primary">
|
||||||
|
<div class="card-body clearfix">
|
||||||
|
<div class="pull-right">
|
||||||
|
<p class="h6 text-white m-t-0">病人数量</p>
|
||||||
|
<p class="h3 text-white m-b-0 fa-1-5x" id="patientCount">0</p>
|
||||||
|
</div>
|
||||||
|
<div class="pull-left"> <span class="img-avatar img-avatar-48 bg-translucent"><i class="mdi mdi-human"></i></span> </div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-sm-6 col-lg-3">
|
||||||
|
<div class="card bg-danger">
|
||||||
|
<div class="card-body clearfix">
|
||||||
|
<div class="pull-right">
|
||||||
|
<p class="h6 text-white m-t-0">病房数量</p>
|
||||||
|
<p class="h3 text-white m-b-0 fa-1-5x" id="wardCount">0</p>
|
||||||
|
</div>
|
||||||
|
<div class="pull-left"> <span class="img-avatar img-avatar-48 bg-translucent"><i class="mdi mdi-home-assistant"></i></span> </div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-sm-6 col-lg-3">
|
||||||
|
<div class="card bg-success">
|
||||||
|
<div class="card-body clearfix">
|
||||||
|
<div class="pull-right">
|
||||||
|
<p class="h6 text-white m-t-0">医生数量</p>
|
||||||
|
<p class="h3 text-white m-b-0 fa-1-5x " id="doctorCount">0</p>
|
||||||
|
</div>
|
||||||
|
<div class="pull-left"> <span class="img-avatar img-avatar-48 bg-translucent"><i class="mdi mdi-account-multiple"></i></span> </div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-sm-6 col-lg-3">
|
||||||
|
<div class="card bg-purple">
|
||||||
|
<div class="card-body clearfix">
|
||||||
|
<div class="pull-right">
|
||||||
|
<p class="h6 text-white m-t-0">药品库存</p>
|
||||||
|
<p class="h3 text-white m-b-0 fa-1-5x" id="medicationC">0 盒</p>
|
||||||
|
</div>
|
||||||
|
<div class="pull-left"> <span class="img-avatar img-avatar-48 bg-translucent"><i class="mdi mdi-pill"></i></span> </div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
|
||||||
|
<div class="col-lg-6">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">
|
||||||
|
<h4>科室病床空闲</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<canvas class="js-chartjs-bars"></canvas>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-6">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">
|
||||||
|
<h4>科室医生数量</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<canvas class="js-chartjs-doctors"></canvas>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
@ -0,0 +1,63 @@
|
|||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||||
|
<%@ page import="com.hms.entity.Patient" %>
|
||||||
|
<%@ page import="com.hms.service.PatientService" %>
|
||||||
|
<%@ page import="java.util.List" %>
|
||||||
|
<%
|
||||||
|
// 创建 PatientService 实例,获取所有病人信息
|
||||||
|
PatientService patientService = new PatientService();
|
||||||
|
List<Patient> patients = patientService.getAllPatients();
|
||||||
|
%>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">
|
||||||
|
<h4>我的病人状态</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>#</th>
|
||||||
|
<th>病人姓名</th>
|
||||||
|
<th>电话</th>
|
||||||
|
<th>医保号</th>
|
||||||
|
<th>状态</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<%
|
||||||
|
for (Patient patient : patients) {
|
||||||
|
String visitType = patient.getVisitType();
|
||||||
|
String visitTypeInChinese = "";
|
||||||
|
String labelClass = ""; // 用于存储标签样式类
|
||||||
|
|
||||||
|
// 根据就诊类型设置不同的样式和文本
|
||||||
|
if ("Inpatient".equals(visitType)) {
|
||||||
|
visitTypeInChinese = "住院";
|
||||||
|
labelClass = "label label-danger"; // 红色标签
|
||||||
|
} else if ("Outpatient".equals(visitType)) {
|
||||||
|
visitTypeInChinese = "门诊";
|
||||||
|
labelClass = "label label-success"; // 绿色标签
|
||||||
|
} else {
|
||||||
|
visitTypeInChinese = "未知";
|
||||||
|
labelClass = "label label-default"; // 灰色标签
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
<tr>
|
||||||
|
<td><%= patient.getPatientId() %></td>
|
||||||
|
<td><%= patient.getName() %></td>
|
||||||
|
<td><%= patient.getContactNumber() %></td>
|
||||||
|
<td><%= patient.getInsuranceId() %></td>
|
||||||
|
<td><span class="<%= labelClass %>"><%= visitTypeInChinese %></span></td>
|
||||||
|
</tr>
|
||||||
|
<%
|
||||||
|
}
|
||||||
|
%>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -0,0 +1,22 @@
|
|||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<nav style="width: 100%;height: 80px">
|
||||||
|
<ul class="pagination" style="float: left">
|
||||||
|
<li <c:if test="${pagerVO.showLeft}">class="disabled"</c:if> >
|
||||||
|
<a href="javascript:gotoPage(${pagerVO.current-1})">
|
||||||
|
<span><i class="mdi mdi-chevron-left"></i></span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<c:forEach items="${ pagerVO.pageNums }" var="i" varStatus="s">
|
||||||
|
<li <c:if test="${i == pagerVO.current}">class="active"</c:if> >
|
||||||
|
<a href="javascript:gotoPage(${i})">${i}</a>
|
||||||
|
</li>
|
||||||
|
</c:forEach>
|
||||||
|
<li <c:if test="${pagerVO.showRight}">class="disabled"</c:if>>
|
||||||
|
<a href="javascript:gotoPage(${pagerVO.current+1})">
|
||||||
|
<span><i class="mdi mdi-chevron-right"></i></span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</nav>
|
@ -0,0 +1,144 @@
|
|||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>病人列表</title>
|
||||||
|
<link rel="icon" href="${pageContext.request.contextPath}/assets/favicon.ico" type="image/ico">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/bootstrap.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/materialdesignicons.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/style.min.css" rel="stylesheet">
|
||||||
|
<style>
|
||||||
|
.container-fluid {
|
||||||
|
max-width: 600px; /* 设置容器最大宽度为800px */
|
||||||
|
margin: 0 auto; /* 水平居中 */
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="lyear-layout-web">
|
||||||
|
<div class="lyear-layout-container">
|
||||||
|
|
||||||
|
<jsp:include page="_aside_head.jsp"></jsp:include>
|
||||||
|
|
||||||
|
<!-- 页面主要内容 -->
|
||||||
|
<main class="lyear-layout-content">
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header"><h4>病人表单</h4></div>
|
||||||
|
<div class="card-body">
|
||||||
|
<form id="myForm" action="${pageContext.request.contextPath}/patient?r=${operate}" method="post">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>姓名</label>
|
||||||
|
<input class="form-control" type="text" name="name" value="${entity.name}" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>性别</label>
|
||||||
|
<select class="form-control" name="gender">
|
||||||
|
<option value="M" ${entity.gender == 'M' ? 'selected' : ''}>男</option>
|
||||||
|
<option value="F" ${entity.gender == 'F' ? 'selected' : ''}>女</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>出生日期</label>
|
||||||
|
<input class="form-control" type="date" name="birthdate" value="${entity.birthdate}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>联系电话</label>
|
||||||
|
<input class="form-control" type="text" name="contactNumber" value="${entity.contactNumber}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>地址</label>
|
||||||
|
<input class="form-control" type="text" name="address" value="${entity.address}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>医疗保险ID</label>
|
||||||
|
<input class="form-control" type="text" name="insuranceId" value="${entity.insuranceId}">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>主治医生ID</label>
|
||||||
|
<input class="form-control" type="text" name="attendingDoctorId" value="${entity.attendingDoctorId}">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>就诊类型</label>
|
||||||
|
<select class="form-control" name="visitType">
|
||||||
|
<option value="Outpatient" ${entity.visitType == 'Outpatient' ? 'selected' : ''}>门诊</option>
|
||||||
|
<option value="Inpatient" ${entity.visitType == 'Inpatient' ? 'selected' : ''}>住院</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group text-center">
|
||||||
|
<button class="btn btn-primary" type="submit">提交</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
<!-- End 页面主要内容 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/jquery.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/bootstrap.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/perfect-scrollbar.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/main.min.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
<!--消息提示-->
|
||||||
|
<script src="${pageContext.request.contextPath}/assets/js/bootstrap-notify.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/lightyear.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#myForm').on('submit', function(event) {
|
||||||
|
// 阻止表单的默认提交行为
|
||||||
|
event.preventDefault();
|
||||||
|
lightyear.loading('show');
|
||||||
|
// 序列化表单数据
|
||||||
|
var formData = $(this).serialize();
|
||||||
|
// 打印 formData 的值到浏览器控制台
|
||||||
|
console.log(formData); // 打印出序列化后的表单数据
|
||||||
|
// 使用AJAX发送数据
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: $(this).attr("action"),
|
||||||
|
data: formData,
|
||||||
|
success: function(response) {
|
||||||
|
// 处理返回结果
|
||||||
|
if(response.success){
|
||||||
|
//成功
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.url('patient');
|
||||||
|
lightyear.notify(response.message, 'success', 500);
|
||||||
|
}else{
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify(response.message, 'danger', 5000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify("请求失败", 'danger', 5000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
@ -0,0 +1,148 @@
|
|||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>病人列表</title>
|
||||||
|
<link rel="icon" href="${pageContext.request.contextPath}/assets/favicon.ico" type="image/ico">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/bootstrap.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/materialdesignicons.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/style.min.css" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="lyear-layout-web">
|
||||||
|
<div class="lyear-layout-container">
|
||||||
|
|
||||||
|
<jsp:include page="_aside_head.jsp"></jsp:include>
|
||||||
|
|
||||||
|
<!-- 页面主要内容 -->
|
||||||
|
<main class="lyear-layout-content">
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
|
||||||
|
<!-- 查询表单 -->
|
||||||
|
<form id="form" style="margin-bottom: 15px" class="form-inline" action="${pageContext.request.contextPath}/patient" method="get">
|
||||||
|
<input type="hidden" name="current" id="current" value="1">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>病人ID</label>
|
||||||
|
<input class="form-control" type="text" value="${patientId}" name="patientId" placeholder="请输入病人ID">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>病人姓名</label>
|
||||||
|
<input class="form-control" type="text" value="${name}" name="name" placeholder="请输入病人姓名">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>性别</label>
|
||||||
|
<input class="form-control" type="text" value="${gender}" name="gender" placeholder="请输入性别">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>就诊类型</label>
|
||||||
|
<input class="form-control" type="text" value="${visitType}" name="visitType" placeholder="请输入就诊类型">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<button class="btn btn-purple " type="submit">查询</button>
|
||||||
|
<button class="btn btn-purple " type="button" onclick="location.href='?r=add'">新增</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<!-- 病人信息表格 -->
|
||||||
|
<table class="table table-bordered table-hover">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>#</th>
|
||||||
|
<th>病人ID</th>
|
||||||
|
<th>姓名</th>
|
||||||
|
<th>性别</th>
|
||||||
|
<th>出生日期</th>
|
||||||
|
<th>联系电话</th>
|
||||||
|
<th>住址</th>
|
||||||
|
<th>医保ID</th>
|
||||||
|
<th>主治医生ID</th>
|
||||||
|
<th>就诊类型</th>
|
||||||
|
<th>操作</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<c:forEach items="${pagerVO.list}" var="patient" varStatus="s">
|
||||||
|
<tr>
|
||||||
|
<th scope="row">${s.count}</th>
|
||||||
|
<td>${patient.patientId}</td>
|
||||||
|
<td>${patient.name}</td>
|
||||||
|
<td>${patient.gender}</td>
|
||||||
|
<td>${patient.birthdate}</td>
|
||||||
|
<td>${patient.contactNumber}</td>
|
||||||
|
<td>${patient.address}</td>
|
||||||
|
<td>${patient.insuranceId}</td>
|
||||||
|
<td>${patient.attendingDoctorId}</td>
|
||||||
|
<td>${patient.visitType}</td>
|
||||||
|
<td>
|
||||||
|
<button class="btn btn-primary btn-xs" type="button" onclick="location.href='?r=edit&name=${patient.name}'">修改</button>
|
||||||
|
<button class="btn btn-danger btn-xs" type="button" onclick="del('${patient.name}')">删除</button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<jsp:include page="pagination.jsp"></jsp:include>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
<!-- End 页面主要内容 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/jquery.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/bootstrap.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/perfect-scrollbar.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/main.min.js"></script>
|
||||||
|
|
||||||
|
<!--消息提示-->
|
||||||
|
<script src="${pageContext.request.contextPath}/assets/js/bootstrap-notify.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/lightyear.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function(e) {
|
||||||
|
// 这里可以添加自定义的JS逻辑
|
||||||
|
});
|
||||||
|
function gotoPage(page) {
|
||||||
|
$("#current").val(page)
|
||||||
|
$("#form").submit()
|
||||||
|
}
|
||||||
|
function del(name) {
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: 'patient?r=del',
|
||||||
|
data: {name},
|
||||||
|
success: function(response) {
|
||||||
|
// 处理返回结果
|
||||||
|
if(response.success){
|
||||||
|
//成功
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.url('patient');
|
||||||
|
lightyear.notify(response.message, 'success', 500);
|
||||||
|
}else{
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify(response.message, 'danger', 5000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify("请求失败", 'danger', 5000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,42 @@
|
|||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||||
|
<div class="form-group row" style="margin-left: 250px">
|
||||||
|
<label class="col-lg-3" style="margin-right: 10px;font-size: x-large">BMI指数</label>
|
||||||
|
<div class="col-lg-9">
|
||||||
|
<input id="range_01">
|
||||||
|
<small class="form-text text-muted">
|
||||||
|
BMI参考范围: <br>
|
||||||
|
偏瘦: < 18.5 | 健康: 18.5-23.9 | 超重: 24-27.9 | 肥胖: ≥ 28
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row" style="margin-left: 250px">
|
||||||
|
<label class="col-form-label col-lg-3" style="margin-right: 10px;font-size: x-large">血压监测</label>
|
||||||
|
<div class="col-lg-9">
|
||||||
|
<input id="range_02">
|
||||||
|
<small class="form-text text-muted">
|
||||||
|
血压参考范围: <br>
|
||||||
|
低血压: <90/60 | 理想: ≤120/80 | 正常偏高: ≤140/90 | 高血压: >140/90 mmHg
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row" style="margin-left: 250px">
|
||||||
|
<label class="col-form-label col-lg-3" style="margin-right: 10px;font-size: x-large">空腹血糖</label>
|
||||||
|
<div class="col-lg-9">
|
||||||
|
<input id="range_03">
|
||||||
|
<small class="form-text text-muted">
|
||||||
|
血糖参考范围: <br>
|
||||||
|
低血糖: <3.9 | 正常: 3.9-6.1 | 糖耐量受损: 6.1-7.0 | 糖尿病: >7.0 mmol/L
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row" style="margin-left: 250px">
|
||||||
|
<label class="col-form-label col-lg-3" style="margin-right: 10px;font-size: x-large">静息心率</label>
|
||||||
|
<div class="col-lg-9">
|
||||||
|
<input id="range_04">
|
||||||
|
<small class="form-text text-muted">
|
||||||
|
心率参考范围: <br>
|
||||||
|
心动过缓: <60 | 正常: 60-100 | 心动过速: >100 BPM
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
@ -0,0 +1,131 @@
|
|||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>就诊记录表单</title>
|
||||||
|
<link rel="icon" href="${pageContext.request.contextPath}/assets/favicon.ico" type="image/ico">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/bootstrap.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/materialdesignicons.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/style.min.css" rel="stylesheet">
|
||||||
|
<style>
|
||||||
|
.container-fluid {
|
||||||
|
max-width: 600px; /* 设置容器最大宽度为800px */
|
||||||
|
margin: 0 auto; /* 水平居中 */
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="lyear-layout-web">
|
||||||
|
<div class="lyear-layout-container">
|
||||||
|
|
||||||
|
<jsp:include page="_aside_head.jsp"></jsp:include>
|
||||||
|
|
||||||
|
<!-- 页面主要内容 -->
|
||||||
|
<main class="lyear-layout-content">
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header"><h4>就诊记录表单</h4></div>
|
||||||
|
<div class="card-body">
|
||||||
|
<form id="myForm" action="${pageContext.request.contextPath}/record?r=${operate}" method="post">
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>记录ID</label>
|
||||||
|
<input class="form-control" type="text" name="recordId" value="${entity.recordId}" readonly required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>病人ID</label>
|
||||||
|
<input class="form-control" type="text" name="patientId" value="${entity.patientId}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>医生ID</label>
|
||||||
|
<input class="form-control" type="text" name="doctorId" value="${entity.doctorId}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>就诊日期</label>
|
||||||
|
<input class="form-control" type="date" name="visitDate" value="${entity.visitDate}" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>诊断</label>
|
||||||
|
<textarea class="form-control" name="diagnosis" rows="3" required>${entity.diagnosis}</textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label>治疗方案</label>
|
||||||
|
<textarea class="form-control" name="treatmentPlan" rows="3" required>${entity.treatmentPlan}</textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group text-center">
|
||||||
|
<button class="btn btn-primary" type="submit">提交</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
<!-- End 页面主要内容 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/jquery.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/bootstrap.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/perfect-scrollbar.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/main.min.js"></script>
|
||||||
|
|
||||||
|
<!-- 消息提示 -->
|
||||||
|
<script src="${pageContext.request.contextPath}/assets/js/bootstrap-notify.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/lightyear.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#myForm').on('submit', function(event) {
|
||||||
|
// 阻止表单的默认提交行为
|
||||||
|
event.preventDefault();
|
||||||
|
lightyear.loading('show');
|
||||||
|
// 序列化表单数据
|
||||||
|
var formData = $(this).serialize();
|
||||||
|
// 打印 formData 的值到浏览器控制台
|
||||||
|
console.log(formData); // 打印出序列化后的表单数据
|
||||||
|
// 使用AJAX发送数据
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: $(this).attr("action"),
|
||||||
|
data: formData,
|
||||||
|
success: function(response) {
|
||||||
|
// 处理返回结果
|
||||||
|
if(response.success){
|
||||||
|
//成功
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.url('record'); // 跳转到就诊记录列表页面
|
||||||
|
lightyear.notify(response.message, 'success', 500);
|
||||||
|
}else{
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify(response.message, 'danger', 5000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify("请求失败", 'danger', 5000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,134 @@
|
|||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>就诊记录列表</title>
|
||||||
|
<link rel="icon" href="${pageContext.request.contextPath}/assets/favicon.ico" type="image/ico">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/bootstrap.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/materialdesignicons.min.css" rel="stylesheet">
|
||||||
|
<link href="${pageContext.request.contextPath}/assets/css/style.min.css" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="lyear-layout-web">
|
||||||
|
<div class="lyear-layout-container">
|
||||||
|
|
||||||
|
<jsp:include page="_aside_head.jsp"></jsp:include>
|
||||||
|
|
||||||
|
<!-- 页面主要内容 -->
|
||||||
|
<main class="lyear-layout-content">
|
||||||
|
|
||||||
|
<div class="container-fluid">
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
|
||||||
|
<!-- 查询表单 -->
|
||||||
|
<form id="form" style="margin-bottom: 15px" class="form-inline" action="${pageContext.request.contextPath}/record" method="get">
|
||||||
|
<input type="hidden" name="current" id="current" value="1">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>病人ID</label>
|
||||||
|
<input class="form-control" type="text" value="${patientId}" name="patientId" placeholder="请输入病人ID">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>医生ID</label>
|
||||||
|
<input class="form-control" type="text" value="${doctorId}" name="doctorId" placeholder="请输入医生ID">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<button class="btn btn-purple " type="submit">查询</button>
|
||||||
|
<button class="btn btn-purple " type="button" onclick="location.href='?r=add'">新增</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<!-- 就诊记录信息表格 -->
|
||||||
|
<table class="table table-bordered table-hover">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>#</th>
|
||||||
|
<th>记录ID</th>
|
||||||
|
<th>病人ID</th>
|
||||||
|
<th>医生ID</th>
|
||||||
|
<th>就诊日期</th>
|
||||||
|
<th>病情描述</th>
|
||||||
|
<th>操作</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<c:forEach items="${pagerVO.list}" var="record" varStatus="s">
|
||||||
|
<tr>
|
||||||
|
<th scope="row">${s.count}</th>
|
||||||
|
<td>${record.recordId}</td>
|
||||||
|
<td>${record.patientId}</td>
|
||||||
|
<td>${record.doctorId}</td>
|
||||||
|
<td>${record.visitDate}</td>
|
||||||
|
<td>${record.diagnosis}</td>
|
||||||
|
<td>
|
||||||
|
<button class="btn btn-primary btn-xs" type="button" onclick="location.href='?r=edit&recordId=${record.recordId}'">修改</button>
|
||||||
|
<button class="btn btn-danger btn-xs" type="button" onclick="del('${record.recordId}')">删除</button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<jsp:include page="pagination.jsp"></jsp:include>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
<!-- End 页面主要内容 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/jquery.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/bootstrap.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/perfect-scrollbar.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/main.min.js"></script>
|
||||||
|
|
||||||
|
<!--消息提示-->
|
||||||
|
<script src="${pageContext.request.contextPath}/assets/js/bootstrap-notify.min.js"></script>
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/assets/js/lightyear.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
$(document).ready(function(e) {
|
||||||
|
// 这里可以添加自定义的JS逻辑
|
||||||
|
});
|
||||||
|
|
||||||
|
function gotoPage(page) {
|
||||||
|
$("#current").val(page);
|
||||||
|
$("#form").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
function del(recordId) {
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: 'record?r=del',
|
||||||
|
data: {recordId},
|
||||||
|
success: function(response) {
|
||||||
|
// 处理返回结果
|
||||||
|
if(response.success){
|
||||||
|
// 成功
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.url('record');
|
||||||
|
lightyear.notify(response.message, 'success', 500);
|
||||||
|
}else{
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify(response.message, 'danger', 5000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(xhr, status, error) {
|
||||||
|
lightyear.loading('hide');
|
||||||
|
lightyear.notify("请求失败", 'danger', 5000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
|
||||||
|
version="4.0">
|
||||||
|
</web-app>
|
After Width: | Height: | Size: 1.2 MiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 2.1 MiB |
After Width: | Height: | Size: 5.4 KiB |
@ -0,0 +1,222 @@
|
|||||||
|
/*!
|
||||||
|
* Bootstrap Colorpicker v2.3.3
|
||||||
|
* http://mjolnic.github.io/bootstrap-colorpicker/
|
||||||
|
*
|
||||||
|
* Originally written by (c) 2012 Stefan Petre
|
||||||
|
* Licensed under the Apache License v2.0
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0.txt
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
.colorpicker-saturation {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/saturation.png");
|
||||||
|
cursor: crosshair;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.colorpicker-saturation i {
|
||||||
|
display: block;
|
||||||
|
height: 5px;
|
||||||
|
width: 5px;
|
||||||
|
border: 1px solid #000;
|
||||||
|
-webkit-border-radius: 5px;
|
||||||
|
-moz-border-radius: 5px;
|
||||||
|
border-radius: 5px;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
margin: -4px 0 0 -4px;
|
||||||
|
}
|
||||||
|
.colorpicker-saturation i b {
|
||||||
|
display: block;
|
||||||
|
height: 5px;
|
||||||
|
width: 5px;
|
||||||
|
border: 1px solid #fff;
|
||||||
|
-webkit-border-radius: 5px;
|
||||||
|
-moz-border-radius: 5px;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
.colorpicker-hue,
|
||||||
|
.colorpicker-alpha {
|
||||||
|
width: 15px;
|
||||||
|
height: 100px;
|
||||||
|
float: left;
|
||||||
|
cursor: row-resize;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
.colorpicker-hue i,
|
||||||
|
.colorpicker-alpha i {
|
||||||
|
display: block;
|
||||||
|
height: 1px;
|
||||||
|
background: #000;
|
||||||
|
border-top: 1px solid #fff;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
margin-top: -1px;
|
||||||
|
}
|
||||||
|
.colorpicker-hue {
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/hue.png");
|
||||||
|
}
|
||||||
|
.colorpicker-alpha {
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/alpha.png");
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.colorpicker-saturation,
|
||||||
|
.colorpicker-hue,
|
||||||
|
.colorpicker-alpha {
|
||||||
|
background-size: contain;
|
||||||
|
}
|
||||||
|
.colorpicker {
|
||||||
|
padding: 4px;
|
||||||
|
min-width: 130px;
|
||||||
|
margin-top: 1px;
|
||||||
|
-webkit-border-radius: 4px;
|
||||||
|
-moz-border-radius: 4px;
|
||||||
|
border-radius: 4px;
|
||||||
|
z-index: 2500;
|
||||||
|
}
|
||||||
|
.colorpicker:before,
|
||||||
|
.colorpicker:after {
|
||||||
|
display: table;
|
||||||
|
content: "";
|
||||||
|
line-height: 0;
|
||||||
|
}
|
||||||
|
.colorpicker:after {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
.colorpicker:before {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 7px solid transparent;
|
||||||
|
border-right: 7px solid transparent;
|
||||||
|
border-bottom: 7px solid #ccc;
|
||||||
|
border-bottom-color: rgba(0, 0, 0, 0.2);
|
||||||
|
position: absolute;
|
||||||
|
top: -7px;
|
||||||
|
left: 6px;
|
||||||
|
}
|
||||||
|
.colorpicker:after {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 6px solid transparent;
|
||||||
|
border-right: 6px solid transparent;
|
||||||
|
border-bottom: 6px solid #ffffff;
|
||||||
|
position: absolute;
|
||||||
|
top: -6px;
|
||||||
|
left: 7px;
|
||||||
|
}
|
||||||
|
.colorpicker div {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-with-alpha {
|
||||||
|
min-width: 140px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.colorpicker-color {
|
||||||
|
height: 10px;
|
||||||
|
margin-top: 5px;
|
||||||
|
clear: both;
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/alpha.png");
|
||||||
|
background-position: 0 100%;
|
||||||
|
}
|
||||||
|
.colorpicker-color div {
|
||||||
|
height: 10px;
|
||||||
|
}
|
||||||
|
.colorpicker-selectors {
|
||||||
|
display: none;
|
||||||
|
height: 10px;
|
||||||
|
margin-top: 5px;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
.colorpicker-selectors i {
|
||||||
|
cursor: pointer;
|
||||||
|
float: left;
|
||||||
|
height: 10px;
|
||||||
|
width: 10px;
|
||||||
|
}
|
||||||
|
.colorpicker-selectors i + i {
|
||||||
|
margin-left: 3px;
|
||||||
|
}
|
||||||
|
.colorpicker-element .input-group-addon i,
|
||||||
|
.colorpicker-element .add-on i {
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
height: 16px;
|
||||||
|
vertical-align: text-top;
|
||||||
|
width: 16px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-inline {
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
float: none;
|
||||||
|
z-index: auto;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal {
|
||||||
|
width: 110px;
|
||||||
|
min-width: 110px;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-saturation {
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-color {
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-hue,
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-alpha {
|
||||||
|
width: 100px;
|
||||||
|
height: 15px;
|
||||||
|
float: left;
|
||||||
|
cursor: col-resize;
|
||||||
|
margin-left: 0px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-hue i,
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
|
||||||
|
display: block;
|
||||||
|
height: 15px;
|
||||||
|
background: #ffffff;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 1px;
|
||||||
|
border: none;
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-hue {
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/hue-horizontal.png");
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-horizontal .colorpicker-alpha {
|
||||||
|
background-image: url("../img/bootstrap-colorpicker/alpha-horizontal.png");
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.colorpicker.colorpicker-visible {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.colorpicker-inline.colorpicker-visible {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
.colorpicker-right:before {
|
||||||
|
left: auto;
|
||||||
|
right: 6px;
|
||||||
|
}
|
||||||
|
.colorpicker-right:after {
|
||||||
|
left: auto;
|
||||||
|
right: 7px;
|
||||||
|
}
|
||||||
|
.colorpicker-no-arrow:before {
|
||||||
|
border-right: 0;
|
||||||
|
border-left: 0;
|
||||||
|
}
|
||||||
|
.colorpicker-no-arrow:after {
|
||||||
|
border-right: 0;
|
||||||
|
border-left: 0;
|
||||||
|
}
|
||||||
|
/*# sourceMappingURL=bootstrap-colorpicker.css.map */
|
@ -0,0 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
* Bootstrap Colorpicker v2.3.3
|
||||||
|
* http://mjolnic.github.io/bootstrap-colorpicker/
|
||||||
|
*
|
||||||
|
* Originally written by (c) 2012 Stefan Petre
|
||||||
|
* Licensed under the Apache License v2.0
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0.txt
|
||||||
|
*
|
||||||
|
*/.colorpicker-saturation{width:100px;height:100px;background-image:url(../img/bootstrap-colorpicker/saturation.png);cursor:crosshair;float:left}.colorpicker-saturation i{display:block;height:5px;width:5px;border:1px solid #000;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;position:absolute;top:0;left:0;margin:-4px 0 0 -4px}.colorpicker-saturation i b{display:block;height:5px;width:5px;border:1px solid #fff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.colorpicker-alpha,.colorpicker-hue{width:15px;height:100px;float:left;cursor:row-resize;margin-left:4px;margin-bottom:4px}.colorpicker-alpha i,.colorpicker-hue i{display:block;height:1px;background:#000;border-top:1px solid #fff;position:absolute;top:0;left:0;width:100%;margin-top:-1px}.colorpicker-hue{background-image:url(../img/bootstrap-colorpicker/hue.png)}.colorpicker-alpha{background-image:url(../img/bootstrap-colorpicker/alpha.png);display:none}.colorpicker-alpha,.colorpicker-hue,.colorpicker-saturation{background-size:contain}.colorpicker{padding:4px;min-width:130px;margin-top:1px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;z-index:2500}.colorpicker:after,.colorpicker:before{display:table;content:"";line-height:0}.colorpicker:after{clear:both}.colorpicker:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,.2);position:absolute;top:-7px;left:6px}.colorpicker:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.colorpicker div{position:relative}.colorpicker.colorpicker-with-alpha{min-width:140px}.colorpicker.colorpicker-with-alpha .colorpicker-alpha{display:block}.colorpicker-color{height:10px;margin-top:5px;clear:both;background-image:url(../img/bootstrap-colorpicker/alpha.png);background-position:0 100%}.colorpicker-color div{height:10px}.colorpicker-selectors{display:none;height:10px;margin-top:5px;clear:both}.colorpicker-selectors i{cursor:pointer;float:left;height:10px;width:10px}.colorpicker-selectors i+i{margin-left:3px}.colorpicker-element .add-on i,.colorpicker-element .input-group-addon i{display:inline-block;cursor:pointer;height:16px;vertical-align:text-top;width:16px}.colorpicker.colorpicker-inline{position:relative;display:inline-block;float:none;z-index:auto}.colorpicker.colorpicker-horizontal{width:110px;min-width:110px;height:auto}.colorpicker.colorpicker-horizontal .colorpicker-saturation{margin-bottom:4px}.colorpicker.colorpicker-horizontal .colorpicker-color{width:100px}.colorpicker.colorpicker-horizontal .colorpicker-alpha,.colorpicker.colorpicker-horizontal .colorpicker-hue{width:100px;height:15px;float:left;cursor:col-resize;margin-left:0;margin-bottom:4px}.colorpicker.colorpicker-horizontal .colorpicker-alpha i,.colorpicker.colorpicker-horizontal .colorpicker-hue i{display:block;height:15px;background:#fff;position:absolute;top:0;left:0;width:1px;border:none;margin-top:0}.colorpicker.colorpicker-horizontal .colorpicker-hue{background-image:url(../img/bootstrap-colorpicker/hue-horizontal.png)}.colorpicker.colorpicker-horizontal .colorpicker-alpha{background-image:url(../img/bootstrap-colorpicker/alpha-horizontal.png)}.colorpicker.colorpicker-hidden{display:none}.colorpicker.colorpicker-visible{display:block}.colorpicker-inline.colorpicker-visible{display:inline-block}.colorpicker-right:before{left:auto;right:6px}.colorpicker-right:after{left:auto;right:7px}.colorpicker-no-arrow:before{border-right:0;border-left:0}.colorpicker-no-arrow:after{border-right:0;border-left:0}
|
||||||
|
/*# sourceMappingURL=bootstrap-colorpicker.min.css.map */
|
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["src/less/colorpicker.less"],"names":[],"mappings":";;;;;;;;AAqBA,wBACE,MAAA,MACA,OAAA,MAXA,iBAAsB,iDAatB,OAAA,UACA,MAAA,KACA,0BACE,QAAA,MACA,OAAA,IACA,MAAA,IACA,OAAA,IAAA,MAAA,KAfF,sBAAA,IACA,mBAAA,IACA,cAAA,IAeE,SAAA,SACA,IAAA,EACA,KAAA,EACA,OAAA,KAAA,EAAA,EAAA,KACA,4BACE,QAAA,MACA,OAAA,IACA,MAAA,IACA,OAAA,IAAA,MAAA,KAzBJ,sBAAA,IACA,mBAAA,IACA,cAAA,IA8BF,mBADA,iBAEE,MAAA,KACA,OAAA,MACA,MAAA,KACA,OAAA,WACA,YAAA,IACA,cAAA,IAIiB,qBADF,mBAEf,QAAA,MACA,OAAA,IACA,WAAA,KACA,WAAA,IAAA,MAAA,KACA,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,KACA,WAAA,KAGF,iBA1DE,iBAAsB,0CA8DxB,mBA9DE,iBAAsB,4CAgEtB,QAAA,KAKF,mBADA,iBADA,wBAGE,gBAAA,QAGF,aACE,QAAA,IACA,UAAA,MACA,WAAA,IAxEA,sBAAA,IACA,mBAAA,IACA,cAAA,IAwEA,QAAA,KAIU,mBADA,oBAEV,QAAA,MACA,QAAA,GACA,YAAA,EAGU,mBACV,MAAA,KAGU,oBACV,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,KACA,oBAAA,eACA,SAAA,SACA,IAAA,KACA,KAAA,IAGU,mBACV,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,KACA,SAAA,SACA,IAAA,KACA,KAAA,IAGW,iBACX,SAAA,SAGU,oCACV,UAAA,MAGkC,uDAClC,QAAA,MAGF,mBACE,OAAA,KACA,WAAA,IACA,MAAA,KAlIA,iBAAsB,4CAoItB,oBAAA,EAAA,KAGiB,uBACjB,OAAA,KAGF,uBACE,QAAA,KACA,OAAA,KACA,WAAA,IACA,MAAA,KAGqB,yBACrB,OAAA,QACA,MAAA,KACA,OAAA,KACA,MAAA,KAGuB,2BACvB,YAAA,IAI2B,+BADW,0CAEtC,QAAA,aACA,OAAA,QACA,OAAA,KACA,eAAA,SACA,MAAA,KAGU,gCACV,SAAA,SACA,QAAA,aACA,MAAA,KACA,QAAA,KAGU,oCACV,MAAA,MACA,UAAA,MACA,OAAA,KAGkC,4DAClC,cAAA,IAGkC,uDAClC,MAAA,MAIkC,uDADA,qDAElC,MAAA,MACA,OAAA,KACA,MAAA,KACA,OAAA,WACA,YAAA,EACA,cAAA,IAIqD,yDADF,uDAEnD,QAAA,MACA,OAAA,KACA,WAAA,KACA,SAAA,SACA,IAAA,EACA,KAAA,EACA,MAAA,IACA,OAAA,KACA,WAAA,EAGkC,qDAlNlC,iBAAsB,qDAsNY,uDAtNlC,iBAAsB,uDA0NZ,gCACV,QAAA,KAGU,iCACV,QAAA,MAGiB,wCACjB,QAAA,aAGgB,0BAChB,KAAA,KACA,MAAA,IAGgB,yBAChB,KAAA,KACA,MAAA,IAGmB,6BACnB,aAAA,EACA,YAAA,EAGmB,4BACnB,aAAA,EACA,YAAA"}
|
After Width: | Height: | Size: 557 B |
After Width: | Height: | Size: 488 B |
After Width: | Height: | Size: 478 B |
After Width: | Height: | Size: 504 B |
After Width: | Height: | Size: 4.0 KiB |
@ -0,0 +1,681 @@
|
|||||||
|
/*!
|
||||||
|
* Datepicker for Bootstrap v1.6.1 (https://github.com/eternicode/bootstrap-datepicker)
|
||||||
|
*
|
||||||
|
* Copyright 2012 Stefan Petre
|
||||||
|
* Improvements by Andrew Rowls
|
||||||
|
* Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
|
||||||
|
*/
|
||||||
|
.datepicker {
|
||||||
|
border-radius: 4px;
|
||||||
|
direction: ltr;
|
||||||
|
}
|
||||||
|
.datepicker-inline {
|
||||||
|
width: 220px;
|
||||||
|
}
|
||||||
|
.datepicker.datepicker-rtl {
|
||||||
|
direction: rtl;
|
||||||
|
}
|
||||||
|
.datepicker.datepicker-rtl table tr td span {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown:before {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 7px solid transparent;
|
||||||
|
border-right: 7px solid transparent;
|
||||||
|
border-bottom: 7px solid rgba(0, 0, 0, 0.15);
|
||||||
|
border-top: 0;
|
||||||
|
border-bottom-color: rgba(0, 0, 0, 0.2);
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown:after {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 6px solid transparent;
|
||||||
|
border-right: 6px solid transparent;
|
||||||
|
border-bottom: 6px solid #ffffff;
|
||||||
|
border-top: 0;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-left:before {
|
||||||
|
left: 6px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-left:after {
|
||||||
|
left: 7px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-right:before {
|
||||||
|
right: 6px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-right:after {
|
||||||
|
right: 7px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-bottom:before {
|
||||||
|
top: -7px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-bottom:after {
|
||||||
|
top: -6px;
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-top:before {
|
||||||
|
bottom: -7px;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-top: 7px solid rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.datepicker-dropdown.datepicker-orient-top:after {
|
||||||
|
bottom: -6px;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-top: 6px solid #ffffff;
|
||||||
|
}
|
||||||
|
.datepicker > div {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.datepicker table {
|
||||||
|
margin: 0;
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-khtml-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
.datepicker table tr td,
|
||||||
|
.datepicker table tr th {
|
||||||
|
text-align: center;
|
||||||
|
width: 30px;
|
||||||
|
height: 30px;
|
||||||
|
border-radius: 2px;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
.table-striped .datepicker table tr td,
|
||||||
|
.table-striped .datepicker table tr th {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.old,
|
||||||
|
.datepicker table tr td.new {
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.day:hover,
|
||||||
|
.datepicker table tr td.focused {
|
||||||
|
background: #eeeeee;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.disabled,
|
||||||
|
.datepicker table tr td.disabled:hover {
|
||||||
|
background: none;
|
||||||
|
color: #777777;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #d9edf7;
|
||||||
|
border-color: #85c5e5;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted:focus,
|
||||||
|
.datepicker table tr td.highlighted.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #afd9ee;
|
||||||
|
border-color: #298fc2;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted:hover {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #afd9ee;
|
||||||
|
border-color: #52addb;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted:active,
|
||||||
|
.datepicker table tr td.highlighted.active {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #afd9ee;
|
||||||
|
border-color: #52addb;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted:active:hover,
|
||||||
|
.datepicker table tr td.highlighted.active:hover,
|
||||||
|
.datepicker table tr td.highlighted:active:focus,
|
||||||
|
.datepicker table tr td.highlighted.active:focus,
|
||||||
|
.datepicker table tr td.highlighted:active.focus,
|
||||||
|
.datepicker table tr td.highlighted.active.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #91cbe8;
|
||||||
|
border-color: #298fc2;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted.disabled:hover,
|
||||||
|
.datepicker table tr td.highlighted[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.highlighted:hover,
|
||||||
|
.datepicker table tr td.highlighted.disabled:focus,
|
||||||
|
.datepicker table tr td.highlighted[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.highlighted:focus,
|
||||||
|
.datepicker table tr td.highlighted.disabled.focus,
|
||||||
|
.datepicker table tr td.highlighted[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.highlighted.focus {
|
||||||
|
background-color: #d9edf7;
|
||||||
|
border-color: #85c5e5;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted.focused {
|
||||||
|
background: #afd9ee;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.highlighted.disabled,
|
||||||
|
.datepicker table tr td.highlighted.disabled:active {
|
||||||
|
background: #d9edf7;
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffdb99;
|
||||||
|
border-color: #ffb733;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today:focus,
|
||||||
|
.datepicker table tr td.today.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffc966;
|
||||||
|
border-color: #b37400;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today:hover {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffc966;
|
||||||
|
border-color: #f59e00;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today:active,
|
||||||
|
.datepicker table tr td.today.active {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffc966;
|
||||||
|
border-color: #f59e00;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today:active:hover,
|
||||||
|
.datepicker table tr td.today.active:hover,
|
||||||
|
.datepicker table tr td.today:active:focus,
|
||||||
|
.datepicker table tr td.today.active:focus,
|
||||||
|
.datepicker table tr td.today:active.focus,
|
||||||
|
.datepicker table tr td.today.active.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #ffbc42;
|
||||||
|
border-color: #b37400;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today.disabled:hover,
|
||||||
|
.datepicker table tr td.today[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.today:hover,
|
||||||
|
.datepicker table tr td.today.disabled:focus,
|
||||||
|
.datepicker table tr td.today[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.today:focus,
|
||||||
|
.datepicker table tr td.today.disabled.focus,
|
||||||
|
.datepicker table tr td.today[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.today.focus {
|
||||||
|
background-color: #ffdb99;
|
||||||
|
border-color: #ffb733;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today.focused {
|
||||||
|
background: #ffc966;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.today.disabled,
|
||||||
|
.datepicker table tr td.today.disabled:active {
|
||||||
|
background: #ffdb99;
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #eeeeee;
|
||||||
|
border-color: #bbbbbb;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range:focus,
|
||||||
|
.datepicker table tr td.range.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #d5d5d5;
|
||||||
|
border-color: #7c7c7c;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range:hover {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #d5d5d5;
|
||||||
|
border-color: #9d9d9d;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range:active,
|
||||||
|
.datepicker table tr td.range.active {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #d5d5d5;
|
||||||
|
border-color: #9d9d9d;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range:active:hover,
|
||||||
|
.datepicker table tr td.range.active:hover,
|
||||||
|
.datepicker table tr td.range:active:focus,
|
||||||
|
.datepicker table tr td.range.active:focus,
|
||||||
|
.datepicker table tr td.range:active.focus,
|
||||||
|
.datepicker table tr td.range.active.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #c3c3c3;
|
||||||
|
border-color: #7c7c7c;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.disabled:hover,
|
||||||
|
.datepicker table tr td.range[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range:hover,
|
||||||
|
.datepicker table tr td.range.disabled:focus,
|
||||||
|
.datepicker table tr td.range[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range:focus,
|
||||||
|
.datepicker table tr td.range.disabled.focus,
|
||||||
|
.datepicker table tr td.range[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.focus {
|
||||||
|
background-color: #eeeeee;
|
||||||
|
border-color: #bbbbbb;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.focused {
|
||||||
|
background: #d5d5d5;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.disabled,
|
||||||
|
.datepicker table tr td.range.disabled:active {
|
||||||
|
background: #eeeeee;
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #e4eef3;
|
||||||
|
border-color: #9dc1d3;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted:focus,
|
||||||
|
.datepicker table tr td.range.highlighted.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #c1d7e3;
|
||||||
|
border-color: #4b88a6;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted:hover {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #c1d7e3;
|
||||||
|
border-color: #73a6c0;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted:active,
|
||||||
|
.datepicker table tr td.range.highlighted.active {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #c1d7e3;
|
||||||
|
border-color: #73a6c0;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted:active:hover,
|
||||||
|
.datepicker table tr td.range.highlighted.active:hover,
|
||||||
|
.datepicker table tr td.range.highlighted:active:focus,
|
||||||
|
.datepicker table tr td.range.highlighted.active:focus,
|
||||||
|
.datepicker table tr td.range.highlighted:active.focus,
|
||||||
|
.datepicker table tr td.range.highlighted.active.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #a8c8d8;
|
||||||
|
border-color: #4b88a6;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted.disabled:hover,
|
||||||
|
.datepicker table tr td.range.highlighted[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.highlighted:hover,
|
||||||
|
.datepicker table tr td.range.highlighted.disabled:focus,
|
||||||
|
.datepicker table tr td.range.highlighted[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.highlighted:focus,
|
||||||
|
.datepicker table tr td.range.highlighted.disabled.focus,
|
||||||
|
.datepicker table tr td.range.highlighted[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.highlighted.focus {
|
||||||
|
background-color: #e4eef3;
|
||||||
|
border-color: #9dc1d3;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted.focused {
|
||||||
|
background: #c1d7e3;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.highlighted.disabled,
|
||||||
|
.datepicker table tr td.range.highlighted.disabled:active {
|
||||||
|
background: #e4eef3;
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #f7ca77;
|
||||||
|
border-color: #f1a417;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today:focus,
|
||||||
|
.datepicker table tr td.range.today.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #f4b747;
|
||||||
|
border-color: #815608;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today:hover {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #f4b747;
|
||||||
|
border-color: #bf800c;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today:active,
|
||||||
|
.datepicker table tr td.range.today.active {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #f4b747;
|
||||||
|
border-color: #bf800c;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today:active:hover,
|
||||||
|
.datepicker table tr td.range.today.active:hover,
|
||||||
|
.datepicker table tr td.range.today:active:focus,
|
||||||
|
.datepicker table tr td.range.today.active:focus,
|
||||||
|
.datepicker table tr td.range.today:active.focus,
|
||||||
|
.datepicker table tr td.range.today.active.focus {
|
||||||
|
color: #000000;
|
||||||
|
background-color: #f2aa25;
|
||||||
|
border-color: #815608;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today.disabled:hover,
|
||||||
|
.datepicker table tr td.range.today[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.today:hover,
|
||||||
|
.datepicker table tr td.range.today.disabled:focus,
|
||||||
|
.datepicker table tr td.range.today[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.today:focus,
|
||||||
|
.datepicker table tr td.range.today.disabled.focus,
|
||||||
|
.datepicker table tr td.range.today[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.range.today.focus {
|
||||||
|
background-color: #f7ca77;
|
||||||
|
border-color: #f1a417;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.range.today.disabled,
|
||||||
|
.datepicker table tr td.range.today.disabled:active {
|
||||||
|
background: #f7ca77;
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected,
|
||||||
|
.datepicker table tr td.selected.highlighted {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #777777;
|
||||||
|
border-color: #555555;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected:focus,
|
||||||
|
.datepicker table tr td.selected.highlighted:focus,
|
||||||
|
.datepicker table tr td.selected.focus,
|
||||||
|
.datepicker table tr td.selected.highlighted.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #5e5e5e;
|
||||||
|
border-color: #161616;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected:hover,
|
||||||
|
.datepicker table tr td.selected.highlighted:hover {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #5e5e5e;
|
||||||
|
border-color: #373737;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected:active,
|
||||||
|
.datepicker table tr td.selected.highlighted:active,
|
||||||
|
.datepicker table tr td.selected.active,
|
||||||
|
.datepicker table tr td.selected.highlighted.active {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #5e5e5e;
|
||||||
|
border-color: #373737;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected:active:hover,
|
||||||
|
.datepicker table tr td.selected.highlighted:active:hover,
|
||||||
|
.datepicker table tr td.selected.active:hover,
|
||||||
|
.datepicker table tr td.selected.highlighted.active:hover,
|
||||||
|
.datepicker table tr td.selected:active:focus,
|
||||||
|
.datepicker table tr td.selected.highlighted:active:focus,
|
||||||
|
.datepicker table tr td.selected.active:focus,
|
||||||
|
.datepicker table tr td.selected.highlighted.active:focus,
|
||||||
|
.datepicker table tr td.selected:active.focus,
|
||||||
|
.datepicker table tr td.selected.highlighted:active.focus,
|
||||||
|
.datepicker table tr td.selected.active.focus,
|
||||||
|
.datepicker table tr td.selected.highlighted.active.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #4c4c4c;
|
||||||
|
border-color: #161616;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.selected.disabled:hover,
|
||||||
|
.datepicker table tr td.selected.highlighted.disabled:hover,
|
||||||
|
.datepicker table tr td.selected[disabled]:hover,
|
||||||
|
.datepicker table tr td.selected.highlighted[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected.highlighted:hover,
|
||||||
|
.datepicker table tr td.selected.disabled:focus,
|
||||||
|
.datepicker table tr td.selected.highlighted.disabled:focus,
|
||||||
|
.datepicker table tr td.selected[disabled]:focus,
|
||||||
|
.datepicker table tr td.selected.highlighted[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected.highlighted:focus,
|
||||||
|
.datepicker table tr td.selected.disabled.focus,
|
||||||
|
.datepicker table tr td.selected.highlighted.disabled.focus,
|
||||||
|
.datepicker table tr td.selected[disabled].focus,
|
||||||
|
.datepicker table tr td.selected.highlighted[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected.focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.selected.highlighted.focus {
|
||||||
|
background-color: #777777;
|
||||||
|
border-color: #555555;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active,
|
||||||
|
.datepicker table tr td.active.highlighted {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #337ab7;
|
||||||
|
border-color: #2e6da4;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active:focus,
|
||||||
|
.datepicker table tr td.active.highlighted:focus,
|
||||||
|
.datepicker table tr td.active.focus,
|
||||||
|
.datepicker table tr td.active.highlighted.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #286090;
|
||||||
|
border-color: #122b40;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active:hover,
|
||||||
|
.datepicker table tr td.active.highlighted:hover {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #286090;
|
||||||
|
border-color: #204d74;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active:active,
|
||||||
|
.datepicker table tr td.active.highlighted:active,
|
||||||
|
.datepicker table tr td.active.active,
|
||||||
|
.datepicker table tr td.active.highlighted.active {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #33cabb;
|
||||||
|
border-color: #33cabb;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active:active:hover,
|
||||||
|
.datepicker table tr td.active.highlighted:active:hover,
|
||||||
|
.datepicker table tr td.active.active:hover,
|
||||||
|
.datepicker table tr td.active.highlighted.active:hover,
|
||||||
|
.datepicker table tr td.active:active:focus,
|
||||||
|
.datepicker table tr td.active.highlighted:active:focus,
|
||||||
|
.datepicker table tr td.active.active:focus,
|
||||||
|
.datepicker table tr td.active.highlighted.active:focus,
|
||||||
|
.datepicker table tr td.active:active.focus,
|
||||||
|
.datepicker table tr td.active.highlighted:active.focus,
|
||||||
|
.datepicker table tr td.active.active.focus,
|
||||||
|
.datepicker table tr td.active.highlighted.active.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #31c2b3;
|
||||||
|
border-color: #31c2b3;
|
||||||
|
}
|
||||||
|
.datepicker table tr td.active.disabled:hover,
|
||||||
|
.datepicker table tr td.active.highlighted.disabled:hover,
|
||||||
|
.datepicker table tr td.active[disabled]:hover,
|
||||||
|
.datepicker table tr td.active.highlighted[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active.highlighted:hover,
|
||||||
|
.datepicker table tr td.active.disabled:focus,
|
||||||
|
.datepicker table tr td.active.highlighted.disabled:focus,
|
||||||
|
.datepicker table tr td.active[disabled]:focus,
|
||||||
|
.datepicker table tr td.active.highlighted[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active.highlighted:focus,
|
||||||
|
.datepicker table tr td.active.disabled.focus,
|
||||||
|
.datepicker table tr td.active.highlighted.disabled.focus,
|
||||||
|
.datepicker table tr td.active[disabled].focus,
|
||||||
|
.datepicker table tr td.active.highlighted[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active.focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td.active.highlighted.focus {
|
||||||
|
background-color: #337ab7;
|
||||||
|
border-color: #2e6da4;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span {
|
||||||
|
display: block;
|
||||||
|
width: 23%;
|
||||||
|
height: 54px;
|
||||||
|
line-height: 54px;
|
||||||
|
float: left;
|
||||||
|
margin: 1%;
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span:hover,
|
||||||
|
.datepicker table tr td span.focused {
|
||||||
|
background: #eeeeee;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.disabled,
|
||||||
|
.datepicker table tr td span.disabled:hover {
|
||||||
|
background: none;
|
||||||
|
color: #777777;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active,
|
||||||
|
.datepicker table tr td span.active:hover,
|
||||||
|
.datepicker table tr td span.active.disabled,
|
||||||
|
.datepicker table tr td span.active.disabled:hover {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #337ab7;
|
||||||
|
border-color: #2e6da4;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active:focus,
|
||||||
|
.datepicker table tr td span.active:hover:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:focus,
|
||||||
|
.datepicker table tr td span.active.focus,
|
||||||
|
.datepicker table tr td span.active:hover.focus,
|
||||||
|
.datepicker table tr td span.active.disabled.focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #286090;
|
||||||
|
border-color: #122b40;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active:hover,
|
||||||
|
.datepicker table tr td span.active:hover:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:hover {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #286090;
|
||||||
|
border-color: #204d74;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active:active,
|
||||||
|
.datepicker table tr td span.active:hover:active,
|
||||||
|
.datepicker table tr td span.active.disabled:active,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:active,
|
||||||
|
.datepicker table tr td span.active.active,
|
||||||
|
.datepicker table tr td span.active:hover.active,
|
||||||
|
.datepicker table tr td span.active.disabled.active,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.active {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #33cabb;
|
||||||
|
border-color: #33cabb;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active:active:hover,
|
||||||
|
.datepicker table tr td span.active:hover:active:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:active:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:active:hover,
|
||||||
|
.datepicker table tr td span.active.active:hover,
|
||||||
|
.datepicker table tr td span.active:hover.active:hover,
|
||||||
|
.datepicker table tr td span.active.disabled.active:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.active:hover,
|
||||||
|
.datepicker table tr td span.active:active:focus,
|
||||||
|
.datepicker table tr td span.active:hover:active:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:active:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:active:focus,
|
||||||
|
.datepicker table tr td span.active.active:focus,
|
||||||
|
.datepicker table tr td span.active:hover.active:focus,
|
||||||
|
.datepicker table tr td span.active.disabled.active:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.active:focus,
|
||||||
|
.datepicker table tr td span.active:active.focus,
|
||||||
|
.datepicker table tr td span.active:hover:active.focus,
|
||||||
|
.datepicker table tr td span.active.disabled:active.focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover:active.focus,
|
||||||
|
.datepicker table tr td span.active.active.focus,
|
||||||
|
.datepicker table tr td span.active:hover.active.focus,
|
||||||
|
.datepicker table tr td span.active.disabled.active.focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.active.focus {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #52d3c7;
|
||||||
|
border-color: #52d3c7;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.active.disabled:hover,
|
||||||
|
.datepicker table tr td span.active:hover.disabled:hover,
|
||||||
|
.datepicker table tr td span.active.disabled.disabled:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.disabled:hover,
|
||||||
|
.datepicker table tr td span.active[disabled]:hover,
|
||||||
|
.datepicker table tr td span.active:hover[disabled]:hover,
|
||||||
|
.datepicker table tr td span.active.disabled[disabled]:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:hover[disabled]:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active:hover:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled:hover,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,
|
||||||
|
.datepicker table tr td span.active.disabled:focus,
|
||||||
|
.datepicker table tr td span.active:hover.disabled:focus,
|
||||||
|
.datepicker table tr td span.active.disabled.disabled:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.disabled:focus,
|
||||||
|
.datepicker table tr td span.active[disabled]:focus,
|
||||||
|
.datepicker table tr td span.active:hover[disabled]:focus,
|
||||||
|
.datepicker table tr td span.active.disabled[disabled]:focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover[disabled]:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active:hover:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled:focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,
|
||||||
|
.datepicker table tr td span.active.disabled.focus,
|
||||||
|
.datepicker table tr td span.active:hover.disabled.focus,
|
||||||
|
.datepicker table tr td span.active.disabled.disabled.focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover.disabled.focus,
|
||||||
|
.datepicker table tr td span.active[disabled].focus,
|
||||||
|
.datepicker table tr td span.active:hover[disabled].focus,
|
||||||
|
.datepicker table tr td span.active.disabled[disabled].focus,
|
||||||
|
.datepicker table tr td span.active.disabled:hover[disabled].focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active:hover.focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled.focus,
|
||||||
|
fieldset[disabled] .datepicker table tr td span.active.disabled:hover.focus {
|
||||||
|
background-color: #337ab7;
|
||||||
|
border-color: #2e6da4;
|
||||||
|
}
|
||||||
|
.datepicker table tr td span.old,
|
||||||
|
.datepicker table tr td span.new {
|
||||||
|
color: #777777;
|
||||||
|
}
|
||||||
|
.datepicker .datepicker-switch {
|
||||||
|
width: 145px;
|
||||||
|
}
|
||||||
|
.datepicker .datepicker-switch,
|
||||||
|
.datepicker .prev,
|
||||||
|
.datepicker .next,
|
||||||
|
.datepicker tfoot tr th {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.datepicker .datepicker-switch:hover,
|
||||||
|
.datepicker .prev:hover,
|
||||||
|
.datepicker .next:hover,
|
||||||
|
.datepicker tfoot tr th:hover {
|
||||||
|
background: #eeeeee;
|
||||||
|
}
|
||||||
|
.datepicker .cw {
|
||||||
|
font-size: 10px;
|
||||||
|
width: 12px;
|
||||||
|
padding: 0 2px 0 5px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.input-group.date .input-group-addon {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.input-daterange {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.input-daterange input {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.input-daterange input:first-child {
|
||||||
|
border-radius: 3px 0 0 3px;
|
||||||
|
}
|
||||||
|
.input-daterange input:last-child {
|
||||||
|
border-radius: 0 3px 3px 0;
|
||||||
|
}
|
||||||
|
.input-daterange .input-group-addon {
|
||||||
|
width: auto;
|
||||||
|
min-width: 16px;
|
||||||
|
padding: 4px 5px;
|
||||||
|
line-height: 1.42857143;
|
||||||
|
text-shadow: 0 1px 0 #fff;
|
||||||
|
border-width: 1px 0;
|
||||||
|
margin-left: -5px;
|
||||||
|
margin-right: -5px;
|
||||||
|
}
|
||||||
|
/*# sourceMappingURL=bootstrap-datepicker3.css.map */
|
@ -0,0 +1 @@
|
|||||||
|
{"version":3,"sources":["less/datepicker3.less","build/build3.less"],"names":[],"mappings":"AAAA,YACC,cAAA,IAIA,UAAA,IAHC,mBACA,MAAA,MAGC,2BACD,UAAA,IACY,4CACX,MAAA,MAGD,qBACA,IAAA,EACA,KAAA,EACA,QAAA,IACC,4BACA,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,gBACA,WAAA,EACA,oBAAA,eACA,SAAA,SAEA,2BACA,QAAA,GACA,QAAA,aACA,YAAA,IAAA,MAAA,YACA,aAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,KACA,WAAA,EACA,SAAA,SAEuB,mDAAY,KAAA,IACZ,kDAAY,KAAA,IACX,oDAAW,MAAA,IACX,mDAAW,MAAA,IACV,qDAAU,IAAA,KACV,oDAAU,IAAA,KACb,kDACtB,OAAA,KACA,cAAA,EACA,WAAA,IAAA,MAAA,gBAEsB,iDACtB,OAAA,KACA,cAAA,EACA,WAAA,IAAA,MAAA,KAGF,gBACC,QAAA,KAED,kBACC,OAAA,EACA,sBAAA,KACA,oBAAA,KACA,mBAAA,KACA,iBAAA,KACA,gBAAA,KACA,YAAA,KAEC,wBAAI,wBACH,WAAA,OACA,MAAA,KACA,OAAA,KACA,cAAA,IACA,OAAA,KAOF,uCAAI,uCACH,iBAAA,YAKA,4BADA,4BAEA,MAAA,KAEI,kCACJ,gCACA,WAAA,KACA,OAAA,QAEA,iCACS,uCACT,WAAA,IACA,MAAA,KACA,OAAA,QAEA,oCC9DD,MAAA,KACA,iBAAA,QACA,aAAA,QD+DC,cAAA,EC5DA,0CADA,0CAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,0CACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,2CADA,2CAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,iDADA,iDADA,iDAEA,iDADA,iDADA,iDAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,mDADA,mDADA,mDAEA,oDADA,oDADA,oDAEA,6DADA,6DADA,6DAGC,iBAAA,QACI,aAAA,QD+BN,4CACA,WAAA,QAGA,6CACS,oDACT,WAAA,QACA,MAAA,KAGD,8BC7ED,MAAA,KACA,iBAAA,QACA,aAAA,QAGC,oCADA,oCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,oCACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,qCADA,qCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,2CADA,2CADA,2CAEA,2CADA,2CADA,2CAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,6CADA,6CADA,6CAEA,8CADA,8CADA,8CAEA,uDADA,uDADA,uDAGC,iBAAA,QACI,aAAA,QD6CN,sCACA,WAAA,QAGA,uCACS,8CACT,WAAA,QACA,MAAA,KAGD,8BC3FD,MAAA,KACA,iBAAA,KACA,aAAA,KD4FC,cAAA,ECzFA,oCADA,oCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,oCACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,qCADA,qCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,2CADA,2CADA,2CAEA,2CADA,2CADA,2CAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,6CADA,6CADA,6CAEA,8CADA,8CADA,8CAEA,uDADA,uDADA,uDAGC,iBAAA,KACI,aAAA,KD4DN,sCACA,WAAA,QAGA,uCACS,8CACT,WAAA,KACA,MAAA,KAGK,0CC1GP,MAAA,KACA,iBAAA,QACA,aAAA,QAGC,gDADA,gDAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,gDACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,iDADA,iDAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,uDADA,uDADA,uDAEA,uDADA,uDADA,uDAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,yDADA,yDADA,yDAEA,0DADA,0DADA,0DAEA,mEADA,mEADA,mEAGC,iBAAA,QACI,aAAA,QD0EN,kDACA,WAAA,QAGA,mDACS,0DACT,WAAA,QACA,MAAA,KAGK,oCCxHP,MAAA,KACA,iBAAA,QACA,aAAA,QAGC,0CADA,0CAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,0CACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,2CADA,2CAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,iDADA,iDADA,iDAEA,iDADA,iDADA,iDAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,mDADA,mDADA,mDAEA,oDADA,oDADA,oDAEA,6DADA,6DADA,6DAGC,iBAAA,QACI,aAAA,QDwFN,6CACS,oDACT,WAAA,QACA,MAAA,KAGD,iCACS,6CCnIV,MAAA,KACA,iBAAA,KACA,aAAA,KDmIC,YAAA,EAAA,KAAA,EAAA,gBChIA,uCAAA,mDADA,mDAAA,uCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,mDAAA,uCACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,wCAAA,oDADA,oDAAA,wCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,8CADA,8CADA,8CAEA,0DADA,0DADA,0DAEA,0DADA,0DADA,0DAEA,8CADA,8CADA,8CAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,gDADA,gDADA,gDAEA,4DADA,4DADA,4DAEA,6DADA,6DADA,6DAEA,iDADA,iDADA,iDAEA,0DAAA,sEADA,sEADA,sEACA,0DADA,0DAGC,iBAAA,KACI,aAAA,KDmGP,+BACO,2CCxIR,MAAA,KACA,iBAAA,QACA,aAAA,QDwIC,YAAA,EAAA,KAAA,EAAA,gBCrIA,qCAAA,iDADA,iDAAA,qCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,iDAAA,qCACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,sCAAA,kDADA,kDAAA,sCAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,4CADA,4CADA,4CAEA,wDADA,wDADA,wDAEA,wDADA,wDADA,wDAEA,4CADA,4CADA,4CAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,8CADA,8CADA,8CAEA,0DADA,0DADA,0DAEA,2DADA,2DADA,2DAEA,+CADA,+CADA,+CAEA,wDAAA,oEADA,oEADA,oEACA,wDADA,wDAGC,iBAAA,QACI,aAAA,QDwGR,6BACC,QAAA,MACA,MAAA,IACA,OAAA,KACA,YAAA,KACA,MAAA,KACA,OAAA,GACA,OAAA,QACA,cAAA,IAEC,qCADA,mCAEA,WAAA,KAEA,sCACS,4CACT,WAAA,IACA,MAAA,KACA,OAAA,QAEA,oCAEO,6CACS,mDAFT,0CChKT,MAAA,KACA,iBAAA,QACA,aAAA,QDkKE,YAAA,EAAA,KAAA,EAAA,gBC/JD,mDADA,mDACA,yDADA,yDACA,0CADA,0CACA,gDADA,gDAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAEL,mDAAA,yDAAA,0CAAA,gDACC,MAAA,KACA,iBAAA,QACI,aAAA,QAGL,2CAAA,oDADA,oDACA,0DADA,0DAAA,2CACA,iDADA,iDAEC,MAAA,KACA,iBAAA,QACI,aAAA,QAIH,iDADA,iDADA,iDAEA,0DADA,0DADA,0DAEA,0DADA,0DADA,0DAEA,gEADA,gEADA,gEAEA,gEADA,gEADA,gEAEA,iDADA,iDADA,iDAEA,uDADA,uDADA,uDAEA,uDADA,uDADA,uDAGC,MAAA,KACA,iBAAA,QACI,aAAA,QAQL,4DADA,4DADA,4DAEA,mDADA,mDADA,mDAEA,kEADA,kEADA,kEAEA,mEADA,mEADA,mEAEA,6DADA,6DADA,6DAEA,yDADA,yDADA,yDAEA,0DADA,0DADA,0DAEA,oDADA,oDADA,oDAEA,sEADA,sEADA,sEAEA,4EADA,4EADA,4EAEA,6DADA,6DADA,6DAEA,mEADA,mEADA,mEAGC,iBAAA,QACI,aAAA,QDmIN,iCADA,iCAEA,MAAA,KAKH,+BACC,MAAA,MAGD,+BAEA,kBADA,kBAES,wBACR,OAAA,QACC,qCAAA,wBAAA,wBAAA,8BACA,WAAA,KAKF,gBACC,UAAA,KACA,MAAA,KACA,QAAA,EAAA,IAAA,EAAA,IACA,eAAA,OAGgB,qCACjB,OAAA,QAED,iBACC,MAAA,KACA,uBACC,WAAA,OAEI,mCACJ,cAAA,IAAA,EAAA,EAAA,IAEI,kCACJ,cAAA,EAAA,IAAA,IAAA,EAED,oCACC,MAAA,KACA,UAAA,KACA,QAAA,IAAA,IACA,YAAA,WACA,YAAA,EAAA,IAAA,EAAA,KACA,aAAA,IAAA,EACA,YAAA,KACA,aAAA"}
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.ar={days:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت","الأحد"],daysShort:["أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت","أحد"],daysMin:["ح","ن","ث","ع","خ","ج","س","ح"],months:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],monthsShort:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],today:"هذا اليوم",rtl:!0}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.bs={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],daysMin:["N","Po","U","Sr","Č","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.ca={days:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],daysShort:["Diu","Dil","Dmt","Dmc","Dij","Div","Dis"],daysMin:["dg","dl","dt","dc","dj","dv","ds"],months:["Gener","Febrer","Març","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],monthsShort:["Gen","Feb","Mar","Abr","Mai","Jun","Jul","Ago","Set","Oct","Nov","Des"],today:"Avui",monthsTitle:"Mesos",clear:"Esborrar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.cs={days:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota"],daysShort:["Ned","Pon","Úte","Stř","Čtv","Pát","Sob"],daysMin:["Ne","Po","Út","St","Čt","Pá","So"],months:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],monthsShort:["Led","Úno","Bře","Dub","Kvě","Čer","Čnc","Srp","Zář","Říj","Lis","Pro"],today:"Dnes",clear:"Vymazat",weekStart:1,format:"dd.m.yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.cy={days:["Sul","Llun","Mawrth","Mercher","Iau","Gwener","Sadwrn"],daysShort:["Sul","Llu","Maw","Mer","Iau","Gwe","Sad"],daysMin:["Su","Ll","Ma","Me","Ia","Gwe","Sa"],months:["Ionawr","Chewfror","Mawrth","Ebrill","Mai","Mehefin","Gorfennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"],monthsShort:["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tach","Rha"],today:"Heddiw"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.da={days:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],daysShort:["søn","man","tir","ons","tor","fre","lør"],daysMin:["sø","ma","ti","on","to","fr","lø"],months:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],monthsShort:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],today:"I Dag",clear:"Nulstil"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",monthsTitle:"Monate",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates["en-AU"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"d/mm/yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates["en-GB"]={days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",monthsTitle:"Months",clear:"Clear",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.eo={days:["dimanĉo","lundo","mardo","merkredo","ĵaŭdo","vendredo","sabato"],daysShort:["dim.","lun.","mar.","mer.","ĵaŭ.","ven.","sam."],daysMin:["d","l","ma","me","ĵ","v","s"],months:["januaro","februaro","marto","aprilo","majo","junio","julio","aŭgusto","septembro","oktobro","novembro","decembro"],monthsShort:["jan.","feb.","mar.","apr.","majo","jun.","jul.","aŭg.","sep.","okt.","nov.","dec."],today:"Hodiaŭ",clear:"Nuligi",weekStart:1,format:"yyyy-mm-dd"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy",monthsTitle:"Meses",clear:"Borrar",weekStart:1,format:"dd/mm/yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.et={days:["Pühapäev","Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev"],daysShort:["Pühap","Esmasp","Teisip","Kolmap","Neljap","Reede","Laup"],daysMin:["P","E","T","K","N","R","L"],months:["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],monthsShort:["Jaan","Veebr","Märts","Apr","Mai","Juuni","Juuli","Aug","Sept","Okt","Nov","Dets"],today:"Täna",clear:"Tühjenda",weekStart:1,format:"dd.mm.yyyy"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.eu={days:["Igandea","Astelehena","Asteartea","Asteazkena","Osteguna","Ostirala","Larunbata"],daysShort:["Ig","Al","Ar","Az","Og","Ol","Lr"],daysMin:["Ig","Al","Ar","Az","Og","Ol","Lr"],months:["Urtarrila","Otsaila","Martxoa","Apirila","Maiatza","Ekaina","Uztaila","Abuztua","Iraila","Urria","Azaroa","Abendua"],monthsShort:["Urt","Ots","Mar","Api","Mai","Eka","Uzt","Abu","Ira","Urr","Aza","Abe"],today:"Gaur"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.fa={days:["یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه","یکشنبه"],daysShort:["یک","دو","سه","چهار","پنج","جمعه","شنبه","یک"],daysMin:["ی","د","س","چ","پ","ج","ش","ی"],months:["ژانویه","فوریه","مارس","آوریل","مه","ژوئن","ژوئیه","اوت","سپتامبر","اکتبر","نوامبر","دسامبر"],monthsShort:["ژان","فور","مار","آور","مه","ژون","ژوی","اوت","سپت","اکت","نوا","دسا"],today:"امروز",clear:"پاک کن",weekStart:1,format:"yyyy/mm/dd"}}(jQuery);
|
@ -0,0 +1 @@
|
|||||||
|
!function(a){a.fn.datepicker.dates.fi={days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],daysShort:["sun","maa","tii","kes","tor","per","lau"],daysMin:["su","ma","ti","ke","to","pe","la"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],monthsShort:["tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mar","jou"],today:"tänään",clear:"Tyhjennä",weekStart:1,format:"d.m.yyyy"}}(jQuery);
|