Commit 31c971a3 authored by renjintao's avatar renjintao

plan home

parent 1c945fd6
......@@ -839,7 +839,7 @@ export default {
mainDepartmentId: '厂内主主体责任部门',
remark: '备注',
taskInputDate: '创建日期',
taskRequire: '任务接点要求',
taskRequire: '任务要求',
putintDocmentCode: '上传文件名称',
technologyDocmentCode: '上传文件名称',
outerDrawnNumber: '外部图号/模型号',
......@@ -854,8 +854,8 @@ export default {
equipment: '设备',
materialWeight: '材料重量',
isSupportingFinish: '配套状态', //是否配套,0 未配套,1 已配套
demandStartDate: '投料时间',
demandFinishDate: '节点时间',
demandStartDate: '开始时间',
demandFinishDate: '完成时间',
actualStartDate: '订单实际开始时间,实际为第一道工序的开始时间',
actualFinishDate: '订单实际结束时间,实际为最后一道工序的结束时间',
isDeleted: '是否被删除,0 : 否,1 是',
......@@ -923,7 +923,7 @@ export default {
taskRequire: '任务要求',
status: '订单状态',
divideMark: '分解标记:1-已分解;0-未分解',
productCode: '产品序号:No1~No99',
productCode: '产品序号',
productName: '产品名称',
drawnNumber: '图号',
rootId: '根节点Id',
......
......@@ -267,6 +267,60 @@ export default {
high: true,
code: "aps.plan.ispreschedule",
},
{
key: "taskRequire",
title: this.l("taskRequire"),
align: "left",
easy: true,
high: true,
hide: true
},
{
key: "productingPreparationPeople",
title: this.l("productingPreparationPeople"),
align: "left",
high: true,
hide: true,
type: 'workShopName'
},
{
key: "productingPreparationFinishDate",
title: this.l("productingPreparationFinishDate"),
align: "left",
high: true,
hide: true
},
{
key: "quotationPeople",
title: this.l("quotationPeople"),
align: "left",
high: true,
hide: true,
type: "user"
},
{
key: "quotationFinishDate",
title: this.l("quotationFinishDate"),
align: "left",
high: true,
hide: true
},
{
key: "demandStartDate",
title: this.l("demandStartDate"),
align: "left",
high: true,
hide: true,
type: "date"
},
{
key: "demandFinishDate",
title: this.l("demandFinishDate"),
align: "left",
high: true,
hide: true,
type: "date"
},
// {
// key: "spareQty",
// title: this.l("spareQty"),
......
<template>
<div class="home">
<div class="home">
<div class="card-user">
<div class="img-header">
<Avatar :src="avatorPath" size="90" v-if="imgPath" />
......@@ -14,26 +14,14 @@
</div>
<div class="incon-carousel">
<Icon
type="ios-arrow-back"
class="bg-b"
@click="clickLeft"
:class="num1<0?'bg-b1':'bg-b'"
v-if="collect.length>0"
/>
<Icon type="ios-arrow-back" class="bg-b" @click="clickLeft" :class="num1<0?'bg-b1':'bg-b'" v-if="collect.length>0" />
<div class="list-shoucang" :style="{'margin-left': num1 * 230 + 'px',width :'990px',}">
<div class="bg" v-for="(item,i) in collect" :key="i" @click="toPage(item)">
<Icon :type="item.icon||'md-mail'" />
<p>{{item.title}}</p>
</div>
</div>
<Icon
type="ios-arrow-forward"
class="bg-l"
@click="clickRight"
:class="collect.length>8 && showIcon ?'bg-l1':'bg-l'"
v-if="collect.length>0"
/>
<Icon type="ios-arrow-forward" class="bg-l" @click="clickRight" :class="collect.length>8 && showIcon ?'bg-l1':'bg-l'" v-if="collect.length>0" />
<a class="down-delete" @click="setDelete">
<Icon type="md-settings" class="f20" v-if="collect.length>0" />
</a>
......@@ -42,12 +30,7 @@
<div class="card-list">
<Icon type="ios-arrow-back" @click="leftmove" :class="num<0?'bg-b1':'bg-b'" />
<div class="list-c" :style="{width:'98%','margin-left': num * 740 + 'px',}">
<div
v-for="(item,index) in listTask"
:key="index"
:class="item.name=='订单报价' ? 'img_bg02':(item.name=='质量检验' ? 'img_bg03':(item.name=='生产执行' ? 'img_bg04' : 'img_bg01'))"
@click="goPage(item)"
>
<div v-for="(item,index) in listTask" :key="index" :class="item.name=='订单报价' ? 'img_bg02':(item.name=='质量检验' ? 'img_bg03':(item.name=='生产执行' ? 'img_bg04' : 'img_bg01'))" @click="goPage(item)">
<div class="leftIco">
<img class="img_icon" :src="imgUrl + item.image" alt />
</div>
......@@ -57,11 +40,7 @@
</div>
</div>
</div>
<Icon
type="ios-arrow-forward"
:class="listTask.length>5&& showArrow?'bg-l1':'bg-l'"
@click="rightmove"
/>
<Icon type="ios-arrow-forward" :class="listTask.length>5&& showArrow?'bg-l1':'bg-l'" @click="rightmove" />
</div>
<Row class="table" :gutter="16">
<Col :span="15">
......@@ -107,7 +86,7 @@
<Divider>
<span style="color: #2680eb;">
生产计划状态监控
<Icon :type="show?'md-eye':'md-eye-off'" @click="clickEye" class="eye"/>
<Icon :type="show?'md-eye':'md-eye-off'" @click="clickEye" class="eye" />
</span>
</Divider>
<div class="set-img">
......@@ -116,7 +95,7 @@
<Divider>
<span style="color: #2680eb;">
不合格品审理单统计
<Icon :type="show1?'md-eye':'md-eye-off'" @click="clickEye1" class="eye"/>
<Icon :type="show1?'md-eye':'md-eye-off'" @click="clickEye1" class="eye" />
</span>
</Divider>
<div class="set-img">
......@@ -125,7 +104,7 @@
<Divider>
<span style="color: #2680eb;">
班组工单监控
<Icon :type="show2?'md-eye':'md-eye-off'" @click="clickEye2" class="eye"/>
<Icon :type="show2?'md-eye':'md-eye-off'" @click="clickEye2" class="eye" />
</span>
</Divider>
<div class="set-img">
......@@ -134,7 +113,7 @@
<Divider>
<span style="color: #2680eb;">
暂停任务统计
<Icon :type="show3?'md-eye':'md-eye-off'" @click="clickEye3" class="eye"/>
<Icon :type="show3?'md-eye':'md-eye-off'" @click="clickEye3" class="eye" />
</span>
</Divider>
<div class="set-img">
......@@ -143,7 +122,7 @@
<Divider>
<span style="color: #2680eb;">
物料相关统计
<Icon :type="show4?'md-eye':'md-eye-off'" @click="clickEye4" class="eye"/>
<Icon :type="show4?'md-eye':'md-eye-off'" @click="clickEye4" class="eye" />
</span>
</Divider>
<div class="set-img">
......@@ -152,12 +131,7 @@
</Modal>
<Modal v-model="modal" title="删除收藏" width="300" footer-hide :mask-closable="false">
<ul class="modal-r">
<li
v-for="(li,i) in collect"
:key="i"
class="right-delete"
v-dragging="{ item: li, list: collect}"
>
<li v-for="(li,i) in collect" :key="i" class="right-delete" v-dragging="{ item: li, list: collect}">
<Icon :type="li.icon||'md-mail'" />&nbsp;&nbsp;
<span>{{li.title}}</span>
<a @click="remover(li.menuId)">
......@@ -166,8 +140,9 @@
</li>
</ul>
</Modal>
</div>
</div>
</template>
<script>
import Api from "./api";
import Approval from "./component/approval";
......@@ -178,7 +153,9 @@ import WorkChart from "./component/workChart";
import SuspendChart from "./component/suspendChart";
import MaterielChart from "./component/materielChart";
import { mapState } from "vuex";
import {
mapState
} from "vuex";
export default {
components: {
Approval,
......@@ -211,7 +188,10 @@ export default {
showArrow: true,
};
},
async fetch({ store, params }) {
async fetch({
store,
params
}) {
// console.warn("vvvvvv");
await store.dispatch("collectList"); // 加载数据字典
},
......@@ -224,12 +204,16 @@ export default {
// this.getList();
},
mounted() {
this.$dragging.$on("dragged", ({ value }) => {
this.$dragging.$on("dragged", ({
value
}) => {
// console.log("-----------" + value);
});
},
computed: {
...mapState({ collect: "collect" }),
...mapState({
collect: "collect"
}),
},
methods: {
clickLeft() {
......@@ -270,10 +254,12 @@ export default {
},
getUserInfoFn() {
let userId = this.$store.state.userInfo.userId;
Api.getUserInfo({ id: userId }).then((res) => {
Api.getUserInfo({
id: userId
}).then((res) => {
if (res.success) {
this.userData = res.result;
if (res.result) {
if (res.result && res.result.avatarUrl && res.result.avatarUrl != '' && res.result.avatarUrl != null) {
this.avatorPath = fileUrlDown + res.result.avatarUrl;
// console.log(this.avatorPath)
this.imgPath = true;
......@@ -357,16 +343,20 @@ export default {
},
};
</script>
<style lang="less" scoped>
@import "../../assets/css/custom.less";
.ivu-layout-content {
background-color: none !important;
}
.home {
padding: 5px;
width: 100%;
height: 100%;
overflow-x: hidden;
.card-user {
padding: 25px 0 0 15px;
height: 120px;
......@@ -381,23 +371,28 @@ export default {
z-index: 999;
// background: rgba(255, 255, 255, 1);
}
.ivu-avatar > img {
.ivu-avatar>img {
width: 100%;
height: 100%;
}
.user-text {
width: 43%;
z-index: 999;
// background: rgba(255, 255, 255, 1);
p {
margin: 10px 20px;
}
}
.incon-carousel {
width: 1000px;
position: relative;
text-align: center;
z-index: 100;
.bg-b {
margin-top: 10px;
font-size: 30px;
......@@ -408,6 +403,7 @@ export default {
top: 13px;
left: 0;
}
.bg-b1 {
margin-top: 10px;
font-size: 30px;
......@@ -419,6 +415,7 @@ export default {
top: 13px;
left: 0;
}
.bg-l {
width: 40px;
margin-top: 10px;
......@@ -429,6 +426,7 @@ export default {
top: 13px;
right: 0;
}
.bg-l1 {
width: 40px;
margin-top: 10px;
......@@ -440,39 +438,47 @@ export default {
top: 13px;
right: 0;
}
.list-shoucang {
// width: 960px;
display: -webkit-inline-box;
display: inline-box;
transition: margin-left 1s;
}
.bg {
text-align: center;
width: 122px;
.ivu-icon {
font-size: 35px;
color: @icon-color;
cursor: pointer;
}
p {
margin-top: 8px;
}
}
.down-delete {
position: absolute;
top: -17px;
right: 7px;
color: @icon-title-color;
.ivu-icon {
font-size: 16px;
}
}
}
}
.card-list {
// margin-top: 5px;
position: relative;
text-align: center;
.bg-b {
font-size: 30px;
color: @icon-slide1-color;
......@@ -482,6 +488,7 @@ export default {
top: 45px;
left: 0;
}
.bg-b1 {
font-size: 30px;
color: @icon-slide2-color;
......@@ -492,12 +499,14 @@ export default {
left: 0;
cursor: pointer;
}
.list-c {
transition: margin-left 1s;
margin: 0 auto;
display: -webkit-inline-box;
display: inline-box;
}
.bg-l {
position: absolute;
font-size: 30px;
......@@ -507,6 +516,7 @@ export default {
right: 0;
width: 35px;
}
.bg-l1 {
position: absolute;
font-size: 30px;
......@@ -516,6 +526,7 @@ export default {
width: 35px;
cursor: pointer;
}
.img_bg01 {
// background-color: #ff9100;
width: 290px;
......@@ -526,6 +537,7 @@ export default {
background-image: url("../../assets/images/home/ju-xing1.png");
// background: linear-gradient(to left, #0673df, #26c2e9);
}
.img_bg02 {
width: 290px;
height: 130px;
......@@ -534,6 +546,7 @@ export default {
border-radius: 8px;
background-image: url("../../assets/images/home/ju-xing2.png");
}
.img_bg03 {
cursor: pointer;
width: 290px;
......@@ -542,6 +555,7 @@ export default {
border-radius: 8px;
background-image: url("../../assets/images/home/ju-xing3.png");
}
.img_bg04 {
cursor: pointer;
width: 290px;
......@@ -550,31 +564,37 @@ export default {
border-radius: 8px;
background-image: url("../../assets/images/home/ju-xing4.png");
}
.img_icon {
width: 40px;
height: 40px;
margin: 72% 0 0 38px;
}
.text-p {
text-align: center;
color: #fff;
padding: 7% 0 0 35%;
p:first-child {
font-size: 30px;
font-weight: bold;
margin-bottom: 5px;
}
p:nth-child(2) {
font-size: 18px;
}
}
}
.url-img {
width: 100%;
height: 370px;
background: url("../../assets/images/home/echars.png") no-repeat;
background-size: 100% 100%;
}
// .table {
// margin-top: 5px;
// }
......@@ -582,6 +602,7 @@ export default {
position: relative;
margin-top: 5px;
}
.a-r {
position: absolute;
top: 15px;
......@@ -589,29 +610,36 @@ export default {
z-index: 100;
color: @icon-title-color;
}
.set-p {
width: 100%;
margin: 0 auto;
}
}
.set-img {
width: 100%;
text-align: center;
margin-bottom: 25px;
}
.eye{
.eye {
cursor: pointer;
}
.modal-r {
height: 400px;
overflow: auto;
.right-delete {
height: 35px;
line-height: 35px;
border-bottom: 1px solid #eee;
.ivu-icon {
color: #2680eb;
}
a {
float: right;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment