Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
周远喜
mes-ui
Commits
9342746e
Commit
9342746e
authored
May 13, 2020
by
renjintao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
单文件上传
parent
6428865d
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
193 additions
and
142 deletions
+193
-142
inputFile.vue
components/page/inputFile.vue
+87
-68
package-lock.json
package-lock.json
+2
-1
userInfo.vue
pages/basicData/userManagent/userInfo.vue
+24
-15
add.vue
pages/technology/details/routingqccard/add.vue
+34
-26
edit.vue
pages/technology/details/routingqccard/edit.vue
+40
-29
edit.vue
pages/technology/edit.vue
+6
-3
No files found.
components/page/inputFile.vue
View file @
9342746e
<!--一次只能上传一个文件 -->
<
template
>
<div>
<Input
v-model=
"newName"
style=
"height:30px;width:240px;float:left"
placeholder=
"请选择上传文件"
disabled
/>
<Upload
v-model=
"name"
:action=
"postUrl"
:on-success=
"uploadSuccess"
:on-error=
"uploadError"
:on-remove=
"removeFile"
:format=
"formatList"
:max-size=
"maxSize"
:on-exceeded-size=
"onExceededSize"
:on-format-error=
"onFormatError"
:show-upload-list=
"false"
:files=
"files"
:on-progress=
"onProgress"
>
<Button
icon=
"ios-cloud-upload-outline"
>
上传文件
</Button>
</Upload>
<Progress
:percent=
"per"
:stroke-width=
"5"
v-show=
"vshowPro"
/>
<div>
<Input
v-model=
"newName"
style=
"height:30px;width:240px;float:left;"
placeholder=
"请选择上传文件"
disabled
/>
<Upload
v-model=
"name"
:action=
"postUrl"
:on-success=
"uploadSuccess"
:on-error=
"uploadError"
:on-remove=
"removeFile"
:format=
"formatList"
:max-size=
"maxSize"
:on-exceeded-size=
"onExceededSize"
:on-format-error=
"onFormatError"
:show-upload-list=
"false"
:files=
"files"
:on-progress=
"onProgress"
style=
"width:120px;float:left"
>
<Button
icon=
"ios-cloud-upload-outline"
>
上传文件
</Button>
</Upload>
<a
v-show=
"newName.length>2&&showButton"
:href=
"fileUrlPath"
@
click=
"downFile(newPath)"
target=
"_blank"
style=
"float:left"
>
查看
</a>
</div>
<Progress
:percent=
"per"
:stroke-width=
"5"
v-show=
"vshowPro"
/>
</div>
</
template
>
<
script
>
export
default
{
name
:
'inputFile'
,
name
:
"inputFile"
,
model
:
{
prop
:
'value'
,
event
:
'on-change'
prop
:
"value"
,
event
:
"on-change"
},
data
()
{
return
{
file
:
null
,
name
:
this
.
value
,
downUrl
:
fileUrlDown
,
fileUrlPath
:
''
,
fileUrlPath
:
""
,
nameList
:
[],
postUrl
:
fileUrl
+
'/upload/?token=Bearer '
+
window
.
sessionStorage
.
getItem
(
'token'
)
+
'&'
+
"/upload/?token=Bearer "
+
window
.
sessionStorage
.
getItem
(
"token"
)
+
"&"
+
this
.
parms
,
formatList
:
[
'png'
,
'jpg'
,
'gif'
],
newName
:
''
,
formatList
:
[
"png"
,
"jpg"
,
"gif"
],
newName
:
""
,
newPath
:
''
,
per
:
0
,
vshowPro
:
false
}
}
;
},
created
()
{},
props
:
{
...
...
@@ -60,55 +70,60 @@ export default {
},
parms
:
{
type
:
String
,
default
:
''
default
:
""
},
showButton
:{
type
:
Boolean
,
default
:
true
,
}
},
methods
:
{
onProgress
(
event
,
file
,
fileList
)
{
this
.
per
=
0
this
.
vshowPro
=
true
this
.
per
=
0
;
this
.
vshowPro
=
true
;
},
// change(event) {
// this.$emit('on-change', event.target.value)
// },
//上传成功文件
uploadSuccess
(
response
,
file
,
fileList
)
{
this
.
per
=
60
this
.
vshowPro
=
true
const
hbaseFileList
=
[]
const
filesList
=
[]
this
.
per
=
60
;
this
.
vshowPro
=
true
;
const
hbaseFileList
=
[]
;
const
filesList
=
[]
;
if
(
file
.
response
.
status
==
0
)
{
let
objImag
=
{}
objImag
.
fileName
=
file
.
response
.
data
.
fileName
objImag
.
filePath
=
file
.
response
.
data
.
downloadPath
filesList
.
push
(
objImag
)
this
.
newName
=
file
.
response
.
data
.
fileName
this
.
$emit
(
'on-change'
,
JSON
.
stringify
(
filesList
))
this
.
per
=
100
let
objImag
=
{};
objImag
.
fileName
=
file
.
response
.
data
.
fileName
;
objImag
.
filePath
=
file
.
response
.
data
.
downloadPath
;
filesList
.
push
(
objImag
);
this
.
newName
=
file
.
response
.
data
.
fileName
;
this
.
newPath
=
file
.
response
.
data
.
downloadPath
this
.
$emit
(
"on-change"
,
JSON
.
stringify
(
filesList
));
this
.
per
=
100
;
setTimeout
(()
=>
{
this
.
per
=
0
this
.
vshowPro
=
false
},
2000
)
this
.
per
=
0
;
this
.
vshowPro
=
false
;
},
2000
)
;
}
else
{
this
.
$Message
.
error
(
'上传失败,请重新上传!'
)
this
.
$Message
.
error
(
"上传失败,请重新上传!"
);
}
},
//上传文件失败
uploadError
(
response
,
file
,
fileList
)
{
this
.
$Message
.
error
(
'上传失败,请重新上传!'
)
this
.
$Message
.
error
(
"上传失败,请重新上传!"
);
},
//文件大小验证返回
onExceededSize
(
file
,
fileList
)
{
if
(
Object
.
keys
(
file
).
length
==
0
)
{
this
.
$Message
.
error
(
'上传文件不能大于'
+
this
.
maxSize
+
'k,请重新上传!'
)
"上传文件不能大于"
+
this
.
maxSize
+
"k,请重新上传!"
)
;
}
},
//文件格式验证
onFormatError
(
file
,
fileList
)
{
if
(
Object
.
keys
(
file
).
length
==
0
)
{
this
.
$Message
.
error
(
'上传文件格式不正确,请重新上传!'
)
this
.
$Message
.
error
(
"上传文件格式不正确,请重新上传!"
);
}
},
//删除上传
...
...
@@ -116,36 +131,40 @@ export default {
formatL
()
{
if
(
this
.
files
)
{
this
.
formatList
=
[
'pdf'
,
'docx'
,
'doc'
,
'xls'
,
'xlsx'
,
'txt'
,
'png'
,
'jpg'
,
'gif'
,
'zip'
,
'rar'
]
"pdf"
,
"docx"
,
"doc"
,
"xls"
,
"xlsx"
,
"txt"
,
"png"
,
"jpg"
,
"gif"
,
"zip"
,
"rar"
]
;
}
return
this
.
formatList
}
return
this
.
formatList
;
},
downFile
(
path
)
{
this
.
fileUrlPath
=
this
.
downUrl
+
path
;
},
},
mounted
()
{
this
.
formatL
()
this
.
formatL
()
;
},
computed
:
{
nativeInputValue
()
{
return
this
.
value
===
null
||
this
.
value
===
undefined
?
''
:
this
.
value
return
this
.
value
===
null
||
this
.
value
===
undefined
?
""
:
this
.
value
;
}
},
watch
:
{
value
(
v
)
{
this
.
name
=
v
this
.
name
=
v
;
}
}
}
}
;
</
script
>
<
style
lang=
"less"
>
</
style
>
\ No newline at end of file
package-lock.json
View file @
9342746e
...
...
@@ -9558,7 +9558,8 @@
"dependencies"
:
{
"deepmerge"
:
{
"version"
:
"2.2.1"
,
"resolved"
:
false
"resolved"
:
"https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz"
,
"integrity"
:
"sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA=="
}
}
},
...
...
pages/basicData/userManagent/userInfo.vue
View file @
9342746e
...
...
@@ -4,8 +4,13 @@
<p
slot=
"title"
>
个人头像
</p>
<div
style=
"height:415px;"
>
<p
style=
"text-align:center;padding-top:100px;"
>
<Avatar
:src=
"avatorPath"
size=
"150"
v-if=
"avatorPath"
/>
<Avatar
size=
"150"
style=
"background-color: #87d068"
v-else-if=
"!avatorPath"
icon=
"ios-person"
/>
<Avatar
:src=
"avatorPath"
size=
"150"
v-if=
"avatorPath"
/>
<Avatar
size=
"150"
style=
"background-color: #87d068"
v-else-if=
"!avatorPath"
icon=
"ios-person"
/>
</p>
<p
style=
"text-align:center;padding:10px;"
>
<Button
@
click=
"openModalAvatar"
>
修改头像
</Button>
...
...
@@ -80,15 +85,19 @@
</Card>
<Modal
v-model=
"modalAvatar"
title=
"修改头像"
:width=
"460"
>
<Form
:model=
"imageModel"
>
<div
class=
"imgBg"
>
<img
:src=
"avatorPath"
/>
</div>
<inputFiles
v-model=
"imgName"
:parms=
"parms"
/>
<Row>
<div
class=
"imgBg"
>
<img
:src=
"avatorPath"
/>
</div>
<inputFiles
v-model=
"imgName"
:parms=
"parms"
:showButton=
"false"
/>
</Row>
</Form>
<div
slot=
"footer"
>
<Button
@
click=
"cancelAvatar"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"upAvatar"
>
确定
</Button>
</div>
<Row>
<div
slot=
"footer"
style=
"clear:both"
>
<Button
@
click=
"cancelAvatar"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"upAvatar"
>
确定
</Button>
</div>
</Row>
</Modal>
</div>
</
template
>
...
...
@@ -132,7 +141,7 @@ export default {
remark
:
""
,
avatarUrl
:
""
},
userInfos
:{},
userInfos
:
{},
imageModel
:
{
id
:
null
,
avatar_Url
:
""
,
...
...
@@ -208,7 +217,7 @@ export default {
this
.
$http
.
sysUser
.
getuserinfo
(
parma
).
then
(
res
=>
{
if
(
res
.
result
)
{
this
.
userInfo
=
res
.
result
;
this
.
userInfos
=
res
.
result
;
this
.
userInfos
=
res
.
result
;
this
.
imageModel
.
id
=
this
.
userInfo
.
id
;
if
(
res
.
result
.
avatarUrl
&&
...
...
@@ -268,9 +277,9 @@ export default {
};
</
script
>
<
style
lang=
"less"
>
.img_top01{
width:350px;
float:left;
.img_top01
{
width:
350px;
float:
left;
.ivu-card-body {
padding: 0px;
}
...
...
pages/technology/details/routingqccard/add.vue
View file @
9342746e
...
...
@@ -112,10 +112,11 @@
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('qualityTemplateName')"
prop=
"qualityTemplateName"
>
<
files
ref=
"refFile"
:parms=
"parms"
files
singleFile
/>
<
inputFile
v-model=
"tempFile"
:parms=
"parms"
/>
</FormItem>
</Col>
<!--
<files
ref=
"refFile"
:parms=
"parms"
files
singleFile
/>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isImportant')"
prop=
"isImportant"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.isImportant"
type=
"radio"
></Dictionary>
...
...
@@ -206,6 +207,7 @@ export default {
sampling
:
null
,
samplingBatch
:
""
},
tempFile
:
""
,
rules
:
{
routingDetailId
:
[
{
required
:
true
,
message
:
"请选择工序名称"
,
type
:
"number"
}
...
...
@@ -213,12 +215,13 @@ export default {
checkContent
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
},
routingDetailList
:
[],
parms
:
{
app
:
"qccard"
,
eid
:
null
,
name
:
""
,
field
:
""
}
parms
:
"app=qccard&eid="
+
this
.
$u
.
guid
()
+
"&name=''"
// parms: {
// app: "qccard",
// eid: null,
// name: "",
// field: ""
// }
};
},
props
:
{
...
...
@@ -236,26 +239,31 @@ export default {
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
this
.
entity
.
qualityTemplateName
=
""
;
this
.
entity
.
qualityTemplate
=
""
;
if
(
this
.
$refs
.
refFile
.
nameList
.
length
>
0
)
{
let
nameList
=
this
.
$refs
.
refFile
.
nameList
;
let
names
=
[];
let
url
=
[];
nameList
.
forEach
(
e
=>
{
names
.
push
(
e
.
fileName
);
url
.
push
(
e
.
filePath
);
});
this
.
entity
.
qualityTemplateName
=
JSON
.
stringify
(
names
)
.
replace
(
"["
,
""
)
.
replace
(
"]"
,
""
)
.
replace
(
/
\"
/g
,
""
);
//附件本地库暂存文件名称
this
.
entity
.
qualityTemplate
=
JSON
.
stringify
(
url
)
.
replace
(
"["
,
""
)
.
replace
(
"]"
,
""
)
.
replace
(
/
\"
/g
,
""
);
if
(
this
.
tempFile
!=
""
)
{
let
tempName
=
JSON
.
parse
(
this
.
$u
.
clone
(
this
.
tempFile
));
this
.
entity
.
qualityTemplateName
=
tempName
[
0
].
fileName
;
this
.
entity
.
qualityTemplate
=
tempName
[
0
].
filePath
;
}
else
{
this
.
entity
.
qualityTemplateName
=
""
;
this
.
entity
.
qualityTemplate
=
""
;
}
// if (this.$refs.refFile.nameList.length > 0) {
// let nameList = this.$refs.refFile.nameList;
// let names = [];
// let url = [];
// nameList.forEach(e => {
// names.push(e.fileName);
// url.push(e.filePath);
// });
// this.entity.qualityTemplateName = JSON.stringify(names)
// .replace("[", "")
// .replace("]", "")
// .replace(/\"/g, ""); //附件本地库暂存文件名称
// this.entity.qualityTemplate = JSON.stringify(url)
// .replace("[", "")
// .replace("]", "")
// .replace(/\"/g, "");
// }
this
.
entity
.
routingHeaderId
=
this
.
headid
;
Api
.
create
(
this
.
entity
)
...
...
pages/technology/details/routingqccard/edit.vue
View file @
9342746e
...
...
@@ -54,8 +54,9 @@
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('qualityTemplateName')"
prop=
"qualityTemplateName"
>
<
files
ref=
"refFile"
:parms=
"parms"
files
singleFile
/>
<
inputFile
ref=
"inputfile"
v-model=
"tempFile"
:parms=
"parms"
/>
<!--
<files
ref=
"refFile"
:parms=
"parms"
files
singleFile
/>
<a
:href=
"fileUrlPath"
@
click=
"downFile(entity.qualityTemplate)"
...
...
@@ -82,10 +83,14 @@ export default {
raidoDis
:
false
,
downUrl
:
fileUrlDown
,
fileUrlPath
:
""
,
tempFile
:
""
,
tempFileName
:
""
,
tempFilePath
:
""
,
entity
:
{
qualityTemplateName
:
""
,
qualityTemplate
:
""
},
rules
:
{
routingDetailId
:
[
{
required
:
true
,
message
:
"请选择工序名称"
,
type
:
"number"
}
...
...
@@ -93,12 +98,13 @@ export default {
checkContent
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
},
routingDetailList
:
[],
parms
:
{
app
:
"qccard"
,
eid
:
this
.
eid
,
name
:
""
,
field
:
""
}
parms
:
"app=qccard&eid="
+
this
.
$u
.
guid
()
+
"&name=''"
// parms: {
// app: "qccard",
// eid: this.eid,
// name: "",
// field: ""
// }
};
},
props
:
{
...
...
@@ -115,10 +121,11 @@ export default {
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
$refs
.
refFile
.
intFilesClone
();
this
.
parms
.
eid
=
v
;
//
this.$refs.refFile.intFilesClone();
//
this.parms.eid = v;
this
.
entity
=
r
.
result
;
this
.
$refs
.
inputfile
.
newName
=
this
.
entity
.
qualityTemplateName
;
this
.
$refs
.
inputfile
.
newPath
=
this
.
entity
.
qualityTemplate
;
if
(
r
.
result
.
checkType
==
1
||
r
.
result
.
checkType
==
2
)
{
this
.
raidoDis
=
false
;
this
.
entity
.
isphotograph
=
null
;
...
...
@@ -134,26 +141,30 @@ export default {
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
this
.
entity
.
qualityTemplateName
=
""
;
this
.
entity
.
qualityTemplate
=
""
;
if
(
this
.
$refs
.
refFile
.
nameList
.
length
>
0
)
{
let
nameList
=
this
.
$refs
.
refFile
.
nameList
;
let
names
=
[];
let
url
=
[];
nameList
.
forEach
(
e
=>
{
names
.
push
(
e
.
fileName
);
url
.
push
(
e
.
filePath
);
});
this
.
entity
.
qualityTemplateName
=
JSON
.
stringify
(
names
)
.
replace
(
"["
,
""
)
.
replace
(
"]"
,
""
)
.
replace
(
/
\"
/g
,
""
);
//附件本地库暂存文件名称
this
.
entity
.
qualityTemplate
=
JSON
.
stringify
(
url
)
.
replace
(
"["
,
""
)
.
replace
(
"]"
,
""
)
.
replace
(
/
\"
/g
,
""
);
if
(
this
.
tempFile
!=
""
)
{
let
tempName
=
JSON
.
parse
(
this
.
$u
.
clone
(
this
.
tempFile
));
this
.
entity
.
qualityTemplateName
=
tempName
[
0
].
fileName
;
this
.
entity
.
qualityTemplate
=
tempName
[
0
].
filePath
;
}
// if (this.$refs.refFile.nameList.length > 0) {
// let nameList = this.$refs.refFile.nameList;
// let names = [];
// let url = [];
// nameList.forEach(e => {
// names.push(e.fileName);
// url.push(e.filePath);
// });
// this.entity.qualityTemplateName = JSON.stringify(names)
// .replace("[", "")
// .replace("]", "")
// .replace(/\"/g, ""); //附件本地库暂存文件名称
// this.entity.qualityTemplate = JSON.stringify(url)
// .replace("[", "")
// .replace("]", "")
// .replace(/\"/g, "");
// }
Api
.
update
(
this
.
entity
)
.
then
(
r
=>
{
this
.
disabled
=
false
;
...
...
@@ -213,7 +224,7 @@ export default {
if
(
v
!=
0
)
{
this
.
load
(
v
);
}
}
}
,
}
};
</
script
>
pages/technology/edit.vue
View file @
9342746e
...
...
@@ -11,7 +11,7 @@
<Input
v-model=
"entity.unicode"
></Input>
</FormItem>
</Col>
-->
<Col
:span=
"8"
>
<Col
:span=
"8"
>
<FormItem
:label=
"l('code')"
prop=
"code"
>
<Input
v-model=
"entity.code"
disabled
></Input>
</FormItem>
...
...
@@ -21,7 +21,7 @@
<Input
v-model=
"entity.name"
></Input>
</FormItem>
</Col>
<Col
:span=
"8"
>
<FormItem
:label=
"l('routingType')"
prop=
"routingType"
>
<Dictionary
code=
"Process.Routing.routingType"
v-model=
"entity.routingType"
></Dictionary>
...
...
@@ -52,7 +52,7 @@
<departmentSelect
v-model=
"entity.departmentId"
@
on-change=
"departChange"
></departmentSelect>
</FormItem>
</Col>
<Col
:span=
"8"
>
<FormItem
:label=
"l('isEffect')"
prop=
"isEffect"
>
<Dictionary
code=
"Process.Status"
v-model=
"entity.isEffect"
type=
"radio"
></Dictionary>
...
...
@@ -184,6 +184,9 @@ export default {
this
.
$refs
.
refFile
.
intFilesClone
();
this
.
parms
.
eid
=
this
.
uid
;
this
.
entity
=
r
.
result
;
if
(
this
.
entity
.
isEffect
&&
this
.
entity
.
isEffect
!=
""
)
{
this
.
entity
.
isEffect
=
Number
(
this
.
entity
.
isEffect
);
}
});
},
handleSubmit
()
{
...
...
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