升级springboot版本依赖到2.0,修复部分文件内容乱码,加入配置文件为properties
This commit is contained in:
@@ -1,14 +1,14 @@
|
|||||||
var $lang={
|
var $lang={
|
||||||
errAlertMsg: "不合法的日期格式或者日期超出限定范围,需要撤销吗?",
|
errAlertMsg: "不合法的日期格式或者日期超出限定范围,需要撤销吗?",
|
||||||
aWeekStr: ["周","日","一","二","三","四","五","六"],
|
aWeekStr: ["周","日","一","二","三","四","五","六"],
|
||||||
aLongWeekStr:["周","星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
|
aLongWeekStr:["周","星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
|
||||||
aMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一","十二"],
|
aMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一","十二"],
|
||||||
aLongMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
|
aLongMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
|
||||||
clearStr: "清空",
|
clearStr: "清空",
|
||||||
todayStr: "今天",
|
todayStr: "今天",
|
||||||
okStr: "确定",
|
okStr: "确定",
|
||||||
updateStr: "确定",
|
updateStr: "确定",
|
||||||
timeStr: "时间",
|
timeStr: "时间",
|
||||||
quickStr: "快速选择",
|
quickStr: "快速选择",
|
||||||
err_1: '最小日期不能大于最大日期!'
|
err_1: '最小日期不能大于最大日期!'
|
||||||
}
|
}
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
var $lang={
|
var $lang={
|
||||||
errAlertMsg: "不合法的日期格式或者日期超出限定範圍,需要撤銷嗎?",
|
errAlertMsg: "不合法的日期格式或者日期超出限定範圍,需要撤銷嗎?",
|
||||||
aWeekStr: ["周","日","一","二","三","四","五","六"],
|
aWeekStr: ["周","日","一","二","三","四","五","六"],
|
||||||
aLongWeekStr:["周","星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
|
aLongWeekStr:["周","星期日","星期一","星期二","星期三","星期四","星期五","星期六"],
|
||||||
aMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一","十二"],
|
aMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一","十二"],
|
||||||
aLongMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
|
aLongMonStr: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
|
||||||
clearStr: "清空",
|
clearStr: "清空",
|
||||||
todayStr: "今天",
|
todayStr: "今天",
|
||||||
okStr: "確定",
|
okStr: "確定",
|
||||||
updateStr: "確定",
|
updateStr: "確定",
|
||||||
timeStr: "時間",
|
timeStr: "時間",
|
||||||
quickStr: "快速選擇",
|
quickStr: "快速選擇",
|
||||||
err_1: '最小日期不能大於最大日期!'
|
err_1: '最小日期不能大於最大日期!'
|
||||||
}
|
}
|
||||||
@@ -1,3 +1 @@
|
|||||||
正式发布时,可将此文件夹删去
|
正式发布时,可将此文件夹删去
|
||||||
|
|
||||||
|
|
||||||
@@ -1,267 +1,267 @@
|
|||||||
/*
|
/*
|
||||||
* My97 DatePicker 4.7
|
* My97 DatePicker 4.7
|
||||||
* 皮肤名称:default
|
* 皮肤名称:default
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* 日期选择容器 DIV */
|
/* 日期选择容器 DIV */
|
||||||
.WdateDiv{
|
.WdateDiv{
|
||||||
width:180px;
|
width:180px;
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
border:#bbb 1px solid;
|
border:#bbb 1px solid;
|
||||||
padding:2px;
|
padding:2px;
|
||||||
}
|
}
|
||||||
/* 双月日历的宽度 */
|
/* 双月日历的宽度 */
|
||||||
.WdateDiv2{
|
.WdateDiv2{
|
||||||
width:360px;
|
width:360px;
|
||||||
}
|
}
|
||||||
.WdateDiv *{font-size:9pt;}
|
.WdateDiv *{font-size:9pt;}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 导航图标 全部是A标签
|
* 导航图标 全部是A标签
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv .NavImg a{
|
.WdateDiv .NavImg a{
|
||||||
display:block;
|
display:block;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
height:16px;
|
height:16px;
|
||||||
width:16px;
|
width:16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.WdateDiv .NavImgll a{
|
.WdateDiv .NavImgll a{
|
||||||
float:left;
|
float:left;
|
||||||
background:transparent url(img.gif) no-repeat scroll 0 0;
|
background:transparent url(img.gif) no-repeat scroll 0 0;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgl a{
|
.WdateDiv .NavImgl a{
|
||||||
float:left;
|
float:left;
|
||||||
background:transparent url(img.gif) no-repeat scroll -16px 0;
|
background:transparent url(img.gif) no-repeat scroll -16px 0;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgr a{
|
.WdateDiv .NavImgr a{
|
||||||
float:right;
|
float:right;
|
||||||
background:transparent url(img.gif) no-repeat scroll -32px 0;
|
background:transparent url(img.gif) no-repeat scroll -32px 0;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgrr a{
|
.WdateDiv .NavImgrr a{
|
||||||
float:right;
|
float:right;
|
||||||
background:transparent url(img.gif) no-repeat scroll -48px 0;
|
background:transparent url(img.gif) no-repeat scroll -48px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 年份月份相关
|
* 年份月份相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 年份月份栏 DIV */
|
/* 年份月份栏 DIV */
|
||||||
.WdateDiv #dpTitle{
|
.WdateDiv #dpTitle{
|
||||||
height:24px;
|
height:24px;
|
||||||
margin-bottom:2px;
|
margin-bottom:2px;
|
||||||
padding:1px;
|
padding:1px;
|
||||||
}
|
}
|
||||||
/* 年份月份输入框 INPUT */
|
/* 年份月份输入框 INPUT */
|
||||||
.WdateDiv .yminput{
|
.WdateDiv .yminput{
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
height:20px;
|
height:20px;
|
||||||
border:0px;
|
border:0px;
|
||||||
width:50px;
|
width:50px;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
/* 年份月份输入框获得焦点时的样式 INPUT */
|
/* 年份月份输入框获得焦点时的样式 INPUT */
|
||||||
.WdateDiv .yminputfocus{
|
.WdateDiv .yminputfocus{
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
height:20px;
|
height:20px;
|
||||||
color:blue;
|
color:blue;
|
||||||
border:#ccc 1px solid;
|
border:#ccc 1px solid;
|
||||||
width:50px;
|
width:50px;
|
||||||
}
|
}
|
||||||
/* 菜单选择框 DIV */
|
/* 菜单选择框 DIV */
|
||||||
.WdateDiv .menuSel{
|
.WdateDiv .menuSel{
|
||||||
z-index:1;
|
z-index:1;
|
||||||
position:absolute;
|
position:absolute;
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
border:#ccc 1px solid;
|
border:#ccc 1px solid;
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
/* 菜单的样式 TD */
|
/* 菜单的样式 TD */
|
||||||
.WdateDiv .menu{
|
.WdateDiv .menu{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#fff;
|
background-color:#fff;
|
||||||
}
|
}
|
||||||
/* 菜单的mouseover样式 TD */
|
/* 菜单的mouseover样式 TD */
|
||||||
.WdateDiv .menuOn{
|
.WdateDiv .menuOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#BEEBEE;
|
background-color:#BEEBEE;
|
||||||
}
|
}
|
||||||
/* 菜单无效时的样式 TD */
|
/* 菜单无效时的样式 TD */
|
||||||
.WdateDiv .invalidMenu{
|
.WdateDiv .invalidMenu{
|
||||||
color:#aaa;
|
color:#aaa;
|
||||||
}
|
}
|
||||||
/* 年选择框的偏移 DIV */
|
/* 年选择框的偏移 DIV */
|
||||||
.WdateDiv .YMenu{
|
.WdateDiv .YMenu{
|
||||||
margin-top:20px;
|
margin-top:20px;
|
||||||
|
|
||||||
}
|
}
|
||||||
/* 月选择框的偏移 DIV */
|
/* 月选择框的偏移 DIV */
|
||||||
.WdateDiv .MMenu{
|
.WdateDiv .MMenu{
|
||||||
margin-top:20px;
|
margin-top:20px;
|
||||||
*width:62px;
|
*width:62px;
|
||||||
}
|
}
|
||||||
/* 时选择框的位置 DIV */
|
/* 时选择框的位置 DIV */
|
||||||
.WdateDiv .hhMenu{
|
.WdateDiv .hhMenu{
|
||||||
margin-top:-90px;
|
margin-top:-90px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
/* 分选择框的位置 DIV */
|
/* 分选择框的位置 DIV */
|
||||||
.WdateDiv .mmMenu{
|
.WdateDiv .mmMenu{
|
||||||
margin-top:-46px;
|
margin-top:-46px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
/* 秒选择框的位置 DIV */
|
/* 秒选择框的位置 DIV */
|
||||||
.WdateDiv .ssMenu{
|
.WdateDiv .ssMenu{
|
||||||
margin-top:-24px;
|
margin-top:-24px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 周相关
|
* 周相关
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv .Wweek {
|
.WdateDiv .Wweek {
|
||||||
text-align:center;
|
text-align:center;
|
||||||
background:#DAF3F5;
|
background:#DAF3F5;
|
||||||
border-right:#BDEBEE 1px solid;
|
border-right:#BDEBEE 1px solid;
|
||||||
}
|
}
|
||||||
/****************************
|
/****************************
|
||||||
* 星期,日期相关
|
* 星期,日期相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 星期栏 TR */
|
/* 星期栏 TR */
|
||||||
.WdateDiv .MTitle{
|
.WdateDiv .MTitle{
|
||||||
background-color:#BDEBEE;
|
background-color:#BDEBEE;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable2{
|
.WdateDiv .WdayTable2{
|
||||||
border-collapse:collapse;
|
border-collapse:collapse;
|
||||||
border:#c5d9e8 1px solid;
|
border:#c5d9e8 1px solid;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable2 table{
|
.WdateDiv .WdayTable2 table{
|
||||||
border:0;
|
border:0;
|
||||||
}
|
}
|
||||||
/* 日期栏表格 TABLE */
|
/* 日期栏表格 TABLE */
|
||||||
.WdateDiv .WdayTable{
|
.WdateDiv .WdayTable{
|
||||||
line-height:20px;
|
line-height:20px;
|
||||||
border:#c5d9e8 1px solid;
|
border:#c5d9e8 1px solid;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable td{
|
.WdateDiv .WdayTable td{
|
||||||
text-align:center;
|
text-align:center;
|
||||||
}
|
}
|
||||||
/* 日期格的样式 TD */
|
/* 日期格的样式 TD */
|
||||||
.WdateDiv .Wday{
|
.WdateDiv .Wday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
/* 日期格的mouseover样式 TD */
|
/* 日期格的mouseover样式 TD */
|
||||||
.WdateDiv .WdayOn{
|
.WdateDiv .WdayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#C0EBEF;
|
background-color:#C0EBEF;
|
||||||
}
|
}
|
||||||
/* 周末日期格的样式 TD */
|
/* 周末日期格的样式 TD */
|
||||||
.WdateDiv .Wwday{
|
.WdateDiv .Wwday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:#FF2F2F;
|
color:#FF2F2F;
|
||||||
}
|
}
|
||||||
/* 周末日期格的mouseover样式 TD */
|
/* 周末日期格的mouseover样式 TD */
|
||||||
.WdateDiv .WwdayOn{
|
.WdateDiv .WwdayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:#000;
|
color:#000;
|
||||||
background-color:#C0EBEF;
|
background-color:#C0EBEF;
|
||||||
}
|
}
|
||||||
.WdateDiv .Wtoday{
|
.WdateDiv .Wtoday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:blue;
|
color:blue;
|
||||||
}
|
}
|
||||||
.WdateDiv .Wselday{
|
.WdateDiv .Wselday{
|
||||||
background-color:#A9E4E9;
|
background-color:#A9E4E9;
|
||||||
}
|
}
|
||||||
.WdateDiv .WspecialDay{
|
.WdateDiv .WspecialDay{
|
||||||
background-color:#66F4DF;
|
background-color:#66F4DF;
|
||||||
}
|
}
|
||||||
/* 其他月份的日期 */
|
/* 其他月份的日期 */
|
||||||
.WdateDiv .WotherDay{
|
.WdateDiv .WotherDay{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:#6A6AFF;
|
color:#6A6AFF;
|
||||||
}
|
}
|
||||||
/* 其他月份的日期mouseover样式 */
|
/* 其他月份的日期mouseover样式 */
|
||||||
.WdateDiv .WotherDayOn{
|
.WdateDiv .WotherDayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#C0EBEF;
|
background-color:#C0EBEF;
|
||||||
}
|
}
|
||||||
/* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
|
/* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
|
||||||
.WdateDiv .WinvalidDay{
|
.WdateDiv .WinvalidDay{
|
||||||
color:#aaa;
|
color:#aaa;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 时间相关
|
* 时间相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 时间栏 DIV */
|
/* 时间栏 DIV */
|
||||||
.WdateDiv #dpTime{
|
.WdateDiv #dpTime{
|
||||||
float:left;
|
float:left;
|
||||||
margin-top:3px;
|
margin-top:3px;
|
||||||
margin-right:30px;
|
margin-right:30px;
|
||||||
}
|
}
|
||||||
/* 时间文字 SPAN */
|
/* 时间文字 SPAN */
|
||||||
.WdateDiv #dpTime #dpTimeStr{
|
.WdateDiv #dpTime #dpTimeStr{
|
||||||
margin-left:1px;
|
margin-left:1px;
|
||||||
}
|
}
|
||||||
/* 时间输入框 INPUT */
|
/* 时间输入框 INPUT */
|
||||||
.WdateDiv #dpTime input{
|
.WdateDiv #dpTime input{
|
||||||
width:18px;
|
width:18px;
|
||||||
height:20px;
|
height:20px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
border:#ccc 1px solid;
|
border:#ccc 1px solid;
|
||||||
}
|
}
|
||||||
/* 时间 时 INPUT */
|
/* 时间 时 INPUT */
|
||||||
.WdateDiv #dpTime .tB{
|
.WdateDiv #dpTime .tB{
|
||||||
border-right:0px;
|
border-right:0px;
|
||||||
}
|
}
|
||||||
/* 时间 分和间隔符 ':' INPUT */
|
/* 时间 分和间隔符 ':' INPUT */
|
||||||
.WdateDiv #dpTime .tE{
|
.WdateDiv #dpTime .tE{
|
||||||
border-left:0;
|
border-left:0;
|
||||||
border-right:0;
|
border-right:0;
|
||||||
}
|
}
|
||||||
/* 时间 秒 INPUT */
|
/* 时间 秒 INPUT */
|
||||||
.WdateDiv #dpTime .tm{
|
.WdateDiv #dpTime .tm{
|
||||||
width:7px;
|
width:7px;
|
||||||
border-left:0;
|
border-left:0;
|
||||||
border-right:0;
|
border-right:0;
|
||||||
}
|
}
|
||||||
/* 时间右边的向上按钮 BUTTON */
|
/* 时间右边的向上按钮 BUTTON */
|
||||||
.WdateDiv #dpTime #dpTimeUp{
|
.WdateDiv #dpTime #dpTimeUp{
|
||||||
height:10px;
|
height:10px;
|
||||||
width:13px;
|
width:13px;
|
||||||
border:0px;
|
border:0px;
|
||||||
background:url(img.gif) no-repeat -32px -16px;
|
background:url(img.gif) no-repeat -32px -16px;
|
||||||
}
|
}
|
||||||
/* 时间右边的向下按钮 BUTTON */
|
/* 时间右边的向下按钮 BUTTON */
|
||||||
.WdateDiv #dpTime #dpTimeDown{
|
.WdateDiv #dpTime #dpTimeDown{
|
||||||
height:10px;
|
height:10px;
|
||||||
width:13px;
|
width:13px;
|
||||||
border:0px;
|
border:0px;
|
||||||
background:url(img.gif) no-repeat -48px -16px;
|
background:url(img.gif) no-repeat -48px -16px;
|
||||||
}
|
}
|
||||||
/****************************
|
/****************************
|
||||||
* 其他
|
* 其他
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv #dpQS {
|
.WdateDiv #dpQS {
|
||||||
float:left;
|
float:left;
|
||||||
margin-right:3px;
|
margin-right:3px;
|
||||||
margin-top:3px;
|
margin-top:3px;
|
||||||
background:url(img.gif) no-repeat 0px -16px;
|
background:url(img.gif) no-repeat 0px -16px;
|
||||||
width:20px;
|
width:20px;
|
||||||
height:20px;
|
height:20px;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
.WdateDiv #dpControl {
|
.WdateDiv #dpControl {
|
||||||
text-align:right;
|
text-align:right;
|
||||||
}
|
}
|
||||||
.WdateDiv .dpButton{
|
.WdateDiv .dpButton{
|
||||||
height:20px;
|
height:20px;
|
||||||
width:45px;
|
width:45px;
|
||||||
border:#ccc 1px solid;
|
border:#ccc 1px solid;
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
margin-right:1px;
|
margin-right:1px;
|
||||||
}
|
}
|
||||||
@@ -1,277 +1,277 @@
|
|||||||
/*
|
/*
|
||||||
* My97 DatePicker 4.7
|
* My97 DatePicker 4.7
|
||||||
* 皮肤名称:whyGreen
|
* 皮肤名称:whyGreen
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* 日期选择容器 DIV */
|
/* 日期选择容器 DIV */
|
||||||
.WdateDiv{
|
.WdateDiv{
|
||||||
width:180px;
|
width:180px;
|
||||||
background-color:#fff;
|
background-color:#fff;
|
||||||
border:#C5E1E4 1px solid;
|
border:#C5E1E4 1px solid;
|
||||||
padding:2px;
|
padding:2px;
|
||||||
}
|
}
|
||||||
/* 双月日历的宽度 */
|
/* 双月日历的宽度 */
|
||||||
.WdateDiv2{
|
.WdateDiv2{
|
||||||
width:360px;
|
width:360px;
|
||||||
}
|
}
|
||||||
.WdateDiv *{font-size:9pt;}
|
.WdateDiv *{font-size:9pt;}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 导航图标 全部是A标签
|
* 导航图标 全部是A标签
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv .NavImg a{
|
.WdateDiv .NavImg a{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
display:block;
|
display:block;
|
||||||
width:16px;
|
width:16px;
|
||||||
height:16px;
|
height:16px;
|
||||||
margin-top:1px;
|
margin-top:1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.WdateDiv .NavImgll a{
|
.WdateDiv .NavImgll a{
|
||||||
float:left;
|
float:left;
|
||||||
background:url(img.gif) no-repeat;
|
background:url(img.gif) no-repeat;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgl a{
|
.WdateDiv .NavImgl a{
|
||||||
float:left;
|
float:left;
|
||||||
background:url(img.gif) no-repeat -16px 0px;
|
background:url(img.gif) no-repeat -16px 0px;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgr a{
|
.WdateDiv .NavImgr a{
|
||||||
float:right;
|
float:right;
|
||||||
background:url(img.gif) no-repeat -32px 0px;
|
background:url(img.gif) no-repeat -32px 0px;
|
||||||
}
|
}
|
||||||
.WdateDiv .NavImgrr a{
|
.WdateDiv .NavImgrr a{
|
||||||
float:right;
|
float:right;
|
||||||
background:url(img.gif) no-repeat -48px 0px;
|
background:url(img.gif) no-repeat -48px 0px;
|
||||||
}
|
}
|
||||||
/****************************
|
/****************************
|
||||||
* 年份月份相关
|
* 年份月份相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 年份月份栏 DIV */
|
/* 年份月份栏 DIV */
|
||||||
.WdateDiv #dpTitle{
|
.WdateDiv #dpTitle{
|
||||||
height:24px;
|
height:24px;
|
||||||
padding:1px;
|
padding:1px;
|
||||||
border:#c5d9e8 1px solid;
|
border:#c5d9e8 1px solid;
|
||||||
background:url(bg.jpg);
|
background:url(bg.jpg);
|
||||||
margin-bottom:2px;
|
margin-bottom:2px;
|
||||||
}
|
}
|
||||||
/* 年份月份输入框 INPUT */
|
/* 年份月份输入框 INPUT */
|
||||||
.WdateDiv .yminput{
|
.WdateDiv .yminput{
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
border:0px;
|
border:0px;
|
||||||
height:20px;
|
height:20px;
|
||||||
width:50px;
|
width:50px;
|
||||||
color:#034c50;
|
color:#034c50;
|
||||||
background-color:transparent;
|
background-color:transparent;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
/* 年份月份输入框获得焦点时的样式 INPUT */
|
/* 年份月份输入框获得焦点时的样式 INPUT */
|
||||||
.WdateDiv .yminputfocus{
|
.WdateDiv .yminputfocus{
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
border:#939393 1px solid;
|
border:#939393 1px solid;
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
color:#034c50;
|
color:#034c50;
|
||||||
height:20px;
|
height:20px;
|
||||||
width:50px;
|
width:50px;
|
||||||
}
|
}
|
||||||
/* 菜单选择框 DIV */
|
/* 菜单选择框 DIV */
|
||||||
.WdateDiv .menuSel{
|
.WdateDiv .menuSel{
|
||||||
z-index:1;
|
z-index:1;
|
||||||
position:absolute;
|
position:absolute;
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
border:#A3C6C8 1px solid;
|
border:#A3C6C8 1px solid;
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
/* 菜单的样式 TD */
|
/* 菜单的样式 TD */
|
||||||
.WdateDiv .menu{
|
.WdateDiv .menu{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#fff;
|
background-color:#fff;
|
||||||
color:#11777C;
|
color:#11777C;
|
||||||
}
|
}
|
||||||
/* 菜单的mouseover样式 TD */
|
/* 菜单的mouseover样式 TD */
|
||||||
.WdateDiv .menuOn{
|
.WdateDiv .menuOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#BEEBEE;
|
background-color:#BEEBEE;
|
||||||
}
|
}
|
||||||
/* 菜单无效时的样式 TD */
|
/* 菜单无效时的样式 TD */
|
||||||
.WdateDiv .invalidMenu{
|
.WdateDiv .invalidMenu{
|
||||||
color:#aaa;
|
color:#aaa;
|
||||||
}
|
}
|
||||||
/* 年选择框的偏移 DIV */
|
/* 年选择框的偏移 DIV */
|
||||||
.WdateDiv .YMenu{
|
.WdateDiv .YMenu{
|
||||||
margin-top:20px;
|
margin-top:20px;
|
||||||
}
|
}
|
||||||
/* 月选择框的偏移 DIV */
|
/* 月选择框的偏移 DIV */
|
||||||
.WdateDiv .MMenu{
|
.WdateDiv .MMenu{
|
||||||
margin-top:20px;
|
margin-top:20px;
|
||||||
*width:62px;
|
*width:62px;
|
||||||
}
|
}
|
||||||
/* 时选择框的位置 DIV */
|
/* 时选择框的位置 DIV */
|
||||||
.WdateDiv .hhMenu{
|
.WdateDiv .hhMenu{
|
||||||
margin-top:-90px;
|
margin-top:-90px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
/* 分选择框的位置 DIV */
|
/* 分选择框的位置 DIV */
|
||||||
.WdateDiv .mmMenu{
|
.WdateDiv .mmMenu{
|
||||||
margin-top:-46px;
|
margin-top:-46px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
/* 秒选择框的位置 DIV */
|
/* 秒选择框的位置 DIV */
|
||||||
.WdateDiv .ssMenu{
|
.WdateDiv .ssMenu{
|
||||||
margin-top:-24px;
|
margin-top:-24px;
|
||||||
margin-left:26px;
|
margin-left:26px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 周相关
|
* 周相关
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv .Wweek {
|
.WdateDiv .Wweek {
|
||||||
text-align:center;
|
text-align:center;
|
||||||
background:#DAF3F5;
|
background:#DAF3F5;
|
||||||
border-right:#BDEBEE 1px solid;
|
border-right:#BDEBEE 1px solid;
|
||||||
}
|
}
|
||||||
/****************************
|
/****************************
|
||||||
* 星期,日期相关
|
* 星期,日期相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 星期栏 TR */
|
/* 星期栏 TR */
|
||||||
.WdateDiv .MTitle{
|
.WdateDiv .MTitle{
|
||||||
color:#13777e;
|
color:#13777e;
|
||||||
background-color:#bdebee;
|
background-color:#bdebee;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable2{
|
.WdateDiv .WdayTable2{
|
||||||
border-collapse:collapse;
|
border-collapse:collapse;
|
||||||
border:#BEE9F0 1px solid;
|
border:#BEE9F0 1px solid;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable2 table{
|
.WdateDiv .WdayTable2 table{
|
||||||
border:0;
|
border:0;
|
||||||
}
|
}
|
||||||
/* 日期栏表格 TABLE */
|
/* 日期栏表格 TABLE */
|
||||||
.WdateDiv .WdayTable{
|
.WdateDiv .WdayTable{
|
||||||
line-height:20px;
|
line-height:20px;
|
||||||
color:#13777e;
|
color:#13777e;
|
||||||
background-color:#edfbfb;
|
background-color:#edfbfb;
|
||||||
border:#BEE9F0 1px solid;
|
border:#BEE9F0 1px solid;
|
||||||
}
|
}
|
||||||
.WdateDiv .WdayTable td{
|
.WdateDiv .WdayTable td{
|
||||||
text-align:center;
|
text-align:center;
|
||||||
}
|
}
|
||||||
/* 日期格的样式 TD */
|
/* 日期格的样式 TD */
|
||||||
.WdateDiv .Wday{
|
.WdateDiv .Wday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
/* 日期格的mouseover样式 TD */
|
/* 日期格的mouseover样式 TD */
|
||||||
.WdateDiv .WdayOn{
|
.WdateDiv .WdayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#74d2d9 ;
|
background-color:#74d2d9 ;
|
||||||
}
|
}
|
||||||
/* 周末日期格的样式 TD */
|
/* 周末日期格的样式 TD */
|
||||||
.WdateDiv .Wwday{
|
.WdateDiv .Wwday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:#ab1e1e;
|
color:#ab1e1e;
|
||||||
}
|
}
|
||||||
/* 周末日期格的mouseover样式 TD */
|
/* 周末日期格的mouseover样式 TD */
|
||||||
.WdateDiv .WwdayOn{
|
.WdateDiv .WwdayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#74d2d9;
|
background-color:#74d2d9;
|
||||||
}
|
}
|
||||||
.WdateDiv .Wtoday{
|
.WdateDiv .Wtoday{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:blue;
|
color:blue;
|
||||||
}
|
}
|
||||||
.WdateDiv .Wselday{
|
.WdateDiv .Wselday{
|
||||||
background-color:#A7E2E7;
|
background-color:#A7E2E7;
|
||||||
}
|
}
|
||||||
.WdateDiv .WspecialDay{
|
.WdateDiv .WspecialDay{
|
||||||
background-color:#66F4DF;
|
background-color:#66F4DF;
|
||||||
}
|
}
|
||||||
/* 其他月份的日期 */
|
/* 其他月份的日期 */
|
||||||
.WdateDiv .WotherDay{
|
.WdateDiv .WotherDay{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
color:#0099CC;
|
color:#0099CC;
|
||||||
}
|
}
|
||||||
/* 其他月份的日期mouseover样式 */
|
/* 其他月份的日期mouseover样式 */
|
||||||
.WdateDiv .WotherDayOn{
|
.WdateDiv .WotherDayOn{
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
background-color:#C0EBEF;
|
background-color:#C0EBEF;
|
||||||
}
|
}
|
||||||
/* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
|
/* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
|
||||||
.WdateDiv .WinvalidDay{
|
.WdateDiv .WinvalidDay{
|
||||||
color:#aaa;
|
color:#aaa;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************
|
/****************************
|
||||||
* 时间相关
|
* 时间相关
|
||||||
***************************/
|
***************************/
|
||||||
/* 时间栏 DIV */
|
/* 时间栏 DIV */
|
||||||
.WdateDiv #dpTime{
|
.WdateDiv #dpTime{
|
||||||
float:left;
|
float:left;
|
||||||
margin-top:3px;
|
margin-top:3px;
|
||||||
margin-right:30px;
|
margin-right:30px;
|
||||||
}
|
}
|
||||||
/* 时间文字 SPAN */
|
/* 时间文字 SPAN */
|
||||||
.WdateDiv #dpTime #dpTimeStr{
|
.WdateDiv #dpTime #dpTimeStr{
|
||||||
margin-left:1px;
|
margin-left:1px;
|
||||||
color:#497F7F;
|
color:#497F7F;
|
||||||
}
|
}
|
||||||
/* 时间输入框 INPUT */
|
/* 时间输入框 INPUT */
|
||||||
.WdateDiv #dpTime input{
|
.WdateDiv #dpTime input{
|
||||||
height:20px;
|
height:20px;
|
||||||
width:18px;
|
width:18px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
color:#333;
|
color:#333;
|
||||||
border:#61CAD0 1px solid;
|
border:#61CAD0 1px solid;
|
||||||
}
|
}
|
||||||
/* 时间 时 INPUT */
|
/* 时间 时 INPUT */
|
||||||
.WdateDiv #dpTime .tB{
|
.WdateDiv #dpTime .tB{
|
||||||
border-right:0px;
|
border-right:0px;
|
||||||
}
|
}
|
||||||
/* 时间 分和间隔符 ':' INPUT */
|
/* 时间 分和间隔符 ':' INPUT */
|
||||||
.WdateDiv #dpTime .tE{
|
.WdateDiv #dpTime .tE{
|
||||||
border-left:0;
|
border-left:0;
|
||||||
border-right:0;
|
border-right:0;
|
||||||
}
|
}
|
||||||
/* 时间 秒 INPUT */
|
/* 时间 秒 INPUT */
|
||||||
.WdateDiv #dpTime .tm{
|
.WdateDiv #dpTime .tm{
|
||||||
width:7px;
|
width:7px;
|
||||||
border-left:0;
|
border-left:0;
|
||||||
border-right:0;
|
border-right:0;
|
||||||
}
|
}
|
||||||
/* 时间右边的向上按钮 BUTTON */
|
/* 时间右边的向上按钮 BUTTON */
|
||||||
.WdateDiv #dpTime #dpTimeUp{
|
.WdateDiv #dpTime #dpTimeUp{
|
||||||
height:10px;
|
height:10px;
|
||||||
width:13px;
|
width:13px;
|
||||||
border:0px;
|
border:0px;
|
||||||
background:url(img.gif) no-repeat -32px -16px;
|
background:url(img.gif) no-repeat -32px -16px;
|
||||||
}
|
}
|
||||||
/* 时间右边的向下按钮 BUTTON */
|
/* 时间右边的向下按钮 BUTTON */
|
||||||
.WdateDiv #dpTime #dpTimeDown{
|
.WdateDiv #dpTime #dpTimeDown{
|
||||||
height:10px;
|
height:10px;
|
||||||
width:13px;
|
width:13px;
|
||||||
border:0px;
|
border:0px;
|
||||||
background:url(img.gif) no-repeat -48px -16px;
|
background:url(img.gif) no-repeat -48px -16px;
|
||||||
}
|
}
|
||||||
/****************************
|
/****************************
|
||||||
* 其他
|
* 其他
|
||||||
***************************/
|
***************************/
|
||||||
.WdateDiv #dpQS {
|
.WdateDiv #dpQS {
|
||||||
float:left;
|
float:left;
|
||||||
margin-right:3px;
|
margin-right:3px;
|
||||||
margin-top:3px;
|
margin-top:3px;
|
||||||
background:url(img.gif) no-repeat 0px -16px;
|
background:url(img.gif) no-repeat 0px -16px;
|
||||||
width:20px;
|
width:20px;
|
||||||
height:20px;
|
height:20px;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
}
|
}
|
||||||
.WdateDiv #dpControl {
|
.WdateDiv #dpControl {
|
||||||
text-align:right;
|
text-align:right;
|
||||||
margin-top:3px;
|
margin-top:3px;
|
||||||
}
|
}
|
||||||
.WdateDiv .dpButton{
|
.WdateDiv .dpButton{
|
||||||
height:20px;
|
height:20px;
|
||||||
width:45px;
|
width:45px;
|
||||||
margin-top:2px;
|
margin-top:2px;
|
||||||
border:#38B1B9 1px solid;
|
border:#38B1B9 1px solid;
|
||||||
background-color:#CFEBEE;
|
background-color:#CFEBEE;
|
||||||
color:#08575B;
|
color:#08575B;
|
||||||
}
|
}
|
||||||
@@ -1,179 +1,180 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>ERP系统</title>
|
<title>ERP系统</title>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||||
<!-- 指定以IE8的方式来渲染 -->
|
<!-- 指定以IE8的方式来渲染 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"/>
|
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"/>
|
||||||
<link rel="shortcut icon" href="/images/favicon.ico" type="image/x-icon"/>
|
<link rel="shortcut icon" href="/images/favicon.ico" type="image/x-icon"/>
|
||||||
<link type="text/css" rel="stylesheet" href="/css/css.css"/>
|
<link type="text/css" rel="stylesheet" href="/css/css.css"/>
|
||||||
<script type="text/javascript" src="/js/jquery-1.8.0.min.js"></script>
|
<script type="text/javascript" src="/js/jquery-1.8.0.min.js"></script>
|
||||||
<script type="text/javascript" src="/js/common/common.js"></script>
|
<script type="text/javascript" src="/js/common/common.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body id="login_body">
|
<body id="login_body">
|
||||||
<form action="admin.html">
|
<form action="admin.html">
|
||||||
<div id="login_main">
|
<div id="login_main">
|
||||||
<div id="login">
|
<div id="login">
|
||||||
<p id="login_signal"><img src="/images/login_tip.jpg" width="108" height="29" alt="login"/></p>
|
<p id="login_signal"><img src="/images/login_tip.jpg" width="108" height="29" alt="login"/></p>
|
||||||
<p id="txt_username">
|
<p id="txt_username">
|
||||||
<label for="user_name">用户名:</label>
|
<label for="user_name">用户名:</label>
|
||||||
</p>
|
</p>
|
||||||
<p id="txt_userpwd">
|
<p id="txt_userpwd">
|
||||||
<label for="user_vcode" id="user_vcodepwd">密 码:</label>
|
<label for="user_vcodepwd" id="user_vcodepwd">密 码:</label>
|
||||||
</p>
|
</p>
|
||||||
<input type="text" id="user_name"/>
|
<input type="text" id="user_name"/>
|
||||||
<input type="password" id="user_pwd"/>
|
<input type="password" id="user_pwd"/>
|
||||||
<p id="tip_username" style="display: none"><span class="error_input">用户名不正确</span></p>
|
<p id="tip_username" style="display: none"><span class="error_input">用户名不正确</span></p>
|
||||||
<p id="tip_userpwd" style="display: none">密码不能为空</p>
|
<p id="tip_userpwd" style="display: none">密码不能为空</p>
|
||||||
<input type="button" value=" " id="btn_login"/>
|
<input type="button" value=" " id="btn_login"/>
|
||||||
</div>
|
</div>
|
||||||
<p id="copyright">
|
<p id="copyright">
|
||||||
Copyright © 2017-2020 季圣华(jishenghua)
|
Copyright © 2017-2020 季圣华(jishenghua)
|
||||||
<a style="color:#00458a;" href="https://gitee.com/jishenghua/JSH_ERP" target="_blank">华夏ERP_v1.0</a>
|
<a style="color:#00458a;" href="https://gitee.com/jishenghua/JSH_ERP" target="_blank">华夏ERP_v1.0</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
//初始化界面
|
//初始化界面
|
||||||
$(function () {
|
$(function () {
|
||||||
//进入页面聚焦在username输入框,方便 用户输入
|
//进入页面聚焦在username输入框,方便 用户输入
|
||||||
$("#user_name").focus();
|
$("#user_name").focus();
|
||||||
browserFit();
|
browserFit();
|
||||||
});
|
});
|
||||||
|
|
||||||
//浏览器适配
|
//浏览器适配
|
||||||
function browserFit() {
|
function browserFit() {
|
||||||
if (getOs() == 'MSIE')
|
if (getOs() == 'MSIE')
|
||||||
$("#user_vcodepwd").empty().append("密 码:");
|
$("#user_vcodepwd").empty().append("密 码:");
|
||||||
else
|
else
|
||||||
$("#user_vcodepwd").empty().append("密 码:");
|
$("#user_vcodepwd").empty().append("密 码:");
|
||||||
}
|
}
|
||||||
|
|
||||||
//初始化键盘enter事件
|
//初始化键盘enter事件
|
||||||
$(document).keydown(function (event) {
|
$(document).keydown(function (event) {
|
||||||
//兼容 IE和firefox 事件
|
//兼容 IE和firefox 事件
|
||||||
var e = window.event || event;
|
var e = window.event || event;
|
||||||
var k = e.keyCode || e.which || e.charCode;
|
var k = e.keyCode || e.which || e.charCode;
|
||||||
//兼容 IE,firefox 兼容
|
//兼容 IE,firefox 兼容
|
||||||
var obj = e.srcElement ? e.srcElement : e.target;
|
var obj = e.srcElement ? e.srcElement : e.target;
|
||||||
//绑定键盘事件为 id是usename 和password的输入框才可以触发键盘事件 13键盘事件
|
//绑定键盘事件为 id是usename 和password的输入框才可以触发键盘事件 13键盘事件
|
||||||
if (k == "13" && (obj.id == "user_name" || obj.id == "user_pwd"))
|
if (k == "13" && (obj.id == "user_name" || obj.id == "user_pwd"))
|
||||||
checkUserInput();
|
checkUserInput();
|
||||||
});
|
});
|
||||||
|
|
||||||
//登录按钮绑定处理事件
|
//登录按钮绑定处理事件
|
||||||
$('#btn_login').bind({
|
$('#btn_login').bind({
|
||||||
click: checkUserInput
|
click: checkUserInput
|
||||||
});
|
});
|
||||||
|
|
||||||
//检测用户输入数据
|
//检测用户输入数据
|
||||||
function checkUserInput() {
|
function checkUserInput() {
|
||||||
var username = $.trim($('#user_name').val());
|
var username = $.trim($('#user_name').val());
|
||||||
var password = $.trim($('#user_pwd').val());
|
var password = $.trim($('#user_pwd').val());
|
||||||
if (null == username || 0 == username.length) {
|
if (null == username || 0 == username.length) {
|
||||||
$("#user_name").val("").focus();
|
$("#user_name").val("").focus();
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_userpwd").hide();
|
||||||
$("#tip_username").empty().append('<span class="error_input">用户名不能为空</span>').show();
|
$("#tip_username").empty().append('<span class="error_input">用户名不能为空</span>').show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
$("#tip_username").hide();
|
$("#tip_username").hide();
|
||||||
|
|
||||||
if (null == password || 0 == password.length) {
|
if (null == password || 0 == password.length) {
|
||||||
$("#user_pwd").val("").focus();
|
$("#user_pwd").val("").focus();
|
||||||
$("#tip_userpwd").empty().append('<span class="error_input">密码不能为空</span>').show();
|
$("#tip_userpwd").empty().append('<span class="error_input">密码不能为空</span>').show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_userpwd").hide();
|
||||||
if (username != null && username.length != 0
|
if (username != null && username.length != 0
|
||||||
&& password != null && password.length != 0) {
|
&& password != null && password.length != 0) {
|
||||||
$("#user_name").focus();
|
$("#user_name").focus();
|
||||||
$("#tip_username").hide();
|
$("#tip_username").hide();
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_userpwd").hide();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "post",
|
type: "post",
|
||||||
url: "/user/login",
|
url: "/user/login",
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
data: ({
|
data: ({
|
||||||
loginame: username,
|
loginame: username,
|
||||||
password: password
|
password: password
|
||||||
}),
|
}),
|
||||||
success: function (res) {
|
success: function (res) {
|
||||||
if(res) {
|
if(res) {
|
||||||
var loginInfoTip = res.data.msgTip;
|
var loginInfoTip = res.data.msgTip;
|
||||||
//用户名不存在,清空输入框并定位到用户名输入框
|
//用户名不存在,清空输入框并定位到用户名输入框
|
||||||
if (loginInfoTip.indexOf("user is not exist") != -1) {
|
if (loginInfoTip.indexOf("user is not exist") != -1) {
|
||||||
$("#user_pwd").val("");
|
$("#user_pwd").val("");
|
||||||
$("#user_name").val("").focus();
|
$("#user_name").val("").focus();
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_userpwd").hide();
|
||||||
$("#tip_username").empty().append('<span class="error_input">用户名不存在</span>').show();
|
$("#tip_username").empty().append('<span class="error_input">用户名不存在</span>').show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (loginInfoTip.indexOf("user password error") != -1) {
|
else if (loginInfoTip.indexOf("user password error") != -1) {
|
||||||
$("#user_pwd").val("").focus();
|
$("#user_pwd").val("").focus();
|
||||||
$("#tip_userpwd").empty().append('<span class="error_input">用户密码错误</span>').show();
|
$("#tip_userpwd").empty().append('<span class="error_input">用户密码错误</span>').show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (loginInfoTip.indexOf("access service error") != -1) {
|
else if (loginInfoTip.indexOf("access service error") != -1) {
|
||||||
//$("#user_name").val("").focus();
|
//$("#user_name").val("").focus();
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_userpwd").hide();
|
||||||
$("#tip_username").empty().append('<span class="error_input">后台访问错误</span>').show();
|
$("#tip_username").empty().append('<span class="error_input">后台访问错误</span>').show();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
//跳转到用户管理界面
|
//跳转到用户管理界面
|
||||||
else if (loginInfoTip.indexOf("user can login") != -1 || loginInfoTip == "user already login") {
|
else if (loginInfoTip.indexOf("user can login") != -1 || loginInfoTip == "user already login") {
|
||||||
window.location.href = "/";
|
//window.location.href = "/";
|
||||||
}
|
window.location.href = "/pages/common/main.html";
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
//此处添加错误处理
|
},
|
||||||
error: function () {
|
//此处添加错误处理
|
||||||
alert("后台访问错误,请联系管理员!");
|
error: function () {
|
||||||
}
|
alert("后台访问错误,请联系管理员!");
|
||||||
});
|
}
|
||||||
}
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
//处理tip提示
|
|
||||||
//定义变量控制密码提示显示
|
//处理tip提示
|
||||||
var temp_value = "";
|
//定义变量控制密码提示显示
|
||||||
$("#user_name").add("#user_pwd").unbind().bind({
|
var temp_value = "";
|
||||||
'click keyup': function () {
|
$("#user_name").add("#user_pwd").unbind().bind({
|
||||||
var value = $.trim($(this).val());
|
'click keyup': function () {
|
||||||
if (value.length > 0) {
|
var value = $.trim($(this).val());
|
||||||
$("#tip_username").hide();
|
if (value.length > 0) {
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_username").hide();
|
||||||
}
|
$("#tip_userpwd").hide();
|
||||||
},
|
}
|
||||||
blur: function () {
|
},
|
||||||
//兼容 IE和firefox 事件
|
blur: function () {
|
||||||
var e = window.event || event;
|
//兼容 IE和firefox 事件
|
||||||
//兼容 IE,firefox 兼容
|
var e = window.event || event;
|
||||||
var obj = e.srcElement ? e.srcElement : e.target;
|
//兼容 IE,firefox 兼容
|
||||||
var value = $.trim($(this).val());
|
var obj = e.srcElement ? e.srcElement : e.target;
|
||||||
if (obj.id == "user_name")
|
var value = $.trim($(this).val());
|
||||||
temp_value = value;
|
if (obj.id == "user_name")
|
||||||
if (value.length == 0) {
|
temp_value = value;
|
||||||
if (obj.id == "user_name")
|
if (value.length == 0) {
|
||||||
$("#tip_username").empty().append('<span class="error_input">用户名不能为空</span>').show();
|
if (obj.id == "user_name")
|
||||||
|
$("#tip_username").empty().append('<span class="error_input">用户名不能为空</span>').show();
|
||||||
if (obj.id == "user_pwd" && temp_value.length > 0)
|
|
||||||
$("#tip_userpwd").empty().append('<span class="error_input">密码不能为空</span>').show();
|
if (obj.id == "user_pwd" && temp_value.length > 0)
|
||||||
;
|
$("#tip_userpwd").empty().append('<span class="error_input">密码不能为空</span>').show();
|
||||||
}
|
;
|
||||||
else {
|
}
|
||||||
if (obj.id == "user_pwd" && value.length > 0 && temp_value.length == 0) {
|
else {
|
||||||
$("#tip_username").show();
|
if (obj.id == "user_pwd" && value.length > 0 && temp_value.length == 0) {
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_username").show();
|
||||||
}
|
$("#tip_userpwd").hide();
|
||||||
else {
|
}
|
||||||
$("#tip_username").hide();
|
else {
|
||||||
$("#tip_userpwd").hide();
|
$("#tip_username").hide();
|
||||||
}
|
$("#tip_userpwd").hide();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
</script>
|
});
|
||||||
</body>
|
</script>
|
||||||
|
</body>
|
||||||
</html>
|
</html>
|
||||||
25
pom.xml
25
pom.xml
@@ -2,7 +2,30 @@
|
|||||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>dev</id>
|
||||||
|
<properties>
|
||||||
|
<activatedProperties>dev</activatedProperties>
|
||||||
|
</properties>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>true</activeByDefault>
|
||||||
|
</activation>
|
||||||
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<id>test</id>
|
||||||
|
<properties>
|
||||||
|
<activatedProperties>test</activatedProperties>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<id>prod</id>
|
||||||
|
<properties>
|
||||||
|
<activatedProperties>prod</activatedProperties>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
<groupId>com.jsh</groupId>
|
<groupId>com.jsh</groupId>
|
||||||
<artifactId>jshERP</artifactId>
|
<artifactId>jshERP</artifactId>
|
||||||
<version>2.0.2-SNAPSHOT</version>
|
<version>2.0.2-SNAPSHOT</version>
|
||||||
@@ -14,7 +37,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-parent</artifactId>
|
<artifactId>spring-boot-starter-parent</artifactId>
|
||||||
<version>1.5.1.RELEASE</version>
|
<version>2.0.0.RELEASE</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|||||||
@@ -1,97 +0,0 @@
|
|||||||
package com.jsh.erp.config;
|
|
||||||
|
|
||||||
import com.alibaba.druid.pool.DruidDataSource;
|
|
||||||
import org.slf4j.Logger;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
|
||||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
||||||
import org.springframework.context.annotation.Bean;
|
|
||||||
import org.springframework.context.annotation.Configuration;
|
|
||||||
import org.springframework.context.annotation.Primary;
|
|
||||||
import org.springframework.jdbc.core.JdbcTemplate;
|
|
||||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
|
||||||
|
|
||||||
import javax.sql.DataSource;
|
|
||||||
|
|
||||||
|
|
||||||
@Configuration
|
|
||||||
@EnableTransactionManagement(proxyTargetClass = true)
|
|
||||||
public class DbConfig {
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(DbConfig.class);
|
|
||||||
|
|
||||||
@Bean(name = "erpDatasource")
|
|
||||||
@Primary
|
|
||||||
public DataSource erpDatasource(ErpDatasourceProperties properties){
|
|
||||||
try {
|
|
||||||
DruidDataSource datasource = new DruidDataSource();
|
|
||||||
datasource.setDriverClassName(properties.driverClassName);
|
|
||||||
datasource.setUrl(properties.url);
|
|
||||||
datasource.setUsername(properties.username);
|
|
||||||
datasource.setPassword(properties.password);
|
|
||||||
datasource.setInitialSize(1);
|
|
||||||
datasource.setMinIdle(1);
|
|
||||||
datasource.setMaxWait(60000);
|
|
||||||
datasource.setMaxActive(5);
|
|
||||||
datasource.setTimeBetweenEvictionRunsMillis(60000);
|
|
||||||
datasource.setValidationQuery("select '1'");
|
|
||||||
datasource.setTestOnBorrow(false);
|
|
||||||
datasource.setTestOnReturn(false);
|
|
||||||
datasource.setTestWhileIdle(true);
|
|
||||||
datasource.setPoolPreparedStatements(true);
|
|
||||||
datasource.setMaxOpenPreparedStatements(20);
|
|
||||||
datasource.setMinEvictableIdleTimeMillis(300000);
|
|
||||||
datasource.init();
|
|
||||||
return datasource;
|
|
||||||
}catch (Exception e){
|
|
||||||
logger.error("服务启动失败,jsh_erp数据库Datasource初始化失败:"+e.getMessage());
|
|
||||||
throw new IllegalArgumentException(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
@Primary
|
|
||||||
public JdbcTemplate jdbcTemplate(@Qualifier("erpDatasource") DataSource dataSource) {
|
|
||||||
return new JdbcTemplate(dataSource);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Configuration
|
|
||||||
@ConfigurationProperties(prefix = "erpDatasource")
|
|
||||||
public static class ErpDatasourceProperties {
|
|
||||||
private String driverClassName;
|
|
||||||
private String url;
|
|
||||||
private String username;
|
|
||||||
private String password;
|
|
||||||
|
|
||||||
public String getDriverClassName() {
|
|
||||||
return driverClassName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDriverClassName(String driverClassName) {
|
|
||||||
this.driverClassName = driverClassName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUrl(String url) {
|
|
||||||
this.url = url;
|
|
||||||
}
|
|
||||||
|
|
||||||
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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,40 +1,33 @@
|
|||||||
package com.jsh.erp.config;
|
package com.jsh.erp.config;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
|
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
|
||||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import java.io.File;
|
|
||||||
|
import java.io.File;
|
||||||
@Configuration
|
|
||||||
public class WebConfig {
|
//@Configuration
|
||||||
private static final Logger logger = LoggerFactory.getLogger(WebConfig.class);
|
public class WebConfig {
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(WebConfig.class);
|
||||||
@Configuration
|
|
||||||
@ConfigurationProperties(prefix = "web.front")
|
@Configuration
|
||||||
public static class FrontEnd implements EmbeddedServletContainerCustomizer {
|
public static class FrontEnd implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {
|
||||||
private File baseDir;
|
@Value("${web.front.baseDir}")
|
||||||
|
private File baseDir;
|
||||||
public File getBaseDir() {
|
|
||||||
return baseDir;
|
@Override
|
||||||
}
|
public void customize(ConfigurableServletWebServerFactory factory) {
|
||||||
|
if (!baseDir.exists()) {
|
||||||
public void setBaseDir(File baseDir) {
|
if (!baseDir.mkdir()) {
|
||||||
this.baseDir = baseDir;
|
logger.info("create web.front base path:" + baseDir + " failed!already exists!");
|
||||||
}
|
} else {
|
||||||
|
logger.info("create web.front base path:" + baseDir + " success!");
|
||||||
@Override
|
}
|
||||||
public void customize(ConfigurableEmbeddedServletContainer container) {
|
}
|
||||||
if (!baseDir.exists()) {
|
factory.setDocumentRoot(baseDir);
|
||||||
if (!baseDir.mkdir()) {
|
}
|
||||||
logger.info("create web.front base path:" + baseDir + " failed!already exists!");
|
}
|
||||||
} else {
|
|
||||||
logger.info("create web.front base path:" + baseDir + " success!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
container.setDocumentRoot(baseDir);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
4
src/main/resources/application-dev.properties
Normal file
4
src/main/resources/application-dev.properties
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/jsh_erp?useUnicode=true&characterEncoding=utf8&useCursorFetch=true&defaultFetchSize=500&allowMultiQueries=true&rewriteBatchedStatements=true&useSSL=false
|
||||||
|
spring.datasource.driverClassName=com.mysql.jdbc.Driver
|
||||||
|
spring.datasource.username=root
|
||||||
|
spring.datasource.password=123456
|
||||||
0
src/main/resources/application-prod.properties
Normal file
0
src/main/resources/application-prod.properties
Normal file
0
src/main/resources/application-test.properties
Normal file
0
src/main/resources/application-test.properties
Normal file
37
src/main/resources/application.properties
Normal file
37
src/main/resources/application.properties
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
server.port=9000
|
||||||
|
#spring.application.name=erp
|
||||||
|
#eureka.client.service-url.defaultZone=http://sinldo-eureka:8001/eureka/
|
||||||
|
#eureka.client.service-url.defaultZone=http://localhost:8001/eureka/
|
||||||
|
#eureka.instance.instance-id=${spring.application.name}-instance-${random.value}
|
||||||
|
#eureka.instance.prefer-ip-address=true
|
||||||
|
spring.profiles.active=@activatedProperties@
|
||||||
|
#generatorConfigרÓÃÊôÐÔ
|
||||||
|
project=src/main/java
|
||||||
|
resource=src/main/resources
|
||||||
|
web.front.baseDir=erp_web
|
||||||
|
#web.front.baseDir=erp_web
|
||||||
|
mybatis.type-aliases-package=com.chinamobile.model.*
|
||||||
|
mybatis.mapper-locations=classpath:./mapper_xml/*.xml
|
||||||
|
|
||||||
|
|
||||||
|
spring.cas.sign-out-filters=/logout
|
||||||
|
spring.cas.auth-filters=/*
|
||||||
|
spring.cas.validate-filters=/*
|
||||||
|
spring.cas.request-wrapper-filters=/*
|
||||||
|
spring.cas.assertion-filters=/*
|
||||||
|
spring.cas.cas-server-login-url=http://localhost:8080/login
|
||||||
|
spring.cas.cas-server-url-prefix=http://localhost:8080
|
||||||
|
spring.cas.redirect-after-validation=true
|
||||||
|
spring.cas.use-session=true
|
||||||
|
spring.cas.server-name=http://localhost:9000
|
||||||
|
|
||||||
|
|
||||||
|
##¾²Ì¬×ÊԴ·¾¶
|
||||||
|
#spring.mvc.view.prefix=/templates/
|
||||||
|
#spring.mvc.view.suffix=.html
|
||||||
|
#spring.mvc.static-path-pattern=/**
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
server:
|
|
||||||
port: 80
|
|
||||||
erpDatasource:
|
|
||||||
driver-class-name: com.mysql.jdbc.Driver
|
|
||||||
url: jdbc:mysql://127.0.0.1:3306/jsh_erp?useUnicode=true&characterEncoding=utf8&useCursorFetch=true&defaultFetchSize=500&allowMultiQueries=true&rewriteBatchedStatements=true&useSSL=false
|
|
||||||
username: root
|
|
||||||
password: 1234
|
|
||||||
web:
|
|
||||||
front:
|
|
||||||
base-dir: erp_web
|
|
||||||
mybatis:
|
|
||||||
mapperLocations: classpath:mapper_xml/*.xml #一定要对应mapper映射xml文件的所在路径
|
|
||||||
executorType: SIMPLE
|
|
||||||
Reference in New Issue
Block a user