Toggle navigation
Toggle navigation
This project
Loading...
Sign in
fe
/
yohobuy-portal-fe
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Plain Diff
Browse Files
Authored by
weiqingting
9 years ago
Commit
17203d77eaa6c0e9044b130b3145f844fc955870
2 parents
dbaeca4d
876ed17c
bug提交
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
540 additions
and
731 deletions
client/js/goods/brand-cooperation.js
client/js/coupon/edit.js → client/js/market/coupon-edit.js
client/js/coupon/index.js → client/js/market/coupon.js
client/js/limitcode/edit.js → client/js/market/limitcode-edit.js
client/js/limitcode/index.js → client/js/market/limitcode.js
public/css/index.css
server/interface/goods.js
server/interface/limitcode.js
server/interface/coupon.js → server/interface/market.js
server/views/pages/goods/index.html
server/views/pages/goods/price-change.html
server/views/pages/limit/add.html
server/views/pages/limitcode/index.html
server/views/pages/coupon/edit.html → server/views/pages/market/coupon-edit.html
server/views/pages/coupon/index.html → server/views/pages/market/index.html
server/views/pages/limitcode/edit.html → server/views/pages/market/limitcode-edit.html
server/views/pages/limitcode/info.html → server/views/pages/market/limitcode-info.html
client/js/goods/brand-cooperation.js
View file @
17203d7
...
...
@@ -73,7 +73,9 @@ $('#basicTable').on('click', '.cooperate-type', function() {
url
:
'/goods/brandCooperation/update'
,
data
:{
id
:
brandId
,
cooperateTypeId
:
brandType
cooperateTypeId
:
brandType
,
updateUid
:
123
,
updateUserName
:
'测试1'
}
},
function
(
res
){
...
...
client/js/
coupon/
edit.js → client/js/
market/coupon-
edit.js
View file @
17203d7
...
...
@@ -91,7 +91,7 @@ var edit=require('../common/edit');
var
result
=
false
;
$
.
ajax
({
type
:
'POST'
,
url
:
'/checkPromotionCode'
,
url
:
'/
market/coupon/
checkPromotionCode'
,
async
:
false
,
data
:
{
code
:
$
(
"#code"
).
val
()
...
...
client/js/
coupon/index
.js → client/js/
market/coupon
.js
View file @
17203d7
/**
*
限购
码列表页
*
优惠
码列表页
*/
'use strict'
;
var
$
=
require
(
'jquery'
),
...
...
@@ -10,209 +10,206 @@ var ENUM={
tips
:{
"0"
:
0
,
"1"
:
0
,
"2"
:
0
,
"3"
:
0
,
"4"
:
0
,
"all"
:
0
}
}
//下拉框
new
common
.
dropDown
({
el
:
'#filter-dep'
});
//下拉框
new
common
.
dropDown
({
el
:
'#filter-dep'
});
var
t
=
new
common
.
tab
({
el
:
"#basicTab"
,
click
:
function
(){
g
.
reload
();
},
columns
:[
{
name
:
"0"
,
display
:
"待审核({0})"
},
{
name
:
"1"
,
display
:
"审核通过({1})"
},
{
name
:
"2"
,
display
:
"驳回({2})"
},
{
name
:
"3"
,
display
:
"过期({3})"
},
{
name
:
"4"
,
display
:
"作废({4})"
},
{
name
:
"all"
,
display
:
"全部({all})"
}
]
}).
init
(
ENUM
.
tips
);
var
t
=
new
common
.
tab
({
el
:
"#basicTab"
,
click
:
function
(){
g
.
reload
();
},
columns
:[
{
name
:
"0"
,
display
:
"待审核({0})"
},
{
name
:
"1"
,
display
:
"审核通过({1})"
},
{
name
:
"2"
,
display
:
"驳回({2})"
},
{
name
:
"3"
,
display
:
"过期({3})"
},
{
name
:
"4"
,
display
:
"作废({4})"
},
{
name
:
"all"
,
display
:
"全部({all})"
}
]
}).
init
(
ENUM
.
tips
);
//grid
var
g
=
new
common
.
grid
({
el
:
'#basicTable'
,
// tabUrl: $('#tabUrl').val(),
// tabConvert: statusConvert,
// size: 10,
parms
:
function
(){
return
{
batchNo
:
common
.
util
.
__input
(
"filter-id"
),
name
:
common
.
util
.
__input
(
"filter-name"
),
reqDepartment
:
common
.
util
.
__input
(
"filter-dep"
),
status
:
t
.
active
};
},
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
,
render
:
function
(
item
)
{
return
'<a href="/coupon/info/'
+
item
.
id
+
'">'
+
item
.
batchNo
+
'</a>'
;
}},
{
display
:
"基本信息"
,
name
:
"name"
,
render
:
function
(
item
)
{
return
'<p>名称:'
+
item
.
name
+
'</p><p>次数'
+
item
.
limitTimes
+
'</p><p>部门:'
+
item
.
reqDepartment
+
'</p>'
;
}},
{
display
:
'使用期限'
,
name
:
"limit"
,
render
:
function
(
item
)
{
return
'<p class="audit-time">'
+
item
.
limitDateFrom
+
'</p><p>'
+
item
.
limitDateTo
+
'</p>'
}},
{
display
:
'优惠码说明'
,
name
:
"describe"
},
{
display
:
'申请记录'
,
name
:
"staff"
},
{
display
:
'状态'
,
name
:
"status"
,
render
:
function
(
item
)
{
var
html
=
ENUM
.
status
[
item
.
status
]
||
'全部'
;
if
(
item
.
reason
)
{
html
+=
'<p style="color:red;">('
+
item
.
reason
+
')</p>'
;
}
return
html
;
}},
{
display
:
"操作"
,
name
:
"operate"
,
render
:
function
(
item
){
var
HtmArr
=
[];
HtmArr
.
push
(
'<a href="/coupon/info/'
+
item
.
id
+
'" class="btn btn-info btn-xs">查看详情</a>'
);
if
(
item
.
status
==
0
){
HtmArr
.
push
(
'<a class="btn btn-primary btn-xs apply-success" data-index="'
+
item
.
__index
+
'" href="javascript:;">通过</a>'
);
HtmArr
.
push
(
'<a class="btn btn-warning btn-xs apply-back" data-index="'
+
item
.
__index
+
'" href="javascript:;">驳回</a>'
);
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
if
(
item
.
status
==
1
){
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
if
(
item
.
status
==
2
){
HtmArr
.
push
(
'<a class="btn btn-info btn-xs apply-modify" href="/coupon/update/'
+
item
.
id
+
'">修改</a>'
);
}
return
HtmArr
.
join
(
''
);
}}
]
})
//grid
var
g
=
new
common
.
grid
({
el
:
'#basicTable'
,
// tabUrl: $('#tabUrl').val(),
// tabConvert: statusConvert,
// size: 10,
parms
:
function
(){
return
{
batchNo
:
common
.
util
.
__input
(
"filter-id"
),
name
:
common
.
util
.
__input
(
"filter-name"
),
reqDepartment
:
common
.
util
.
__input
(
"filter-dep"
),
status
:
t
.
active
};
},
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
,
render
:
function
(
item
)
{
return
'<a href="/market/coupon/info/'
+
item
.
id
+
'">'
+
item
.
batchNo
+
'</a>'
;
}},
{
display
:
"基本信息"
,
name
:
"name"
,
render
:
function
(
item
)
{
return
'<p>名称:'
+
item
.
name
+
'</p><p>次数'
+
item
.
limitTimes
+
'</p><p>部门:'
+
item
.
reqDepartment
+
'</p>'
;
}},
{
display
:
'使用期限'
,
name
:
"limit"
,
render
:
function
(
item
)
{
return
'<p class="audit-time">'
+
item
.
limitDateFrom
+
'</p><p>'
+
item
.
limitDateTo
+
'</p>'
}},
{
display
:
'优惠码说明'
,
name
:
"describe"
},
{
display
:
'申请记录'
,
name
:
"staff"
},
{
display
:
'状态'
,
name
:
"status"
,
render
:
function
(
item
)
{
var
html
=
ENUM
.
status
[
item
.
status
]
||
'全部'
;
if
(
item
.
reason
)
{
html
+=
'<p style="color:red;">('
+
item
.
reason
+
')</p>'
;
}
return
html
;
}},
{
display
:
"操作"
,
name
:
"operate"
,
render
:
function
(
item
){
var
HtmArr
=
[];
HtmArr
.
push
(
'<a href="/market/coupon/info/'
+
item
.
id
+
'" class="btn btn-info btn-xs">查看详情</a>'
);
if
(
item
.
status
==
0
){
HtmArr
.
push
(
'<a class="btn btn-primary btn-xs apply-success" data-index="'
+
item
.
__index
+
'" href="javascript:;">通过</a>'
);
HtmArr
.
push
(
'<a class="btn btn-warning btn-xs apply-back" data-index="'
+
item
.
__index
+
'" href="javascript:;">驳回</a>'
);
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
if
(
item
.
status
==
1
){
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
if
(
item
.
status
==
2
){
HtmArr
.
push
(
'<a class="btn btn-info btn-xs apply-modify" href="/market/coupon/update/'
+
item
.
id
+
'">修改</a>'
);
}
return
HtmArr
.
join
(
''
);
}}
]
});
//tab
var
loadtab
=
function
(){
t
.
active
=
undefined
;
setTimeout
(
function
(){
common
.
util
.
__ajax
({
url
:
'/coupon/ajax/getCodeCount'
,
data
:
g
.
options
.
parms
()
//tab
var
loadtab
=
function
(){
t
.
active
=
undefined
;
setTimeout
(
function
(){
common
.
util
.
__ajax
({
url
:
'/market/coupon/getCodeCount'
,
data
:
g
.
options
.
parms
()
},
function
(
res
){
var
__dt
=
$
.
extend
({},
ENUM
.
tips
,
res
.
data
);
t
.
init
(
__dt
);
},
true
);
},
400
);
}
},
function
(
res
){
var
__dt
=
$
.
extend
({},
ENUM
.
tips
,
res
.
data
);
t
.
init
(
__dt
);
},
true
);
},
400
);
}
loadtab
();
g
.
init
(
$
(
"#gridurl"
).
val
());
$
(
"#filter-btn"
).
click
(
function
(){
loadtab
();
g
.
init
(
$
(
"#gridurl"
).
val
());
g
.
reload
();
});
$
(
"#all-btn"
).
click
(
function
(){
$
(
"#filter-id"
).
add
(
"#filter-name"
).
val
(
''
);
$
(
'#filter-dep'
).
val
(
"-1"
).
trigger
(
"change"
);
loadtab
();
g
.
reload
();
});
$
(
"#filter-btn"
).
click
(
function
(){
loadtab
();
g
.
reload
();
});
$
(
"#all-btn"
).
click
(
function
(){
$
(
"#filter-id"
).
add
(
"#filter-name"
).
val
(
''
);
$
(
'#filter-dep'
).
val
(
"-1"
).
trigger
(
"change"
);
loadtab
();
g
.
reload
();
});
var
Bll
=
{
toast
:
function
(
content
,
fn
){
common
.
dialog
.
confirm
(
"温馨提示"
,
content
,
function
(){
common
.
util
.
__ajax
({
url
:
'/coupon/auditPromotion'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
});
},
definetoast
:
function
(
content
,
fn
,
fn1
){
common
.
dialog
({
title
:
"温馨提示"
,
content
:
content
,
button
:[
{
value
:
"取消"
},
{
value
:
"确定"
,
callback
:
function
(){
common
.
util
.
__ajax
({
url
:
'/coupon/auditPromotion'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
}},
{
value
:
"发放列表"
,
callback
:
function
(){
common
.
dialog
({
title
:
"发放列表"
,
content
:
'<div id="faGrid"></div>'
});
new
common
.
grid
({
el
:
"#faGrid"
,
parms
:
fn1
(),
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
,
render
:
function
(
item
)
{
return
'<a href="/coupon/info/'
+
item
.
id
+
'">'
+
item
.
batchNo
+
'</a>'
;
}},
{
display
:
"基本信息"
,
name
:
"name"
,
render
:
function
(
item
)
{
return
'<p>名称:'
+
item
.
name
+
'</p><p>次数'
+
item
.
limitTimes
+
'</p><p>部门:'
+
item
.
reqDepartment
+
'</p>'
;
}},
{
display
:
'使用期限'
,
name
:
"limit"
,
render
:
function
(
item
)
{
return
'<p class="audit-time">'
+
item
.
limitDateFrom
+
'</p><p>'
+
item
.
limitDateTo
+
'</p>'
}},
{
display
:
'优惠码说明'
,
name
:
"describe"
},
{
display
:
'申请记录'
,
name
:
"staff"
}
]
}).
init
(
'/coupon/sendPromotion'
);
}}
]
var
Bll
=
{
toast
:
function
(
content
,
fn
){
common
.
dialog
.
confirm
(
"温馨提示"
,
content
,
function
(){
common
.
util
.
__ajax
({
url
:
'/market/coupon/auditPromotion'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
}
});
},
definetoast
:
function
(
content
,
fn
,
fn1
){
common
.
dialog
({
title
:
"温馨提示"
,
content
:
content
,
button
:[
{
value
:
"取消"
},
{
value
:
"确定"
,
callback
:
function
(){
common
.
util
.
__ajax
({
url
:
'/market/coupon/auditPromotion'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
}},
{
value
:
"发放列表"
,
callback
:
function
(){
common
.
dialog
({
title
:
"发放列表"
,
content
:
'<div id="faGrid"></div>'
});
new
common
.
grid
({
el
:
"#faGrid"
,
parms
:
fn1
(),
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
,
render
:
function
(
item
)
{
return
'<a href="/market/coupon/info/'
+
item
.
id
+
'">'
+
item
.
batchNo
+
'</a>'
;
}},
{
display
:
"基本信息"
,
name
:
"name"
,
render
:
function
(
item
)
{
return
'<p>名称:'
+
item
.
name
+
'</p><p>次数'
+
item
.
limitTimes
+
'</p><p>部门:'
+
item
.
reqDepartment
+
'</p>'
;
}},
{
display
:
'使用期限'
,
name
:
"limit"
,
render
:
function
(
item
)
{
return
'<p class="audit-time">'
+
item
.
limitDateFrom
+
'</p><p>'
+
item
.
limitDateTo
+
'</p>'
}},
{
display
:
'优惠码说明'
,
name
:
"describe"
},
{
display
:
'申请记录'
,
name
:
"staff"
}
]
}).
init
(
'/market/coupon/sendPromotion'
);
}}
]
});
}
}
//作废事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-cancel'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写作废原因"
;
}
return
{
id
:
item
.
id
,
status
:
4
,
operations
:
reason
};
//作废事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-cancel'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写作废原因"
;
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
name
:
"您确定要作废此优惠码吗?"
}),
data
);
});
return
{
id
:
item
.
id
,
status
:
4
,
operations
:
reason
};
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
name
:
"您确定要作废此优惠码吗?"
}),
data
);
});
//驳回事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-back'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写驳回原因"
;
}
return
{
id
:
item
.
id
,
status
:
2
,
operations
:
reason
};
//驳回事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-back'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写驳回原因"
;
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
name
:
"您确定要驳回该申请吗?"
}),
data
);
});
//通过事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-success'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
return
{
return
{
id
:
item
.
id
,
status
:
1
,
status
:
2
,
operations
:
reason
};
}
Bll
.
definetoast
(
"您确定要通过该申请吗?"
,
data
,
function
(){
return
{
auditTime
:
item
.
limitDateFrom
};
});
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
name
:
"您确定要驳回该申请吗?"
}),
data
);
});
//通过事件
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-success'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
return
{
id
:
item
.
id
,
status
:
1
,
operations
:
reason
};
}
Bll
.
definetoast
(
"您确定要通过该申请吗?"
,
data
,
function
(){
return
{
auditTime
:
item
.
limitDateFrom
};
});
});
...
...
client/js/
limitcode/
edit.js → client/js/
market/limitcode-
edit.js
View file @
17203d7
client/js/
limitcode/index
.js → client/js/
market/limitcode
.js
View file @
17203d7
...
...
@@ -2,112 +2,127 @@
var
$
=
require
(
'jquery'
),
common
=
require
(
'../common/common'
);
new
common
.
dropDown
({
el
:
'#filter-dep'
});
var
g
=
new
common
.
grid
({
el
:
'#basicTable'
,
parms
:
function
(){
return
{
batchNo
:
common
.
util
.
__input
(
"batchNo"
),
name
:
common
.
util
.
__input
(
"name"
),
reqDepartment
:
common
.
util
.
__input
(
"reqDepartment"
)
};
},
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
},
{
display
:
"基本信息"
,
render
:
function
(
item
){
var
arr
=
[];
arr
.
push
(
"<p>名称:"
+
item
.
name
+
"</p>"
);
arr
.
push
(
"<p>次数:"
+
item
.
limitTimes
+
"</p>"
);
arr
.
push
(
"<p>数量:"
+
item
.
userUseLimit
+
"</p>"
);
arr
.
push
(
"<p>部门:"
+
item
.
reqDepartment
+
"</p>"
);
return
arr
.
join
(
''
);
}},
{
display
:
"使用日期"
,
render
:
function
(
item
){
return
item
.
limitDateFrom
+
"</br> 至 "
+
item
.
limitDateTo
;
}},
{
display
:
"限购码使用说明"
,
name
:
"describe"
},
{
display
:
"申请人"
,
name
:
"creatorName"
},
{
display
:
"操作"
,
render
:
function
(
item
){
var
HtmArr
=
[];
//限购码状态0:待审核 1:审核通过 2:驳回 3:过期 4:作废
HtmArr
.
push
(
'<a href="/limit/code/info/'
+
item
.
id
+
'" class="btn btn-info btn-xs">查看详情</a>'
);
if
(
item
.
status
==
0
){
HtmArr
.
push
(
'<a class="btn btn-primary btn-xs apply-success" data-index="'
+
item
.
__index
+
'" href="javascript:;">通过</a>'
);
HtmArr
.
push
(
'<a class="btn btn-warning btn-xs apply-back" data-index="'
+
item
.
__index
+
'" href="javascript:;">驳回</a>'
);
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
else
if
(
item
.
status
==
1
){
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
else
if
(
item
.
status
==
2
){
HtmArr
.
push
(
'<a class="btn btn-info btn-xs apply-modify" href="/limit/code/update/'
+
item
.
id
+
'">修改</a>'
);
}
return
HtmArr
.
join
(
''
);
}}
]
});
g
.
init
(
$
(
"#gridurl"
).
val
());
new
common
.
dropDown
({
el
:
'#filter-dep'
});
$
(
"#btn-search"
).
click
(
function
(){
g
.
reload
();
});
$
(
"#btn-reset"
).
click
(
function
(){
$
(
"#batchNo"
).
add
(
"#name"
).
val
(
''
);
$
(
"#reqDepartment"
).
val
(
-
1
);
g
.
reload
();
});
var
ENUM
=
{
status
:{
0
:
'待审核'
,
1
:
'审核通过'
,
2
:
'驳回'
,
3
:
'过期'
,
4
:
'作废'
}
//全部
}
var
g
=
new
common
.
grid
({
el
:
'#basicTable'
,
parms
:
function
(){
return
{
batchNo
:
common
.
util
.
__input
(
"batchNo"
),
name
:
common
.
util
.
__input
(
"name"
),
reqDepartment
:
common
.
util
.
__input
(
"reqDepartment"
)
};
},
columns
:[
{
display
:
"批次号"
,
name
:
"batchNo"
,
render
:
function
(
item
)
{
return
'<a href="/market/limitcode/info/'
+
item
.
id
+
'">'
+
item
.
batchNo
+
'</a>'
}},
{
display
:
"基本信息"
,
render
:
function
(
item
){
var
arr
=
[];
arr
.
push
(
"<p>名称:"
+
item
.
name
+
"</p>"
);
arr
.
push
(
"<p>次数:"
+
item
.
limitTimes
+
"</p>"
);
arr
.
push
(
"<p>数量:"
+
item
.
userUseLimit
+
"</p>"
);
arr
.
push
(
"<p>部门:"
+
item
.
reqDepartment
+
"</p>"
);
return
arr
.
join
(
''
);
}},
{
display
:
"使用日期"
,
render
:
function
(
item
){
return
item
.
limitDateFrom
+
"</br> 至 "
+
item
.
limitDateTo
;
}},
{
display
:
"限购码使用说明"
,
name
:
"describe"
},
{
display
:
"申请人"
,
name
:
"creatorName"
,
render
:
function
(
item
)
{
return
item
.
creatorName
+
'<br>'
+
item
.
createTime
;
}},
{
display
:
'状态'
,
render
:
function
(
item
)
{
var
html
=
ENUM
.
status
[
item
.
status
]
||
'全部'
;
if
(
item
.
reason
)
{
html
+=
'<p style="color:red;">('
+
item
.
reason
+
')</p>'
;
}
return
html
;
}},
{
display
:
"操作"
,
render
:
function
(
item
){
var
HtmArr
=
[];
//限购码状态0:待审核 1:审核通过 2:驳回 3:过期 4:作废
HtmArr
.
push
(
'<a href="/market/limitcode/info/'
+
item
.
id
+
'" class="btn btn-info btn-xs">查看详情</a>'
);
if
(
item
.
status
==
0
){
HtmArr
.
push
(
'<a class="btn btn-primary btn-xs apply-success" data-index="'
+
item
.
__index
+
'" href="javascript:;">通过</a>'
);
HtmArr
.
push
(
'<a class="btn btn-warning btn-xs apply-back" data-index="'
+
item
.
__index
+
'" href="javascript:;">驳回</a>'
);
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
else
if
(
item
.
status
==
1
){
HtmArr
.
push
(
'<a class="btn btn-danger btn-xs apply-cancel" data-index="'
+
item
.
__index
+
'" href="javascript:;">作废</a>'
);
}
else
if
(
item
.
status
==
2
){
HtmArr
.
push
(
'<a class="btn btn-info btn-xs apply-modify" href="/market/limitcode/update/'
+
item
.
id
+
'">修改</a>'
);
}
return
HtmArr
.
join
(
''
);
}}
]
});
g
.
init
(
$
(
"#gridurl"
).
val
());
$
(
"#btn-search"
).
click
(
function
(){
g
.
reload
();
});
$
(
"#btn-reset"
).
click
(
function
(){
$
(
"#batchNo"
).
add
(
"#name"
).
val
(
''
);
$
(
"#reqDepartment"
).
val
(
-
1
);
g
.
reload
();
});
var
Bll
=
{
toast
:
function
(
content
,
fn
){
common
.
dialog
.
confirm
(
"温馨提示"
,
content
,
function
(){
common
.
util
.
__ajax
({
url
:
'/Shops/ShopsRest/checkShopPass'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
var
Bll
=
{
toast
:
function
(
content
,
fn
){
common
.
dialog
.
confirm
(
"温馨提示"
,
content
,
function
(){
common
.
util
.
__ajax
({
url
:
'/market/limitcode/auditLimitCode'
,
data
:
fn
()
},
function
(){
g
.
reload
();
});
}
}
);
}
//审核通过
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-success'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
return
{
id
:
item
.
id
,
status
:
1
,
reason
:
"预算不够"
};
}
Bll
.
toast
(
"确定要通过该申请吗?"
,
data
);
});
//驳回
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-back'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写驳回原因"
;
}
return
{
id
:
item
.
id
,
status
:
2
,
reason
:
reason
};
};
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
title
:
"你确定要驳回该申请吗?"
}),
data
);
});
//作废
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-cancel'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
}
//审核通过
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-success'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
{
id
:
item
.
id
,
status
:
1
,
reason
:
"预算不够"
};
Bll
.
toast
(
"确定要通过该申请吗?"
,
data
);
});
//驳回
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-back'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
data
=
function
(){
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写作废原因"
;
}
var
data
=
function
(){
return
{
id
:
item
.
id
,
status
:
3
,
reason
:
reason
};
return
"请填写驳回原因"
;
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
title
:
"你确定要作废此限购码吗?"
}),
data
);
});
return
{
id
:
item
.
id
,
status
:
2
,
reason
:
reason
};
};
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
name
:
"你确定要驳回该申请吗?"
}),
data
);
});
//作废
$
(
'#basicTable'
).
on
(
'click'
,
'.apply-cancel'
,
function
()
{
var
item
=
g
.
rows
[
$
(
this
).
data
(
"index"
)];
var
reason
=
$
(
'#reason'
).
val
();
if
(
reason
===
''
||
$
.
trim
(
reason
)
===
''
)
{
return
"请填写作废原因"
;
}
var
data
=
function
(){
return
{
id
:
item
.
id
,
status
:
3
,
reason
:
reason
};
}
Bll
.
toast
(
common
.
util
.
__template
(
$
(
"#template"
).
html
(),{
title
:
"你确定要作废此限购码吗?"
}),
data
);
});
...
...
public/css/index.css
View file @
17203d7
<<<<<<<
HEAD
ul
{
margin-top
:
0
}
.admin-icon-yellow
{
color
:
#ffbe40
}
.admin-header
{
font-size
:
1.4rem
;
margin-bottom
:
0
}
.admin-header-list
a
:hover
:after
{
content
:
none
}
.admin-main
{
background
:
#f3f3f3
}
.admin-menu
{
position
:
fixed
;
z-index
:
10
;
bottom
:
30px
;
right
:
20px
}
.admin-sidebar
{
width
:
260px
;
min-height
:
100%
;
float
:
left
;
border-right
:
1px
solid
#cecece
}
.admin-sidebar-list
{
margin-bottom
:
0
}
.admin-sidebar-list
li
a
{
color
:
#5c5c5c
;
padding-left
:
24px
}
.admin-sidebar-list
li
:first-child
{
border-top
:
none
}
.admin-sidebar-sub
{
margin-top
:
0
;
margin-bottom
:
0
;
box-shadow
:
0
16px
8px
-15px
#e2e2e2
inset
;
background
:
#ececec
;
padding-left
:
24px
}
.admin-sidebar-sub
li
:first-child
{
border-top
:
1px
solid
#dedede
}
.admin-sidebar-panel
{
margin
:
10px
}
.admin-content
{
width
:
auto
;
overflow
:
hidden
;
height
:
100%
;
background
:
#fff
}
.admin-content-list
{
border
:
1px
solid
#e9ecf1
;
margin-top
:
0
}
.admin-content-list
li
{
border
:
1px
solid
#e9ecf1
;
border-width
:
0
1px
;
margin-left
:
-1px
}
.admin-content-list
li
:first-child
{
border-left
:
none
}
.admin-content-list
li
:last-child
{
border-right
:
none
}
.admin-content-table
a
{
color
:
#535353
}
.admin-content-file
{
margin-bottom
:
0
;
color
:
#666
}
.admin-content-file
p
{
margin
:
0
0
5px
0
;
font-size
:
1.4rem
}
.admin-content-file
li
{
padding
:
10px
0
}
.admin-content-file
li
:first-child
{
border-top
:
none
}
.admin-content-file
li
:last-child
{
border-bottom
:
none
}
.admin-content-file
li
.am-progress
{
margin-bottom
:
4px
}
.admin-content-file
li
.am-progress-bar
{
line-height
:
14px
}
.admin-content-task
{
margin-bottom
:
0
}
.admin-content-task
li
{
padding
:
5px
0
;
border-color
:
#eee
}
.admin-content-task
li
:first-child
{
border-top
:
none
}
.admin-content-task
li
:last-child
{
border-bottom
:
none
}
.admin-task-meta
{
font-size
:
1.2rem
;
color
:
#999
}
.admin-task-bd
{
font-size
:
1.4rem
;
margin-bottom
:
5px
}
.admin-content-comment
{
margin-bottom
:
0
}
.admin-content-comment
.am-comment-bd
{
font-size
:
1.4rem
}
.admin-content-pagination
{
margin-bottom
:
0
}
.admin-content-pagination
li
a
{
padding
:
4px
8px
}
@media
only
screen
and
(
min-width
:
641px
){
.admin-sidebar
{
display
:
block
;
position
:
static
;
background
:
none
}
.admin-offcanvas-bar
{
position
:
static
;
width
:
auto
;
background
:
none
;
-webkit-transform
:
translate3d
(
0
,
0
,
0
);
-ms-transform
:
translate3d
(
0
,
0
,
0
);
transform
:
translate3d
(
0
,
0
,
0
)}
.admin-offcanvas-bar
:after
{
content
:
none
}}
@media
only
screen
and
(
max-width
:
640px
){
.admin-sidebar
{
width
:
inherit
}
.admin-offcanvas-bar
{
background
:
#f3f3f3
}
.admin-offcanvas-bar
:after
{
background
:
#BABABA
}
.admin-sidebar-list
a
:hover
,
.admin-sidebar-list
a
:active
{
-webkit-transition
:
background-color
0.3s
ease
;
transition
:
background-color
0.3s
ease
;
background
:
#E4E4E4
}
.admin-content-list
li
{
padding
:
10px
;
border-width
:
1px
0
;
margin-top
:
-1px
}
.admin-content-list
li
:first-child
{
border-top
:
none
}
.admin-content-list
li
:last-child
{
border-bottom
:
none
}
.admin-form-text
{
text-align
:
left
!important
}}
.user-info
{
margin-bottom
:
15px
}
.user-info
.am-progress
{
margin-bottom
:
4px
}
.user-info
p
{
margin
:
5px
}
.user-info-order
{
font-size
:
1.4rem
}
.error-log
.am-pre-scrollable
{
max-height
:
40rem
}
.table-main
{
font-size
:
1.4rem
;
padding
:
.5rem
}
.table-main
button
{
background
:
#fff
}
.table-check
{
width
:
30px
}
.table-id
{
width
:
50px
}
@media
only
screen
and
(
max-width
:
640px
){
.table-select
{
margin-top
:
10px
;
margin-left
:
5px
}}
.gallery-list
li
{
padding
:
10px
}
.gallery-list
a
{
color
:
#666
}
.gallery-list
a
:hover
{
color
:
#3bb4f2
}
.gallery-title
{
margin-top
:
6px
;
font-size
:
1.4rem
}
.gallery-desc
{
font-size
:
1.2rem
;
margin-top
:
4px
}
.page-404
{
background
:
#fff
;
border
:
none
;
width
:
200px
;
margin
:
0
auto
}
.fixed-layout
,
.fixed-layout
body
{
height
:
100%
;
overflow
:
hidden
}
.fixed-layout
.admin-header
{
position
:
fixed
;
top
:
0
;
left
:
0
;
right
:
0
;
z-index
:
1500
}
.fixed-layout
.admin-main
{
position
:
relative
;
height
:
100%
;
padding-top
:
51px
}
.fixed-layout
.admin-content
,
.fixed-layout
.admin-sidebar
{
height
:
100%
;
overflow-x
:
hidden
;
overflow-y
:
scroll
}
.fixed-layout
.admin-sidebar.am-active
{
z-index
:
1600
}
input
[
type
=
file
]
{
display
:
block
;
opacity
:
0
;
height
:
60px
;
width
:
100px
;
position
:
absolute
;
z-index
:
99
}
.form-horizontal
.form-group
{
margin-left
:
0px
;
margin-right
:
0px
}
.datepicker
{
display
:
none
;
position
:
absolute
;
padding
:
4px
;
margin-top
:
1px
;
direction
:
ltr
}
.datepicker.dropdown-menu
{
position
:
absolute
;
top
:
100%
;
left
:
0
;
z-index
:
1000
;
float
:
left
;
display
:
none
;
min-width
:
160px
;
list-style
:
none
;
background-color
:
#fff
;
border
:
1px
solid
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
5px
;
box-shadow
:
0
5px
10px
rgba
(
0
,
0
,
0
,
0.2
);
background-clip
:
padding-box
;
*
border-right-width
:
2px
;
*
border-bottom-width
:
2px
;
color
:
#333
;
font-size
:
13px
;
line-height
:
18px
}
.datepicker.dropdown-menu
th
{
padding
:
4px
5px
}
.datepicker.dropdown-menu
td
{
padding
:
4px
5px
}
.datepicker
table
{
border
:
0
;
margin
:
0
;
width
:
auto
}
.datepicker
table
tr
td
span
{
display
:
block
;
width
:
23%
;
height
:
54px
;
line-height
:
54px
;
float
:
left
;
margin
:
1%
;
cursor
:
pointer
}
.datepicker
td
{
text-align
:
center
;
width
:
20px
;
height
:
20px
;
border
:
0
;
font-size
:
12px
;
padding
:
4px
8px
;
background
:
#fff
;
cursor
:
pointer
}
.datepicker
td
.active.day
,
.datepicker
td
.active.year
{
background
:
#2ba6cb
}
.datepicker
td
.old
,
.datepicker
td
.new
{
color
:
#999
}
.datepicker
td
span
.active
{
background
:
#2ba6cb
}
.datepicker
td
.day.disabled
{
color
:
#ccc
}
.datepicker
th
{
text-align
:
center
;
width
:
20px
;
height
:
20px
;
border
:
0
;
font-size
:
12px
;
padding
:
4px
8px
;
background
:
#fff
;
cursor
:
pointer
}
.datepicker
th
.active.day
,
.datepicker
th
.active.year
{
background
:
#2ba6cb
}
.datepicker
th
.date-switch
{
width
:
145px
}
.datepicker
th
span
.active
{
background
:
#2ba6cb
}
.datepicker
.cw
{
font-size
:
10px
;
width
:
12px
;
padding
:
0
2px
0
5px
;
vertical-align
:
middle
}
.datepicker.days
div
.datepicker-days
{
display
:
block
}
.datepicker.months
div
.datepicker-months
{
display
:
block
}
.datepicker.years
div
.datepicker-years
{
display
:
block
}
.datepicker
thead
tr
:first-child
th
{
cursor
:
pointer
}
.datepicker
thead
tr
:first-child
th
.cw
{
cursor
:
default
;
background-color
:
transparent
}
.datepicker
tfoot
tr
:first-child
th
{
cursor
:
pointer
}
.datepicker-inline
{
width
:
220px
}
.datepicker-rtl
{
direction
:
rtl
}
.datepicker-rtl
table
tr
td
span
{
float
:
right
}
.datepicker-dropdown
{
top
:
0
;
left
:
0
}
.datepicker-dropdown
:before
{
content
:
''
;
display
:
inline-block
;
border-left
:
7px
solid
transparent
;
border-right
:
7px
solid
transparent
;
border-bottom
:
7px
solid
#ccc
;
border-bottom-color
:
1px
solid
rgba
(
0
,
0
,
0
,
0.2
);
position
:
absolute
;
top
:
-7px
;
left
:
6px
}
.datepicker-dropdown
: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
}
.datepicker
>
div
,
.datepicker-dropdown
::before
,
.datepicker-dropdown
::after
{
display
:
none
}
.datepicker-close
{
position
:
absolute
;
top
:
-30px
;
right
:
0
;
width
:
15px
;
height
:
30px
;
padding
:
0
;
display
:
none
}
.table-striped
.datepicker
table
tr
td
,
.table-striped
.datepicker
table
tr
th
{
background-color
:
transparent
}
.panel-default
.panel-heading
{
border-top
:
1px
solid
#e7e7e7
}
.red
{
color
:
red
;
font-family
:
bold
}
input
[
type
=
date
],
input
[
type
=
time
],
input
[
type
=
datetime-local
],
input
[
type
=
month
]
{
line-height
:
0
!important
}
.show-grid
{
padding
:
10px
}
.brandBtn-group
{
width
:
150px
;
float
:
left
;
margin-right
:
8px
}
.brandBtn-group-lg
{
width
:
280px
}
.contentpanel
td
a
{
margin
:
0
3px
}
.mainwrapper
.toggle-table
tr
{
cursor
:
pointer
}
.mainwrapper
.toggle-table
tr
.level1
td
:nth-of-type
(
1
)
{
text-indent
:
2px
}
.mainwrapper
.toggle-table
tr
.level2
td
:nth-of-type
(
1
)
{
text-indent
:
15px
}
.mainwrapper
.toggle-table
tr
.level3
td
:nth-of-type
(
1
)
{
text-indent
:
30px
}
.pattrscroll
{
background
:
#F7F7F7
}
.pattrscroll
ul
{
padding-left
:
0
}
.pattrscroll
li
{
cursor
:
pointer
}
.mainwrapper
.list-group-item.level1
{
text-indent
:
2px
}
.mainwrapper
.list-group-item.level2
{
text-indent
:
15px
}
.mainwrapper
.list-group-item.level3
{
text-indent
:
30px
}
.attr-item-active
{
background
:
#428bca
;
color
:
#fff
}
.pannel-scroll
{
height
:
500px
;
overflow-y
:
scroll
;
overflow-x
:
hidden
}
.attr-select
{
display
:
block
;
height
:
40px
;
line-height
:
40px
;
border
:
1px
solid
#ccc
;
border-radius
:
3px
}
#limit-table-box
table
{
vertical-align
:
middle
}
#limit-table-box
table
th
,
#limit-table-box
table
td
{
text-align
:
center
;
vertical-align
:
middle
}
#limit-table-box
table
div
.checkbox
label
{
height
:
13px
}
#limit-table-box
table
.cover-img
{
width
:
100px
}
#limit-table-box
table
.width50
{
width
:
50px
;
text-align
:
center
}
.height40
{
height
:
40px
;
line-height
:
40px
}
.edit-cover-img
{
width
:
100px
;
margin
:
0
15px
;
float
:
left
}
.quota-text
,
.quota-img
,
.quota-video
{
width
:
300px
;
margin-bottom
:
15px
}
.quota-text
img
,
.quota-img
img
,
.quota-video
img
{
width
:
100%
}
#text-editor
{
width
:
100%
;
max-width
:
100%
;
min-width
:
100%
;
height
:
300px
;
max-height
:
300px
;
min-height
:
300px
}
.product-detail
input
[
type
=
"
text
"
]
{
width
:
100px
}
.main-table
{
-display
:
none
}
.bulk-import
{
display
:
none
}
#upload-input
{
display
:
inline-block
;
position
:
static
;
opacity
:
1
;
width
:
auto
;
height
:
auto
}
.excel-model
{
display
:
inline-block
;
width
:
110px
;
height
:
48px
;
line-height
:
48px
;
padding
:
0
0
0
50px
;
margin
:
0
200px
;
background
:
url(../images/excel.png)
no-repeat
left
center
}
.panel-input
{
display
:
inline-block
;
width
:
100%
}
.panel-col
,
.panel-col2
{
float
:
left
;
width
:
150px
;
margin
:
0
10px
10px
}
.panel-col2
{
width
:
280px
}
=======
ul
{
margin-top
:
0
}
.admin-icon-yellow
{
color
:
#ffbe40
}
.admin-header
{
font-size
:
1.4rem
;
margin-bottom
:
0
}
.admin-header-list
a
:hover
:after
{
content
:
none
}
.admin-main
{
background
:
#f3f3f3
}
.admin-menu
{
position
:
fixed
;
z-index
:
10
;
bottom
:
30px
;
right
:
20px
}
.admin-sidebar
{
width
:
260px
;
min-height
:
100%
;
float
:
left
;
border-right
:
1px
solid
#cecece
}
.admin-sidebar-list
{
margin-bottom
:
0
}
.admin-sidebar-list
li
a
{
color
:
#5c5c5c
;
padding-left
:
24px
}
.admin-sidebar-list
li
:first-child
{
border-top
:
none
}
.admin-sidebar-sub
{
margin-top
:
0
;
margin-bottom
:
0
;
box-shadow
:
0
16px
8px
-15px
#e2e2e2
inset
;
background
:
#ececec
;
padding-left
:
24px
}
.admin-sidebar-sub
li
:first-child
{
border-top
:
1px
solid
#dedede
}
.admin-sidebar-panel
{
margin
:
10px
}
.admin-content
{
width
:
auto
;
overflow
:
hidden
;
height
:
100%
;
background
:
#fff
}
.admin-content-list
{
border
:
1px
solid
#e9ecf1
;
margin-top
:
0
}
.admin-content-list
li
{
border
:
1px
solid
#e9ecf1
;
border-width
:
0
1px
;
margin-left
:
-1px
}
.admin-content-list
li
:first-child
{
border-left
:
none
}
.admin-content-list
li
:last-child
{
border-right
:
none
}
.admin-content-table
a
{
color
:
#535353
}
.admin-content-file
{
margin-bottom
:
0
;
color
:
#666
}
.admin-content-file
p
{
margin
:
0
0
5px
0
;
font-size
:
1.4rem
}
.admin-content-file
li
{
padding
:
10px
0
}
.admin-content-file
li
:first-child
{
border-top
:
none
}
.admin-content-file
li
:last-child
{
border-bottom
:
none
}
.admin-content-file
li
.am-progress
{
margin-bottom
:
4px
}
.admin-content-file
li
.am-progress-bar
{
line-height
:
14px
}
.admin-content-task
{
margin-bottom
:
0
}
.admin-content-task
li
{
padding
:
5px
0
;
border-color
:
#eee
}
.admin-content-task
li
:first-child
{
border-top
:
none
}
.admin-content-task
li
:last-child
{
border-bottom
:
none
}
.admin-task-meta
{
font-size
:
1.2rem
;
color
:
#999
}
.admin-task-bd
{
font-size
:
1.4rem
;
margin-bottom
:
5px
}
.admin-content-comment
{
margin-bottom
:
0
}
.admin-content-comment
.am-comment-bd
{
font-size
:
1.4rem
}
.admin-content-pagination
{
margin-bottom
:
0
}
.admin-content-pagination
li
a
{
padding
:
4px
8px
}
@media
only
screen
and
(
min-width
:
641px
){
.admin-sidebar
{
display
:
block
;
position
:
static
;
background
:
none
}
.admin-offcanvas-bar
{
position
:
static
;
width
:
auto
;
background
:
none
;
-webkit-transform
:
translate3d
(
0
,
0
,
0
);
-ms-transform
:
translate3d
(
0
,
0
,
0
);
transform
:
translate3d
(
0
,
0
,
0
)}
.admin-offcanvas-bar
:after
{
content
:
none
}}
@media
only
screen
and
(
max-width
:
640px
){
.admin-sidebar
{
width
:
inherit
}
.admin-offcanvas-bar
{
background
:
#f3f3f3
}
.admin-offcanvas-bar
:after
{
background
:
#BABABA
}
.admin-sidebar-list
a
:hover
,
.admin-sidebar-list
a
:active
{
-webkit-transition
:
background-color
.3s
ease
;
transition
:
background-color
.3s
ease
;
background
:
#E4E4E4
}
.admin-content-list
li
{
padding
:
10px
;
border-width
:
1px
0
;
margin-top
:
-1px
}
.admin-content-list
li
:first-child
{
border-top
:
none
}
.admin-content-list
li
:last-child
{
border-bottom
:
none
}
.admin-form-text
{
text-align
:
left
!important
}}
.user-info
{
margin-bottom
:
15px
}
.user-info
.am-progress
{
margin-bottom
:
4px
}
.user-info
p
{
margin
:
5px
}
.user-info-order
{
font-size
:
1.4rem
}
.error-log
.am-pre-scrollable
{
max-height
:
40rem
}
.table-main
{
font-size
:
1.4rem
;
padding
:
.5rem
}
.table-main
button
{
background
:
#fff
}
.table-check
{
width
:
30px
}
.table-id
{
width
:
50px
}
@media
only
screen
and
(
max-width
:
640px
){
.table-select
{
margin-top
:
10px
;
margin-left
:
5px
}}
.gallery-list
li
{
padding
:
10px
}
.gallery-list
a
{
color
:
#666
}
.gallery-list
a
:hover
{
color
:
#3bb4f2
}
.gallery-title
{
margin-top
:
6px
;
font-size
:
1.4rem
}
.gallery-desc
{
font-size
:
1.2rem
;
margin-top
:
4px
}
.page-404
{
background
:
#fff
;
border
:
none
;
width
:
200px
;
margin
:
0
auto
}
.fixed-layout
,
.fixed-layout
body
{
height
:
100%
;
overflow
:
hidden
}
.fixed-layout
.admin-header
{
position
:
fixed
;
top
:
0
;
left
:
0
;
right
:
0
;
z-index
:
1500
}
.fixed-layout
.admin-main
{
position
:
relative
;
height
:
100%
;
padding-top
:
51px
}
.fixed-layout
.admin-content
,
.fixed-layout
.admin-sidebar
{
height
:
100%
;
overflow-x
:
hidden
;
overflow-y
:
scroll
}
.fixed-layout
.admin-sidebar.am-active
{
z-index
:
1600
}
input
[
type
=
file
]
{
display
:
block
;
opacity
:
0
;
height
:
60px
;
width
:
100px
;
position
:
absolute
;
z-index
:
99
}
.form-horizontal
.form-group
{
margin-left
:
0px
;
margin-right
:
0px
}
.datepicker
{
display
:
none
;
position
:
absolute
;
padding
:
4px
;
margin-top
:
1px
;
direction
:
ltr
}
.datepicker.dropdown-menu
{
position
:
absolute
;
top
:
100%
;
left
:
0
;
z-index
:
1000
;
float
:
left
;
display
:
none
;
min-width
:
160px
;
list-style
:
none
;
background-color
:
#fff
;
border
:
1px
solid
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
5px
;
box-shadow
:
0
5px
10px
rgba
(
0
,
0
,
0
,
0.2
);
background-clip
:
padding-box
;
*
border-right-width
:
2px
;
*
border-bottom-width
:
2px
;
color
:
#333
;
font-size
:
13px
;
line-height
:
18px
}
.datepicker.dropdown-menu
th
{
padding
:
4px
5px
}
.datepicker.dropdown-menu
td
{
padding
:
4px
5px
}
.datepicker
table
{
border
:
0
;
margin
:
0
;
width
:
auto
}
.datepicker
table
tr
td
span
{
display
:
block
;
width
:
23%
;
height
:
54px
;
line-height
:
54px
;
float
:
left
;
margin
:
1%
;
cursor
:
pointer
}
.datepicker
td
{
text-align
:
center
;
width
:
20px
;
height
:
20px
;
border
:
0
;
font-size
:
12px
;
padding
:
4px
8px
;
background
:
#fff
;
cursor
:
pointer
}
.datepicker
td
.active.day
,
.datepicker
td
.active.year
{
background
:
#2ba6cb
}
.datepicker
td
.old
,
.datepicker
td
.new
{
color
:
#999
}
.datepicker
td
span
.active
{
background
:
#2ba6cb
}
.datepicker
td
.day.disabled
{
color
:
#ccc
}
.datepicker
th
{
text-align
:
center
;
width
:
20px
;
height
:
20px
;
border
:
0
;
font-size
:
12px
;
padding
:
4px
8px
;
background
:
#fff
;
cursor
:
pointer
}
.datepicker
th
.active.day
,
.datepicker
th
.active.year
{
background
:
#2ba6cb
}
.datepicker
th
.date-switch
{
width
:
145px
}
.datepicker
th
span
.active
{
background
:
#2ba6cb
}
.datepicker
.cw
{
font-size
:
10px
;
width
:
12px
;
padding
:
0
2px
0
5px
;
vertical-align
:
middle
}
.datepicker.days
div
.datepicker-days
{
display
:
block
}
.datepicker.months
div
.datepicker-months
{
display
:
block
}
.datepicker.years
div
.datepicker-years
{
display
:
block
}
.datepicker
thead
tr
:first-child
th
{
cursor
:
pointer
}
.datepicker
thead
tr
:first-child
th
.cw
{
cursor
:
default
;
background-color
:
transparent
}
.datepicker
tfoot
tr
:first-child
th
{
cursor
:
pointer
}
.datepicker-inline
{
width
:
220px
}
.datepicker-rtl
{
direction
:
rtl
}
.datepicker-rtl
table
tr
td
span
{
float
:
right
}
.datepicker-dropdown
{
top
:
0
;
left
:
0
}
.datepicker-dropdown
:before
{
content
:
''
;
display
:
inline-block
;
border-left
:
7px
solid
transparent
;
border-right
:
7px
solid
transparent
;
border-bottom
:
7px
solid
#ccc
;
border-bottom-color
:
1px
solid
rgba
(
0
,
0
,
0
,
0.2
);
position
:
absolute
;
top
:
-7px
;
left
:
6px
}
.datepicker-dropdown
: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
}
.datepicker
>
div
,
.datepicker-dropdown
::before
,
.datepicker-dropdown
::after
{
display
:
none
}
.datepicker-close
{
position
:
absolute
;
top
:
-30px
;
right
:
0
;
width
:
15px
;
height
:
30px
;
padding
:
0
;
display
:
none
}
.table-striped
.datepicker
table
tr
td
,
.table-striped
.datepicker
table
tr
th
{
background-color
:
transparent
}
.panel-default
.panel-heading
{
border-top
:
1px
solid
#e7e7e7
}
.red
{
color
:
red
;
font-family
:
bold
}
input
[
type
=
date
],
input
[
type
=
time
],
input
[
type
=
datetime-local
],
input
[
type
=
month
]
{
line-height
:
0
!important
}
.show-grid
{
padding
:
10px
}
.brandBtn-group
{
width
:
150px
;
float
:
left
;
margin-right
:
8px
}
.brandBtn-group-lg
{
width
:
280px
}
.contentpanel
td
a
{
margin
:
0
3px
}
.mainwrapper
.toggle-table
tr
{
cursor
:
pointer
}
.mainwrapper
.toggle-table
tr
.level1
td
:nth-of-type
(
1
)
{
text-indent
:
2px
}
.mainwrapper
.toggle-table
tr
.level2
td
:nth-of-type
(
1
)
{
text-indent
:
15px
}
.mainwrapper
.toggle-table
tr
.level3
td
:nth-of-type
(
1
)
{
text-indent
:
30px
}
.pattrscroll
{
background
:
#F7F7F7
}
.pattrscroll
ul
{
padding-left
:
0
}
.pattrscroll
li
{
cursor
:
pointer
}
.mainwrapper
.list-group-item.level1
{
text-indent
:
2px
}
.mainwrapper
.list-group-item.level2
{
text-indent
:
15px
}
.mainwrapper
.list-group-item.level3
{
text-indent
:
30px
}
.attr-item-active
{
background
:
#428bca
;
color
:
#fff
}
.pannel-scroll
{
height
:
500px
;
overflow-y
:
scroll
;
overflow-x
:
hidden
}
.attr-select
{
display
:
block
;
height
:
40px
;
line-height
:
40px
;
border
:
1px
solid
#ccc
;
border-radius
:
3px
}
#limit-table-box
table
{
vertical-align
:
middle
}
#limit-table-box
table
th
,
#limit-table-box
table
td
{
text-align
:
center
;
vertical-align
:
middle
}
#limit-table-box
table
div
.checkbox
label
{
height
:
13px
}
#limit-table-box
table
.cover-img
{
width
:
100px
}
#limit-table-box
table
.width50
{
width
:
50px
;
text-align
:
center
}
.height40
{
height
:
40px
;
line-height
:
40px
}
.edit-cover-img
{
width
:
100px
;
margin
:
0
15px
;
float
:
left
}
.quota-text
,
.quota-img
,
.quota-video
{
width
:
300px
;
margin-bottom
:
15px
}
.quota-text
img
,
.quota-img
img
,
.quota-video
img
{
width
:
100%
}
#text-editor
{
width
:
100%
;
max-width
:
100%
;
min-width
:
100%
;
height
:
300px
;
max-height
:
300px
;
min-height
:
300px
}
.product-detail
input
[
type
=
"
text
"
]
{
width
:
100px
}
.main-table
{
-display
:
none
}
.bulk-import
{
display
:
none
}
#upload-input
{
display
:
inline-block
;
position
:
static
;
opacity
:
1
;
width
:
auto
;
height
:
auto
}
.excel-model
{
display
:
inline-block
;
width
:
110px
;
height
:
48px
;
line-height
:
48px
;
padding
:
0
0
0
50px
;
margin
:
0
200px
;
background
:
url(../images/excel.png)
no-repeat
left
center
}
.panel-input
{
display
:
inline-block
;
width
:
100%
}
.panel-col
,
.panel-col2
{
float
:
left
;
width
:
150px
;
margin
:
0
10px
10px
}
.panel-col2
{
width
:
280px
}
>>>>>>>
876ed17c45712b90ce4cdf08cf54e12354f6c96c
...
...
server/interface/goods.js
View file @
17203d7
...
...
@@ -142,7 +142,26 @@ exports.res = [
method
:
'POST'
,
url
:
'/product/batchUpdateProductPrice'
,
isJsonRaw
:
true
,
params
:
[]
params
:
[
{
name
:
'product_skn'
,
type
:
'number'
},
{
name
:
'sales_price'
,
type
:
'number'
},
{
name
:
'vip_discount_type'
,
type
:
'number'
},
{
name
:
'return_coin'
,
type
:
'number'
},
{
name
:
'vip_price'
,
type
:
'number'
},
{
name
:
'vip1_price'
,
type
:
'number'
},
{
name
:
'vip2_price'
,
type
:
'number'
},
{
name
:
'vip3_price'
,
type
:
'number'
}
]
},
{
//批量上传变价文本
route
:
'/goods/import'
,
method
:
'POST'
,
url
:
'/batch/import'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'file'
,
type
:
'number'
},
{
name
:
'type'
,
type
:
'String'
}
]
},
{
//商品管理 -> 价格管理 -> 品牌合作模式页面渲染
route
:
'/goods/brandCooperation/index'
,
...
...
server/interface/limitcode.js
deleted
100644 → 0
View file @
dbaeca4
exports
.
domain
=
require
(
'../config/common.js'
).
domain
;
//路由配置
exports
.
res
=
[
{
route
:
'/limit/index'
,
method
:
'GET'
,
view
:
'pages/limitcode/index'
,
src
:
'/limitcode/index'
,
noApi
:
true
,
data
:
{
pageTitle
:
'限购码列表'
,
createUrl
:
'/limit/code/add'
,
gridurl
:
'/limit/code/ajax/index'
}
},
{
//查看列表【列表能够正常查看】
route
:
'/limit/code/ajax/index'
,
method
:
'POST'
,
url
:
'/limitCode/getLimitCodeList'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'page'
,
type
:
'Number'
},
{
name
:
'size'
,
type
:
'Number'
},
{
name
:
'batchNo'
,
type
:
'String'
},
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'reqDepartment'
,
type
:
'String'
}
]
},
{
//添加限购码页面
route
:
'/limit/code/add'
,
method
:
'GET'
,
view
:
'pages/limitcode/edit'
,
data
:
{
action
:
"/limit/code/ajax/add"
,
type
:
"add"
,
data
:{
reqDepartment
:
"零售运营部/平台运营"
,
}
},
src
:
'/limitcode/edit'
},{
//添加限购码【验证成功】
route
:
'/limit/code/ajax/add'
,
method
:
'POST'
,
url
:
'/limitCode/addLimitCode'
,
isJsonRaw
:
true
,
params
:[
{
name
:
"name"
,
type
:
"String"
},
{
name
:
"limitTimes"
,
type
:
"Number"
},
{
name
:
"reqDepartment"
,
type
:
"String"
},
{
name
:
"limitDateFrom"
,
type
:
"String"
},
{
name
:
"limitDateTo"
,
type
:
"String"
},
{
name
:
"describe"
,
type
:
"String"
},
{
name
:
"userUseLimit"
,
type
:
"Number"
},
{
name
:
"userTypeLimit"
,
type
:
"Number"
},
{
name
:
"limitSkn"
,
type
:
"String"
},
{
name
:
"creatorName"
,
type
:
"String"
},
{
name
:
"creatorId"
,
type
:
"Number"
},
{
name
:
"status"
,
type
:
"Number"
}
]
}
,{
route
:
'/limit/code/info/:id'
,
method
:
'GET'
,
view
:
'pages/limitcode/info'
,
url
:
"/limitCode/getLimitCode"
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'id'
,
type
:
'String'
}
]
}
,{
//修改优惠码页面
route
:
'/limit/code/update/:id'
,
method
:
'GET'
,
view
:
'pages/limitcode/edit'
,
url
:
"/limitCode/getLimitCode"
,
src
:
'/limitcode/edit'
,
isJsonRaw
:
true
,
data
:
{
action
:
"/limit/code/ajax/update"
,
type
:
"update"
,
},
params
:
[
{
name
:
'id'
,
type
:
'String'
}
]
}
,{
//更新限购码接口
route
:
'/limit/code/ajax/update'
,
method
:
'POST'
,
url
:
'/limitCode/updateLimitCode'
,
isJsonRaw
:
true
,
params
:[
{
name
:
"name"
,
type
:
"String"
},
{
name
:
"limitTimes"
,
type
:
"Number"
},
{
name
:
"reqDepartment"
,
type
:
"String"
},
{
name
:
"limitDateFrom"
,
type
:
"String"
},
{
name
:
"limitDateTo"
,
type
:
"String"
},
{
name
:
"describe"
,
type
:
"String"
},
{
name
:
"userUseLimit"
,
type
:
"Number"
},
{
name
:
"userTypeLimit"
,
type
:
"Number"
},
{
name
:
"limitSkn"
,
type
:
"String"
},
{
name
:
"creatorName"
,
type
:
"String"
},
{
name
:
"creatorId"
,
type
:
"Number"
},
{
name
:
"status"
,
type
:
"Number"
},
{
name
:
"id"
,
type
:
"Number"
}
]
}
,{
//修改限购码接口状态[待验证]
route
:
'/limit/code/auditLimitCode'
,
method
:
'POST'
,
view
:
'pages/limitcode/info'
,
url
:
"/limitCode/auditLimitCode"
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'id'
,
type
:
'Number'
},
{
name
:
'status'
,
type
:
'Number'
},
{
name
:
'reason'
,
type
:
'String'
}
]
}
]
\ No newline at end of file
server/interface/
coupon
.js → server/interface/
market
.js
View file @
17203d7
exports
.
domain
=
require
(
'../config/common.js'
).
domain
;
//路由配置
//
营销管理
路由配置
exports
.
res
=
[
{
route
:
'/coupon/index'
,
//营销码管理 -> 页面渲染
route
:
'/market/coupon/index'
,
method
:
'GET'
,
view
:
'pages/coupon/index'
,
src
:
'/coupon/index'
,
view
:
'pages/market/index'
,
src
:
'/market/coupon'
,
noApi
:
true
,
data
:
{
pageTitle
:
'优惠码列表'
,
createUrl
:
'/coupon/add'
,
gridurl
:
'/coupon/ajax/getPromotion'
,
createUrl
:
'/market/coupon/add'
,
gridurl
:
'/market/coupon/getPromotion'
// tabUrl: '/getCodeCount',
// sendUrl: '/sendPromotion',
// auditUrl: '/auditPromotion'
...
...
@@ -20,17 +21,8 @@ exports.res = [
},
{
route
:
'/getPromotionCode'
,
method
:
'POST'
,
url
:
'/promotioncode/getPromotionCode'
,
isJsonRaw
:
true
,
params
:
[{
name
:
'id'
,
type
:
'String'
}]
},
{
route
:
'/coupon/ajax/getPromotion'
,
//营销码管理 -> 列表数据
route
:
'/market/coupon/getPromotion'
,
method
:
'POST'
,
url
:
'/promotioncode/getPromotionCodeList'
,
isJsonRaw
:
true
,
...
...
@@ -54,7 +46,8 @@ exports.res = [
type
:
'String'
}]
},{
route
:
'/coupon/auditPromotion'
,
//营销码管理 -> 列表操作
route
:
'/market/coupon/auditPromotion'
,
method
:
'POST'
,
url
:
'/promotioncode/auditPromotionCode'
,
isJsonRaw
:
true
,
...
...
@@ -69,7 +62,8 @@ exports.res = [
type
:
'String'
}]
},
{
route
:
'/coupon/sendPromotion'
,
//营销码管理 -> 发放列表
route
:
'/market/coupon/sendPromotion'
,
method
:
'POST'
,
url
:
'/promotioncode/getPromotionCodeSendList'
,
isJsonRaw
:
true
,
...
...
@@ -80,32 +74,35 @@ exports.res = [
}
]
},
{
route
:
'/coupon/ajax/getCodeCount'
,
method
:
'POST'
,
url
:
'/promotioncode/getPromotionCodeCountByStatus'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'reqDepartment'
,
type
:
'String'
},
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'batchNo'
,
type
:
'Number'
}
{
//营销码管理 -> tab卡数据
route
:
'/market/coupon/getCodeCount'
,
method
:
'POST'
,
url
:
'/promotioncode/getPromotionCodeCountByStatus'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'reqDepartment'
,
type
:
'String'
},
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'batchNo'
,
type
:
'Number'
}
]
},
{
//添加优惠卷页面
route
:
'/coupon/add'
,
},
{
//营销码管理 -> 添加优惠码页面渲染
route
:
'/market/coupon/add'
,
method
:
'GET'
,
view
:
'pages/coupon/edit'
,
view
:
'pages/market/coupon-edit'
,
src
:
'/market/coupon-edit'
,
data
:
{
action
:
"/
coupon/action/add
"
,
action
:
"/
market/coupon/addCode
"
,
type
:
"add"
,
data
:{
limitTimes
:
"0"
,
...
...
@@ -116,31 +113,55 @@ exports.res = [
staff
:
"admin"
,
status
:
"0"
}
},
src
:
'/coupon/edit'
}
},
{
//编辑优惠卷页面
route
:
'/coupon/update/:id'
,
{
//营销码管理 -> 添加优惠码
route
:
'/market/coupon/addCode'
,
method
:
'POST'
,
url
:
'/promotioncode/addPromotionCode'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'limitTimes'
,
type
:
'String'
},
{
name
:
'code'
,
type
:
'String'
},
{
name
:
'describe'
,
type
:
'String'
},
{
name
:
'promotionInfo'
,
type
:
'String'
},
{
name
:
'userSourceLimit'
,
type
:
'String'
},
{
name
:
'userTypeLimit'
,
type
:
'String'
},
{
name
:
'creatorId'
,
type
:
'String'
},
{
name
:
'limitDateFrom'
,
type
:
'String'
},
{
name
:
'limitDateTo'
,
type
:
'String'
},
{
name
:
'createTime'
,
type
:
'String'
},
{
name
:
'reqDepartment'
,
type
:
'String'
},
{
name
:
'status'
,
type
:
'String'
},
{
name
:
'staff'
,
type
:
'String'
}
]
},
{
//营销码管理 -> 编辑优惠码页面渲染
route
:
'/market/coupon/update/:id'
,
method
:
'GET'
,
view
:
'pages/
coupon/
edit'
,
view
:
'pages/
market/coupon-
edit'
,
url
:
'/promotioncode/getPromotionCode'
,
isJsonRaw
:
true
,
data
:{
action
:
"/
coupon/action/updat
e"
,
action
:
"/
market/coupon/updateCod
e"
,
type
:
"update"
},
src
:
'/
coupon/
edit'
,
src
:
'/
market/coupon-
edit'
,
params
:[
{
name
:
"id"
,
type
:
"String"
}
]
},
{
//展示优惠卷详情
route
:
'/coupon/info/:id'
,
{
//营销码管理 -> 优惠码详情
route
:
'/market/coupon/info/:id'
,
method
:
'GET'
,
view
:
'pages/
coupon/
edit'
,
view
:
'pages/
market/coupon-
edit'
,
url
:
'/promotioncode/getPromotionCode'
,
isJsonRaw
:
true
,
src
:
'/
coupon/
edit'
,
src
:
'/
market/coupon-
edit'
,
data
:{
type
:
"info"
},
...
...
@@ -149,7 +170,8 @@ exports.res = [
]
},
{
route
:
'/checkPromotionCode'
,
//营销码管理 -> 验证优惠码
route
:
'/market/coupon/checkPromotionCode'
,
method
:
'POST'
,
url
:
'/promotioncode/checkPromotionCode'
,
isJsonRaw
:
true
,
...
...
@@ -161,29 +183,8 @@ exports.res = [
]
},
{
route
:
'/coupon/action/add'
,
method
:
'POST'
,
url
:
'/promotioncode/addPromotionCode'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'limitTimes'
,
type
:
'String'
},
{
name
:
'code'
,
type
:
'String'
},
{
name
:
'describe'
,
type
:
'String'
},
{
name
:
'promotionInfo'
,
type
:
'String'
},
{
name
:
'userSourceLimit'
,
type
:
'String'
},
{
name
:
'userTypeLimit'
,
type
:
'String'
},
{
name
:
'creatorId'
,
type
:
'String'
},
{
name
:
'limitDateFrom'
,
type
:
'String'
},
{
name
:
'limitDateTo'
,
type
:
'String'
},
{
name
:
'createTime'
,
type
:
'String'
},
{
name
:
'reqDepartment'
,
type
:
'String'
},
{
name
:
'status'
,
type
:
'String'
},
{
name
:
'staff'
,
type
:
'String'
}
]
},
{
route
:
'/coupon/action/update'
,
//营销码管理 -> 编辑优惠码
route
:
'/market/coupon/updateCode'
,
method
:
'POST'
,
url
:
'/promotioncode/updatePromotionCode'
,
isJsonRaw
:
true
,
...
...
@@ -203,5 +204,128 @@ exports.res = [
{
name
:
'reqDepartment'
,
type
:
'String'
},
{
name
:
'status'
,
type
:
'String'
}
]
},
{
//限购码管理 -> 页面渲染
route
:
'/market/limitcode/index'
,
method
:
'GET'
,
view
:
'pages/market/index'
,
src
:
'/market/limitcode'
,
noApi
:
true
,
data
:
{
pageTitle
:
'限购码列表'
,
createUrl
:
'/market/limitcode/add'
,
gridurl
:
'/market/limitcode/getLimitCode'
}
},
{
//限购码管理 -> 限购码列表
route
:
'/market/limitcode/getLimitCode'
,
method
:
'POST'
,
url
:
'/limitCode/getLimitCodeList'
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'page'
,
type
:
'Number'
},
{
name
:
'size'
,
type
:
'Number'
},
{
name
:
'batchNo'
,
type
:
'String'
},
{
name
:
'name'
,
type
:
'String'
},
{
name
:
'reqDepartment'
,
type
:
'String'
}
]
},
{
//限购码管理 -> 添加限购码页面渲染
route
:
'/market/limitcode/add'
,
method
:
'GET'
,
view
:
'pages/market/limitcode-edit'
,
data
:
{
action
:
"/market/limitCode/addLimitCode"
,
type
:
"add"
,
data
:{
reqDepartment
:
"零售运营部/平台运营"
,
}
},
src
:
'/limitcode/edit'
},
{
//限购码管理 -> 添加限购码
route
:
'/market/limitCode/addLimitCode'
,
method
:
'POST'
,
url
:
'/limitCode/addLimitCode'
,
isJsonRaw
:
true
,
params
:[
{
name
:
"name"
,
type
:
"String"
},
{
name
:
"limitTimes"
,
type
:
"Number"
},
{
name
:
"reqDepartment"
,
type
:
"String"
},
{
name
:
"limitDateFrom"
,
type
:
"String"
},
{
name
:
"limitDateTo"
,
type
:
"String"
},
{
name
:
"describe"
,
type
:
"String"
},
{
name
:
"userUseLimit"
,
type
:
"Number"
},
{
name
:
"userTypeLimit"
,
type
:
"Number"
},
{
name
:
"limitSkn"
,
type
:
"String"
},
{
name
:
"creatorName"
,
type
:
"String"
},
{
name
:
"creatorId"
,
type
:
"Number"
},
{
name
:
"status"
,
type
:
"Number"
}
]
},
{
//限购码管理 -> 查看限购码页面渲染
route
:
'/market/limitcode/info/:id'
,
method
:
'GET'
,
view
:
'pages/market/limitcode-info'
,
url
:
"/limitCode/getLimitCode"
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'id'
,
type
:
'String'
}
]
}
,{
//限购码管理 -> 编辑限购码页面渲染
route
:
'/market/limitcode/update/:id'
,
method
:
'GET'
,
view
:
'pages/market/limitcode-edit'
,
url
:
"/limitCode/getLimitCode"
,
src
:
'/market/limitcode-edit'
,
isJsonRaw
:
true
,
data
:
{
action
:
"/market/limitcode/updateLimitCode"
,
type
:
"update"
,
},
params
:
[
{
name
:
'id'
,
type
:
'String'
}
]
}
,{
//限购码管理 -> 编辑限购码接口
route
:
'/market/limitcode/updateLimitCode'
,
method
:
'POST'
,
url
:
'/limitCode/updateLimitCode'
,
isJsonRaw
:
true
,
params
:[
{
name
:
"name"
,
type
:
"String"
},
{
name
:
"limitTimes"
,
type
:
"Number"
},
{
name
:
"reqDepartment"
,
type
:
"String"
},
{
name
:
"limitDateFrom"
,
type
:
"String"
},
{
name
:
"limitDateTo"
,
type
:
"String"
},
{
name
:
"describe"
,
type
:
"String"
},
{
name
:
"userUseLimit"
,
type
:
"Number"
},
{
name
:
"userTypeLimit"
,
type
:
"Number"
},
{
name
:
"limitSkn"
,
type
:
"String"
},
{
name
:
"creatorName"
,
type
:
"String"
},
{
name
:
"creatorId"
,
type
:
"Number"
},
{
name
:
"status"
,
type
:
"Number"
},
{
name
:
"id"
,
type
:
"Number"
}
]
}
,{
//修改限购码接口状态[待验证]
route
:
'/market/limitcode/auditLimitCode'
,
method
:
'POST'
,
view
:
'pages/limitcode/info'
,
url
:
"/limitCode/auditLimitCode"
,
isJsonRaw
:
true
,
params
:
[
{
name
:
'id'
,
type
:
'Number'
},
{
name
:
'status'
,
type
:
'Number'
},
{
name
:
'reason'
,
type
:
'String'
}
]
}
]
]
\ No newline at end of file
...
...
server/views/pages/goods/index.html
View file @
17203d7
...
...
@@ -164,7 +164,7 @@
<input
id=
"upload-input"
class=
"btn btn-default"
type=
"file"
>
<input
id=
"sure-upload"
class=
"btn btn-default"
type=
"button"
value=
"导入"
>
<a
class=
"excel-model"
href=
"{{domain}}/common/batchUpdatePrice.xlsx"
>
表头下载
</a>
<input
class=
"btn btn-
default
"
type=
"button"
value=
"确定变价"
>
<input
class=
"btn btn-
primary
"
type=
"button"
value=
"确定变价"
>
</div>
</div>
<script
id=
"template"
type=
"text/template"
>
...
...
server/views/pages/goods/price-change.html
deleted
100644 → 0
View file @
dbaeca4
<div
class=
"pageheader"
>
<div
class=
"media"
>
<div
class=
"pageicon pull-left"
>
<i
class=
"fa fa-th-list"
></i>
</div>
<div
class=
"media-body"
>
<ul
class=
"breadcrumb"
>
<li><a
href=
"#"
><i
class=
"glyphicon glyphicon-home"
></i></a></li>
<li><a
href=
"#"
>
商品管理
</a></li>
<li>
代销变价
</li>
</ul>
<h4>
代销变价
</h4>
</div>
</div>
<!-- media -->
</div>
<div
class=
"contentpanel"
>
<div
class=
"panel panel-default"
style=
"margin-bottom:10px;"
>
<div
class=
"panel-body"
>
<div
class=
"row"
>
<div
class=
"panel-col2"
>
<input
id=
"skn"
class=
"form-control panel-input"
type=
"text"
placeholder=
"请输入SKN"
>
</div>
<div
class=
"panel-col"
>
<select
name=
"shop"
id=
"shop"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
请选择店铺
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"brand"
id=
"brand"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
请选择品牌
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"supplier"
id=
"supplier"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
请选择供应商
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"jit"
id=
"jit"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
是否JIT商品
</option>
<option
value=
"Y"
>
是
</option>
<option
value=
"N"
>
否
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"status"
id=
"status"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
上架状态
</option>
<option
value=
"200"
>
上架
</option>
<option
value=
"0"
>
下架
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"stock"
id=
"stock"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
库存情况
</option>
<option
value=
"1"
>
有库存
</option>
<option
value=
"0"
>
无库存
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"sex"
id=
"sex"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
选择性别
</option>
<option
value=
"1"
>
男
</option>
<option
value=
"2"
>
女
</option>
<option
value=
"3"
>
通用
</option>
</select>
</div>
<div
class=
"panel-col"
>
<select
name=
"cate"
id=
"cate"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
请选择一级类目
</option>
</select>
</div>
<a
id=
"filter-btn"
href=
"javascript:;"
class=
"btn btn-info"
>
筛选
</a>
<a
id=
"all-btn"
href=
"javascript:;"
class=
"btn btn-info"
>
全部
</a>
</div>
<div
class=
"row"
style=
"margin: 10px 0 0 0;"
>
<a
id=
"import-btn"
href=
"javascript:;"
class=
"btn btn-info"
>
批量变价
</a>
</div>
</div>
</div>
<div
class=
"panel main-table"
>
<div
class=
"dataTables_wrapper no-footer"
id=
"basicTable"
>
</div>
</div>
<div
class=
"panel bulk-import"
>
<div
class=
"import-hd"
>
<label>
选择文件
</label>
<input
id=
"upload-input"
class=
"btn btn-default"
type=
"file"
>
<input
id=
"sure-upload"
class=
"btn btn-default"
type=
"button"
value=
"导入"
>
<a
class=
"excel-model"
href=
"{{domain}}/common/batchUpdatePrice.xlsx"
>
表头下载
</a>
<input
class=
"btn btn-default"
type=
"button"
value=
"确定变价"
>
</div>
</div>
</div>
<input
type=
"hidden"
id=
"btnAuthority"
value=
"{{bottons}}"
>
<input
type=
"hidden"
id=
"gridurl"
value=
"{{gridurl}}"
>
<script
id=
"template"
type=
"text/template"
>
<
tr
class
=
"product-detail"
>
<
td
colspan
=
"15"
>
<
form
>
<
table
class
=
"table table-striped table-bordered"
>
<
tr
>
<
th
>
SKN
<
/th>
<
th
>
销售价
<
/th
>
<
th
>
VIP
折扣类型
<
/th
>
<
th
>
VIP
价
<
/th
>
<
th
>
白金价
<
/th
>
<
th
>
金卡价
<
/th
>
<
th
>
银卡价
<
/th
>
<
th
>
返
YOHO
币
<
/th
>
<
th
>
进货价
<
/th
>
<
th
>
进货折扣
<
/th
>
<
th
>
成本
<
/th
>
<
th
>
操作
<
/th
>
<
/tr
>
<
tr
>
<
td
class
=
"skn-value"
><
/td
>
<
td
>
<
input
class
=
"sale-price"
type
=
"text"
value
=
"{sales_price}"
>
<
/td
>
<
td
>
<
select
class
=
"discount-select"
>
<
option
value
=
"1"
>
正常折扣
<
/option
>
<
option
value
=
"3"
>
无折扣
<
/option
>
<
option
value
=
"4"
>
固定折扣
<
/option
>
<
option
value
=
"5"
>
自定义折扣
<
/option
>
<
/select
>
<
/td
>
<
td
>
<
input
class
=
"vip-price"
type
=
"text"
value
=
"{vip_price}"
>
<
/td
>
<
td
>
<
input
class
=
"vip3-price"
type
=
"text"
value
=
"{vip3_price}"
disabled
>
<
/td
>
<
td
>
<
input
class
=
"vip2-price"
type
=
"text"
value
=
"{vip2_price}"
disabled
>
<
/td
>
<
td
>
<
input
class
=
"vip1-price"
type
=
"text"
value
=
"{vip1_price}"
disabled
>
<
/td
>
<
td
>
<
input
class
=
"return-coin"
type
=
"text"
value
=
"{return_coin}"
>
<
/td
>
<
td
>
{
purchase_price
}
<
/td
>
<
td
>
{
purchase_discount
}
<
/td
>
<
td
>
{
cost_price
}
<
/td
>
<
td
><
a
class
=
"sure-modify"
href
=
"javascript:;"
>
确认修改
<
/a></
td
>
<
/tr
>
<
/table
>
<
/form
>
<
/td
>
<
/tr
>
</script>
\ No newline at end of file
server/views/pages/limit/add.html
View file @
17203d7
...
...
@@ -55,17 +55,17 @@
<div
class=
"panel-collapse collapse in"
>
<div
class=
"panel-body"
>
<div
class=
"row"
>
<div
class=
"col-md-2
height40
"
>
<div
class=
"col-md-2"
>
<label>
是否热门:
</label>
<label
class=
"radio-inline"
><input
type=
"radio"
name=
"hotFlag"
value=
"1"
>
是
</label>
<input
type=
"hidden"
value=
"{{hotFlag}}"
id=
"hotFlag"
for=
"radio"
>
</div>
<div
class=
"col-md-3 height
4
0"
>
<div
class=
"col-md-3 height
6
0"
>
<label>
热门发售排序:
</label>
<label><input
id=
"orderBy"
value=
"{{orderBy}}"
type=
"text"
class=
"form-control"
placeholder=
""
></label>
<p>
(提示:数字越大越靠前)
</p>
</div>
<div
class=
"col-md-3
height40
"
>
<div
class=
"col-md-3"
>
<label>
未发售排序:
</label>
<label><input
id=
"notSaleOrderBy"
value=
"{{notSaleOrderBy}}"
type=
"text"
class=
"form-control"
placeholder=
""
></label>
</div>
...
...
server/views/pages/limitcode/index.html
deleted
100644 → 0
View file @
dbaeca4
<div
class=
"pageheader"
>
<div
class=
"media"
>
<div
class=
"pageicon pull-left"
>
<i
class=
"fa fa-th-list"
></i>
</div>
<div
class=
"media-body"
>
<ul
class=
"breadcrumb"
>
<li><a
href=
""
><i
class=
"glyphicon glyphicon-home"
></i></a></li>
<li><a
href=
""
>
优惠码管理
</a></li>
<li>
{{pageTitle}}
</li>
</ul>
<div>
<div
style=
"width: 30%;float: left;"
>
<h4>
{{pageTitle}}
</h4>
</div>
</div>
</div>
</div>
</div>
<div
class=
"contentpanel"
>
<div
class=
"panel panel-default"
style=
"margin-bottom:10px;"
>
<div
class=
"panel-heading"
>
<a
href=
"{{createUrl}}"
class=
"btn btn-success"
><i
class=
"fa fa-plus"
></i>
添加
</a>
</div>
<div
class=
"panel-body"
>
<div
class=
"row"
>
<div
class=
"panel-col2"
>
<input
id=
"batchNo"
class=
"form-control panel-input"
type=
"text"
placeholder=
"请输入批次号"
>
</div>
<div
class=
"panel-col2"
>
<input
id=
"name"
class=
"form-control panel-input"
type=
"text"
placeholder=
"请输入名称"
>
</div>
<div
class=
"panel-col"
>
<select
id=
"reqDepartment"
name=
"filter-dep"
tabindex=
"-1"
title=
""
class=
"form-control"
>
<option
value=
"-1"
>
全部
</option>
<option
value=
"商品部"
>
商品部
</option>
<option
value=
"市场部"
>
市场部
</option>
<option
value=
"会员部"
>
会员部
</option>
<option
value=
"零售运营部"
>
零售运营部
</option>
<option
value=
"品牌合作部"
>
品牌合作部
</option>
<option
value=
"零售业务部"
>
零售业务部
</option>
<option
value=
"潮流资源部"
>
潮流资源部
</option>
<option
value=
"其他"
>
其他
</option>
</select>
</div>
<a
id=
"btn-search"
href=
"javascript:;"
class=
"btn btn-info"
>
筛选
</a>
<a
id=
"btn-reset"
href=
"javascript:;"
class=
"btn btn-info"
>
全部
</a>
</div>
</div>
</div>
<div
class=
"panel panel-primary-head"
>
<div
id=
"basicTable_wrapper"
class=
"dataTables_wrapper no-footer"
>
<div
id=
"table-tabs"
class=
"list-tabs"
>
</div>
<div
id=
"basicTable"
>
</div>
</div>
</div>
</div>
<input
type=
"hidden"
id=
"btnAuthority"
value=
"{{bottons}}"
>
<input
type=
"hidden"
id=
"gridurl"
value=
"{{gridurl}}"
>
<script
id=
"template"
type=
"text/template"
>
<
p
>
{
title
}
<
/p
>
<
label
class
=
"col-sm-3 control-label"
>*
请填写原因
<
/label
>
<
input
id
=
"reason"
type
=
"text"
class
=
"form-control"
name
=
"agreement-code"
style
=
"width:280px;"
>
</script>
server/views/pages/
coupon/
edit.html → server/views/pages/
market/coupon-
edit.html
View file @
17203d7
server/views/pages/
coupon
/index.html → server/views/pages/
market
/index.html
View file @
17203d7
...
...
@@ -7,7 +7,10 @@
<ul
class=
"breadcrumb"
>
<li><a
href=
""
><i
class=
"glyphicon glyphicon-home"
></i></a></li>
<li><a
href=
""
>
优惠码管理
</a></li>
<li>
{{pageTitle}}
</li>
<li>
{{# secondTitle}}{{.}}{{/ secondTitle}}
{{^ secondTitle}}{{pageTitle}}{{/ secondTitle}}
</li>
</ul>
<div>
...
...
server/views/pages/
limitcode/
edit.html → server/views/pages/
market/limitcode-
edit.html
View file @
17203d7
server/views/pages/
limitcode/
info.html → server/views/pages/
market/limitcode-
info.html
View file @
17203d7
Please
register
or
login
to post a comment