代码提交
This commit is contained in:
parent
a93b95e814
commit
d022e33da9
42
App.vue
42
App.vue
|
@ -3,8 +3,10 @@
|
||||||
onLaunch: function() {
|
onLaunch: function() {
|
||||||
console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!')
|
console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!')
|
||||||
console.log('App Launch')
|
console.log('App Launch')
|
||||||
// plus.navigator.setFullscreen(true);//隐藏状态栏
|
// #ifndef MP-WEIXIN
|
||||||
// uni.hideTabBar();
|
uni.hideTabBar();
|
||||||
|
// #endif
|
||||||
|
|
||||||
},
|
},
|
||||||
onShow: function() {
|
onShow: function() {
|
||||||
console.log('App Show')
|
console.log('App Show')
|
||||||
|
@ -43,8 +45,44 @@
|
||||||
.font12{font-size: $uni-font-size-sm;}
|
.font12{font-size: $uni-font-size-sm;}
|
||||||
.font13{font-size:13px;}
|
.font13{font-size:13px;}
|
||||||
.font14{font-size: $uni-font-size-base;}
|
.font14{font-size: $uni-font-size-base;}
|
||||||
|
.font15{font-size: 15px;}
|
||||||
|
.font20{font-size: 20px;}
|
||||||
|
.font22{font-size: 22px;}
|
||||||
|
.font24{font-size: 24px;}
|
||||||
|
.font35{font-size: 35px;}
|
||||||
.font_bold{font-weight: bold;}
|
.font_bold{font-weight: bold;}
|
||||||
//文字颜色
|
//文字颜色
|
||||||
.text_color_black{color: #000;}
|
.text_color_black{color: #000;}
|
||||||
|
// .text_{color: #00B68D;}
|
||||||
|
|
||||||
|
//布局
|
||||||
|
.flex_layout{display: flex;}
|
||||||
|
//paddind
|
||||||
|
.padd_top12{padding-top:12px;}
|
||||||
|
//margin
|
||||||
|
.mar_top12{margin-top: 12px;}
|
||||||
|
.page_list{margin-bottom: 12px;padding:0 12px;}
|
||||||
|
//有详情的列表
|
||||||
|
.detail_list{margin-bottom: 12px;
|
||||||
|
.list_top{
|
||||||
|
display: flex;
|
||||||
|
padding:12px;
|
||||||
|
font-size: 14px;
|
||||||
|
border-radius: 8px 8px 0px 0px;
|
||||||
|
background: linear-gradient(90deg, rgba(61, 84, 176, 0.70) 5.83%, rgba(58, 77, 158, 0.00) 73.76%);
|
||||||
|
.top_left{flex: 1;}
|
||||||
|
}
|
||||||
|
.list_content{padding:12px;}
|
||||||
|
}
|
||||||
|
|
||||||
|
//页面固定按钮
|
||||||
|
.bottom_but{bottom: 40px;bottom: 40px;position: fixed;width: calc(100% - 28px);
|
||||||
|
view{width: 50%;text-align: center;margin: 0 20px;border-radius: 19px;background: #DDD;line-height: 38px;}
|
||||||
|
}
|
||||||
|
//底部固定添加按钮
|
||||||
|
.page_bottom_button{width: 100%;position: fixed;bottom: 0px;background-color: #060B26;border-top: 1px solid #2E3249;height: 80px;
|
||||||
|
.page_add{display: flex;justify-content: center;margin: 7px 20px;border-radius: 17.5px;background: #1C2755;line-height: 35px;}
|
||||||
|
}
|
||||||
|
.bot_padding{padding-bottom: 100px;}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,123 @@
|
||||||
|
<template>
|
||||||
|
<view class="progress_box">
|
||||||
|
<canvas class="progress_bg" canvas-id="cpbg"></canvas>
|
||||||
|
<canvas class="progress_bar" canvas-id="cpbar"></canvas>
|
||||||
|
<view class="progress_txt">
|
||||||
|
<view class="progress_info">{{ progress_txt }}%</view>
|
||||||
|
<text class="progress_title">{{title}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
props:{
|
||||||
|
progress_txt:{
|
||||||
|
type: Number,
|
||||||
|
default:0
|
||||||
|
},
|
||||||
|
title:{
|
||||||
|
type:String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
width:{
|
||||||
|
type:Number,
|
||||||
|
defauit:''
|
||||||
|
},
|
||||||
|
height:{
|
||||||
|
type:Number,
|
||||||
|
defauit:''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted: function() {
|
||||||
|
this.drawProgressbg();
|
||||||
|
this.drawCircle(this.progress_txt); //参数为1-100
|
||||||
|
this.style(this.width,this.height);
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
style:function(width,height){
|
||||||
|
// console.log(width,height)
|
||||||
|
// document.getElementById("cpbg").style.width = width+"px";
|
||||||
|
// cpbgA.style.width = width+"px";
|
||||||
|
// cpbgA.style.height = height+"px";
|
||||||
|
// var cpbarA = document.getElementById("cpbar");
|
||||||
|
// cpbarA.style.width = width+"px";
|
||||||
|
// cpbarA.style.height = height+"px";
|
||||||
|
},
|
||||||
|
drawProgressbg: function() {
|
||||||
|
// 自定义组件实例 this ,表示在这个自定义组件下查找拥有 canvas-id 的 <canvas/>
|
||||||
|
var ctx = uni.createCanvasContext('cpbg', this);
|
||||||
|
ctx.setLineWidth(6); // 设置圆环的宽度
|
||||||
|
ctx.setStrokeStyle('#E9E9E9'); // 设置圆环的颜色
|
||||||
|
ctx.setLineCap('round'); // 设置圆环端点的形状
|
||||||
|
ctx.beginPath(); //开始一个新的路径
|
||||||
|
ctx.arc(110, 110, 70, 0.75 * Math.PI, 0.25 * Math.PI, false);
|
||||||
|
//设置一个原点(110,110),半径为100的圆的路径到当前路径
|
||||||
|
ctx.stroke(); //对当前路径进行描边
|
||||||
|
ctx.draw();
|
||||||
|
},
|
||||||
|
drawCircle: function(step) {
|
||||||
|
var ctx = uni.createCanvasContext('cpbar', this);
|
||||||
|
// 进度条的渐变(中心x坐标-半径-边宽,中心Y坐标,中心x坐标+半径+边宽,中心Y坐标)
|
||||||
|
var gradient = ctx.createLinearGradient(28, 55, 192, 55);
|
||||||
|
gradient.addColorStop('0', '#009688');
|
||||||
|
// gradient.addColorStop('1.0', '#FF3B1D');
|
||||||
|
ctx.setLineWidth(6);
|
||||||
|
ctx.setStrokeStyle(gradient);
|
||||||
|
ctx.setLineCap('round');
|
||||||
|
ctx.beginPath();
|
||||||
|
// 参数step 为绘制的百分比
|
||||||
|
step = 0.015 * step + 0.75;
|
||||||
|
if (step >= 2) {
|
||||||
|
step = step % 2;
|
||||||
|
}
|
||||||
|
ctx.arc(110, 110, 70, 0.75 * Math.PI, step * Math.PI, false);
|
||||||
|
ctx.stroke();
|
||||||
|
ctx.draw();
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.progress_box {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.progress_bg {
|
||||||
|
position: absolute;
|
||||||
|
width: 220px;
|
||||||
|
height: 220px;
|
||||||
|
}
|
||||||
|
.progress_bar {
|
||||||
|
width: 220px;
|
||||||
|
height: 220px;
|
||||||
|
}
|
||||||
|
.progress_txt {
|
||||||
|
position: absolute;
|
||||||
|
font-size: 28upx;
|
||||||
|
color: #999999;
|
||||||
|
}
|
||||||
|
.progress_info {
|
||||||
|
font-size: 36upx;
|
||||||
|
padding-left: 16upx;
|
||||||
|
letter-spacing: 2upx;
|
||||||
|
font-size: 52upx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.progress_titleP{
|
||||||
|
color: #BFBFBF;
|
||||||
|
}
|
||||||
|
.progress_dot {
|
||||||
|
width: 16upx;
|
||||||
|
height: 16upx;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: #fb9126;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -31,8 +31,8 @@ export default {
|
||||||
{
|
{
|
||||||
id: 0,
|
id: 0,
|
||||||
path: '/pages/index/index',
|
path: '/pages/index/index',
|
||||||
icon: '/static/logo.png',
|
icon: '/static/indexB.png',
|
||||||
selectIcon: '/static/logo.png',
|
selectIcon: '/static/indexA.png',
|
||||||
text: '首页',
|
text: '首页',
|
||||||
centerItem: false
|
centerItem: false
|
||||||
},
|
},
|
||||||
|
@ -48,8 +48,8 @@ export default {
|
||||||
{
|
{
|
||||||
id: 2,
|
id: 2,
|
||||||
path: '/pages/person/person',
|
path: '/pages/person/person',
|
||||||
icon: '/static/logo.png',
|
icon: '/static/personA.png',
|
||||||
selectIcon: '/static/logo.png',
|
selectIcon: '/static/personB.png',
|
||||||
text: '我的',
|
text: '我的',
|
||||||
centerItem: false
|
centerItem: false
|
||||||
}
|
}
|
||||||
|
@ -58,13 +58,9 @@ export default {
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
this.currentItem = this.currentPage
|
this.currentItem = this.currentPage
|
||||||
// 隐藏原来的tabBar导航栏
|
|
||||||
uni.hideTabBar()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
changeItem (item) {
|
changeItem (item) {
|
||||||
let _this = this
|
|
||||||
//_this.currentItem = item.id;
|
|
||||||
uni.switchTab({
|
uni.switchTab({
|
||||||
url: item.path
|
url: item.path
|
||||||
})
|
})
|
||||||
|
@ -89,7 +85,7 @@ view {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 5rpx 0;
|
padding: 5rpx 0;
|
||||||
color: #999999;
|
color: #999999;
|
||||||
|
background: #131E3B;
|
||||||
/* 针对tabbar的统一处理 */
|
/* 针对tabbar的统一处理 */
|
||||||
.tabbar-item {
|
.tabbar-item {
|
||||||
width: 33.33%;
|
width: 33.33%;
|
||||||
|
|
|
@ -0,0 +1,94 @@
|
||||||
|
<template>
|
||||||
|
<!-- style="height: 3.5rem; margin: 0 1em;" -->
|
||||||
|
<view>
|
||||||
|
<view class="line-total" :style="'width: ' + (val / total * 100) + '%'">
|
||||||
|
<text class="line-data">
|
||||||
|
{{val}}%
|
||||||
|
</text>
|
||||||
|
</view>
|
||||||
|
<view style="position: relative;bottom: 10px;">
|
||||||
|
<view class="line-base"></view>
|
||||||
|
<view class="line-blue" :style="'width: ' + (val / total * 100) + '%'"></view>
|
||||||
|
</view>
|
||||||
|
<!-- <view class="line-val">
|
||||||
|
<text>{{title}}</text>
|
||||||
|
<text>{{total}}</text>
|
||||||
|
</view> -->
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'progressBar',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
}
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
// 标题
|
||||||
|
title: {
|
||||||
|
type: [String, Number],
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
total: {
|
||||||
|
type: [Number],
|
||||||
|
default: 0
|
||||||
|
},
|
||||||
|
val: {
|
||||||
|
type: [Number],
|
||||||
|
default: 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.line-total {
|
||||||
|
color: #67C23A;
|
||||||
|
text-align: right;
|
||||||
|
font-size: 25rpx;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
line-height: normal;
|
||||||
|
position: relative;
|
||||||
|
z-index: 99;
|
||||||
|
|
||||||
|
}
|
||||||
|
.line-data{
|
||||||
|
color: #fff;
|
||||||
|
padding: 1px 3px;
|
||||||
|
border-radius: 9px;
|
||||||
|
border: 1px solid #FFF;
|
||||||
|
background: var(--color-warning, #67C23A);
|
||||||
|
width: 30px;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
.line-base {
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 6px;
|
||||||
|
border-radius: 8px;
|
||||||
|
background: rgba(128, 136, 142, 0.40);
|
||||||
|
}
|
||||||
|
.line-blue {
|
||||||
|
position: absolute;
|
||||||
|
width: 50%;
|
||||||
|
height: 6px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background: #67C23A;
|
||||||
|
}
|
||||||
|
.line-val {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
color: #7e7e7e;
|
||||||
|
font-size: 25rpx;
|
||||||
|
font-weight: 50px;
|
||||||
|
margin-top: 12rpx;
|
||||||
|
}
|
||||||
|
</style>
|
74
pages.json
74
pages.json
|
@ -41,12 +41,84 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path" : "pages/index/productionOrder",
|
"path" : "pages/production/productionOrder",
|
||||||
"style" :
|
"style" :
|
||||||
{
|
{
|
||||||
"navigationBarTitleText" : "生产工单管理",
|
"navigationBarTitleText" : "生产工单管理",
|
||||||
"enablePullDownRefresh" : false
|
"enablePullDownRefresh" : false
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/index/schedule",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "工单进度",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/index/materialYield",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "工单出材率",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/equipmentManage/equipmentManage",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "设备管理",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/equipmentManage/editDevice",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/equipmentManage/bindingDevice",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "设备管理",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/production/productionDetail",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "工单详情",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/deviceRepair/deviceRepair",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "硬件设备报修",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/deviceRepair/RepairReport",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "设备报修",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path" : "pages/deviceStatus/deviceStatus",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationBarTitleText" : "设备状态",
|
||||||
|
"enablePullDownRefresh" : false
|
||||||
|
}
|
||||||
}],
|
}],
|
||||||
"globalStyle": {
|
"globalStyle": {
|
||||||
"navigationBarTextStyle": "white",
|
"navigationBarTextStyle": "white",
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
<template>
|
||||||
|
<!-- 设备报修 -->
|
||||||
|
<view class="pagepaddings">
|
||||||
|
<view class="page_content contentboxsty font14">
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">值班工程师</view>
|
||||||
|
<view class="">
|
||||||
|
<picker placeholder="请选择设备" @change="bindPickerChange" :value="index" :range="array" >
|
||||||
|
<input type="text" :value="array[index]" placeholder="请选择设备" disabled />
|
||||||
|
</picker>
|
||||||
|
</view>
|
||||||
|
<view class="iconfont icon-xiala"></view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">故障时间</view>
|
||||||
|
<view class="">
|
||||||
|
<view :class="[downtime ? 'haveTime' : 'noTime']">
|
||||||
|
<uni-datetime-picker placeholder="清选择时间" type="datetime" v-model="downtime" @change="changeLog" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view class=""></view> -->
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">报修时间</view>
|
||||||
|
<view class="">
|
||||||
|
<view :class="[repairtime ? 'haveTime' : 'noTime']">
|
||||||
|
<uni-datetime-picker placeholder="清选择时间" type="datetime" v-model="repairtime" @change="changeLog" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class=""></view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">报修人</view>
|
||||||
|
<view class="">
|
||||||
|
<picker placeholder="请选择" @change="bindPickerChange" :value="index" :range="array" >
|
||||||
|
<input type="text" :value="array[index]" placeholder="请选择" disabled />
|
||||||
|
</picker>
|
||||||
|
</view>
|
||||||
|
<view class=""></view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">报修设备</view>
|
||||||
|
<view class="">
|
||||||
|
<picker placeholder="请选择" @change="bindPickerChange" :value="index" :range="array" >
|
||||||
|
<input type="text" :value="array[index]" placeholder="请选择" disabled />
|
||||||
|
</picker>
|
||||||
|
</view>
|
||||||
|
<view class=""></view>
|
||||||
|
</view>
|
||||||
|
<view class="textarea_row">
|
||||||
|
<view class="name">故障描述</view>
|
||||||
|
<textarea placeholder="请输入维修描述..."/>
|
||||||
|
<!-- <uni-easyinput type="textarea" v-model="value" placeholder="请输入维修描述..."></uni-easyinput> -->
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<view class="img_row">
|
||||||
|
<view class="name">故障照片</view>
|
||||||
|
<uni-file-picker limit="3" v-model="imageValue" title="">
|
||||||
|
<view class="img_but">
|
||||||
|
<view class="iconfont icon-a-shangchuanzhaopian2 font35"></view>
|
||||||
|
<view class="font12">
|
||||||
|
上传图片
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</uni-file-picker>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
array: ['中国', '美国', '巴西', '日本'],
|
||||||
|
downtime:'',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
changeLog(){
|
||||||
|
console.log(this.downtime)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.page_content{padding: 0 12px 10px;}
|
||||||
|
.content_row{display: flex;border-bottom: 1px solid #2D3A6F;height: 44px;align-items: center;
|
||||||
|
.name{width: 30%;}
|
||||||
|
.flex_layout{
|
||||||
|
.contenticon{width: 20px;height: 20px;}
|
||||||
|
.text{padding: 0 20px 0 5px;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.textarea_row{
|
||||||
|
.name{padding: 12px 0;}
|
||||||
|
textarea{border-radius: 4px;background: rgba(255, 255, 255, 0.50);padding: 10px;}
|
||||||
|
}
|
||||||
|
.img_row{
|
||||||
|
.name{padding: 12px 0;}
|
||||||
|
.file-title {color: #fff;}
|
||||||
|
.is-add{background: rgba(255, 255, 255, 0.5);}
|
||||||
|
.img_but{ position: relative;display: flex;align-items: center;justify-content: center;flex-direction: column;}
|
||||||
|
}
|
||||||
|
|
||||||
|
.uni-date-x{
|
||||||
|
background-color: #1C2755 !important;color: #fff!important;
|
||||||
|
}
|
||||||
|
.uni-date-x--border{border:none !important}
|
||||||
|
.haveTime{
|
||||||
|
.uni-date__x-input{color: #fff;}
|
||||||
|
}
|
||||||
|
.noTime{.uni-date__x-input{color: #666;}}
|
||||||
|
</style>
|
|
@ -0,0 +1,105 @@
|
||||||
|
<template>
|
||||||
|
<!-- 设备报修 -->
|
||||||
|
<view class="pagepaddings bot_padding">
|
||||||
|
<view v-for="(item,index) in list" :key="index">
|
||||||
|
<view class="page_list contentboxsty font13">
|
||||||
|
<view class="list_top flex_layout">
|
||||||
|
<view class="top_left flex_layout">
|
||||||
|
<view class="iconfont icon-gengduo-1"></view>
|
||||||
|
<view class="">双头带锯</view>
|
||||||
|
</view>
|
||||||
|
<view class="top_right">故障中</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_centre">
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">值班工程师</view>
|
||||||
|
<view class="row_content">章三</view>
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">故障时间</view>
|
||||||
|
<view class="row_content">2024-01-11 13:09:11</view>
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">报修人</view>
|
||||||
|
<view class="row_content">李四</view>
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">故障时间</view>
|
||||||
|
<view class="row_content">3.5H</view>
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">处理状态</view>
|
||||||
|
<view class="row_content">故障处理中</view>
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
<view class="row_name">故障解除时间</view>
|
||||||
|
<view class="row_content">2024-01-11 14:09:07</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_below flex_layout">
|
||||||
|
<view class="below_left">
|
||||||
|
修改
|
||||||
|
</view>
|
||||||
|
<view class="below_right">
|
||||||
|
查看详情
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="page_bottom_button">
|
||||||
|
<view class="page_add" @click="toAddRepairReport()">
|
||||||
|
<!-- <view class="name_left font14">
|
||||||
|
系统设备管理
|
||||||
|
</view> -->
|
||||||
|
<view class="iconfont icon-tianjia font24"></view>
|
||||||
|
<text>添加</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list:[{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//新增报修页面
|
||||||
|
toAddRepairReport(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/deviceRepair/RepairReport'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//维修页面
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.page_list{
|
||||||
|
.list_top{line-height: 44px;align-items: center;border-bottom: 1px solid #2D3A6F;
|
||||||
|
.top_left{flex: 1;}
|
||||||
|
}
|
||||||
|
.list_centre{
|
||||||
|
.row_name{width: 30%;}
|
||||||
|
.row_data{display: flex;display: flex;padding: 6px 0;}
|
||||||
|
}
|
||||||
|
.list_below{line-height: 49px;align-items: center;border-top: 1px solid #2D3A6F;
|
||||||
|
view{width: 50%; text-align: center;}
|
||||||
|
.below_left{border-right: 1px solid #2D3A6F;}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,23 @@
|
||||||
|
<template>
|
||||||
|
<!-- 设备状态 -->
|
||||||
|
<view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
|
@ -0,0 +1,103 @@
|
||||||
|
<template>
|
||||||
|
<!-- 绑定安全生产监控相机 -->
|
||||||
|
<view>
|
||||||
|
<view class="pagepaddings">
|
||||||
|
<view class="page_name font14">绑定安全生产监控相机</view>
|
||||||
|
<view class="page_content contentboxsty font13">
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">串流推流Url</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入串流推流Url"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">AppName</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入APP名称"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row noborbot">
|
||||||
|
<view class="name"></view>
|
||||||
|
<view class="tip">
|
||||||
|
不超过256字符,支持数字、大小写字母、短划线(-)、下划线(_)、等号(=)。
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">StreamName</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入StreamName"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row noborbot">
|
||||||
|
<view class="name"></view>
|
||||||
|
<view class="tip">
|
||||||
|
不超过256字符,支持数字、大小写字母、短划线(-)、下划线(_)、等号(=)。
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">设备IP</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备IP"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">端口</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备端口"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">用户名</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入您的用户名"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">密码</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入密码"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">监控推流权限</view>
|
||||||
|
<view class="flex_layout">
|
||||||
|
<view class="t-icon t-icon-qiyong1 contenticon"></view><text class="text">Token验证</text>
|
||||||
|
<view class="t-icon t-icon-jinyong2 contenticon"></view><text class="text">禁用</text>
|
||||||
|
<!-- <label class="radio"><radio value="r1" checked="true" />Token验证</label>
|
||||||
|
<label class="radio"><radio value="r2" />禁用</label> -->
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="bottom_but flex_layout">
|
||||||
|
<view class="font13">保存</view>
|
||||||
|
<view class="font13">取消</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.page_name{margin-bottom: 10px;}
|
||||||
|
.page_content{padding: 0 12px;}
|
||||||
|
.content_row{display: flex;border-bottom: 1px solid #2D3A6F;height: 44px;align-items: center;
|
||||||
|
.name{width: 30%;}
|
||||||
|
.tip{width: 70%;font-size: 10px;color: #666;}
|
||||||
|
.flex_layout{
|
||||||
|
.contenticon{width: 20px;height: 20px;}
|
||||||
|
.text{padding: 0 20px 0 5px;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,98 @@
|
||||||
|
<template>
|
||||||
|
<page-meta>
|
||||||
|
<navigation-bar title="添加设备" color="white"></navigation-bar>
|
||||||
|
</page-meta>
|
||||||
|
<view class="pagepaddings">
|
||||||
|
<view class="page_name font14">
|
||||||
|
添加/编辑设备
|
||||||
|
</view>
|
||||||
|
<view class="page_content contentboxsty font13">
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">选择设备</view>
|
||||||
|
<picker placeholder="请选择设备" @change="bindPickerChange" :value="index" :range="array" >
|
||||||
|
<input type="text" :value="array[index]" placeholder="请选择设备" disabled />
|
||||||
|
</picker>
|
||||||
|
|
||||||
|
<!-- <view class="">
|
||||||
|
<picker @change="bindPickerChange" placeholder="请选择设备" :value="index" :range="array">
|
||||||
|
<view class="uni-input" style="width: 70%;">{{array[index]}}</view>
|
||||||
|
</picker>
|
||||||
|
</view -->
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">设备自定义名称</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备名称"/>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">设备功率</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备功率"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">设备IP</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备IP"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">端口</view>
|
||||||
|
<view class="">
|
||||||
|
<input placeholder="请输入设备端口"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_row">
|
||||||
|
<view class="name">状态</view>
|
||||||
|
<view class="flex_layout">
|
||||||
|
<!-- <image src="/static/enable.png" mode=""></image><text class="text">启用</text>
|
||||||
|
<image src="/static/disable.png" mode=""></image><text class="text">禁用</text> -->
|
||||||
|
<view class="t-icon t-icon-qiyong1 contenticon"></view><text class="text">启用</text>
|
||||||
|
<view class="t-icon t-icon-jinyong2 contenticon"></view><text class="text">禁用</text>
|
||||||
|
<!-- <label class="radio"><radio value="r1" checked="true" />启用</label>
|
||||||
|
<label class="radio"><radio value="r2" />禁用</label> -->
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="textarea_row">
|
||||||
|
<view class="name">设置备注</view>
|
||||||
|
<textarea />
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="bottom_but flex_layout">
|
||||||
|
<view class="font13">保存</view>
|
||||||
|
<view class="font13">取消</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
array: ['中国', '美国', '巴西', '日本'],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.page_name{margin-bottom: 10px;}
|
||||||
|
.page_content{padding: 0 12px 10px;}
|
||||||
|
.content_row{display: flex;border-bottom: 1px solid #2D3A6F;height: 44px;align-items: center;
|
||||||
|
.name{width: 30%;}
|
||||||
|
.flex_layout{
|
||||||
|
.contenticon{width: 20px;height: 20px;}
|
||||||
|
.text{padding: 0 20px 0 5px;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.textarea_row{
|
||||||
|
.name{padding: 12px 0;}
|
||||||
|
textarea{border-radius: 4px;background: rgba(255, 255, 255, 0.50);width: 100%;}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,80 @@
|
||||||
|
<template>
|
||||||
|
<!-- 设备管理 -->
|
||||||
|
<view class="pagepaddings bot_padding">
|
||||||
|
<view class="" v-for="(item,index) in list" :key="index" >
|
||||||
|
<view class="page_list contentboxsty font13">
|
||||||
|
<view class="list_row">
|
||||||
|
<view class="row_name">
|
||||||
|
设备名称
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
{{item.name}}
|
||||||
|
</view>
|
||||||
|
<view class="iconfont icon-bianji font20"></view>
|
||||||
|
</view>
|
||||||
|
<view class="list_row">
|
||||||
|
设备IP/端口
|
||||||
|
</view>
|
||||||
|
<view class="list_row">
|
||||||
|
<view class="row_name">
|
||||||
|
已绑定设备
|
||||||
|
</view>
|
||||||
|
<view class="row_data">
|
||||||
|
{{item.name}}
|
||||||
|
</view>
|
||||||
|
<view class="iconfont icon-bangding font20" @click="toBindingDevice()"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="page_bottom_button">
|
||||||
|
<view class="page_add" @click="toAddDevice()">
|
||||||
|
<!-- <view class="name_left font14">
|
||||||
|
系统设备管理
|
||||||
|
</view> -->
|
||||||
|
<view class="iconfont icon-tianjia font24"></view>
|
||||||
|
<text>添加</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list:[{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
{name:"双头立锯"},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toAddDevice(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/equipmentManage/editDevice'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
toBindingDevice(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/equipmentManage/bindingDevice'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
/* .page_name{display: flex;margin-bottom: 10px;align-items: center;} */
|
||||||
|
/* .name_left{flex: 1;} */
|
||||||
|
.page_list{padding: 6px 12px;}
|
||||||
|
.list_row{display: flex;padding: 6px 0;align-items: center;}
|
||||||
|
.row_name{width:30%;}
|
||||||
|
.row_data{width: 65%;}
|
||||||
|
</style>
|
|
@ -3,11 +3,162 @@
|
||||||
<view class="container home">
|
<view class="container home">
|
||||||
<view class="home_head">
|
<view class="home_head">
|
||||||
<view class="iconfont icon-chaojiguanliyuan accounticon"></view>
|
<view class="iconfont icon-chaojiguanliyuan accounticon"></view>
|
||||||
<view class="name">Ykxiao 超级管理员</view>
|
<view class="name" @click="toLogin()">未登录</view>
|
||||||
|
<!-- <view class="name">Ykxiao 超级管理员</view> -->
|
||||||
<view class="iconfont icon-xiaoxitongzhi notifyicon" @click="toMessage()"></view>
|
<view class="iconfont icon-xiaoxitongzhi notifyicon" @click="toMessage()"></view>
|
||||||
<view class="iconfont icon-shezhi setupicon"></view>
|
<view class="iconfont icon-shezhi setupicon"></view>
|
||||||
</view>
|
</view>
|
||||||
<view class="home_content">
|
<view class="home_content">
|
||||||
|
<view class="content_box">
|
||||||
|
<view class="content_title">设备信息</view>
|
||||||
|
<view class="device_data">
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-WIFI_on contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
在线设备
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-WIFI_off contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
离线设备
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-setting contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
维修保养
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-broken contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
故障频次
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-brokenrate contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
设备故障率
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="device_module">
|
||||||
|
<view class="module_left">
|
||||||
|
<view class="icon_background">
|
||||||
|
<view class="iconfont icon-weixiubaoyangpinshuai contenticon"></view>
|
||||||
|
</view>
|
||||||
|
<view class="font13">
|
||||||
|
维修保养频率
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="module_right">
|
||||||
|
<view class="top">
|
||||||
|
▴2.89%
|
||||||
|
</view>
|
||||||
|
<view class="font22">
|
||||||
|
1,567
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="content_box">
|
||||||
|
<view class="content_title">能耗信息</view>
|
||||||
|
<view class="energy_data">
|
||||||
|
<view class="iconfont icon-dianliang energy_icon"></view>
|
||||||
|
<view class="energy_name">
|
||||||
|
<view class="font13">
|
||||||
|
用电量
|
||||||
|
</view>
|
||||||
|
<view class="font14">
|
||||||
|
345.00
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="energy_image">
|
||||||
|
<image src="http://dm-auto.oss-cn-shanghai.aliyuncs.com/mes_wechat/yongdian.png" alt="" />
|
||||||
|
</view>
|
||||||
|
<view class="energy_number font20">
|
||||||
|
41.443
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="energy_data mar_top12">
|
||||||
|
<view class="iconfont icon-yasuokongqi energy_icon"></view>
|
||||||
|
<view class="energy_name">
|
||||||
|
<view class="font13">
|
||||||
|
用气量
|
||||||
|
</view>
|
||||||
|
<view class="font14">
|
||||||
|
345.00
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="energy_image">
|
||||||
|
<image src="http://dm-auto.oss-cn-shanghai.aliyuncs.com/mes_wechat/yongqi.png" alt="" />
|
||||||
|
</view>
|
||||||
|
<view class="energy_number font20">
|
||||||
|
41.443
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
<view class="content_box">
|
<view class="content_box">
|
||||||
<view class="content_title">工单管理</view>
|
<view class="content_title">工单管理</view>
|
||||||
<view class="content_data">
|
<view class="content_data">
|
||||||
|
@ -15,11 +166,11 @@
|
||||||
<view class="t-icon t-icon-shengchangongdan contenticon"></view>
|
<view class="t-icon t-icon-shengchangongdan contenticon"></view>
|
||||||
<view class="contentname">生产工单</view>
|
<view class="contentname">生产工单</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_module">
|
<view class="content_module" @click="toSchedule()">
|
||||||
<view class="t-icon t-icon-gongdanjindu contenticon"></view>
|
<view class="t-icon t-icon-gongdanjindu contenticon"></view>
|
||||||
<view class="contentname">工单进度</view>
|
<view class="contentname">工单进度</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_module">
|
<view class="content_module" @click="toMaterialYield()">
|
||||||
<view class="t-icon t-icon-gongdanchucaishuai contenticon"></view>
|
<view class="t-icon t-icon-gongdanchucaishuai contenticon"></view>
|
||||||
<view class="contentname">工单出材率</view>
|
<view class="contentname">工单出材率</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -28,6 +179,7 @@
|
||||||
<view class="contentname">生产报表</view>
|
<view class="contentname">生产报表</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view class="content_box">
|
<view class="content_box">
|
||||||
<view class="content_title">生产排程</view>
|
<view class="content_title">生产排程</view>
|
||||||
|
@ -45,17 +197,17 @@
|
||||||
<view class="content_box">
|
<view class="content_box">
|
||||||
<view class="content_title">设备管理</view>
|
<view class="content_title">设备管理</view>
|
||||||
<view class="content_data">
|
<view class="content_data">
|
||||||
<view class="content_module">
|
<view class="content_module" @click="toEquipmentManage()">
|
||||||
<view class="t-icon t-icon-shebeiguanli contenticon"></view>
|
<view class="t-icon t-icon-shebeiguanli contenticon"></view>
|
||||||
<view class="contentname">设备设置</view>
|
<view class="contentname">设备设置</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_module">
|
<view class="content_module" @click="toDeviceStatus()">
|
||||||
<view class="t-icon t-icon-shebeizhuangtai contenticon"></view>
|
<view class="t-icon t-icon-shebeizhuangtai contenticon"></view>
|
||||||
<view class="contentname">设备状态</view>
|
<view class="contentname">设备状态</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_module">
|
<view class="content_module">
|
||||||
<view class="t-icon t-icon-shebeibaoxiu contenticon"></view>
|
<view class="t-icon t-icon-shebeibaoxiu contenticon" @click="toDeviceRepair()"></view>
|
||||||
<view class="contentname">设备保修</view>
|
<view class="contentname">设备报修</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -77,6 +229,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
//
|
||||||
|
toLogin(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/login/login'
|
||||||
|
})
|
||||||
|
},
|
||||||
//跳转消息页
|
//跳转消息页
|
||||||
toMessage(){
|
toMessage(){
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
|
@ -86,58 +244,91 @@
|
||||||
//跳转生产工单页
|
//跳转生产工单页
|
||||||
toProductionOrder(){
|
toProductionOrder(){
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:'/pages/index/productionOrder'
|
url:'/pages/production/productionOrder'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//跳转工单进度页
|
||||||
|
toSchedule(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/index/schedule'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//跳转工单出材率页
|
||||||
|
toMaterialYield(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/index/materialYield'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//跳转设备管理页面
|
||||||
|
toEquipmentManage(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/equipmentManage/equipmentManage'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//跳转设备报修页
|
||||||
|
toDeviceRepair(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/deviceRepair/deviceRepair'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//跳转设备状态
|
||||||
|
toDeviceStatus(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/deviceStatus/deviceStatus'
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style lang="scss">
|
||||||
|
|
||||||
/* .icon {
|
.home {height: 100vh;padding: 0 10px;font-size: 14px;
|
||||||
width: 80upx;
|
.home_head{height: 40px;display: flex;position: relative;align-items: center;padding-bottom: 5px;
|
||||||
height: 80upx;
|
.name{flex:1;}
|
||||||
vertical-align: -0.15em;
|
|
||||||
fill: currentColor;
|
|
||||||
overflow: hidden;
|
|
||||||
} */
|
|
||||||
.home {
|
|
||||||
height: 100vh;
|
|
||||||
/* background-color: #060B26; */
|
|
||||||
padding: 0 10px;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
.home_head{height: 40px;display: flex;position: relative;align-items: center;padding-bottom: 5px;}
|
|
||||||
.home_head .name{flex:1;}
|
|
||||||
.accounticon{
|
.accounticon{
|
||||||
/* width: 20px;
|
|
||||||
height: 20px; */
|
|
||||||
margin-right: 5px;
|
margin-right: 5px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
}
|
}
|
||||||
.notifyicon{font-size: 20px;padding-right: 20px;}
|
.notifyicon{font-size: 20px;padding-right: 20px;}
|
||||||
.setupicon{font-size: 20px;}
|
.setupicon{font-size: 20px;}
|
||||||
.home_content{
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
.home_content{padding-bottom: 100px;
|
||||||
.content_title{
|
.content_title{line-height: 25px;font-size: 16px;padding: 15px 0;}
|
||||||
line-height: 25px;
|
.device_data{display: flex;flex-wrap: wrap;
|
||||||
font-size: 16px;
|
.device_module{
|
||||||
}
|
width: calc(50% - 12px); /* 计算每个块的宽度(根据需要调整)*/
|
||||||
.content_data{padding: 10px 0;display: flex;position: relative;align-items: center;text-align: center;height: 98px;}
|
margin:6px;
|
||||||
.content_module{
|
background-color: #ccc; /* 设置背景色(根据需要调整)*/
|
||||||
width: 25%;
|
padding: 10px;
|
||||||
margin: 10px 1%;
|
background: #1C2755;
|
||||||
height: 98px;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
flex-direction: column;
|
|
||||||
background-color: #009688;
|
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
.module_left{width: 60%;
|
||||||
|
.icon_background{width: 32px;height: 32px;background: #6576B7;border-radius: 8px; display: flex;align-items: center;justify-content: center;margin-bottom: 4px;}
|
||||||
}
|
}
|
||||||
|
.module_right{width: 40%;
|
||||||
|
.top{float: right;font-size: 10px;padding: 2px 4px;background: rgba(103,194,58,0.3);border-radius: 4px;color: #67C23A;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.energy_data{padding: 12px; height: 64px; display: flex;align-items: center;background: #1C2755;border-radius: 8px;
|
||||||
|
.energy_icon{color: #009688;font-size: 24px;margin-right: 8px;}
|
||||||
|
.energy_image{flex: 1;text-align: center;
|
||||||
|
image{width: 86px;height: 32px;}
|
||||||
|
}
|
||||||
|
.energy_number{color: #FA3758;}
|
||||||
|
}
|
||||||
|
.content_data{
|
||||||
|
padding: 10px 0;display: flex;position: relative;align-items: center;text-align: center;height: 98px;
|
||||||
|
.content_module{
|
||||||
|
width: 25%;margin: 10px 1%;height: 98px;display: flex;align-items: center;justify-content: center;flex-direction: column;background-color: #009688;border-radius: 8px;
|
||||||
.contenticon{font-size: 24px;width: 32px;height: 32px;background-repeat: no-repeat;}
|
.contenticon{font-size: 24px;width: 32px;height: 32px;background-repeat: no-repeat;}
|
||||||
.contentname{padding-top: 2px;font-size: 12px;}
|
.contentname{padding-top: 2px;font-size: 12px;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -0,0 +1,107 @@
|
||||||
|
<template>
|
||||||
|
<!-- 工单出材率 -->
|
||||||
|
<view class="pagepaddings font13">
|
||||||
|
<view v-for="(item,index) in list" :key="index" class="detail_list contentboxsty">
|
||||||
|
<view class="list_top">
|
||||||
|
<view class="top_left">
|
||||||
|
工单号:{{item.name}}
|
||||||
|
</view>
|
||||||
|
<view class="top_right">
|
||||||
|
工单详情
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_content">
|
||||||
|
<view class="list_centre">
|
||||||
|
<view class="centre_left">
|
||||||
|
加工规格:{{item.specs}}
|
||||||
|
</view>
|
||||||
|
<view class="centre_right">
|
||||||
|
生产中
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_below">
|
||||||
|
<view class="below_left">
|
||||||
|
<view class="">
|
||||||
|
算法出材率
|
||||||
|
</view>
|
||||||
|
<view class="percentage font24">
|
||||||
|
{{item.algorithm}}%
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="below_left">
|
||||||
|
<view class="">
|
||||||
|
算法出材率
|
||||||
|
</view>
|
||||||
|
<view class="percentage font24">
|
||||||
|
{{item.reality}}%
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list:[{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.detail_list{
|
||||||
|
// .list_top{display: flex;padding: 12px 0;border-bottom: 1px solid #2D3A6F;margin-bottom: 8px;
|
||||||
|
// .top_left{flex: 1;}
|
||||||
|
// }
|
||||||
|
.list_centre{display: flex;
|
||||||
|
.centre_left{flex: 1;}
|
||||||
|
}
|
||||||
|
.list_below{display: flex;text-align: center;padding: 20px 0;
|
||||||
|
view{flex: 1;}
|
||||||
|
.percentage{color: #00B68D;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -1,123 +0,0 @@
|
||||||
<template>
|
|
||||||
<!-- 生产工单 -->
|
|
||||||
<view class="pagepaddings">
|
|
||||||
<view v-for="(item,index) in list" :key="index" class="page_list contentboxsty">
|
|
||||||
<view class="list_top">
|
|
||||||
<view class="top_left">
|
|
||||||
工单号:{{item.name}}
|
|
||||||
</view>
|
|
||||||
<view class="top_right">
|
|
||||||
工单详情
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="list_centre">
|
|
||||||
<view class="centre_left">
|
|
||||||
<view class="">
|
|
||||||
算法出材率
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
{{item.algorithm}}%
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="centre_left">
|
|
||||||
<view class="">
|
|
||||||
算法出材率
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
{{item.reality}}%
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="list_below">
|
|
||||||
<view class="">
|
|
||||||
<view class="">
|
|
||||||
<text>状态:</text>
|
|
||||||
<text>{{item.state}}</text>
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
<text>价格规格:</text>
|
|
||||||
<text>{{item.specs}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
<view class="">
|
|
||||||
<text>生产开始:</text>
|
|
||||||
<text>{{item.time}}</text>
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
<text>工单耗时:</text>
|
|
||||||
<text>{{item.timeConsuming}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="">
|
|
||||||
<view class="">
|
|
||||||
<text>工单数量:</text>
|
|
||||||
<text>{{item.number}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
list:[{
|
|
||||||
name:'SO202401111004',
|
|
||||||
algorithm:'81.5',
|
|
||||||
reality:'81.4',
|
|
||||||
state:'生产中',
|
|
||||||
specs:'4*9*3.66',
|
|
||||||
time:'jan-11 10:05',
|
|
||||||
timeConsuming:'3.5H',
|
|
||||||
number:'12.66m³'
|
|
||||||
},{
|
|
||||||
name:'SO202401111004',
|
|
||||||
algorithm:'81.5',
|
|
||||||
reality:'81.4',
|
|
||||||
state:'生产中',
|
|
||||||
specs:'4*9*3.66',
|
|
||||||
time:'jan-11 10:05',
|
|
||||||
timeConsuming:'3.5H',
|
|
||||||
number:'12.66m³'
|
|
||||||
},{
|
|
||||||
name:'SO202401111004',
|
|
||||||
algorithm:'81.5',
|
|
||||||
reality:'81.4',
|
|
||||||
state:'生产中',
|
|
||||||
specs:'4*9*3.66',
|
|
||||||
time:'jan-11 10:05',
|
|
||||||
timeConsuming:'3.5H',
|
|
||||||
number:'12.66m³'
|
|
||||||
},{
|
|
||||||
name:'SO202401111004',
|
|
||||||
algorithm:'81.5',
|
|
||||||
reality:'81.4',
|
|
||||||
state:'生产中',
|
|
||||||
specs:'4*9*3.66',
|
|
||||||
time:'jan-11 10:05',
|
|
||||||
timeConsuming:'3.5H',
|
|
||||||
number:'12.66m³'
|
|
||||||
}]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss">
|
|
||||||
.page_list{
|
|
||||||
margin-bottom: 12px;
|
|
||||||
padding: 12px;
|
|
||||||
.list_top{display: flex;
|
|
||||||
.top_left{flex: 1;}
|
|
||||||
}
|
|
||||||
.list_centre{display: flex;text-align: center;
|
|
||||||
view{flex: 1;}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -0,0 +1,61 @@
|
||||||
|
<template>
|
||||||
|
<!-- 工单进度管理 -->
|
||||||
|
<view class="pagepaddings">
|
||||||
|
<view class="detail_list contentboxsty">
|
||||||
|
<view class="list_top">
|
||||||
|
<view class="top_left">
|
||||||
|
工单号:
|
||||||
|
</view>
|
||||||
|
<view class="top_right">
|
||||||
|
工单详情
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_content">
|
||||||
|
<view class="list_row">
|
||||||
|
<view class="row_left">
|
||||||
|
<view class="">开始时间:</view>
|
||||||
|
<view class=""></view>
|
||||||
|
</view>
|
||||||
|
<view class="row_right">
|
||||||
|
生产中
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_row padd_top12">
|
||||||
|
<view class="">计划完成:</view>
|
||||||
|
<view class=""></view>
|
||||||
|
</view>
|
||||||
|
<view class="padd_top12">
|
||||||
|
<progressBar :total="100" :val="20" title="" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<annularProgressBar :progress_txt="20" :width="84" :height="69" title="出材率"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import progressBar from '/components/progressBar.vue'
|
||||||
|
import annularProgressBar from '/components/chocolate-progress-bar/chocolate-progress-bar.vue'
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
"progressBar":progressBar,
|
||||||
|
"annularProgressBar":annularProgressBar,
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list:[{name:''}]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.detail_list{
|
||||||
|
.list_content{
|
||||||
|
.list_row{display: flex;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -11,14 +11,14 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="login_centre">
|
<view class="login_centre">
|
||||||
<view class="login_switch text_color_black font14">
|
<view class="login_switch text_color_black font14">
|
||||||
<view class="login_name font_bold" >
|
<view :class="['login_name', tab==1?'font_bold':'']" @click="changeTab(1)">
|
||||||
账号登录
|
账号登录
|
||||||
</view>
|
</view>
|
||||||
<view class="login_name">
|
<view :class="['login_name', tab==2?'font_bold':'']" @click="changeTab(2)">
|
||||||
手机号登录
|
手机号登录
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="font12 text_color_black" v-if="type==1">
|
<view class="font12 text_color_black" v-if="tab==1">
|
||||||
<view class="login_input">
|
<view class="login_input">
|
||||||
<input placeholder="请输入账号" />
|
<input placeholder="请输入账号" />
|
||||||
</view>
|
</view>
|
||||||
|
@ -26,16 +26,16 @@
|
||||||
<input password type="text" placeholder="请输入密码" />
|
<input password type="text" placeholder="请输入密码" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="font12" v-if="type==2">
|
<view class="font12 text_color_black" v-if="tab==2">
|
||||||
<view class="login_input">
|
<view class="login_input">
|
||||||
<input placeholder="请输入手机号"/>
|
<input placeholder="请输入手机号"/>
|
||||||
</view>
|
</view>
|
||||||
<view class="">
|
<view class="flex_layout">
|
||||||
<input placeholder="请输入手机号"/>
|
<input class="login_input login_code" placeholder="请输入验证码"/>
|
||||||
<view class="getCaptcha">{{codename}}</view>
|
<view class="getCaptcha">{{codename}}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="" style="color: #C4C4C4;font-size: 11px; padding-top: 14px;">
|
<view class="" v-if="tab==1" style="color: #C4C4C4;font-size: 11px; padding-top: 14px;">
|
||||||
记住密码
|
记住密码
|
||||||
</view>
|
</view>
|
||||||
<view class="loginbut">
|
<view class="loginbut">
|
||||||
|
@ -61,11 +61,14 @@
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
codename:'获取验证码',
|
codename:'获取验证码',
|
||||||
type:1,
|
tab:1,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
//切换登录方式
|
||||||
|
changeTab(tab){
|
||||||
|
this.$set(this,"tab",tab);
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -78,7 +81,6 @@
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_top{padding-top: 160px;padding-bottom: 32px;}
|
.login_top{padding-top: 160px;padding-bottom: 32px;}
|
||||||
.login_logo{display: flex;align-items: center;margin-bottom: 17px;}
|
.login_logo{display: flex;align-items: center;margin-bottom: 17px;}
|
||||||
.logopng{width: 53px;height: 44px;}
|
.logopng{width: 53px;height: 44px;}
|
||||||
|
@ -87,11 +89,8 @@
|
||||||
.login_switch{display: flex;}
|
.login_switch{display: flex;}
|
||||||
.login_name{flex: 1;text-align: center;}
|
.login_name{flex: 1;text-align: center;}
|
||||||
.login_input{border-radius: 21.5px;background: #F3F5F9;margin-top: 12px;padding: 5px 15px;}
|
.login_input{border-radius: 21.5px;background: #F3F5F9;margin-top: 12px;padding: 5px 15px;}
|
||||||
.loginbut{
|
.getCaptcha{border-radius: 21.5px;background: #009688;height: auto;color: white;display: flex;align-items: center;width: 40%;justify-content: center;}
|
||||||
background: #009688;
|
.flex_layout{display: flex;margin-top: 12px;}
|
||||||
text-align: center;
|
.login_code{margin-top: unset;width:60%;margin-right: 12px;}
|
||||||
margin-top: 60px;
|
.loginbut{background: #009688;text-align: center;margin-top: 60px;margin-bottom: 18px;padding: 9px;border-radius: 66rpx;}
|
||||||
margin-bottom: 18px;
|
|
||||||
padding: 9px;
|
|
||||||
border-radius: 66rpx;}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
<template>
|
<template>
|
||||||
<view class="person_page pagepaddings font13">
|
<view class="person_page pagepaddings font13">
|
||||||
<view class="person_dataA contentboxsty">
|
<view class="person_dataA contentboxsty">
|
||||||
<view class="content_box">
|
<view class="content_box logo_box">
|
||||||
<view class="data_name">头像</view>
|
<view class="data_name">头像</view>
|
||||||
<view class="">
|
<view class="">
|
||||||
>
|
<button class="person_button" open-type="chooseAvatar" @chooseavatar='onChooseAvatar'>
|
||||||
|
<image class="person_logo" :src="avatarUrl"></image>
|
||||||
|
</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="content_box">
|
<view class="content_box">
|
||||||
|
@ -54,18 +56,28 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
const defaultAvatarUrl = 'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
avatarUrl:defaultAvatarUrl
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
onChooseAvatar(e) {
|
||||||
|
|
||||||
|
uni.showToast({
|
||||||
|
title:'成功',
|
||||||
|
duration:1000
|
||||||
|
})
|
||||||
|
this.avatarUrl = e.detail.avatarUrl
|
||||||
|
},
|
||||||
//跳转更改手机号页面
|
//跳转更改手机号页面
|
||||||
toChangPhone(){
|
toChangPhone(){
|
||||||
uni.navigateTo({
|
// uni.navigateTo({
|
||||||
url: '/pages/person/changePhone'
|
// url: '/pages/person/changePhone'
|
||||||
})
|
// })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -80,7 +92,13 @@
|
||||||
.person_dataB{padding: 0 14px;margin-bottom: 12px;}
|
.person_dataB{padding: 0 14px;margin-bottom: 12px;}
|
||||||
.person_dataC{padding: 0 14px;margin-bottom: 12px;}
|
.person_dataC{padding: 0 14px;margin-bottom: 12px;}
|
||||||
.person_dataD{padding: 0 14px;}
|
.person_dataD{padding: 0 14px;}
|
||||||
.content_box{display: flex;align-items: center;height: 44px;border-bottom: 1px solid #2D3A6F;}
|
.content_box{
|
||||||
|
display: flex;align-items: center;height: 44px;border-bottom: 1px solid #2D3A6F;
|
||||||
|
}
|
||||||
|
.logo_box{height: 64px;
|
||||||
|
.person_button{width: 40px;height: 40px;border-radius: 50%;padding: 0;}
|
||||||
|
.person_logo{width: 40px;height: 40px;}
|
||||||
|
}
|
||||||
.data_name{flex: 1;}
|
.data_name{flex: 1;}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,8 +1,21 @@
|
||||||
<template>
|
<template>
|
||||||
<view class="person_page ">
|
<view class="person_page ">
|
||||||
<view class="person_top">
|
<view class="person_top">
|
||||||
<view class="logo">
|
<view class="person_data">
|
||||||
|
<!-- <view class="person_logo"> -->
|
||||||
|
<!-- <button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar"> -->
|
||||||
|
<image class="person_logo" :src="avatarUrl"></image>
|
||||||
|
<!-- </button> -->
|
||||||
|
<!-- </view> -->
|
||||||
|
<view class="person_name">
|
||||||
|
<view class="name">
|
||||||
|
<text class="font15">肖银奎</text>
|
||||||
|
<image src="http://dm-auto.oss-cn-shanghai.aliyuncs.com/mes_wechat/chaojihuiyuan.png" mode=""></image>
|
||||||
|
</view>
|
||||||
|
<view class="account font12">
|
||||||
|
登录账号:ykxiao
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="person_content">
|
<view class="person_content">
|
||||||
|
@ -43,11 +56,11 @@
|
||||||
<view class="font13">消息管理</view>
|
<view class="font13">消息管理</view>
|
||||||
<view class=""></view>
|
<view class=""></view>
|
||||||
</view>
|
</view>
|
||||||
<view class="con_module">
|
<!-- <view class="con_module">
|
||||||
<view class="t-icon t-icon-shenpizhida personicon"></view>
|
<view class="t-icon t-icon-shenpizhida personicon"></view>
|
||||||
<view class="font13">审批直达</view>
|
<view class="font13">审批直达</view>
|
||||||
<view class=""></view>
|
<view class=""></view>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="con_module noborbot">
|
<view class="con_module noborbot">
|
||||||
<view class="t-icon t-icon-wodequanxian personicon"></view>
|
<view class="t-icon t-icon-wodequanxian personicon"></view>
|
||||||
<view class="font13">我的权限</view>
|
<view class="font13">我的权限</view>
|
||||||
|
@ -64,13 +77,16 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import tabBar from "@/components/customTabBar/index"
|
import tabBar from "@/components/customTabBar/index";
|
||||||
|
const defaultAvatarUrl = 'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0';
|
||||||
export default {
|
export default {
|
||||||
components:{
|
components:{
|
||||||
tabBar
|
tabBar
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
avatarUrl:defaultAvatarUrl,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -86,8 +102,21 @@
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.person_page{ padding: 14px;
|
.person_page{ padding: 14px;
|
||||||
|
.person_top{margin-bottom:33px ;
|
||||||
|
.person_data{display: flex;align-items: center;
|
||||||
|
.person_logo{border-radius: 50%;width: 54px;height: 54px;margin:0 6px 0 4px;}
|
||||||
|
|
||||||
|
.person_name{
|
||||||
|
.name{display: flex;align-items: center;margin-bottom: 2px;
|
||||||
|
image{width: 50px;height: 16px;margin-left: 4px;}
|
||||||
|
}
|
||||||
|
.account{margin-top: 2px;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.person_content{
|
||||||
.con_backlog{padding: 14px 10px 14px 15px;background: #1C2755;border-radius: 8px;margin-bottom: 12px;
|
.con_backlog{padding: 14px 10px 14px 15px;background: #1C2755;border-radius: 8px;margin-bottom: 12px;
|
||||||
.backlog_data{display: flex; flex-wrap: wrap;
|
.backlog_data{display: flex; flex-wrap: wrap;margin-top: 7px;
|
||||||
.backlog_module{width: 93px;height: 76px;display: flex;justify-content: center;flex-direction: column;align-items: center;border-radius: 8px;
|
.backlog_module{width: 93px;height: 76px;display: flex;justify-content: center;flex-direction: column;align-items: center;border-radius: 8px;
|
||||||
background: #6576B7;margin: 5px 6px;}
|
background: #6576B7;margin: 5px 6px;}
|
||||||
.backlogicon{width: 32px;height: 32px;}
|
.backlogicon{width: 32px;height: 32px;}
|
||||||
|
@ -106,7 +135,7 @@
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
|
|
||||||
}
|
}
|
||||||
.personicon{width: 24px;height: 24px;padding-right: 15px;}
|
.personicon{width: 24px;height: 24px;margin-right: 15px;}
|
||||||
.con_data{border-radius: 8px;
|
.con_data{border-radius: 8px;
|
||||||
background: #1C2755;
|
background: #1C2755;
|
||||||
padding: 0 14px;
|
padding: 0 14px;
|
||||||
|
@ -121,4 +150,5 @@
|
||||||
padding: 0 14px;
|
padding: 0 14px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
|
@ -0,0 +1,22 @@
|
||||||
|
<template>
|
||||||
|
<view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
|
@ -0,0 +1,135 @@
|
||||||
|
<template>
|
||||||
|
<!-- 生产工单 -->
|
||||||
|
<view class="pagepaddings">
|
||||||
|
<view v-for="(item,index) in list" :key="index" class="page_list contentboxsty font13">
|
||||||
|
<view @click="toDetail()">
|
||||||
|
<view class="list_top">
|
||||||
|
<view class="top_left">
|
||||||
|
工单号:{{item.name}}
|
||||||
|
</view>
|
||||||
|
<view class="top_right">
|
||||||
|
工单详情
|
||||||
|
</view>
|
||||||
|
<view class="iconfont icon-gengduo-1"></view>
|
||||||
|
</view>
|
||||||
|
<view class="list_centre">
|
||||||
|
<view class="centre_left">
|
||||||
|
<view class="">
|
||||||
|
算法出材率
|
||||||
|
</view>
|
||||||
|
<view class="percentage font24">
|
||||||
|
{{item.algorithm}}%
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="centre_left">
|
||||||
|
<view class="">
|
||||||
|
算法出材率
|
||||||
|
</view>
|
||||||
|
<view class="percentage font24">
|
||||||
|
{{item.reality}}%
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="list_below">
|
||||||
|
<view class="row">
|
||||||
|
<view class="row_left">
|
||||||
|
<text>状态:</text>
|
||||||
|
<text>{{item.state}}</text>
|
||||||
|
</view>
|
||||||
|
<view class="row_right">
|
||||||
|
<text>加工规格:</text>
|
||||||
|
<text>{{item.specs}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="row">
|
||||||
|
<view class="row_left">
|
||||||
|
<text>生产开始:</text>
|
||||||
|
<text>{{item.time}}</text>
|
||||||
|
</view>
|
||||||
|
<view class="row_right">
|
||||||
|
<text>工单耗时:</text>
|
||||||
|
<text>{{item.timeConsuming}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="row">
|
||||||
|
<view class="row_left">
|
||||||
|
<text>工单数量:</text>
|
||||||
|
<text>{{item.number}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list:[{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
},{
|
||||||
|
name:'SO202401111004',
|
||||||
|
algorithm:'81.5',
|
||||||
|
reality:'81.4',
|
||||||
|
state:'生产中',
|
||||||
|
specs:'4*9*3.66',
|
||||||
|
time:'jan-11 10:05',
|
||||||
|
timeConsuming:'3.5H',
|
||||||
|
number:'12.66m³'
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//跳转工单详情
|
||||||
|
toDetail(){
|
||||||
|
uni.navigateTo({
|
||||||
|
url:'/pages/production/productionDetail'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.page_list{
|
||||||
|
.list_top{display: flex;padding: 12px 0;border-bottom: 1px solid #2D3A6F;margin-bottom: 8px;
|
||||||
|
.top_left{flex: 1;}
|
||||||
|
}
|
||||||
|
.list_centre{display: flex;text-align: center;padding-bottom: 10px;
|
||||||
|
view{flex: 1;}
|
||||||
|
.percentage{color: #00B68D;}
|
||||||
|
}
|
||||||
|
.list_below{padding-bottom: 12px;
|
||||||
|
.row{display: flex;padding-top: 10px;
|
||||||
|
view{flex: 1;}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.2 KiB |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,17 +1,110 @@
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: "iconfont"; /* Project id 4403683 */
|
font-family: "iconfont"; /* Project id 4403683 */
|
||||||
src: url('//at.alicdn.com/t/c/font_4403683_jzx1hwbdok.woff2?t=1704766027171') format('woff2'),
|
src: url('//at.alicdn.com/t/c/font_4403683_gbygrrqjx2.woff2?t=1706861428966') format('woff2'),
|
||||||
url('//at.alicdn.com/t/c/font_4403683_jzx1hwbdok.woff?t=1704766027171') format('woff'),
|
url('//at.alicdn.com/t/c/font_4403683_gbygrrqjx2.woff?t=1706861428966') format('woff'),
|
||||||
url('//at.alicdn.com/t/c/font_4403683_jzx1hwbdok.ttf?t=1704766027171') format('truetype');
|
url('//at.alicdn.com/t/c/font_4403683_gbygrrqjx2.ttf?t=1706861428966') format('truetype');
|
||||||
}
|
}
|
||||||
|
|
||||||
.iconfont {
|
.iconfont {
|
||||||
font-family: "iconfont" !important;
|
font-family: "iconfont" !important;
|
||||||
|
font-size: 16px;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
-moz-osx-font-smoothing: grayscale;
|
-moz-osx-font-smoothing: grayscale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.icon-weixiubaoyangpinshuai:before {
|
||||||
|
content: "\e62a";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-brokenrate:before {
|
||||||
|
content: "\e652";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-setting:before {
|
||||||
|
content: "\e651";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-broken:before {
|
||||||
|
content: "\e650";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-WIFI_off:before {
|
||||||
|
content: "\e654";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-WIFI_on:before {
|
||||||
|
content: "\e653";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-yasuokongqi:before {
|
||||||
|
content: "\e62b";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-dianliang:before {
|
||||||
|
content: "\e62c";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-tianjia1:before {
|
||||||
|
content: "\e629";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-jinyong2:before {
|
||||||
|
content: "\e627";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-qiyong1:before {
|
||||||
|
content: "\e628";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-jinyong1:before {
|
||||||
|
content: "\e626";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-a-Group10234:before {
|
||||||
|
content: "\e625";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-a-sousuo41:before {
|
||||||
|
content: "\e624";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-tianjia:before {
|
||||||
|
content: "\e623";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-qiyong:before {
|
||||||
|
content: "\e620";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-gengduo:before {
|
||||||
|
content: "\e61c";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-a-shangchuanzhaopian2:before {
|
||||||
|
content: "\e61d";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-bangding:before {
|
||||||
|
content: "\e61e";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-jinyong:before {
|
||||||
|
content: "\e61f";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-gengduo-1:before {
|
||||||
|
content: "\e621";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-bianji:before {
|
||||||
|
content: "\e622";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-xiala:before {
|
||||||
|
content: "\e61b";
|
||||||
|
}
|
||||||
|
|
||||||
.icon-xitongshezhi-gerenzhongxin:before {
|
.icon-xitongshezhi-gerenzhongxin:before {
|
||||||
content: "\e611";
|
content: "\e611";
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 978 B |
Binary file not shown.
After Width: | Height: | Size: 940 B |
Binary file not shown.
After Width: | Height: | Size: 884 B |
Binary file not shown.
After Width: | Height: | Size: 949 B |
Loading…
Reference in New Issue