Commit 03194a8a authored by renjintao's avatar renjintao

workHour

parent c3af3724
...@@ -7,7 +7,9 @@ export default { ...@@ -7,7 +7,9 @@ export default {
getCardList(params) { getCardList(params) {
return Api.post(`${PlanUrl}/orderexecutenew/list`, params); return Api.post(`${PlanUrl}/orderexecutenew/list`, params);
}, },
getList(params) {
return Api.post(`${PlanUrl}/orderexecutenew/CompletedList`, params);
},
//过程质量填报表 //过程质量填报表
getentryqcrecordlist_new(params) { getentryqcrecordlist_new(params) {
return Api.get(`${PlanUrl}orderexecutequalityrecord/getentryqcrecordlist_new`, params); return Api.get(`${PlanUrl}orderexecutequalityrecord/getentryqcrecordlist_new`, params);
......
<template>
<div class="order_list">
<div class="card_box">
<Card class="card_order" v-for="(item,index) in listTasks" :style="order==item.id?'box-shadow: 0px 0px 15px #333;':''" @click.native="goPage(item)" :key="index" :class="item.status==12 ? 'card_border1' : (item.status==14 ? 'card_border2': (item.status==5 ?'card_border3':
(item.status==7?'card_border4':(item.status==-1?'card_border5':''))))">
<!-- :class="item.status=='未开工'? 'card_border1' : (item.status=='执行中' ? 'card_border2': (item.status=='暂停中' ?'card_border3':
(item.status=='交检中'?'card_border4':(item.status=='交接中'?'card_border5':''))))"-->
<p slot="title">
{{item.mesCode}}
<state code="taskList.status" ref="state" class="fr" :value="item.status" type="text"></state>
<!-- <span >{{item.status}}</span> -->
</p>
<p class="order_tit">{{item.productName}}</p>
<p>
<Icon type="ios-pricetags" />
{{item.taskName}}
</p>
<p>{{item.beginTime}}~{{item.endTime}}</p>
</Card>
<p>{{listTasks.length}} 个工单</p>
</div>
</div>
</template>
<script>
import Api from "../../api";
export default {
name: "orderlistWorkHour",
data() {
return {
gnFlag: 0,
listTasks: [],
dataLength: 0
};
},
props: {
order: {
type: [String, Number]
},
asc: {
type: Boolean,
default: true
},
statu: {
type: Number,
default: -9
},
refresh: {
type: Boolean,
default: true
}
},
created() {
this.loadTree();
},
methods: {
loadTree() {
let parmse = {
status: 0,
isAsc: this.asc
};
if (this.statu != -9) {
parmse.subWorkHourStatus = this.statu
}
Api.getList(parmse).then(res => {
if (res.success) {
this.listTasks = res.result;
this.dataLength = res.result.length;
}
});
},
gnFunto(number, type) {
this.gnFlag = number;
},
goPage(item) {
this.$router.push({
path: "/produce/execute/indexWorkHour",
query: {
id: item.id,
orderId: item.orderId,
executeId: item.executeId,
headid: item.routingHeaderId,
routid: item.routingDetailId, //工序ID
quantity: item.quantity, //派工数量
dispatchStatus: item.status,
mesCode: item.mesCode,
productName: item.productName,
drawnNumber: item.drawnNumber,
subWorkHourStatus: item.subWorkHourStatus
}
});
}
},
watch: {
order(v) {
//alert(v)
},
asc(v) {
this.asc = v;
this.loadTree();
},
statu(v) {
this.statu = v;
this.loadTree();
},
refresh(v) {
this.refresh = v;
this.loadTree();
}
}
};
</script>
...@@ -126,8 +126,8 @@ export default { ...@@ -126,8 +126,8 @@ export default {
this.$Message.info("尊敬的用户,您没有该权限!"); this.$Message.info("尊敬的用户,您没有该权限!");
} //产品装配 } //产品装配
if (number == 3) { if (number == 3) {
if(this.$route.query.dispatchStatus != 0){ if (this.$route.query.dispatchStatus != 0) {
return this.$Message.info("此订单未完成!不能进行工时分配。"); return this.$Message.info("此订单未完成!不能进行工时分配。");
} }
this.detail = () => import("./taskTime/index"); this.detail = () => import("./taskTime/index");
} //工时分配 } //工时分配
......
<style lang="less">
@import "./execute.less";
</style>
<template>
<div class="execute_box">
<component :is="detail" :gdid="gdId" :row="row" />
<a class="gd_list" @click="changeFresh">工单列表</a>
<!-- 工单列表 -->
<Drawer placement="left" class="gd_box" :closable="false" :inner="true" :transfer="false" v-model="orderlistMode">
<div slot="header">
<div class="header">
<a class="gd_tt" @click="goToOrder">
<Icon type="ios-undo-outline" />工时提交列表
</a>
<Dictionary code="orderList.workHourStatus" class="select_star fr" v-model="odermodel" @on-change="searchOrder"></Dictionary>
</div>
<div class="select_t" style="height:40px">
<Button @click="changeAsc" class="fr" shape="circle" icon="md-calendar">{{ascTitle}}</Button>
</div>
</div>
<!-- 列表卡片主内容 -->
<orderlist ref="orderlistref" :asc="asc" :statu="statu" :refresh="refresh" :order="inputId" />
</Drawer>
</div>
</template>
<script>
import functional from "./components/functional";
import orderlist from "./components/orderlistWorkHour";
export default {
name: 'indexWorkHour',
components: {
functional,
orderlist
},
data() {
return {
orderTitle: "进度汇报",
orderindex: 0,
listLength: 0, //工单数量
starmodal: true,
orderlistMode: false,
functionalMode: false,
gdId: 0,
detail: null,
row: {},
odermodel: -9,
orderId: this.$route.query.id,
condition: [],
inputId: null,
asc: false,
ascTitle: "时间正序排序",
statu: 0,
refresh: true
};
},
created() {
let row = {};
row.id = this.$route.query.id;
row.orderId = this.$route.query.orderId;
row.executeId = this.$route.query.executeId;
row.headid = this.$route.query.headid;
row.routingdetailId = this.$route.query.routid;
row.mesCode = this.$route.query.mesCode;
row.productName = this.$route.query.productName;
row.drawnNumber = this.$route.query.drawnNumber;
row.count = this.$route.query.quantity;
row.subWorkHourStatus = this.$route.query.subWorkHourStatus;
this.row = row;
this.inputId = this.$route.query.id;
this.detail = () => import("./taskTime/index");
},
async fetch({
store,
params
}) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
mounted() {},
comments: {},
methods: {
// 返回工单列表
goToOrder() {
this.$router.push("/produce/workHour");
},
searchOrder(value) {
if (value == null || typeof value == "undefined") {
value = -9;
}
this.statu = value;
// this.$refs.orderlistref.loadTree(value);
},
changeTitle(number, type) {
this.orderTitle = type;
this.orderindex = number;
let row = {
id: this.$route.query.id,
orderId: this.$route.query.orderId,
executeId: this.$route.query.executeId,
headid: this.$route.query.headid,
routingdetailId: this.$route.query.routid,
mesCode: this.$route.query.mesCode,
productName: this.$route.query.productName,
drawnNumber: this.$route.query.drawnNumber,
count: this.$route.query.quantity,
subWorkHourStatus: this.$route.query.subWorkHourStatus,
};
this.row = row;
this.inputId = this.$route.query.id;
if (number == 3) {
if (this.$route.query.dispatchStatus != 0) {
return this.$Message.info("此订单未完成!不能进行工时分配。");
}
this.detail = () => import("./taskTime/index");
} //工时分配
},
//按时间排序按钮
changeAsc() {
this.asc = !this.asc;
if (this.asc) {
this.ascTitle = "时间正序排序";
} else {
this.ascTitle = "时间倒序排序";
}
},
//刷新orderlist列表
changeFresh() {
this.refresh = !this.refresh;
this.orderlistMode = true;
}
},
watch: {
"$route.query.id"(v) {
this.row.id = v;
this.inputId = v;
this.detail = () => import("./taskTime/index");
}
}
};
</script>
<template> <template>
<div class="aps-r"> <div class="aps-r">
<DataGrid <DataGrid :columns="columns" ref="grid" :batch="false" :type="typeInfo" :span="6" :lazy="true" :conditions="easySearch" :action="action" :gutter="40">
:columns="columns" <template slot="easySearch">
ref="grid" <Form ref="formInline" :model="easySearch" inline>
:batch="false" <FormItem prop="keys">
:type="typeInfo" <Input placeholder="请输入订单编号/产品名称/图号" v-model="easySearch.keys.value" v-width="260" clearable />
:span="6" </FormItem>
:lazy="true"
:conditions="easySearch"
:action="action"
:gutter="40"
>
<template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline>
<FormItem>
<RadioGroup
v-model="easySearch.SubmitState.value"
@on-change="submitStateChange"
>
<Radio label="0">全部</Radio>
<Radio label="1">未提交</Radio>
<Radio label="2">已提交</Radio>
</RadioGroup>
</FormItem>
<!-- <FormItem prop="keys">
<Input
placeholder="请输入订单编号/产品名称/图号"
v-model="easySearch.keys.value"
v-width="260"
clearable
/>
</FormItem> -->
<!--
<FormItem> <FormItem>
<Dictionary code="taskList.status" placeholder="请选择工单状态" :multiple="true" v-model="easySearch.DispatchStatus.value"></Dictionary> <dictionary style="width:240px" placeholder='请选择工时提交状态' code="orderList.workHourStatus" v-model="easySearch.SubmitState.value"></dictionary>
</FormItem> </FormItem>
--> <FormItem>
<!-- <FormItem> <Button type="primary" @click="search">查询</Button>
<Button type="primary" @click="search">查询</Button> </FormItem>
</FormItem> --> </Form>
</Form> </template>
</template> <template slot="searchForm">
<template slot="searchForm"> <Search />
<Search /> </template>
</template> <template slot="buttons">
<template slot="buttons"> <Button :icon="iconInfo" shape="circle" :title="titleInfo" @click="changeShwo"></Button>
<Button </template>
:icon="iconInfo" <template slot="card" slot-scope="{ row }">
shape="circle" <div class="body" @click="
:title="titleInfo"
@click="changeShwo"
></Button>
</template>
<template slot="card" slot-scope="{ row }">
<div
class="body"
@click="
toExecute( toExecute(
row.id, row.id,
row.orderId, row.orderId,
...@@ -68,45 +32,34 @@ ...@@ -68,45 +32,34 @@
row.status, row.status,
row.mesCode, row.mesCode,
row.productName, row.productName,
row.drawnNumber row.drawnNumber,
row.subWorkHourStatus
) )
" ">
> <Row class="title-i">
<Row class="title-i"> <Col :span="10" class="order-code">
<Col :span="10" class="order-code"> <Ellipsis :text="row.productName" :lines="1" tooltip transfer />
<Ellipsis :text="row.productName" :lines="1" tooltip transfer /> </Col>
</Col> <Col :span="10" class="order-code">
<Col :span="10" class="order-code"> <Ellipsis :text="row.mesCode" :lines="1" tooltip transfer />
<Ellipsis :text="row.mesCode" :lines="1" tooltip transfer /> </Col>
</Col> <Col :span="4">
<Col :span="4"> <div class="statuBg" :style="tdStyle(row.subWorkHourStatus)"></div>
<div class="statuBg" :style="tdStyle(row.subWorkHourStatus)"></div> <div class="boxTitle">
<div class="boxTitle"> <div class="text">
<div class="text"> <state code="orderList.workHourStatus" ref="state" :value="row.subWorkHourStatus" type="text" :color="false"></state>
<state </div>
code="workHour.status" </div>
ref="state" </Col>
:value="row.subWorkHourStatus" </Row>
type="text" <div class="panel-text">
:color="false" <Row>
></state> <Col span="8">
</div> <div class="img-i">
</div> <img :src="downUrl + row.productUrl" v-if="row.productUrl" />
</Col> <img src="@/assets/imgicon/chan_Pin.png" v-else width="100%" height="100%" />
</Row> </div>
<div class="panel-text"> <!-- <img
<Row>
<Col span="8">
<div class="img-i">
<img :src="downUrl + row.productUrl" v-if="row.productUrl" />
<img
src="@/assets/imgicon/chan_Pin.png"
v-else
width="100%"
height="100%"
/>
</div>
<!-- <img
:src="getUrl(row.productUrl)" :src="getUrl(row.productUrl)"
width="120" width="120"
height="120" height="120"
...@@ -114,424 +67,404 @@ ...@@ -114,424 +67,404 @@
style="border:#cacbd0 dashed 1px" style="border:#cacbd0 dashed 1px"
onerror="this.src='/imgicon/noPic_product.png';" onerror="this.src='/imgicon/noPic_product.png';"
/>--> />-->
</Col> </Col>
<Col span="16" class="row"> <Col span="16" class="row">
<p>{{ l("beginTime") }}{{ row.beginTime }}</p> <p>{{ l("beginTime") }}{{ row.beginTime }}</p>
<p> <p>
<span v-if="getStatus(row.status)" <span v-if="getStatus(row.status)">{{ l("planEndTime") }}</span>
>{{ l("planEndTime") }}</span <span v-else>{{ l("endTime") }}</span>
> {{ row.endTime }}
<span v-else>{{ l("endTime") }}</span> </p>
{{ row.endTime }} <p v-if="getStatus(row.status) && getTimes(row.endTime) > 0">
</p> 剩余时间:
<p v-if="getStatus(row.status) && getTimes(row.endTime) > 0"> <OutputTime :value="getTimes(row.endTime)" style="display: inline"></OutputTime>
剩余时间: </p>
<OutputTime
:value="getTimes(row.endTime)"
style="display: inline"
></OutputTime>
</p>
<Row> <Row>
<Col span="12"> <Col span="12">
<p>{{ l("quantity") }}{{ row.quantity }}</p></Col <p>{{ l("quantity") }}{{ row.quantity }}</p>
> </Col>
<Col span="12" <Col span="12">
><p>工序号:{{ row.taskSeq }}</p></Col <p>工序号:{{ row.taskSeq }}</p>
> </Col>
</Row> </Row>
<p>工序名称:{{ row.taskName }}</p> <p>工序名称:{{ row.taskName }}</p>
</Col> </Col>
</Row> </Row>
<Row class="rowBottom"> <Row class="rowBottom">
<Col span="14">{{ l("drawnNumber") }}{{ row.drawnNumber }}</Col> <Col span="14">{{ l("drawnNumber") }}{{ row.drawnNumber }}</Col>
<Col span="10" class="tr"> <Col span="10" class="tr">
<Icon <Icon type="md-alert" size="18" color="#FFA000" v-if="
type="md-alert"
size="18"
color="#FFA000"
v-if="
getStatus(row.status) && getStatus(row.status) &&
getTimes(row.endTime) < 86400 && getTimes(row.endTime) < 86400 &&
getTimes(row.endTime) > 0 getTimes(row.endTime) > 0
" " />
/> <span style="color: #ffa000" v-if="
<span
style="color: #ffa000"
v-if="
getStatus(row.status) && getStatus(row.status) &&
getTimes(row.endTime) < 86400 && getTimes(row.endTime) < 86400 &&
getTimes(row.endTime) > 0 getTimes(row.endTime) > 0
" ">预警</span>&nbsp;&nbsp;
>预警</span <Icon type="md-timer" size="18" color="#FE7777" v-if="getStatus(row.status) && compareTime(row.endTime)" />
>&nbsp;&nbsp; <span style="color: #fe7777" v-if="getStatus(row.status) && compareTime(row.endTime)">超期</span>
<Icon </Col>
type="md-timer" </Row>
size="18" </div>
color="#FE7777" </div>
v-if="getStatus(row.status) && compareTime(row.endTime)" </template>
/>
<span
style="color: #fe7777"
v-if="getStatus(row.status) && compareTime(row.endTime)"
>超期</span
>
</Col>
</Row>
</div>
</div>
</template>
</DataGrid> </DataGrid>
</div> </div>
</template> </template>
<script> <script>
import Api from "./api"; import Api from "./api";
import Search from "../search"; import Search from "../search";
export default { export default {
name: "starOrder", name: "starOrder",
components: { components: {
Search, Search,
}, },
data() { data() {
return { return {
action: Api.index, action: Api.index,
easySearch: { easySearch: {
keys: { keys: {
op: "mesCode,productName,drawnNumber", op: "mesCode,productName,drawnNumber",
value: null, value: null,
}, },
DispatchStatus: { DispatchStatus: {
op: "In", op: "In",
value: [0], value: [0],
}, },
SubmitState: { SubmitState: {
op: "In", op: "In",
value: "1", value: "1",
}, },
}, },
downUrl: fileUrlDown, downUrl: fileUrlDown,
columns: [ columns: [{
{ title: this.l("Id"),
title: this.l("Id"), key: "id",
key: "id", width: 80,
width: 80, align: "left",
align: "left", },
{
title: this.l("mesCode"),
key: "mesCode",
width: 240,
align: "left",
},
{
key: "subWorkHourStatus",
title: this.l("subWorkHourStatus"),
align: "center",
high: true,
code: "workHour.status",
width: 120,
},
{
key: "productName",
title: this.l("productName"),
align: "left",
high: true,
},
{
key: "drawnNumber",
title: this.l("drawnNumber"),
align: "left",
high: true,
},
{
key: "quantity",
title: this.l("quantity"),
align: "right",
width: 120,
high: true,
},
{
key: "beginTime",
title: this.l("beginTime"),
align: "center",
width: 180,
high: true,
},
{
key: "endTime",
title: this.l("endTime"),
align: "center",
width: 180,
high: true,
},
{
title: "操作",
key: "action",
width: 140,
align: "center",
render: (h, params) => {
return h(
"div", {
class: "action",
},
[
h(
"op", {
attrs: {
oprate: "edit",
},
on: {
click: () =>
this.toExecute(
params.row.id,
params.row.orderId,
params.row.executeId,
params.row.routingHeaderId,
params.row.routingDetailId,
params.row.quantity,
params.row.status,
params.row.mesCode,
params.row.productName,
params.row.drawnNumber,
params.row.subWorkHourStatus
),
},
},
"查看"
),
]
);
},
},
],
typeInfo: "card",
iconInfo: "md-apps",
titleInfo: "卡片模式",
nowTime: new Date().getTime(), //页面当前打开时间
};
},
created() {
let oldStr = localStorage.getItem("admin");
let userlist = this.$store.getters.getUser(2);
},
async fetch({
store,
params
}) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
mounted() {
this.search();
},
methods: {
search() {
this.$refs.grid.reload(this.easySearch);
}, },
{ submitStateChange(value) {
title: this.l("mesCode"), this.$refs.grid.reload(this.easySearch);
key: "mesCode",
width: 240,
align: "left",
}, },
{ toExecute(
key: "subWorkHourStatus", id,
title: this.l("subWorkHourStatus"), orderId,
align: "center", executeId,
high: true, headid,
code: "workHour.status", routingDetailId,
width: 120, quantity,
status,
mesCode,
productName,
drawnNumber,
subWorkHourStatus
) {
//跳转到对应操作页面 获取id:this.$route.query.id
this.$router.push({
path: "/produce/execute/indexWorkHour",
query: {
id: id, //工单ID
orderId: orderId, //订单id
executeId: executeId, //订单执行表id
headid: headid, //工艺规程id
routid: routingDetailId, //工序ID
quantity: quantity, //派工数量
dispatchStatus: status,
mesCode: mesCode,
productName: productName,
drawnNumber: drawnNumber,
subWorkHourStatus: subWorkHourStatus //工时提交状态
},
});
}, },
{ tdStyle(val) {
key: "productName", //动态根据状态值加载状态值对应的颜色
title: this.l("productName"), let temDic = this.$store.getters.dictionaryByKey("orderList.workHourStatus");
align: "left", let temColor = "#666";
high: true, temDic.forEach((data) => {
if (Number(data.code) == val) {
temColor = data.color;
}
});
var style = {};
style["border-top"] = " solid 38px " + temColor;
return style;
}, },
{ changeShwo() {
key: "drawnNumber", //显示模式切换
title: this.l("drawnNumber"), if (this.typeInfo == "card") {
align: "left", this.typeInfo = "table";
high: true, this.iconInfo = "md-list";
this.titleInfo = "列表模式";
} else {
this.typeInfo = "card";
this.iconInfo = "md-apps";
this.titleInfo = "卡片模式";
}
}, },
{ compareTime(dateStart) {
key: "quantity", //比较当前时间和计划完成时间
title: this.l("quantity"), let planEndTime = new Date(dateStart).getTime();
align: "right", let res = true;
width: 120, if (this.nowTime - planEndTime > 0) {
high: true, res = true;
} else {
res = false;
}
return res;
}, },
{ getTimes(dateStart) {
key: "beginTime", //返回计划完成时间和当前时间的差值
title: this.l("beginTime"), let planEndTime = new Date(dateStart).getTime();
align: "center", let res = 0;
width: 180, if (this.nowTime - planEndTime > 0) {
high: true, res = 0;
} else {
res = (this.nowTime - planEndTime) / 1000;
}
return res;
}, },
{ getStatus(status) {
key: "endTime", //根据状态返回未开工、执行中、暂停状态的bool值
title: this.l("endTime"), let res = true;
align: "center", if (status == 12 || status == 14 || status == 5) {
width: 180, res = true;
high: true, } else {
res = false;
}
return res;
}, },
{ getUrl(url) {
title: "操作", //返回img需要显示的src值
key: "action", let tempUrl = "";
width: 140, if (url && url.length > 0) {
align: "center", tempUrl = this.downUrl + url;
render: (h, params) => { } else {
return h( tempUrl = iconImg + "noPic_product.png";
"div", }
{ return tempUrl;
class: "action",
},
[
h(
"op",
{
attrs: {
oprate: "edit",
},
on: {
click: () =>
this.toExecute(
params.row.id,
params.row.orderId,
params.row.executeId,
params.row.routingHeaderId,
params.row.routingDetailId,
params.row.quantity,
params.row.status,
params.row.mesCode,
params.row.productName,
params.row.drawnNumber
),
},
},
"查看"
),
]
);
},
}, },
], l(key) {
typeInfo: "card", let vkey = "order_list" + "." + key;
iconInfo: "md-apps", return this.$t(vkey) || key;
titleInfo: "卡片模式",
nowTime: new Date().getTime(), //页面当前打开时间
};
},
created() {
let oldStr = localStorage.getItem("admin");
let userlist = this.$store.getters.getUser(2);
},
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
mounted() {
this.search();
},
methods: {
search() {
this.$refs.grid.reload(this.easySearch);
},
submitStateChange(value) {
this.$refs.grid.reload(this.easySearch);
},
toExecute(
id,
orderId,
executeId,
headid,
routingDetailId,
quantity,
status,
mesCode,
productName,
drawnNumber
) {
//跳转到对应操作页面 获取id:this.$route.query.id
this.$router.push({
path: "/produce/execute",
query: {
id: id, //工单ID
orderId: orderId, //订单id
executeId: executeId, //订单执行表id
headid: headid, //工艺规程id
routid: routingDetailId, //工序ID
quantity: quantity, //派工数量
dispatchStatus: status,
mesCode: mesCode,
productName: productName,
drawnNumber: drawnNumber,
}, },
});
},
tdStyle(val) {
//动态根据状态值加载状态值对应的颜色
let temDic = this.$store.getters.dictionaryByKey("workHour.status");
let temColor = "#666";
temDic.forEach((data) => {
if (Number(data.code) == val) {
temColor = data.color;
}
});
var style = {};
style["border-top"] = " solid 38px " + temColor;
return style;
},
changeShwo() {
//显示模式切换
if (this.typeInfo == "card") {
this.typeInfo = "table";
this.iconInfo = "md-list";
this.titleInfo = "列表模式";
} else {
this.typeInfo = "card";
this.iconInfo = "md-apps";
this.titleInfo = "卡片模式";
}
},
compareTime(dateStart) {
//比较当前时间和计划完成时间
let planEndTime = new Date(dateStart).getTime();
let res = true;
if (this.nowTime - planEndTime > 0) {
res = true;
} else {
res = false;
}
return res;
}, },
getTimes(dateStart) {
//返回计划完成时间和当前时间的差值
let planEndTime = new Date(dateStart).getTime();
let res = 0;
if (this.nowTime - planEndTime > 0) {
res = 0;
} else {
res = (this.nowTime - planEndTime) / 1000;
}
return res;
},
getStatus(status) {
//根据状态返回未开工、执行中、暂停状态的bool值
let res = true;
if (status == 12 || status == 14 || status == 5) {
res = true;
} else {
res = false;
}
return res;
},
getUrl(url) {
//返回img需要显示的src值
let tempUrl = "";
if (url && url.length > 0) {
tempUrl = this.downUrl + url;
} else {
tempUrl = iconImg + "noPic_product.png";
}
return tempUrl;
},
l(key) {
let vkey = "order_list" + "." + key;
return this.$t(vkey) || key;
},
},
}; };
</script> </script>
<style lang="less"> <style lang="less">
.aps-r { .aps-r {
// width: 100%; // width: 100%;
// height: 100%; // height: 100%;
// overflow: auto; // overflow: auto;
// padding: 15px 0 15px 15px; // padding: 15px 0 15px 15px;
height: calc(100vh - 110px); height: calc(100vh - 110px);
.body { .body {
background: white; background: white;
border-radius: 4px 0 4px 4px; border-radius: 4px 0 4px 4px;
border: #cacbd0 solid 1px; border: #cacbd0 solid 1px;
margin-bottom: 30px; margin-bottom: 30px;
.title-i { .title-i {
padding: 0 0 0 8px; padding: 0 0 0 8px;
height: 38px; height: 38px;
line-height: 38px; line-height: 38px;
color: #2680eb; color: #2680eb;
font-size: 14px; font-size: 14px;
font-weight: bold; font-weight: bold;
border-bottom: #cacbd0 dotted 1px; border-bottom: #cacbd0 dotted 1px;
.btn-click { .btn-click {
text-align: right; text-align: right;
a { a {
color: #fff; color: #fff;
} }
a:hover { a:hover {
color: #249e91; color: #249e91;
}
}
} }
}
}
.panel-text { .panel-text {
padding: 5px 8px; padding: 5px 8px;
.img-i { .img-i {
width: 120px; width: 120px;
height: 120px; height: 120px;
overflow: hidden; overflow: hidden;
border: #cacbd0 dashed 1px; border: #cacbd0 dashed 1px;
//img { //img {
// width: 90px; // width: 90px;
// height: 90px; // height: 90px;
//} //}
} }
.row { .row {
color: #666666; color: #666666;
padding-left: 10px; padding-left: 10px;
p { p {
line-height: 30px; line-height: 30px;
}
}
} }
}
} }
}
.body:hover { .body:hover {
cursor: pointer; cursor: pointer;
box-shadow: 0 0 10px #888888; box-shadow: 0 0 10px #888888;
} }
} }
.statuBg { .statuBg {
height: 0px; height: 0px;
width: 0; width: 0;
border-left: solid 50px transparent; border-left: solid 50px transparent;
float: right; float: right;
margin-right: -1px; margin-right: -1px;
} }
.boxTitle { .boxTitle {
color: white; color: white;
float: right; float: right;
margin-top: -42px; margin-top: -42px;
/* Rotate div */ /* Rotate div */
transform: rotate(37deg); transform: rotate(37deg);
-ms-transform: rotate(37deg); -ms-transform: rotate(37deg);
/* Internet Explorer */ /* Internet Explorer */
-moz-transform: rotate(37deg); -moz-transform: rotate(37deg);
/* Firefox */ /* Firefox */
-webkit-transform: rotate(37deg); -webkit-transform: rotate(37deg);
/* Safari 和 Chrome */ /* Safari 和 Chrome */
-o-transform: rotate(37deg); -o-transform: rotate(37deg);
/* Opera */ /* Opera */
.text { .text {
font-size: 8px; font-size: 8px;
font-weight: normal; font-weight: normal;
} }
} }
.rowBottom .ivu-col-span-10 { .rowBottom .ivu-col-span-10 {
height: 24px; height: 24px;
padding-right: 10px; padding-right: 10px;
} }
</style> </style>
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