Commit ce79bc68 authored by renjintao's avatar renjintao

technology

parent a79178b1
......@@ -591,7 +591,12 @@ html body {
.new-orange {
color: #ff9900;
}
.blueTitle{
color: #2680EB;
}
.grayTitle{
color: #333;
}
/*图标*/
......@@ -1240,3 +1245,7 @@ html [type=button] {
height: 100%;
}
//显示富文本框样式
.detail .ivu-row .filed-col p .html p{
margin: 0 10px 0 0;
}
\ No newline at end of file
......@@ -30,7 +30,7 @@ export default {
border-top: none;
height: 100%;
.filed-col {
max-width: 970px;
border: 1px solid #ddd;
border-right: none;
margin: 0 -1px -1px -1px;
......@@ -47,7 +47,7 @@ export default {
height: 100%;
}
p {
max-width: 870px;
height: 100%;
word-break: break-all;
word-wrap: break-word;
......
......@@ -82,7 +82,7 @@
<Modal v-model="scheduleModal" title="移入排产" width="800">
<p>&nbsp;</p>
<h4>请选择排产模型:</h4>
<Dictionary code="aps.plan.scheduleType" v-model="scheduleType" class="radioList" border="true" type="radio" @on-change="onchangeScheduleType"></Dictionary>
<Dictionary code="aps.plan.scheduleType" v-model="scheduleType" class="radioList" :border="true" type="radio" @on-change="onchangeScheduleType"></Dictionary>
<p class="pl30 pt10" v-show="scheduleType!=null">
确定将订单
<span class="fwBold">{{resultsOrderList}}</span> 移入
......
......@@ -179,16 +179,16 @@ export default {
taskSeq: null,
taskContent: "",
resourceType: null,
runtime: null,
runtime: 0,
efficiencyValue: null,
singleOut: null,
isOutside: null,
isImportant: null,
outsideTime: null,
outsideTime: 0,
isImportantResources: null,
schedulingWorkingHours: null,
realWorkingHours: null,
realRuntime: null,
schedulingWorkingHours: 0,
realWorkingHours: 0,
realRuntime: 0,
isParticipateIntime: null,
equipType: "",
},
......
......@@ -11,7 +11,7 @@ export default {
return Api.post(`${technologyUrl}routingdetail/create`, params);
},
update(params) {
return Api.post(`${technologyUrl}routingdetail/update`, params);
return Api.put(`${technologyUrl}routingdetail/update`, params);
},
delete(id) {
return Api.delete(`${technologyUrl}routingdetail/delete`, {
......
<template>
<div class="detail">
<Row>
<Filed :span="12" :name="l('classId')">{{entity.classId}}</Filed>
<Filed :span="12" :name="l('routingHeaderId')">{{entity.routingHeaderId}}</Filed>
<Filed :span="12" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="12" :name="l('taskSeq')">{{entity.taskSeq}}</Filed>
<Filed :span="24" :name="l('description')">{{entity.description}}</Filed>
<Filed :span="12" :name="l('taskContent')">{{entity.taskContent}}</Filed>
<Filed :span="12" :name="l('resourceId')">{{entity.resourceId}}</Filed>
<Filed :span="12" :name="l('resourceType')">{{entity.resourceType}}</Filed>
<Filed :span="12" :name="l('runtime')">{{entity.runtime}}</Filed>
<Filed :span="12" :name="l('setupTime')">{{entity.setupTime}}</Filed>
<Filed :span="12" :name="l('transportTime')">{{entity.transportTime}}</Filed>
<Filed :span="12" :name="l('checkTime')">{{entity.checkTime}}</Filed>
<Filed :span="12" :name="l('checkFlag')">{{entity.checkFlag}}</Filed>
<Filed :span="12" :name="l('efficiencyValue')">{{entity.efficiencyValue}}</Filed>
<Filed :span="12" :name="l('singleOut')">{{entity.singleOut}}</Filed>
<Filed :span="12" :name="l('isOutside')">{{entity.isOutside}}</Filed>
<Filed :span="12" :name="l('departmentId')">{{entity.departmentId}}</Filed>
<Filed :span="12" :name="l('isImportant')">{{entity.isImportant}}</Filed>
<Filed :span="12" :name="l('milestoneId')">{{entity.milestoneId}}</Filed>
<Filed :span="12" :name="l('phaseId')">{{entity.phaseId}}</Filed>
<Filed :span="12" :name="l('status')">{{entity.status}}</Filed>
<Filed :span="24" :name="l('remark')">{{entity.remark}}</Filed>
<Filed :span="12" :name="l('extend')">{{entity.extend}}</Filed>
<Filed :span="12" :name="l('outsideTime')">{{entity.outsideTime}}</Filed>
<Filed :span="12" :name="l('performanceHours')">{{entity.performanceHours}}</Filed>
<Filed :span="12" :name="l('resourceCode')">{{entity.resourceCode}}</Filed>
<Filed :span="12" :name="l('isImportantResources')">{{entity.isImportantResources}}</Filed>
<Filed :span="12" :name="l('schedulingWorkingHours')">{{entity.schedulingWorkingHours}}</Filed>
<Filed :span="12" :name="l('realWorkingHours')">{{entity.realWorkingHours}}</Filed>
<Filed :span="12" :name="l('realRuntime')">{{entity.realRuntime}}</Filed>
<Filed :span="12" :name="l('performanceWorkingHours')">{{entity.performanceWorkingHours}}</Filed>
<Filed :span="12" :name="l('isParticipateIntime')">{{entity.isParticipateIntime}}</Filed>
<Filed :span="12" :name="l('equipType')">{{entity.equipType}}</Filed>
<Filed :span="12" :name="l('equipTypeId')">{{entity.equipTypeId}}</Filed>
<Filed :span="12" :name="l('note')">{{entity.note}}</Filed>
<Filed :span="12" :name="l('taskSeq')">{{entity.taskSeq}}</Filed>
<Filed :span="12" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="12" :name="l('equipType')">{{entity.equipType}}</Filed>
<Filed :span="12" :name="l('resourceType')">
<state code="Process.routing_detail.resource_type" :value="entity.resourceType" type="text"></state>
</Filed>
<Filed :span="12" :name="l('isImportant')">
<state code="Process.state" :value="entity.isImportant" type="text"></state>
</Filed>
<Filed :span="12" :name="l('isImportantResources')">
<state code="Process.state" :value="entity.isImportantResources" type="text"></state>
</Filed>
<Filed :span="12" :name="l('schedulingWorkingHours')">{{entity.schedulingWorkingHours}}</Filed>
<Filed :span="12" :name="l('runtime')">{{entity.runtime}}</Filed>
<Filed :span="12" :name="l('realRuntime')">{{entity.realRuntime}}</Filed>
<Filed :span="12" :name="l('realWorkingHours')">{{entity.realWorkingHours}}</Filed>
<Filed :span="12" :name="l('isOutside')">
<state code="Process.state" :value="entity.isOutside" type="text"></state>
</Filed>
<Filed :span="12" :name="l('outsideTime')">{{entity.outsideTime}}</Filed>
<Filed :span="12" :name="l('isParticipateIntime')">
<state code="Process.state" :value="entity.isParticipateIntime" type="text"></state>
</Filed>
<Filed :span="12" :name="l('efficiencyValue')">{{entity.efficiencyValue}}</Filed>
<Filed :span="12" :name="l('singleOut')">{{entity.singleOut}}</Filed>
<Filed :span="24" :name="l('taskContent')" >
<div v-html="entity.taskContent" class="html"></div>
</Filed>
</Row>
</div>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
import Api from "./api";
export default {
name: "Add",
data() {
return {
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
name: [{ required: true, message: "必填", trigger: "blur" }],
code: [{ required: true, message: "必填", trigger: "blur" }]
}
};
},
props: {
eid: Number
......@@ -66,15 +57,15 @@
load(v) {
Api.get({ id: v }).then(r => {
this.entity = r.result;
this.$emit('on-load')
})
this.$emit("on-load");
});
},
handleClose() {
this.$emit('on-close')
this.$emit("on-close");
},
l(key) {
key = "routing_detail" + "." + key;
return this.$t(key)
return this.$t(key);
}
},
watch: {
......@@ -84,5 +75,5 @@
}
}
}
}
};
</script>
This diff is collapsed.
......@@ -8,10 +8,14 @@
:height="gridHeight"
:page="false"
></DataGrid>
<Modal v-model="modal" :title="title" width="1200" footer-hide>
<component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" @data="getData" />
</Modal>
</div>
</template>
<script>
import Api from "./api";
import ApiStep from "./routingStep/api";
export default {
name: "expand",
props: {
......@@ -49,7 +53,10 @@ export default {
key: "stepSeq",
title: this.l("stepSeq"),
align: "left",
width:120
width: 150,
render: (h, params) => {
return h("div", { style: "padding-left:10px" }, params.row.stepSeq);
}
},
{
key: "name",
......@@ -61,26 +68,28 @@ export default {
title: this.l("status"),
align: "center",
code: "Process.Status",
width: 100
width: 150
},
{
key: "stepContent",
title: this.l("stepContent"),
align: "left",
width: 800,
tooltip: true
},
{
key: "creationTime",
title: this.l("creationTime"),
hide: true,
align: "left"
tooltip: true,
hide: true
},
{
key: "creatorUserId",
title: this.l("creatorUserId"),
hide: true,
align: "left"
align: "left",
type: "user",
width: 200
},
{
key: "creationTime",
title: this.l("creationTime"),
align: "left",
width: 200
},
{
title: "操作",
......@@ -101,7 +110,7 @@ export default {
"op",
{
attrs: { oprate: "edit" },
on: { click: () => this.edit(params.row.id) }
on: { click: () => this.edit(params.row.id, params.index) }
},
"编辑"
),
......@@ -118,7 +127,12 @@ export default {
}
],
listExpand: [],
gridHeight: 50
gridHeight: 50,
modal: false,
title: "新增",
detail: null,
curId: 0,
index: 0
};
},
mounted() {
......@@ -134,6 +148,42 @@ export default {
this.gridHeight = 102;
}
},
view(id) {
this.curId = id;
this.title = "详情";
this.detail = () => import("./routingStep/detail");
this.modal = true;
},
edit(id, index) {
this.curId = id;
this.index = index;
this.title = "编辑";
this.detail = () => import("./routingStep/edit");
this.modal = true;
},
remove(id) {
ApiStep.delete(id).then(r => {
if (r.success) {
this.$Message.success("删除成功");
this.$emit('showDetail');
}
});
},
ok() {
// this.load();
this.modal = false;
this.curId = 0;
},
getData(data) {
//let tempList=this.$u.clone(this.listExpand)
//tempList[this.index]=data
//this.$refs.gridExpand.list=tempList
this.$emit('showDetail');
},
cancel() {
this.curId = 0;
this.modal = false;
},
l(key) {
let vkey = "routing_step" + "." + key;
return this.$t(vkey) || key;
......
......@@ -6,7 +6,14 @@
</template>
</DataGrid>
<Modal v-model="modal" :title="title" width="1200" footer-hide>
<component :is="detail" :eid="curId" :headid="hid" @on-close="cancel" @on-ok="ok" />
<component
:is="detail"
:eid="curId"
:headid="hid"
:eName="curName"
@on-close="cancel"
@on-ok="ok"
/>
</Modal>
</div>
</template>
......@@ -40,6 +47,7 @@ export default {
title: "新增",
detail: null,
curId: 0,
curName: "",
hid: 0,
columns: [
{
......@@ -49,6 +57,15 @@ export default {
return h(expandRow, {
props: {
row: params.row.steps
},
on: {
//监听子组件showDetail事件
showDetail: value => {
//确保dom更新完成
this.$nextTick(() => {
this.toRefresh();
});
}
}
});
}
......@@ -247,7 +264,9 @@ export default {
"op",
{
attrs: { oprate: "detail" },
on: { click: () => this.view(params.row.id) }
on: {
click: () => this.addStep(params.row.id, params.row.name)
}
},
"新增"
),
......@@ -290,7 +309,7 @@ export default {
} else {
this.easySearch.routingHeaderId.value = this.$route.query.id;
}
this.hid = this.$route.query.id;
this.hid = this.easySearch.routingHeaderId.value;
},
mounted() {
this.load();
......@@ -306,8 +325,9 @@ export default {
methods: {
load() {
this.list = [];
let params = {
id: this.$route.query.id
id: this.hid
};
Api.getdetailsteps(params)
.then(r => {
......@@ -320,7 +340,7 @@ export default {
});
},
ok() {
this.$refs.grid.load();
this.load();
this.modal = false;
this.curId = 0;
},
......@@ -354,7 +374,7 @@ export default {
remove(id) {
Api.delete(id).then(r => {
if (r.success) {
this.$refs.grid.load();
this.load();
this.$Message.success("删除成功");
}
});
......@@ -363,6 +383,16 @@ export default {
this.curId = 0;
this.modal = false;
},
addStep(detailId, detailName) {
this.curId = detailId;
this.curName = detailName;
this.title = "新增工步";
this.detail = () => import("./routingStep/add");
this.modal = true;
},
toRefresh() {
this.load();
},
l(key) {
/*
routing_detail:{
......
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col :span="12">
<!-- <Col :span="12">
<FormItem :label="l('routingHeaderId')" prop="routingHeaderId">
<InputNumber style="width:200px" v-model="entity.routingHeaderId"></InputNumber>
</FormItem>
</Col>
<Col :span="12">
<FormItem :label="l('routingDetailId')" prop="routingDetailId">
<InputNumber style="width:200px" v-model="entity.routingDetailId"></InputNumber>
</Col> -->
<Col :span="24">
<FormItem label="工艺名称" >
{{eName}}
</FormItem>
</Col>
<Col :span="12">
......@@ -115,23 +115,12 @@ export default {
return {
disabled: false,
entity: {
creationTime: null,
creatorUserId: null,
lastModificationTime: null,
lastModifierUserId: null,
isDeleted: null,
deleterUserId: null,
deletionTime: null,
routingHeaderId: null,
routingDetailId: null,
classId: null,
routingHeaderId: 0,
routingDetailId: 0,
stepSeq: null,
name: "",
description: "",
status: null,
remark: "",
stepContent: "",
extend: ""
},
rules: {
name: [{ required: true, message: "必填", trigger: "blur" }]
......@@ -140,18 +129,21 @@ export default {
},
props: {
v: Object,
eid: Number
eid: Number,//工序id
eName:String,//工序名称
headid:Number,//工艺id
},
mounted() {
if (this.eid > 0) {
this.load(this.eid);
}
},
methods: {
handleSubmit() {
this.$refs.form.validate(v => {
if (v) {
this.disabled = true;
this.entity.routingHeaderId=this.headid
this.entity.routingDetailId=this.eid
Api.create(this.entity)
.then(r => {
this.disabled = false;
......
<template>
<div class="detail">
<Row>
<Filed :span="12" :name="l('creationTime')">{{entity.creationTime}}</Filed>
<Filed :span="12" :name="l('creatorUserId')">{{entity.creatorUserId}}</Filed>
<Filed :span="12" :name="l('lastModificationTime')">{{entity.lastModificationTime}}</Filed>
<Filed :span="12" :name="l('lastModifierUserId')">{{entity.lastModifierUserId}}</Filed>
<Filed :span="12" :name="l('isDeleted')">{{entity.isDeleted}}</Filed>
<Filed :span="12" :name="l('deleterUserId')">{{entity.deleterUserId}}</Filed>
<Filed :span="12" :name="l('deletionTime')">{{entity.deletionTime}}</Filed>
<Filed :span="12" :name="l('routingHeaderId')">{{entity.routingHeaderId}}</Filed>
<Filed :span="12" :name="l('routingDetailId')">{{entity.routingDetailId}}</Filed>
<Filed :span="12" :name="l('classId')">{{entity.classId}}</Filed>
<Filed :span="12" :name="l('stepSeq')">{{entity.stepSeq}}</Filed>
<Filed :span="12" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="24" :name="l('description')">{{entity.description}}</Filed>
<Filed :span="12" :name="l('status')">{{entity.status}}</Filed>
<Filed :span="24" :name="l('remark')">{{entity.remark}}</Filed>
<Filed :span="24" :name="l('stepContent')">{{entity.stepContent}}</Filed>
<Filed :span="12" :name="l('extend')">{{entity.extend}}</Filed>
<Filed :span="12" :name="l('stepSeq')">{{entity.stepSeq}}</Filed>
<Filed :span="12" :name="l('name')">{{entity.name}}</Filed>
<Filed :span="12" :name="l('status')">{{entity.status}}</Filed>
<Filed :span="24" :name="l('stepContent')"><div v-html="entity.stepContent" class="html"></div></Filed>
<Filed :span="12" :name="l('creationTime')">{{entity.creationTime}}</Filed>
<Filed :span="12" :name="l('creatorUserId')">{{entity.creatorUserId}}</Filed>
</Row>
</div>
</template>
<script>
import Api from './api'
export default {
name: 'Add',
import Api from "./api";
export default {
name: "Add",
data() {
return {
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }],
code: [{ required: true, message: '必填', trigger: 'blur' }]
}
name: [{ required: true, message: "必填", trigger: "blur" }],
code: [{ required: true, message: "必填", trigger: "blur" }]
}
};
},
props: {
eid: Number
......@@ -48,15 +35,15 @@
load(v) {
Api.get({ id: v }).then(r => {
this.entity = r.result;
this.$emit('on-load')
})
this.$emit("on-load");
});
},
handleClose() {
this.$emit('on-close')
this.$emit("on-close");
},
l(key) {
key = "routing_step" + "." + key;
return this.$t(key)
return this.$t(key);
}
},
watch: {
......@@ -66,5 +53,5 @@
}
}
}
}
};
</script>
\ No newline at end of file
......@@ -145,6 +145,7 @@ export default {
if (r.success) {
this.$Message.success("保存成功");
this.$emit("on-ok");
this.$emit("data",this.entity);
} else {
this.$Message.error("保存失败");
}
......
......@@ -177,6 +177,7 @@ export default {
},
props: {
headid: Number,
eName:String,
eid: Number
},
mounted() {
......
......@@ -282,7 +282,6 @@ export default {
},
add() {
this.curId = 0;
this.title = "新增";
this.detail = () => import("./add");
this.modal = true;
......
......@@ -72,10 +72,21 @@
<div class="top flex">
<div v-width="200">
<a class="back_href" @click="viewClose">
<Icon type="ios-undo-outline" size="24"/>返回工艺规程
<Icon type="ios-undo-outline" size="24" />返回工艺规程
</a>
</div>
<div class="fg">工艺信息</div>
<div class="fg tc f14 fwBold blueTitle">
工艺信息&nbsp;&nbsp;&nbsp;&nbsp;{{l('code')}}:
<span class="grayTitle">{{titleObj.code}}</span>&nbsp;&nbsp;&nbsp;&nbsp;
{{l('name')}}:
<span class="grayTitle">{{titleObj.name}}</span>&nbsp;&nbsp;&nbsp;&nbsp;
{{l('routingType')}}:
<span class="grayTitle">{{titleObj.routingType}}</span>&nbsp;&nbsp;&nbsp;&nbsp;
{{l('version')}}:
<span class="grayTitle">{{titleObj.version}}</span>&nbsp;&nbsp;&nbsp;&nbsp;
{{l('departmentId')}}:
<span class="grayTitle">{{titleObj.departmentId}}</span>
</div>
</div>
<div class="fg">
<iframe width="100%" id="infoFrame" height="100%" frameborder="0" :src="src"></iframe>
......@@ -246,7 +257,7 @@ export default {
"op",
{
attrs: { oprate: "detail" },
on: { click: () => this.view(params.row.id) }
on: { click: () => this.view(params.row) }
},
"查看"
),
......@@ -270,7 +281,14 @@ export default {
]);
}
}
]
],
titleObj: {
code: "", //工艺编号
name: "", //工艺名称
routingType: 0, //工艺类型
version: "", //工艺版本
departmentId: null //车间
}
};
},
created() {
......@@ -298,12 +316,19 @@ export default {
this.showMenu = true;
},
// 详情页面
view(id) {
view(row) {
// this.$router.push("technology/details");
// window.open("/technology/details","_blank")
this.viewModal = true;
this.titleObj = {
code: row.code,
name: row.name,
routingType: row.routingType,
version: row.version,
departmentId: row.departmentId
};
// this.info=()=>import("./details")
this.src = "/technology/details?id=" + id;
this.src = "/technology/details?id=" + row.id;
},
viewClose() {
this.viewModal = false;
......
......@@ -8,6 +8,37 @@ html body {
#__layout {
height: 100%;
}
/*flex*/
.flex {
display: flex;
}
.fc-m {
justify-content: center;
}
.fc-e {
justify-content: flex-end;
}
.fc-b {
justify-content: space-between;
}
.fc-a {
justify-content: space-around;
}
.fd {
flex-direction: column;
}
.fg {
flex-grow: 1;
}
.fg2 {
flex-grow: 2;
}
.fos {
order: -1;
}
.foe {
order: 99;
}
/*字体*/
.ib {
display: inline;
......@@ -37,6 +68,11 @@ html body {
color: #f23a3a;
cursor: pointer;
}
.stitle {
height: 40px;
background-color: #F5F6FA;
line-height: 40px;
}
.lh10 {
line-height: 10px;
}
......@@ -55,6 +91,9 @@ html body {
.lh40 {
line-height: 40px;
}
.lh50 {
line-height: 50px;
}
/*边距*/
.m10 {
margin: 10px;
......@@ -412,6 +451,12 @@ html body {
.new-orange {
color: #ff9900;
}
.blueTitle {
color: #2680EB;
}
.grayTitle {
color: #333;
}
/*图标*/
i.iconfont {
cursor: pointer;
......@@ -515,7 +560,6 @@ textarea::-webkit-input-placeholder {
display: none;
}
.zh-tree {
position: relative;
display: block;
width: 250px;
float: left;
......@@ -536,12 +580,9 @@ textarea::-webkit-input-placeholder {
border-bottom: #e4e6ed solid 1px;
}
.zh-tree .zh-box {
height: -110%;
width: 100%;
overflow-y: auto;
height: 100%;
padding: 15px;
margin-bottom: -5000px;
padding-bottom: 5000px;
}
.content-right {
margin-left: 10px;
......@@ -930,3 +971,9 @@ html [type=button] {
.content {
padding-left: 5px;
}
.h100 {
height: 100%;
}
.detail .ivu-row .filed-col p .html p {
margin: 0 10px 0 0;
}
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