zhang_li
10 months ago
14 changed files with 299 additions and 321 deletions
@ -0,0 +1,25 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
// 根据模具号查询信息
|
||||
|
export function getMoldDetailsByNumber(params) { |
||||
|
return request({ |
||||
|
url: '/eam/mold-accounts/getDetailsByNumber', |
||||
|
'method': 'GET', |
||||
|
params |
||||
|
}) |
||||
|
} |
||||
|
// 模具分页列表
|
||||
|
export function moldPage(params) { |
||||
|
return request({ |
||||
|
url: '/eam/mold-accounts/getAppPage', |
||||
|
'method': 'GET', |
||||
|
params |
||||
|
}) |
||||
|
} |
||||
|
// 模具列表
|
||||
|
export function moldList(params) { |
||||
|
return request({ |
||||
|
url: '/eam/mold-accounts/selectData', |
||||
|
'method': 'GET', |
||||
|
params |
||||
|
}) |
||||
|
} |
@ -1,242 +0,0 @@ |
|||||
<template> |
|
||||
<!-- 设备 --> |
|
||||
<view class="add-form-container"> |
|
||||
<Form :form='form' :data='data' ref="form1"></Form> |
|
||||
<view class="footer"> |
|
||||
<view class="btns"> |
|
||||
<button class="reset">重置</button> |
|
||||
<button class="sure" @click="submit">确定</button> |
|
||||
</view> |
|
||||
<view style="height: constant(safe-area-inset-bottom); height: env(safe-area-inset-bottom);"></view> |
|
||||
</view> |
|
||||
</view> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
import Form from '@/components/form/index.vue' |
|
||||
export default { |
|
||||
components: { |
|
||||
Form |
|
||||
}, |
|
||||
data() { |
|
||||
return { |
|
||||
form: { |
|
||||
disabled: false, |
|
||||
visible: true, |
|
||||
loading: false, |
|
||||
labelWidth: '180rpx', |
|
||||
border: true, |
|
||||
errorType: ['toast'], |
|
||||
formData: [{ |
|
||||
type: 'text', |
|
||||
field: 'code', |
|
||||
label: '设备编号', |
|
||||
disabled: false, |
|
||||
required: true, |
|
||||
value: '' |
|
||||
}, { |
|
||||
type: 'text', |
|
||||
field: 'name', |
|
||||
label: '设备名称', |
|
||||
disabled: false, |
|
||||
required: true, |
|
||||
value: '' |
|
||||
}, { |
|
||||
type: 'singleColumn', |
|
||||
field: 'location', |
|
||||
label: '存放位置', |
|
||||
list: [{ |
|
||||
label: '位置1', |
|
||||
value: 1 |
|
||||
}, { |
|
||||
label: '位置2', |
|
||||
value: 2 |
|
||||
}, { |
|
||||
label: '位置3', |
|
||||
value: 3 |
|
||||
}] |
|
||||
}, { |
|
||||
type: 'singleColumn', |
|
||||
field: 'type', |
|
||||
label: '设备类型', |
|
||||
list: [{ |
|
||||
label: '类型1', |
|
||||
value: 1 |
|
||||
}, { |
|
||||
label: '类型2', |
|
||||
value: 2 |
|
||||
}, { |
|
||||
label: '类型3', |
|
||||
value: 3 |
|
||||
}] |
|
||||
}, { |
|
||||
type: 'singleColumn', |
|
||||
field: 'dept', |
|
||||
label: '所在部门', |
|
||||
list: [{ |
|
||||
label: '部门1', |
|
||||
value: 1 |
|
||||
}, { |
|
||||
label: '部门2', |
|
||||
value: 2 |
|
||||
}, { |
|
||||
label: '部门3', |
|
||||
value: 3 |
|
||||
}] |
|
||||
}, { |
|
||||
type: 'singleColumn', |
|
||||
field: 'fuzeren', |
|
||||
label: '负责人', |
|
||||
list: [{ |
|
||||
label: '负责人1', |
|
||||
value: 1 |
|
||||
}, { |
|
||||
label: '负责人2', |
|
||||
value: 2 |
|
||||
}, { |
|
||||
label: '负责人3', |
|
||||
value: 3 |
|
||||
}] |
|
||||
}, { |
|
||||
type: 'singleColumn', |
|
||||
field: 'status', |
|
||||
label: '当前状态', |
|
||||
list: [{ |
|
||||
label: '全部', |
|
||||
value: 1 |
|
||||
}, { |
|
||||
label: '报废', |
|
||||
value: 2 |
|
||||
}, { |
|
||||
label: '停用', |
|
||||
value: 3 |
|
||||
}, { |
|
||||
label: '故障', |
|
||||
value: 4 |
|
||||
}, { |
|
||||
label: '正常运行', |
|
||||
value: 5 |
|
||||
}] |
|
||||
}], |
|
||||
rules: { |
|
||||
// 对name字段进行必填验证 |
|
||||
name: [ |
|
||||
{ |
|
||||
min: 5, |
|
||||
message: '简介不能少于5个字', |
|
||||
trigger: 'change' |
|
||||
}, |
|
||||
// 对name字段进行必填验证 |
|
||||
{ |
|
||||
required: true, |
|
||||
message: '请填写姓名', |
|
||||
trigger: ['change', 'blur'] |
|
||||
}, |
|
||||
] |
|
||||
} |
|
||||
}, |
|
||||
data: { |
|
||||
name: '', |
|
||||
sex: 2, |
|
||||
hobby: [1, 2], |
|
||||
open: true, |
|
||||
duoxuan: 3, |
|
||||
time: '2023-12-12 08:00:00' |
|
||||
} |
|
||||
} |
|
||||
}, |
|
||||
methods: { |
|
||||
// 触发提交表单 |
|
||||
submit() { |
|
||||
console.log('表单数据信息1:', this.data); |
|
||||
this.$refs.form1.$refs.form.validate().then(res => { |
|
||||
console.log('表单数据信息:', res); |
|
||||
}).catch(err => { |
|
||||
console.log('表单错误信息:', err); |
|
||||
}) |
|
||||
}, |
|
||||
// 重置 |
|
||||
reset() { |
|
||||
console.log('表单数据信息1:', this.data); |
|
||||
this.data={} |
|
||||
}, |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
||||
|
|
||||
<style lang="scss" scoped> |
|
||||
.add-form-container { |
|
||||
min-height: calc(100vh - 140rpx); |
|
||||
background: white; |
|
||||
padding: 0px 30rpx 140rpx; |
|
||||
} |
|
||||
.list { |
|
||||
padding-bottom: 20rpx; |
|
||||
|
|
||||
.item { |
|
||||
margin-top: 20rpx; |
|
||||
background: white; |
|
||||
padding: 30rpx; |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
|
|
||||
image { |
|
||||
width: 160rpx; |
|
||||
height: 160rpx; |
|
||||
margin-right: 20rpx; |
|
||||
} |
|
||||
|
|
||||
.title { |
|
||||
font-size: 32rpx; |
|
||||
font-weight: bold; |
|
||||
} |
|
||||
|
|
||||
.dec1 { |
|
||||
font-size: 28rpx; |
|
||||
margin-top: 16rpx; |
|
||||
color: #acacac; |
|
||||
} |
|
||||
|
|
||||
.dec2 { |
|
||||
font-size: 28rpx; |
|
||||
margin-top: 6rpx; |
|
||||
color: #acacac; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
.footer { |
|
||||
position: fixed; |
|
||||
bottom: 0px; |
|
||||
left: 0px; |
|
||||
width: 100%; |
|
||||
} |
|
||||
|
|
||||
.btns { |
|
||||
display: flex; |
|
||||
|
|
||||
|
|
||||
button { |
|
||||
flex: 1; |
|
||||
} |
|
||||
|
|
||||
.sure { |
|
||||
background: #409eff; |
|
||||
color: white; |
|
||||
border-radius: 0px; |
|
||||
|
|
||||
&::after { |
|
||||
border: 1px solid #409eff; |
|
||||
border-radius: 0px; |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
.reset { |
|
||||
background: #F5F5F5; |
|
||||
border-radius: 0px; |
|
||||
|
|
||||
&::after { |
|
||||
border-radius: 0px; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
</style> |
|
@ -1,22 +1,134 @@ |
|||||
<template> |
<template> |
||||
<view class="work-container"> |
<!-- 设备 --> |
||||
1 |
<view class="work-container"> |
||||
</view> |
<Search :searchData='searchData' @search='search' @screen='screen' :isShowScreen='false'/> |
||||
|
<view class="list"> |
||||
|
<view class="item" v-for="(item,index) in list" :key='index'> |
||||
|
<u-image :src="item.images" width='160' |
||||
|
height="160"> |
||||
|
<template v-slot:error> |
||||
|
<view class="image-error"> |
||||
|
<u-icon name="photo" color="#c7c7c7" size="38"></u-icon> |
||||
|
<view style="font-size: 24rpx;">暂无图片</view> |
||||
|
</view> |
||||
|
</template> |
||||
|
</u-image> |
||||
|
<view class="text"> |
||||
|
<view class="title"> |
||||
|
{{item.name}} |
||||
|
</view> |
||||
|
<view class="dec1"> |
||||
|
{{item.number}} |
||||
|
</view> |
||||
|
<view class="dec2"> |
||||
|
{{item.factoryAreaName}} |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view style="height: 94rpx;padding-top: 30rpx;"> |
||||
|
<u-loadmore :status="status" v-if="status != 'loadmore'" /> |
||||
|
</view> |
||||
|
<view style="height: constant(safe-area-inset-bottom); height: env(safe-area-inset-bottom);"></view> |
||||
|
</view> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
export default { |
import * as moldApi from "@/api/mold.js" |
||||
data() { |
export default { |
||||
return { |
data() { |
||||
|
|
||||
} |
return { |
||||
}, |
searchData:{ |
||||
methods: { |
placeholder:'请输入模具名称' |
||||
|
}, |
||||
} |
params: { |
||||
} |
pageNo: 1, |
||||
|
pageSize: 10, |
||||
|
type: '', |
||||
|
name:'' |
||||
|
}, |
||||
|
status: 'loadmore', //是否显示没有更多了 |
||||
|
list: [], |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
// 搜索 |
||||
|
search(keyWord) { |
||||
|
this.params.name = keyWord |
||||
|
this.params.pageNo = 1 |
||||
|
this.list = [] |
||||
|
this.status = 'loadmore' |
||||
|
this.getList() |
||||
|
}, |
||||
|
// 筛选 |
||||
|
screen() { |
||||
|
this.$tab.navigateTo(`/pages/device/screen`) |
||||
|
}, |
||||
|
// 获取设备保修列表 |
||||
|
getList() { |
||||
|
if (this.status == 'nomore') return; |
||||
|
this.status = 'loading'; |
||||
|
this.$modal.loading('加载中') |
||||
|
moldApi.moldPage(this.params).then((res) => { |
||||
|
this.$modal.closeLoading() |
||||
|
if (res.data.list.length > 0) { |
||||
|
this.list = this.list.concat(res.data.list); |
||||
|
this.params.pageNo++; |
||||
|
this.status = 'loadmore' |
||||
|
} else { |
||||
|
this.status = 'nomore' |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
}, |
||||
|
onShow() { |
||||
|
this.params.pageNo = 1 |
||||
|
this.list = [] |
||||
|
this.status = 'loadmore' |
||||
|
this.getList() |
||||
|
}, |
||||
|
onReachBottom() { |
||||
|
this.getList() |
||||
|
} |
||||
|
} |
||||
</script> |
</script> |
||||
|
|
||||
<style lang="scss"> |
<style lang="scss" scoped> |
||||
|
.list { |
||||
|
padding-bottom: 20rpx; |
||||
|
|
||||
|
.item { |
||||
|
margin-top: 20rpx; |
||||
|
background: white; |
||||
|
padding: 30rpx; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
|
||||
|
.text { |
||||
|
margin-left: 20rpx; |
||||
|
|
||||
|
.title { |
||||
|
font-size: 32rpx; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.dec1 { |
||||
|
font-size: 28rpx; |
||||
|
margin-top: 16rpx; |
||||
|
color: #acacac; |
||||
|
} |
||||
|
|
||||
|
.dec2 { |
||||
|
font-size: 28rpx; |
||||
|
margin-top: 6rpx; |
||||
|
color: #acacac; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.image-error { |
||||
|
text-align: center; |
||||
|
} |
||||
</style> |
</style> |
Loading…
Reference in new issue