Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
max_android_panel
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Zhang Xin
max_android_panel
Commits
510d6966
Commit
510d6966
authored
Jul 24, 2018
by
yaxiLiuu
Browse files
Options
Browse Files
Download
Plain Diff
fixed the conflict
parents
9b43094c
e739c04e
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
329 additions
and
113 deletions
+329
-113
client/actions/getStore.js
+1
-1
client/actions/uploadError.js
+25
-12
client/actions/userinfo.js
+33
-13
client/components/CommonComponent/ClockComponent/ClockComponent.jsx
+3
-3
client/components/CommonComponent/HeaderComponent/index.css
+1
-1
client/components/CommonComponent/ImgToolComponent/index.css
+13
-0
client/components/OtherQuestionComponent/index.css
+1
-0
client/components/ReportDamageListComponent/DamageItemComponent/DamageItem.jsx
+3
-3
client/components/ReportDamageListComponent/DamageItemComponent/index.css
+26
-21
client/components/TroubleComponent/TroubleItemComponent/TroubleItemComponent.jsx
+34
-5
client/containers/ChooseTaskContainer/ChooseTaskContainer.jsx
+27
-11
client/containers/FinishAskContainer/FinishAskContainer.jsx
+68
-10
client/containers/HomeContainer/HomeContainer.jsx
+3
-2
client/containers/PageContainer/PageContainer.jsx
+56
-13
client/containers/ReportDamagesListContainer/ReportDamagesListContainer.jsx
+2
-2
client/containers/ReportDamagesListContainer/index.css
+3
-1
client/containers/TextAreaContainer/TextAreaContainer.jsx
+2
-5
client/containers/TroubleContainer/TroubleContainer.jsx
+8
-5
client/css/common.css
+2
-0
client/css/font.css
+12
-0
client/css/reset.css
+1
-1
client/env/development.js
+3
-2
client/index.html
+2
-2
No files found.
client/actions/getStore.js
View file @
510d6966
...
...
@@ -42,7 +42,7 @@ const getStoreInfo = (storeId)=>{
credentials
:
'include'
,
method
:
'POST'
,
mode
:
'cors'
,
headers
:
myHeaders
,
headers
:
{
'Content-Type'
:
'application/json'
}
,
body
:
JSON
.
stringify
(
bodyData
)
}).
then
((
response
)
=>
response
.
json
())
.
then
(
json
=>
{
...
...
client/actions/uploadError.js
View file @
510d6966
...
...
@@ -2,23 +2,36 @@ import fetch from 'isomorphic-fetch'
import
actionType
from
'../actiontype/error'
let
domain
=
ENV
.
domain
;
const
uploadError
=
()
=>
{
var
myHeaders
=
new
Headers
({
'Access-Control-Allow-Origin'
:
'*'
,
// 'Content-Type': 'text/plain;charset=UTF-8',
// 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Content-Type'
:
'application/json; charset=UTF-8'
,
});
const
uploadError
=
(
info
)
=>
{
console
.
log
(
"uploadError "
,
info
)
let
bodyData
=
{
warehouseId
:
info
.
storeId
,
exceptionType
:
info
.
exceptionType
,
taskId
:
info
.
taskId
};
return
(
dispatch
=>
{
// fetch(domain + '/web/pad_warehouse/getMachineData.action
',{
//
credentials : 'include',
//
method : 'POST',
//
mode : 'cors',
// body : {}
//
// }).then((response)=>response.json())
// .then(json=>{
// console.log(json);
// }).catch(e=>{console.error(e)})
console
.
log
(
"uploadError"
)
fetch
(
domain
+
'/machine_pad/flat_warn_record
'
,{
credentials
:
'include'
,
method
:
'POST'
,
mode
:
'cors'
,
headers
:
myHeaders
,
body
:
JSON
.
stringify
(
bodyData
)
}).
then
((
response
)
=>
response
.
json
())
.
then
(
json
=>
{
console
.
log
(
json
);
}).
catch
(
e
=>
{
console
.
error
(
e
)});
})
};
const
addErrorInfo
=
(
errMsg
)
=>
{
console
.
log
(
"errMsg ,"
,
errMsg
)
return
{
type
:
actionType
.
ADDERRORINFO
,
errMsg
...
...
client/actions/userinfo.js
View file @
510d6966
import
fetch
from
'isomorphic-fetch'
;
import
actionTypes
from
'../actiontype/user'
import
{
saveHeaderInfo
}
from
'./initHeader'
import
{
addErrorInfo
}
from
'./uploadError'
const
domain
=
ENV
.
domain
;
let
json
=
{
...
...
@@ -10,7 +11,7 @@ let json = {
"success"
:
true
},
"data"
:
{
"types"
:
'
Trouble
'
,
"types"
:
'
ER
'
,
"employee"
:{
"id"
:
5
,
"employeeName"
:
"机器库管员"
,
...
...
@@ -26,23 +27,42 @@ const saveUserinfo = (data)=>{
}
};
var
myHeaders
=
new
Headers
({
'Access-Control-Allow-Origin'
:
'*'
,
// 'Content-Type': 'text/plain;charset=UTF-8',
// 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Content-Type'
:
'application/json; charset=UTF-8'
,
});
const
getUserinfo
=
(
info
)
=>
{
let
employeeId
=
info
.
employeeid
;
console
.
log
(
"getUserinfo "
,
info
)
let
employeeId
=
info
.
employeeId
;
let
bodyData
=
Object
.
assign
({},{
employeeId
})
return
(
dispatch
)
=>
{
dispatch
(
saveHeaderInfo
(
info
));
// fetch(domain + '/web/flush_image.action',{
// credentials : 'include',
// method : 'POST',
// mode : 'cors',
// body : {}
//
// }).then((response)=>response.json())
// .then(json=>{
// console.log(json);
// }).catch(e=>{console.error(e)})
fetch
(
domain
+
'machine_pad/get_alowed_task.action'
,{
credentials
:
'include'
,
method
:
'POST'
,
mode
:
'cors'
,
headers
:
myHeaders
,
body
:
JSON
.
stringify
(
bodyData
)
}).
then
((
response
)
=>
response
.
json
())
.
then
(
json
=>
{
console
.
log
(
json
);
// if(json.meta.success && json.data){
// dispatch(saveUserinfo(json.data));
// if(!json.data.types){
// dispatch(addErrorInfo('没有任务需要处理'))
// }
// }
}).
catch
(
e
=>
{
console
.
error
(
e
)})
if
(
json
.
meta
.
success
&&
json
.
data
){
dispatch
(
saveUserinfo
(
json
.
data
))
dispatch
(
saveUserinfo
(
json
.
data
));
if
(
!
json
.
data
.
types
){
dispatch
(
addErrorInfo
(
'没有任务需要处理'
))
}
}
}
...
...
client/components/CommonComponent/ClockComponent/ClockComponent.jsx
View file @
510d6966
...
...
@@ -13,7 +13,7 @@ export default class ClockComponent extends React.Component{
}
componentWillMount
(){
console
.
log
(
"componentWillMount"
)
console
.
log
(
"c
lock c
omponentWillMount"
)
let
{
totalTime
}
=
this
.
props
;
if
(
totalTime
&&
totalTime
>
0
){
this
.
setState
({
...
...
@@ -26,11 +26,11 @@ export default class ClockComponent extends React.Component{
}
componentWillReceiveProps
(){
console
.
log
(
"componentWillReceiveProps"
)
console
.
log
(
"c
lock c
omponentWillReceiveProps"
)
}
componentWillUnmount
(){
console
.
log
(
"componentWillUnmount"
)
console
.
log
(
"c
lock c
omponentWillUnmount"
)
window
.
clearTimeout
(
this
.
state
.
timer
);
this
.
setState
({
timer
:
null
,
...
...
client/components/CommonComponent/HeaderComponent/index.css
View file @
510d6966
...
...
@@ -33,7 +33,7 @@
border-left
:
0
solid
transparent
;
border-right
:
40px
solid
#34343e
;
top
:
0
;
right
:
0
;
right
:
-1px
;
}
.headerComponent
.homeHeader
.headerlogo
.logoImg
{
position
:
absolute
;
...
...
client/components/CommonComponent/ImgToolComponent/index.css
View file @
510d6966
...
...
@@ -33,4 +33,16 @@
position
:
absolute
;
top
:
-16px
;
right
:
-16px
}
.showBigImg
{
position
:
absolute
;
top
:
50%
;
left
:
50%
;
transform
:
translate
(
-50%
,
-50%
);
height
:
732px
;
width
:
976px
;
text-align
:
center
;
}
.showBigImg
>
img
{
height
:
100%
;
}
\ No newline at end of file
client/components/OtherQuestionComponent/index.css
View file @
510d6966
...
...
@@ -6,6 +6,7 @@
display
:
inline-block
;
position
:
relative
;
float
:
left
;
background
:
#ffffff
;
}
.editUploadItem
.closeBtn
{
width
:
32px
;
...
...
client/components/ReportDamageListComponent/DamageItemComponent/DamageItem.jsx
View file @
510d6966
...
...
@@ -20,7 +20,7 @@ export default class DamageItem extends React.Component{
return
(
<
div
className=
{
"damageProductItem"
}
>
<
span
onClick=
{
()
=>
{
deleteItem
(
inventoryLossId
)}
}
className=
{
"closeBtn"
}
>
×
</
span
>
<
span
onClick=
{
()
=>
{
deleteItem
(
inventoryLossId
)}
}
className=
{
"closeBtn
font50
"
}
>
×
</
span
>
<
div
className=
{
"productBaseInfo clearfix"
}
>
<
img
className=
{
"productImg"
}
src=
{
skuBaseInfoVo
.
skuImagePath
}
alt=
""
/>
<
div
className=
{
"baseNumber"
}
>
...
...
@@ -36,8 +36,8 @@ export default class DamageItem extends React.Component{
</
div
>
<
div
className=
{
"productOtherInfo"
}
>
<
div
className=
{
"locationAndStatusInfo"
}
>
<
p
className=
{
"location"
}
>
商品位置:
<
span
>
{
lossPosition
}
</
span
></
p
>
<
p
className=
{
"status"
}
>
商品状态:
<
span
>
{
packingStatus
}
</
span
></
p
>
<
p
className=
{
"location
font32
"
}
>
商品位置:
<
span
>
{
lossPosition
}
</
span
></
p
>
<
p
className=
{
"status
font32
"
}
>
商品状态:
<
span
>
{
packingStatus
}
</
span
></
p
>
</
div
>
<
div
className=
{
"damageImgs clearfix"
}
>
<
ImgToolComponent
noCloseBtn=
{
true
}
type=
{
"custom"
}
imgSrc
=
{
require
('
.
/
img
/
lol
.
gif
')}
></
ImgToolComponent
>
...
...
client/components/ReportDamageListComponent/DamageItemComponent/index.css
View file @
510d6966
...
...
@@ -5,46 +5,50 @@
border-radius
:
10px
;
display
:
inline-block
;
position
:
relative
;
float
:
left
;
background
:
#fff
;
}
.damageProductItem
.closeBtn
{
width
:
32
px
;
height
:
32
px
;
width
:
56
px
;
height
:
56
px
;
display
:
inline-block
;
border-radius
:
50%
;
background-color
:
#fe785b
;
font-weight
:
500
;
font-weight
:
bold
;
color
:
#ffffff
;
font-size
:
26px
;
line-height
:
27px
;
/* line-height: 28px; */
text-align
:
center
;
position
:
absolute
;
top
:
-
16
px
;
right
:
-
16px
top
:
-
28
px
;
right
:
-
28px
;
}
.damageProductItem
.productBaseInfo
{
border-bottom
:
1
px
dashed
#e5e5e5
;
border-bottom
:
2
px
dashed
#e5e5e5
;
padding-bottom
:
30px
;
}
.damageProductItem
.productBaseInfo
.productImg
{
display
:
inline-block
;
width
:
200
px
;
height
:
200
px
;
border
:
1
px
solid
#e5e5e5
;
width
:
198
px
;
height
:
198
px
;
border
:
2
px
solid
#e5e5e5
;
/*background-color: darkgoldenrod;*/
float
:
left
;
}
.damageProductItem
.productBaseInfo
.baseNumber
{
float
:
left
;
width
:
200px
;
margin-left
:
30px
;
width
:
315px
;
margin
:
0
30px
;
width
:
506px
;
overflow
:
hidden
;
white-space
:
nowrap
;
text-overflow
:
ellipsis
;
}
.damageProductItem
.productBaseInfo
.baseNumber
p
{
margin-top
:
8px
;
font-size
:
32px
;
line-height
:
44px
;
color
:
#333333
;
width
:
100%
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
.damageProductItem
.productBaseInfo
.baseNumber
.barcode
{}
.damageProductItem
.productBaseInfo
.baseNumber
.skuNumnber
{}
...
...
@@ -57,10 +61,11 @@
}
.damageProductItem
.productBaseInfo
.productCount
{
display
:
inline-block
;
padding-top
:
140px
;
float
:
righ
t
;
margin
:
0
20px
0
220px
;
/*padding-top: 140px;*/
float
:
lef
t
;
/*margin:0 20px 0 220px;*/
box-sizing
:
border-box
;
line-height
:
198px
;
}
.damageProductItem
.productBaseInfo
.productCount
.multipleIcon
{
font-size
:
32px
;
...
...
@@ -73,8 +78,8 @@
font-size
:
40px
;
}
.damageProductItem
.productOtherInfo
{
margin-top
:
16
px
;
width
:
10
80px
;
margin-top
:
24
px
;
width
:
10
0%
;
box-sizing
:
border-box
;
}
.damageProductItem
.productOtherInfo
.locationAndStatusInfo
{
...
...
@@ -91,7 +96,7 @@
margin-left
:
15px
;
}
.damageProductItem
.productOtherInfo
.damageImgs
{
margin-top
:
40
px
;
margin-top
:
32
px
;
}
.damageProductItem
.productOtherInfo
.damageImgs
.imgItem
{
width
:
90px
;
...
...
client/components/TroubleComponent/TroubleItemComponent/TroubleItemComponent.jsx
View file @
510d6966
import
React
from
'react'
;
import
ImageComponent
from
'../../CommonComponent/ImgToolComponent/CommonSmalContainer'
;
import
Button
from
'../../CommonComponent/ButtonComponent/ButtonComponent'
require
(
'./index.css'
)
export
default
class
TroubleItemComponent
extends
React
.
Component
{
constructor
(
props
){
super
(
props
)
this
.
state
=
{
text
:
''
text
:
''
,
imgStyle
:{
'height'
:
'100%'
,
}
}
this
.
reRreshImg
=
this
.
reRreshImg
.
bind
(
this
)
this
.
deleteImgById
=
this
.
deleteImgById
.
bind
(
this
)
this
.
confirmDeleteImg
=
this
.
confirmDeleteImg
.
bind
(
this
)
this
.
addImg
=
this
.
addImg
.
bind
(
this
)
this
.
showImg
=
this
.
showImg
.
bind
(
this
)
}
getDes
(
item
){
...
...
@@ -38,16 +44,38 @@ export default class TroubleItemComponent extends React.Component{
}
deleteImgById
(
fileId
){
console
.
log
(
"deleteImgById :"
,
fileId
)
console
.
log
(
"deleteImgById :"
,
fileId
);
let
{
hidePopup
}
=
this
.
props
;
let
props
=
this
.
props
;
let
{
deleteImg
}
=
props
;
let
item
=
props
.
item
;
let
errorId
=
item
.
id
;
let
type
=
item
.
type
;
console
.
log
(
errorId
,
type
,
fileId
)
console
.
log
(
errorId
,
type
,
fileId
);
hidePopup
()
deleteImg
(
errorId
,
type
,
fileId
)
}
confirmDeleteImg
(
fileId
){
let
{
showPopup
,
hidePopup
}
=
this
.
props
;
let
btnDom1
=
<
Button
key=
{
"confirmDeleteTroubleImg1"
}
style=
{
{
'width'
:
'260px'
}
}
text=
{
"取消"
}
option=
{
hidePopup
}
/>
let
btnDom2
=
<
Button
key=
{
"confirmDeleteTroubleImg2"
}
style=
{
{
'width'
:
'260px'
,
'marginLeft'
:
' 30px'
}
}
text=
{
"确定"
}
option=
{
()
=>
this
.
deleteImgById
(
fileId
)
}
/>
showPopup
({
popupText
:
'确定删除此照片吗'
,
popupButtons
:[
btnDom1
,
btnDom2
]
})
}
showImg
(
imgSrc
){
let
{
showPopup
,
hidePopup
}
=
this
.
props
;
let
showImgDom
=
<
div
onClick=
{
()
=>
hidePopup
()
}
className=
{
"showBigImg"
}
>
<
img
src=
{
imgSrc
}
alt=
""
/>
</
div
>;
showPopup
({
popupChild
:
showImgDom
});
}
render
(){
let
props
=
this
.
props
;
...
...
@@ -56,10 +84,11 @@ export default class TroubleItemComponent extends React.Component{
let
imgFiles
=
Array
.
isArray
(
item
.
files
)
?
item
.
files
.
map
((
f
,
k
)
=>
{
return
<
ImageComponent
key=
{
"troubleItemImg"
+
k
}
noCloseBtn=
{
false
}
handleClikCloseFunc
=
{()=
>
this.
deleteImgById
(f.id)}
handleClikImgFunc =
{
()
=>
{}
}
handleClikCloseFunc
=
{()=
>
this.
confirmDeleteImg
(f.id)}
handleClikImgFunc =
{
()
=>
{
this
.
showImg
(
f
.
filePath
)
}
}
type=
{
"custom"
}
imgSrc =
{
f
.
filePath
}
/
>
}) : null;
return (
...
...
client/containers/ChooseTaskContainer/ChooseTaskContainer.jsx
View file @
510d6966
import
React
from
'react'
;
import
Button
from
'../../components/CommonComponent/ButtonComponent/ButtonComponent'
import
HeaderComponent
from
'../../components/CommonComponent/HeaderComponent/HeaderComponent'
require
(
'./index.css'
);
export
default
class
ChooseTaskContainer
extends
React
.
Component
{
constructor
(
props
){
super
(
props
);
this
.
state
=
{
}
};
this
.
closeDoor
=
this
.
closeDoor
.
bind
(
this
);
}
componentWillMount
(){
...
...
@@ -17,22 +19,36 @@ export default class ChooseTaskContainer extends React.Component{
}
closeDoor
(){
console
.
log
(
"closeDoor"
);
this
.
props
.
hidePopup
();
this
.
props
.
showOpenDoorPage
()
}
render
(){
let
{
userInfo
,
storeInfo
}
=
this
.
props
;
return
(
<
div
className=
{
"chooseTaskContainer"
}
>
<
div
className=
{
"chooseTaskText font32"
}
>
<
p
>
请选择一个有权限的任务!
</
p
>
</
div
>
<
div
className=
{
"chooseTaskButtons"
}
>
<
Button
text=
{
"处理已知故障"
}
style=
{
{
'marginTop'
:
'40px'
}
}
/>
<
Button
text=
{
"申报新故障"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"设备检查"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"设备测试"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"确认退出,并离店"
}
style=
{
{
'marginTop'
:
'87px'
}
}
/>
<
div
>
<
HeaderComponent
showHeader=
{
CONFIG
.
headerStatus
[
1
]
}
userinfo=
{
userInfo
}
storeInfo=
{
storeInfo
}
/>
<
div
className=
{
"chooseTaskContainer"
}
>
<
div
className=
{
"chooseTaskText font32"
}
>
<
p
>
请选择一个有权限的任务!
</
p
>
</
div
>
<
div
className=
{
"chooseTaskButtons"
}
>
<
Button
text=
{
"处理已知故障"
}
style=
{
{
'marginTop'
:
'40px'
}
}
/>
<
Button
text=
{
"申报新故障"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"设备检查"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"设备测试"
}
style=
{
{
'marginTop'
:
'20px'
}
}
/>
<
Button
text=
{
"确认退出,并离店"
}
style=
{
{
'marginTop'
:
'87px'
}
}
option=
{
this
.
closeDoor
}
/>
</
div
>
</
div
>
</
div
>
)
}
}
...
...
client/containers/FinishAskContainer/FinishAskContainer.jsx
View file @
510d6966
import
React
from
'react'
;
import
Button
from
'../../components/CommonComponent/ButtonComponent/ButtonComponent'
import
Clock
from
'../../components/CommonComponent/ClockComponent/ClockComponent'
import
HeaderComponent
from
'../../components/CommonComponent/HeaderComponent/HeaderComponent'
require
(
'./index.css'
);
export
default
class
FinishAskContainer
extends
React
.
Component
{
...
...
@@ -8,31 +10,87 @@ export default class FinishAskContainer extends React.Component{
super
(
props
);
this
.
state
=
{
}
this
.
closeDoor
=
this
.
closeDoor
.
bind
(
this
);
this
.
selectTask
=
this
.
selectTask
.
bind
(
this
);
this
.
beginCloseDoor
=
this
.
beginCloseDoor
.
bind
(
this
);
this
.
judgeTask
=
this
.
judgeTask
.
bind
(
this
);
}
componentWillMount
(){
this
.
props
.
endCountBack
()
}
componentWillReceiveProps
(
nextProps
){
}
selectTask
(){
console
.
log
(
"selectTask"
)
let
{
changePages
}
=
this
.
props
;
changePages
(
CONFIG
.
showPage
[
9
])
}
beginCloseDoor
(){
this
.
props
.
hidePopup
()
this
.
props
.
showOpenDoorPage
();
}
closeDoor
(){
console
.
log
(
"closeDoor"
);
this
.
props
.
hidePopup
();
//任务完成,超时不确定
let
btnDom
=
<
Button
key=
{
"finishcloseDoorBack1"
}
style=
{
{
'width'
:
'260px'
}
}
text=
{
"确定"
}
option=
{
this
.
beginCloseDoor
}
/>
let
clockDom
=
<
Clock
key=
{
"finiscloseDoorhBack2"
}
totalTime=
{
30
}
style=
{
{
'width'
:
'260px'
,
'marginLeft'
:
'30px'
,
'borderRadius'
:
'10px'
}
}
callback=
{
this
.
beginCloseDoor
}
/>;
this
.
props
.
showPopup
({
popupText
:
'检测到店铺反常,请站出店铺,关闭店铺门后重新验证您的身份'
,
popupButtons
:[
btnDom
,
clockDom
]
})
this
.
props
.
uploadErrs
(
2
);
}
judgeTask
(){
console
.
log
(
"judgeTask"
);
this
.
props
.
hidePopup
();
//任务完成,超时不确定
let
btnDom
=
<
Button
key=
{
"finishjudgeTaskBack1"
}
style=
{
{
'width'
:
'260px'
}
}
text=
{
"确定"
}
option=
{
this
.
beginCloseDoor
}
/>
let
clockDom
=
<
Clock
key=
{
"finishjudgeTaskBack2"
}
totalTime=
{
30
}
style=
{
{
'width'
:
'260px'
,
'marginLeft'
:
'30px'
,
'borderRadius'
:
'10px'
}
}
callback=
{
this
.
closeDoor
}
/>;
this
.
props
.
showPopup
({
popupText
:
'您的任务是否已结束'
,
popupButtons
:[
btnDom
,
clockDom
]
});
this
.
props
.
uploadErrs
(
2
);
}
render
(){
let
{
userInfo
,
storeInfo
}
=
this
.
props
;
return
(
<
div
className=
{
"finishAskContainer"
}
>
<
div
className=
{
"finishAskText font32"
}
>
<
p
>
感谢您的故障问题处理工作!
</
p
>
<
p
>
您是否有其它任务
</
p
>
</
div
>
<
div
className=
{
"finishAskButtons"
}
>
<
Button
text=
{
"有"
}
style=
{
{
'marginTop'
:
'120px'
}
}
/>
<
Button
text=
{
"没有"
}
style=
{
{
'marginTop'
:
'40px'
}
}
/>
<
Clock
style=
{
{
'marginTop'
:
'40px'
}
}
/>
<
div
>
<
HeaderComponent
showHeader=
{
CONFIG
.
headerStatus
[
1
]
}
userinfo=
{
userInfo
}
storeInfo=
{
storeInfo
}
/>
<
div
className=
{
"finishAskContainer"
}
>
<
div
className=
{
"finishAskText font32"
}
>
<
p
>
感谢您的故障问题处理工作!
</
p
>
<
p
>
您是否有其它任务
</
p
>
</
div
>
<
div
className=
{
"finishAskButtons"
}
>
<
Button
text=
{
"有"
}
style=
{
{
'marginTop'
:
'120px'
}
}
option=
{
this
.
selectTask
}
/>
<
Button
text=
{
"没有"
}
style=
{
{
'marginTop'
:
'40px'
}
}
option=
{
this
.
closeDoor
}
/>
<
Clock
style=
{
{
'marginTop'
:
'40px'
}
}
totalTime=
{
60
}
callback=
{
this
.
judgeTask
}
/>
</
div
>
</
div
>
</
div
>
)
}
}
...
...
client/containers/HomeContainer/HomeContainer.jsx
View file @
510d6966
...
...
@@ -22,7 +22,7 @@ export default class HomeContainer extends React.Component{
render
(){
let
props
=
this
.
props
;
let
{
userInfo
,
storeInfo
}
=
props
;
let
{
userInfo
,
storeInfo
,
judgeDoorStatus
}
=
props
;
return
(
<
div
>
<
HeaderComponent
...
...
@@ -39,7 +39,8 @@ export default class HomeContainer extends React.Component{
<
p
>
关门倒数,请尽快离开店铺
</
p
>
<
p
>
请在离开前再次确保没有遗留个人物品在设备内
</
p
>
</
div
>
<
Clock
totalTime=
{
60
}
/>
<
Clock
totalTime=
{
60
}
callback=
{
judgeDoorStatus
}
/>
</
div
>
:
null
}
</
div
>
...
...
client/containers/PageContainer/PageContainer.jsx
View file @
510d6966
...
...
@@ -39,6 +39,11 @@ const defaultPopupInfo = {
};
const
initPage
=
showPage
[
7
];
const
errorType
=
{
1
:
1
,
//屏幕超时操作
2
:
2
,
//确认完成任务超时
3
:
3
,
//关门异常
}
class
PageContainer
extends
React
.
Component
{
constructor
(
props
)
{
...
...
@@ -50,7 +55,8 @@ class PageContainer extends React.Component {
popupInfo
:
defaultPopupInfo
,
showClock
:
false
,
//关门页面显示倒计时
headerInfo
:
{},
pageStyle
:
{}
pageStyle
:
{},
successCloseDoor
:
false
};
this
.
getPages
=
this
.
getPages
.
bind
(
this
);
//获取当前页面
this
.
showPopup
=
this
.
showPopup
.
bind
(
this
);
//显示弹窗
...
...
@@ -72,6 +78,7 @@ class PageContainer extends React.Component {
this
.
showError
=
this
.
showError
.
bind
(
this
);
//展示错误信息
this
.
hideError
=
this
.
hideError
.
bind
(
this
);
//隐藏错误信息
this
.
getPageStyle
=
this
.
getPageStyle
.
bind
(
this
);
//
this
.
uploadErrs
=
this
.
uploadErrs
.
bind
(
this
);
//
this
.
maxCountBackTime
=
300
;
this
.
count
=
1000
;
...
...
@@ -80,7 +87,7 @@ class PageContainer extends React.Component {
this
.
taskTypeOption
=
{
'
Trouble
'
:
this
.
showTroublePage
'
ER
'
:
this
.
showTroublePage
};
}
...
...
@@ -134,16 +141,22 @@ class PageContainer extends React.Component {
let
info
=
JSON
.
parse
(
data
.
info
);
console
.
log
(
"SUCCESS_OPENDOOR "
,
info
);
dispatch
(
getUserinfo
(
info
));
this
.
setState
({
successCloseDoor
:
false
});
break
;
case
'SUCCESS_CLOSEDOOR'
:
//关门成功
console
.
log
(
"closedoor"
);
dispatch
(
logoutUser
());
this
.
endCountBack
();
// remove(CONFIG.socketType.GETSTOREINFO,this)
// remove(CONFIG.socketType.GETSOCKETMSG,this)
this
.
setState
({
showPage
:
showPage
[
7
],
showClock
:
false
,
popupInfo
:
defaultPopupInfo
popupInfo
:
defaultPopupInfo
,
successCloseDoor
:
true
});
break
;
}
...
...
@@ -163,13 +176,9 @@ class PageContainer extends React.Component {
(
!
nowUserInfo
||
!
nowUserInfo
.
employee
||
(
nowUserInfo
.
employee
.
id
!==
userinfo
.
employee
.
id
));
let
isNotOneTask
=
userinfo
.
types
&&
userinfo
.
types
!==
nowUserInfo
.
types
;
console
.
log
(
isNotOneTask
);
console
.
log
(
isNotOneUser
)
if
(
isNotOneUser
&&
isNotOneTask
){
this
.
dealPageByType
(
userinfo
.
types
);
}
console
.
log
(
state
.
errMsg
);
if
(
state
.
errMsg
.
errMsg
){
this
.
showError
(
state
.
errMsg
.
errMsg
)
}
...
...
@@ -274,9 +283,18 @@ class PageContainer extends React.Component {
}
}
uploadErrs
(
type
){
let
{
dispatch
,
state
}
=
this
.
props
;
dispatch
(
uploadError
(
Object
.
assign
({},
state
.
headerInfo
,{
exceptionType
:
type
})));
}
//弹出警告弹窗,并报警
showAlarm
(){
console
.
log
(
"showAlarm"
);
//屏幕超过300s无人操作
this
.
uploadErrs
(
errorType
[
1
])
let
btnDom
=
<
Button
key=
{
"pagecountBack1"
}
style=
{
{
'width'
:
'260px'
}
}
text=
{
"确定"
}
option=
{
this
.
beginCloseDoor
}
/>
let
clockDom
=
<
Clock
key=
{
"pagecountBack2"
}
totalTime=
{
30
}
style=
{
{
'width'
:
'260px'
,
'marginLeft'
:
'30px'
,
'borderRadius'
:
'10px'
}
}
...
...
@@ -319,14 +337,18 @@ class PageContainer extends React.Component {
failCloseDoor
(){
this
.
playAlarmMusic
();
let
{
dispatch
}
=
this
.
props
;
dispatch
(
uploadError
());
this
.
uploadErrs
(
errorType
[
3
]);
}
judgeDoorStatus
(){
//成功关门
//关门失败
this
.
failCloseDoor
()
// this.emptyUser();
// this.failCloseDoor()
if
(
!
this
.
state
.
successCloseDoor
){
//关门失败,上传警报
this
.
failCloseDoor
();
}
}
playAlarmMusic
(){
...
...
@@ -360,6 +382,13 @@ class PageContainer extends React.Component {
}
showOpenDoorPage
(){
console
.
log
(
"showOpenDoorPage"
)
this
.
setState
({
showPage
:
initPage
,
showClock
:
true
})
}
getPages
(){
...
...
@@ -426,14 +455,28 @@ class PageContainer extends React.Component {
break;
case showPage[7]:
pages =
<
HomeContainer
showClock=
{
this
.
state
.
showClock
}
storeInfo=
{
state
.
storeInfo
}
userInfo=
{
state
.
userInfo
}
/>
;
userInfo=
{
state
.
userInfo
}
judgeDoorStatus=
{
this
.
judgeDoorStatus
}
/>
;
break;
case showPage[8]:
pages =
<
FinishAskContainer
/>
;
pages =
<
FinishAskContainer
storeInfo=
{
state
.
storeInfo
}
userInfo=
{
state
.
userInfo
}
endCountBack=
{
this
.
endCountBack
}
changePages=
{
(
data
)
=>
this
.
changePages
(
data
)
}
showOpenDoorPage=
{
()
=>
this
.
showOpenDoorPage
.
bind
(
this
)()
}
showPopup=
{
(
info
)
=>
this
.
showPopup
(
info
)
}
uploadErrs=
{
(
type
)
=>
this
.
uploadErrs
(
type
)
}
hidePopup=
{
()
=>
this
.
hidePopup
()
}
/>
;
break;
case showPage[9]:
pages =
<
ChooseTaskContainer
storeInfo=
{
state
.
storeInfo
}
userInfo=
{
state
.
userInfo
}
/>
;
userInfo=
{
state
.
userInfo
}
changePages=
{
(
data
)
=>
this
.
changePages
(
data
)
}
showOpenDoorPage=
{
()
=>
this
.
showOpenDoorPage
.
bind
(
this
)()
}
hidePopup=
{
()
=>
this
.
hidePopup
()
}
/>
;
break;
}
return pages;
...
...
client/containers/ReportDamagesListContainer/ReportDamagesListContainer.jsx
View file @
510d6966
...
...
@@ -49,7 +49,7 @@ export default class ReportDamagesListContainer extends React.Component{
});
}
let
swiperOptions
=
{
width
:
1396
,
width
:
987
,
spaceBetween
:
30
,
freeMode
:
true
,
// slidesPerView: 2.6,
...
...
@@ -65,7 +65,7 @@ export default class ReportDamagesListContainer extends React.Component{
storeInfo=
{
storeInfo
}
/>
<
div
className=
{
"damageTitleContainer"
}
>
故障相关报损商品(非货架区)
</
div
>
<
div
className=
{
"damageProductList
clearfix
"
}
>
<
div
className=
{
"damageProductList"
}
>
<
SwiperComponent
swiperContainer=
{
swiperContainer
}
swiperOptions=
{
swiperOptions
}
swiperCount=
{
swiperCount
}
>
...
...
client/containers/ReportDamagesListContainer/index.css
View file @
510d6966
...
...
@@ -9,7 +9,9 @@
line-height
:
25px
;
font-size
:
25px
;
}
.ReportDamagesListContainer
.damageProductList
{}
.ReportDamagesListContainer
.damageProductList
{
padding-left
:
30px
;
}
.ReportDamagesListContainer
.damageSwiperContainer
{
overflow
:
visible
;
}
...
...
client/containers/TextAreaContainer/TextAreaContainer.jsx
View file @
510d6966
...
...
@@ -26,17 +26,14 @@ export default class TextAreaContainer extends React.Component{
}
handleBlur
(){
console
.
log
(
"--handleBlur--"
);
this
.
props
.
setStyle
({
'position'
:
'absolute'
,
'top'
:
'0px'
})
this
.
props
.
setStyle
({})
}
handleFocus
(){
console
.
log
(
"==handleFocus=="
);
this
.
props
.
setStyle
({
'position'
:
'absolute'
,
'top'
:
'
12
0px'
'top'
:
'0px'
})
}
...
...
client/containers/TroubleContainer/TroubleContainer.jsx
View file @
510d6966
...
...
@@ -168,7 +168,7 @@ export default class TroubleContainer extends React.Component{
}
getDefaultDom
(){
let
{
userInfo
,
storeInfo
,
getRefreshImg
,
deleteImg
,
changePages
}
=
this
.
props
;
let
{
userInfo
,
storeInfo
,
getRefreshImg
,
deleteImg
,
changePages
,
showPopup
,
hidePopup
}
=
this
.
props
;
let
troubleList
=
this
.
state
.
troubleList
;
let
showTrouble
=
Array
.
isArray
(
troubleList
.
details
)
&&
troubleList
.
details
.
length
>
0
;
let
details
=
Array
.
isArray
(
troubleList
.
details
)
?
troubleList
.
details
:
[];
...
...
@@ -177,6 +177,9 @@ export default class TroubleContainer extends React.Component{
showText=
{
this
.
showText
}
showQrcode=
{
this
.
showQrcode
}
getRefreshImg=
{
getRefreshImg
}
deleteImg=
{
deleteImg
}
showPopup=
{
showPopup
}
hidePopup=
{
hidePopup
}
/>;
});
let
swiperOptions
=
{
...
...
@@ -218,9 +221,9 @@ export default class TroubleContainer extends React.Component{
}
setStyle
(
style
){
//
this.setState({
//
style : style
//
})
this
.
setState
({
style
:
style
})
}
getTextAreaDom
(){
...
...
@@ -252,7 +255,7 @@ export default class TroubleContainer extends React.Component{
render
(){
return
(
<
div
className=
{
"troubleContainers "
+
(
this
.
state
.
showStatus
===
showDom
[
2
]
?
'backfff'
:
''
)
}
>
<
div
className=
{
"troubleContainers "
+
(
this
.
state
.
showStatus
===
showDom
[
2
]
?
'backfff'
:
''
)
}
style=
{
this
.
state
.
style
}
>
{
this
.
getDom
()
}
...
...
client/css/common.css
View file @
510d6966
...
...
@@ -5,6 +5,8 @@
-moz-user-select
:
none
;
/* Firefox */
-ms-user-select
:
none
;
/* Internet Explorer/Edge */
user-select
:
none
;
/* Non-prefixed version, currently*/
position
:
relative
;
height
:
100%
;
}
div
{
touch-action
:
none
;
...
...
client/css/font.css
View file @
510d6966
...
...
@@ -135,6 +135,18 @@ body{
[
data-dpr
=
"3"
]
.font44
{
font-size
:
calc
(
var
(
--font3
)
*
font44
)
!important
;
}
.font50
{
font-size
:
font50
!important
;
}
[
data-dpr
=
"2"
]
.font50
{
font-size
:
calc
(
var
(
--font2
)
*
font50
)
!important
;
}
[
data-dpr
=
"3"
]
.font50
{
font-size
:
calc
(
var
(
--font3
)
*
font50
)
!important
;
}
.font58
{
font-size
:
font58
!important
;
}
...
...
client/css/reset.css
View file @
510d6966
...
...
@@ -26,7 +26,7 @@ button, input, select, textarea { /* for ie */
outline
:
none
;
}
html
,
body
{
/*height: 100%;*/
height
:
100%
;
background-color
:
#f5f5f5
;
}
...
...
client/env/development.js
View file @
510d6966
...
...
@@ -2,6 +2,6 @@
* Created by ruibing on 16/11/2.
*/
module
.
exports
=
{
domain
:
'http://
test
.mjitech.com/web/'
,
uploadImg
:
'https://
test
.mjitech.com/static/uploadTrouble/'
domain
:
'http://
preprod
.mjitech.com/web/'
,
uploadImg
:
'https://
preprod
.mjitech.com/static/uploadTrouble/'
}
\ No newline at end of file
client/index.html
View file @
510d6966
...
...
@@ -2,8 +2,8 @@
<html>
<head>
<meta
charset=
"UTF-8"
>
<title>
怪兽家便利店
</title>
<meta
name=
'viewport'
content=
'width=device-width, initial-scale=
0.67, maximum-scale=0.67
, user-scalable=false,target-densitydpi=device-dpi'
/>
<title>
华沁工作平台
</title>
<meta
name=
'viewport'
content=
'width=device-width, initial-scale=
1, maximum-scale=1
, user-scalable=false,target-densitydpi=device-dpi'
/>
<meta
name=
"format-detection"
content=
"telephone=no"
/>
</head>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment