Commit 2066cccd authored by 周远喜's avatar 周远喜

Merge branch 'product' of http://git.mes123.com/zhouyx/mes-ui into product

parents 3da3304b 29f584a0
...@@ -19,13 +19,19 @@ ...@@ -19,13 +19,19 @@
</div> </div>
<div class="fg"> <div class="fg">
<div class="tree"> <div class="tree">
<Tree :data="data" :render="renderContent" ref="tree" @on-select-change="change"></Tree> <Tree
:data="data"
:render="renderContent"
ref="tree"
@on-select-change="change"
></Tree>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { forEach } from "lodash";
export default { export default {
name: "", name: "",
data() { data() {
...@@ -64,7 +70,24 @@ export default { ...@@ -64,7 +70,24 @@ export default {
}, },
"upId" "upId"
); );
this.list = this.$u.clone(data); let creatorUserId = this.$store.state.userInfo.userId;
console.log(creatorUserId);
let list = this.$u.clone(data);
let newlist = [];
list.filter((e, index) => {
let userIds = [];
let obj = {};
if (e.upId == 0) {
userIds = e.userIds.split(",");
userIds.forEach((v) => {
if (creatorUserId == v) {
newlist.push(e);
}
});
}
});
// console.log(newlist);
this.list = newlist;
}); });
}, },
toggle() { toggle() {
...@@ -124,6 +147,7 @@ export default { ...@@ -124,6 +147,7 @@ export default {
let items = this.$u.clone(this.list); let items = this.$u.clone(this.list);
let expand = this.expand; let expand = this.expand;
let result = []; let result = [];
search(this.keys, items); search(this.keys, items);
function search(keys, data) { function search(keys, data) {
data.map((u) => { data.map((u) => {
......
...@@ -124,7 +124,7 @@ export default { ...@@ -124,7 +124,7 @@ export default {
// pageIndex: 1, // pageIndex: 1,
departmentId: id, departmentId: id,
type: this.type, type: this.type,
roleTitle: this.roleTitle, roleTitle: this.roleTitle, //检验
// pageSize: 0 // pageSize: 0
}; };
if (this.type == 99) { //开发组 if (this.type == 99) { //开发组
......
...@@ -946,6 +946,7 @@ export default { ...@@ -946,6 +946,7 @@ export default {
taskCode: '甲方任务号', taskCode: '甲方任务号',
putintDocmentCode: '甲方投产输入文件(编号)', putintDocmentCode: '甲方投产输入文件(编号)',
technologyDocmentCode: '甲方技术输入文件(编号)', technologyDocmentCode: '甲方技术输入文件(编号)',
productionType:'生产类型'
}, },
mes_part_task_plan_simulate: { mes_part_task_plan_simulate: {
id: '', id: '',
......
This diff is collapsed.
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
</FormItem> </FormItem>
</Col> </Col>
<Col :span="12"> <Col :span="12">
<FormItem label="首选资源" prop="resourceType"> <FormItem label="首选资源" prop="resource">
<ResourceSelectCode v-model="entity.resource" @on-change="resourceChange"></ResourceSelectCode> <ResourceSelectCode v-model="entity.resource" @on-change="resourceChange"></ResourceSelectCode>
</FormItem> </FormItem>
</Col> </Col>
...@@ -51,10 +51,11 @@ export default { ...@@ -51,10 +51,11 @@ export default {
message: "必填", message: "必填",
trigger: "blur" trigger: "blur"
}], }],
resourceType: [{ resource: [{
required: true, required: true,
message: "请选择首选资源", message: "请选择首选资源",
trigger: "change", trigger: "change",
type: 'array'
}, ], }, ],
}, },
single: false single: false
...@@ -69,10 +70,10 @@ export default { ...@@ -69,10 +70,10 @@ export default {
} }
}, },
methods: { methods: {
load(v) { // load(v) {
this.entity = v; // this.entity = v;
}, // },
handleSubmit() { handleSubmit() {
this.$refs.form.validate(v => { this.$refs.form.validate(v => {
if (v) { if (v) {
...@@ -135,9 +136,9 @@ export default { ...@@ -135,9 +136,9 @@ export default {
this.entity.resourceCode = v[1]; this.entity.resourceCode = v[1];
this.entity.resourceId = items[1].id; this.entity.resourceId = items[1].id;
if (v != null && v.length > 0) { if (v != null && v.length > 0) {
this.rules.resourceType[0].required = false; this.rules.resource[0].required = false;
} else { } else {
this.rules.resourceType[0].required = true; this.rules.resource[0].required = true;
} }
}, },
l(key) { l(key) {
...@@ -160,7 +161,6 @@ export default { ...@@ -160,7 +161,6 @@ export default {
this.entity.resourceCode = v.first_equip; this.entity.resourceCode = v.first_equip;
let code = v.first_equip; let code = v.first_equip;
this.entity.resource = [] this.entity.resource = []
//let code = 'PCZYBZBH_20200804_1'
if (code && code != '') { if (code && code != '') {
this.resources.forEach(e => { this.resources.forEach(e => {
if (e.code == code) { if (e.code == code) {
......
...@@ -211,8 +211,7 @@ export default { ...@@ -211,8 +211,7 @@ export default {
title: this.l("equip_type"), title: this.l("equip_type"),
align: "left", align: "left",
easy: true, easy: true,
high: true, high: true
hide: true
}, },
{ {
key: "first_equip", key: "first_equip",
...@@ -470,8 +469,8 @@ export default { ...@@ -470,8 +469,8 @@ export default {
//编辑工序start---- //编辑工序start----
edit(row) { edit(row) {
this.editModal = true;
this.rowData = row; this.rowData = row;
this.editModal = true;
}, },
//编辑工序end---- //编辑工序end----
......
This diff is collapsed.
This diff is collapsed.
<template> <template>
<div class="result-aps"> <div class="result-aps">
<Row class="expand-row"> <Row class="expand-row">
<Col span="4"> <Col span="4">
<span class="expand-key">工序序号</span> <span class="expand-key">工序序号</span>
</Col> </Col>
<Col span="3"> <Col span="3">
<span class="expand-key">工序名称</span> <span class="expand-key">工序名称</span>
</Col> </Col>
<Col span="3"> <Col span="3">
<span class="expand-key">投入数量</span> <span class="expand-key">投入数量</span>
</Col> </Col>
<Col span="3"> <Col span="3">
<span class="expand-key">派工数量</span> <span class="expand-key">派工数量</span>
</Col> </Col>
<Col span="4"> <Col span="4">
<span class="expand-key">计划开始时间</span> <span class="expand-key">计划开始时间</span>
</Col> </Col>
<Col span="4"> <Col span="4">
<span class="expand-key">计划结束时间</span> <span class="expand-key">计划结束时间</span>
</Col> </Col>
<Col span="3"> <Col span="3">
<span class="expand-key">设备编号</span> <span class="expand-key">首选资源</span>
</Col> </Col>
</Row> </Row>
<Row v-for="(item,index) in dataList" :key="item.index"> <Row v-for="(item,index) in dataList" :key="item.index">
<Col span="4" class="expand-value"> <Col span="4" class="expand-value">
<span>{{ item.task_seq }}</span> <span>{{ item.task_seq }}</span>
</Col> </Col>
<Col span="3" class="expand-value"> <Col span="3" class="expand-value">
<span>{{ item.task_name }}</span> <span>{{ item.task_name }}</span>
</Col> </Col>
<Col span="3" class="expand-value"> <Col span="3" class="expand-value">
<span>{{ item.put_into_qty }}</span> <span>{{ item.put_into_qty }}</span>
</Col> </Col>
<Col span="3" class="expand-value"> <Col span="3" class="expand-value">
<span>{{ item.dispatch_qty }}</span> <span>{{ item.dispatch_qty }}</span>
</Col> </Col>
<Col span="4" class="expand-value"> <Col span="4" class="expand-value">
<span>{{ item.plan_start }}</span> <span>{{ item.plan_start }}</span>
</Col> </Col>
<Col span="4" class="expand-value"> <Col span="4" class="expand-value">
<span>{{ item.plan_finish }}</span> <span>{{ item.plan_finish }}</span>
</Col> </Col>
<Col span="3" class="expand-value"> <Col span="3" class="expand-value">
<span>{{ item.equip_id }}</span> <span>{{ item.equip_id }}</span>
</Col> </Col>
</Row> </Row>
</div> </div>
</template> </template>
<script> <script>
import Api from "./api"; import Api from "./api";
export default { export default {
props: { props: {
row: Object row: Object
}, },
data() { data() {
return { return {
dataList: [] dataList: []
}; };
}, },
mounted() { mounted() {
this.getList(this.row); this.getList(this.row);
}, },
methods: { methods: {
getList(row) { getList(row) {
Api.getdetail({ Api.getdetail({
part_task_pk: row.id, part_task_pk: row.id,
scheduleId: row.schedule_id scheduleId: row.schedule_id
}).then(r => { }).then(r => {
if (r.success) { if (r.success) {
this.dataList = r.result; this.dataList = r.result;
}
});
} }
});
} }
}
}; };
</script> </script>
<style lang='less'>
<style lang="less">
.result-aps { .result-aps {
.expand-row { .expand-row {
text-align: center; text-align: center;
margin: 5px 0; margin: 5px 0;
font-weight: bold; font-weight: bold;
} }
.expand-value {
text-align: center; .expand-value {
margin: 3px 0; text-align: center;
} margin: 3px 0;
}
} }
td.ivu-table-expanded-cell { td.ivu-table-expanded-cell {
padding: 0 !important; padding: 0 !important;
} }
</style> </style>
\ No newline at end of file
<template> <template>
<div class="pdf-detail table-detail"> <div class="pdf-detail table-detail">
<div class="cerioficate-pdf-detail"> <div class="cerioficate-pdf-detail">
<div class="bian-hao">产品合格证编号:{{results.serialNumber}}</div> <div class="bian-hao">产品合格证编号:{{ results.serialNumber }}</div>
<div class="body-d"> <div class="body-d">
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">用户单位</Col> <Col :span="4" class="col-border">用户单位</Col>
<Col :span="20" class="col-border">{{results.userUnit}}</Col> <Col :span="20" class="col-border">{{ results.userUnit }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">任务依据</Col> <Col :span="4" class="col-border">任务依据</Col>
<Col :span="20" class="col-border">{{results.taskBased}}</Col> <Col :span="20" class="col-border">{{ results.taskBased }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品名称</Col> <Col :span="4" class="col-border">产品名称</Col>
<Col :span="8" class="col-border">{{results.productName}}</Col> <Col :span="8" class="col-border">{{ results.productName }}</Col>
<Col :span="4" class="col-border">产品状态</Col> <!-- <Col :span="4" class="col-border">产品状态</Col>
<Col :span="8" class="col-border">{{results.productStatus}}</Col> <Col :span="8" class="col-border">{{results.productStatus}}</Col> -->
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品编号</Col> <Col :span="4" class="col-border">产品编号</Col>
<Col :span="8" class="col-border">{{results.productSerialNumber}}</Col> <Col :span="8" class="col-border">{{
results.productSerialNumber
}}</Col>
<Col :span="4" class="col-border">原材料批号</Col> <Col :span="4" class="col-border">原材料批号</Col>
<Col :span="8" class="col-border">{{results.materialSerialNumber}}</Col> <Col :span="8" class="col-border">{{
results.materialSerialNumber
}}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">原材料编号</Col> <Col :span="4" class="col-border">原材料编号</Col>
<Col :span="8" class="col-border">{{results.materialCode}}</Col> <Col :span="8" class="col-border">{{ results.materialCode }}</Col>
<Col :span="4" class="col-border">产品代号(图号)</Col> <Col :span="4" class="col-border">产品代号(图号)</Col>
<Col :span="8" class="col-border">{{results.productCode}}</Col> <Col :span="8" class="col-border">{{ results.productCode }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">原材料合格证编号</Col> <Col :span="4" class="col-border">原材料合格证编号</Col>
<Col :span="8" class="col-border">{{results.materialCertificationNumber}}</Col> <Col :span="8" class="col-border">{{
results.materialCertificationNumber
}}</Col>
<Col :span="4" class="col-border">数量</Col> <Col :span="4" class="col-border">数量</Col>
<Col :span="8" class="col-border">{{results.productQuantity}}</Col> <Col :span="8" class="col-border">{{ results.productQuantity }}</Col>
</Row> </Row>
<!-- <Row class="row-border right-border"> <!-- <Row class="row-border right-border">
<Col :span="4" class="col-border">增材制造批次号</Col> <Col :span="4" class="col-border">增材制造批次号</Col>
...@@ -50,73 +56,84 @@ ...@@ -50,73 +56,84 @@
<Col :span="5" class="col-border">结论</Col> <Col :span="5" class="col-border">结论</Col>
<Col :span="5" class="col-border">备注</Col> <Col :span="5" class="col-border">备注</Col>
</Row> </Row>
<Row class="row-border right-border" v-for="(item,index) in results.items" :key="index"> <Row
<Col :span="1" class="col-border">{{index+1}}</Col> class="row-border right-border"
<Col :span="5" class="col-border">{{item.name}}</Col> v-for="(item, index) in results.items"
<Col :span="5" class="col-border">{{item.require}}</Col> :key="index"
<Col :span="3" class="col-border">{{item.result}}</Col> >
<Col :span="5" class="col-border">{{item.conclusion}}</Col> <Col :span="1" class="col-border">{{ index + 1 }}</Col>
<Col :span="5" class="col-border">{{item.remark}}</Col> <Col :span="5" class="col-border">{{ item.name }}</Col>
<Col :span="5" class="col-border">{{ item.require }}</Col>
<Col :span="3" class="col-border">{{ item.result }}</Col>
<Col :span="5" class="col-border">{{ item.conclusion }}</Col>
<Col :span="5" class="col-border">{{ item.remark }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">结论</Col> <Col :span="4" class="col-border">结论</Col>
<Col :span="20" class="col-border">{{results.conclusion}}</Col> <Col :span="20" class="col-border">{{ results.conclusion }}</Col>
</Row> </Row>
<Row class="row-border right-border bottom-border"> <Row class="row-border right-border bottom-border">
<Col :span="4" class="col-border">检验员 / 时间</Col> <Col :span="4" class="col-border">检验员 / 时间</Col>
<Col :span="8" class="col-border">{{results.examUser}} {{results.examDate}}</Col> <Col :span="8" class="col-border">
<User :value="parseInt(results.examUser)" />&nbsp;{{
results.examDate
}}</Col
>
<Col :span="4" class="col-border">批准人 / 时间</Col> <Col :span="4" class="col-border">批准人 / 时间</Col>
<Col :span="8" class="col-border">{{results.approveUser}} {{results.approveDate}}</Col> <Col :span="8" class="col-border">
<User :value="parseInt(results.approveUser)" />&nbsp;
{{ results.approveDate }}</Col
>
</Row> </Row>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import Api from '../api' import Api from "../api";
export default { export default {
name: 'detail', name: "detail",
components: {}, components: {},
props: { props: {
idVal: { idVal: {
type: String, type: String,
default: '' default: "",
} },
}, },
async fetch({ store, params }) { async fetch({ store, params }) {
await store.dispatch('loadDictionary') // 加载数据字典 await store.dispatch("loadDictionary"); // 加载数据字典
}, },
data() { data() {
return { return {
results: { results: {
state: '' state: "",
} },
} };
}, },
created() { created() {
this.dataImmut = [] this.dataImmut = [];
this.dataMut = [] this.dataMut = [];
Api.get({ Id: this.idVal }).then((r) => { Api.get({ Id: this.idVal }).then((r) => {
if (r.success) { if (r.success) {
this.results = JSON.parse(r.result.formData) this.results = JSON.parse(r.result.formData);
// let formStr = r.result.formData.replace(/\"/g, '"') // let formStr = r.result.formData.replace(/\"/g, '"')
// this.results = JSON.parse(formStr)[0] // this.results = JSON.parse(formStr)[0]
} else { } else {
this.$Message.error('加载失败') this.$Message.error("加载失败");
} }
}) });
}, },
methods: { methods: {
load(v) {}, load(v) {},
l(key) { l(key) {
key = 'waitOpened' + '.' + key key = "waitOpened" + "." + key;
return this.$t(key) return this.$t(key);
} },
}, },
watch: {} watch: {},
} };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.pdf-detail { .pdf-detail {
......
...@@ -69,36 +69,36 @@ export default { ...@@ -69,36 +69,36 @@ export default {
{ {
key: "code", key: "code",
title: this.l("code"), title: this.l("code"),
align: "left", align: "center",
easy: true, easy: true,
high: true, high: true,
}, },
{ key: "total", title: this.l("total"), high: true }, { key: "total", title: this.l("total"), high: true, align: "center" },
{ {
key: "nowTotal", key: "nowTotal",
title: this.l("nowTotal"), title: this.l("nowTotal"),
align: "center",
high: true,
},
{ key: "batch", title: this.l("batch"), align: "left", high: true },
{
key: "certificateOfApproval",
title: this.l("certificateOfApproval"),
align: "left",
high: true, high: true,
}, },
{ // { key: "batch", title: this.l("batch"), align: "left", high: true },
key: "unitPrice", // {
title: this.l("unitPrice"), // key: "certificateOfApproval",
// title: this.l("certificateOfApproval"),
// align: "left",
// high: true,
// },
// {
// key: "unitPrice",
// title: this.l("unitPrice"),
high: true, // high: true,
}, // },
{ // {
key: "originalManufacturer", // key: "originalManufacturer",
title: this.l("originalManufacturer"), // title: this.l("originalManufacturer"),
align: "left", // align: "left",
high: true, // high: true,
}, // },
{ {
key: "creationTime", key: "creationTime",
title: this.l("creationTime"), title: this.l("creationTime"),
...@@ -108,7 +108,7 @@ export default { ...@@ -108,7 +108,7 @@ export default {
{ {
key: "creator", key: "creator",
title: this.l("creatorUserId"), title: this.l("creatorUserId"),
align: "left", align: "center",
high: true, high: true,
}, },
{ {
......
<template> <template>
<div> <div>
<Form ref="form" :model="entity" :rules="rules" :label-width="90"> <Form ref="form" :model="entity" :label-width="90">
<Row> <Row>
<Col :span="12"> <Col :span="12">
<FormItem label="名称" prop="name"> <FormItem label="名称" prop="name" :rules="{required: true, message: '必填', trigger: 'blur'}">
<Input v-model="entity.name" placeholder="请输入"></Input> <Input v-model="entity.name" placeholder="请输入"></Input>
</FormItem> </FormItem>
</Col> </Col>
...@@ -37,7 +37,9 @@ ...@@ -37,7 +37,9 @@
</div> </div>
<Row> <Row>
<Col v-for="li in fileds" :key="li.field" :span="li.span"> <Col v-for="li in fileds" :key="li.field" :span="li.span">
<FormItem :label="li.title" :prop="li.name"> <!-- type: li.dataType==1?'number':li.dataType==4?'date':'string' -->
<!-- :rules="li.required?{required: true, message: '必填', trigger: 'blur', }:''" -->
<FormItem :label="li.title" :prop="li.field" >
<Input v-if="li.dataType==0" v-model="entity[li.field]"></Input> <Input v-if="li.dataType==0" v-model="entity[li.field]"></Input>
<InputNumber <InputNumber
v-if="li.dataType==1||li.dataType==2" v-if="li.dataType==1||li.dataType==2"
......
This diff is collapsed.
...@@ -58,7 +58,12 @@ ...@@ -58,7 +58,12 @@
</Col> </Col>
</Row> </Row>
<Row> <Row>
<Col span="24"> <Col span="8">
<FormItem label="生产类型" style="width:100%" prop="productionType">
<dictionary style="width:240px" code="plan.order.productionType" v-model="orderSearchForm.productionType"></dictionary>
</FormItem>
</Col>
<Col span="16">
<FormItem label="任务要求" style="width:100%"> <FormItem label="任务要求" style="width:100%">
<Input v-model="orderSearchForm.taskRequire" placeholder /> <Input v-model="orderSearchForm.taskRequire" placeholder />
</FormItem> </FormItem>
......
...@@ -67,6 +67,12 @@ ...@@ -67,6 +67,12 @@
</Col> </Col>
</Row> </Row>
<Row> <Row>
<Col span="8">
<span class="fwBold">{{l('productionType')}}</span>
<p>
<state code="plan.order.productionType" :value="entity.productionType" type="text"></state>
</p>
</Col>
<Col span="8"> <Col span="8">
<span class="fwBold">{{l('productingPreparationPeople')}}</span> <span class="fwBold">{{l('productingPreparationPeople')}}</span>
<p> <p>
...@@ -79,10 +85,6 @@ ...@@ -79,10 +85,6 @@
<User v-model="entity.quotationPeople" v-if="entity.quotationPeople>0"></User> <User v-model="entity.quotationPeople" v-if="entity.quotationPeople>0"></User>
</p> </p>
</Col> </Col>
<Col span="8">
<span class="fwBold">&nbsp;</span>
<p>&nbsp;</p>
</Col>
</Row> </Row>
<Row class="lastRow"> <Row class="lastRow">
<Col span="24"> <Col span="24">
......
...@@ -61,6 +61,11 @@ ...@@ -61,6 +61,11 @@
<dictionary style="width:240px" code="plan.order.urgencyLevel" v-model="orderSearchForm.urgencyLevel"></dictionary> <dictionary style="width:240px" code="plan.order.urgencyLevel" v-model="orderSearchForm.urgencyLevel"></dictionary>
</FormItem> </FormItem>
</Col> </Col>
<Col span="8">
<FormItem :label="l('productionType')" style="width:100%" prop="productionType">
<dictionary style="width:240px" code="plan.order.productionType" v-model="orderSearchForm.productionType"></dictionary>
</FormItem>
</Col>
<Col span="24"> <Col span="24">
<FormItem :label="l('taskRequire')" style="width:100%"> <FormItem :label="l('taskRequire')" style="width:100%">
<Input v-model="orderSearchForm.taskRequire" placeholder /> <Input v-model="orderSearchForm.taskRequire" placeholder />
......
...@@ -179,6 +179,14 @@ export default { ...@@ -179,6 +179,14 @@ export default {
code: "plan.order.taskType", code: "plan.order.taskType",
width: 100 width: 100
}, },
{
key: "productionType",
title: this.l("productionType"),
align: "center",
high: true,
code: "plan.order.productionType",
width: 100
},
{ {
key: "quantity", key: "quantity",
title: this.l("quantity"), title: this.l("quantity"),
......
This diff is collapsed.
...@@ -105,7 +105,7 @@ export default { ...@@ -105,7 +105,7 @@ export default {
type: "user", type: "user",
}, },
{ {
key: "laster", key: "lastModifierUserId",
title: this.l("laster"), title: this.l("laster"),
easy: true, easy: true,
high: true, high: true,
...@@ -192,10 +192,6 @@ export default { ...@@ -192,10 +192,6 @@ export default {
eid: Number, eid: Number,
}, },
mounted() { mounted() {
// this.$refs.grid.reload(this.easySearch);
// if (this.eid) {
// this.loadList();
// }
window.onresize = () => { window.onresize = () => {
///浏览器窗口大小变化 ///浏览器窗口大小变化
return (() => { return (() => {
...@@ -214,9 +210,8 @@ export default { ...@@ -214,9 +210,8 @@ export default {
//格式化原始数据 //格式化原始数据
formatFun(data) { formatFun(data) {
data.map((e) => { data.map((e) => {
if (e.laster) { if (e.laster || e.creator) {
e.laster = parseInt(e.laster); e.laster = parseInt(e.laster);
} else if (e.creator) {
e.creator = parseInt(e.creator); e.creator = parseInt(e.creator);
} }
}); });
......
import Api from '@/plugins/request' import Api from '@/plugins/request'
export default { export default {
index: `${PlanUrl}/orderexecutenew/paged_img`, index: `${PlanUrl}/orderexecutenew/Paged_Img_RoutingDetail`,
paged(params) { paged(params) {
return Api.post(`${PlanUrl}/orderexecutenew/paged_img`, params); return Api.post(`${PlanUrl}/orderexecutenew/Paged_Img_RoutingDetail`, params);
}, },
getCardList(params) { getCardList(params) {
return Api.post(`${PlanUrl}/orderexecutenew/list`, params); return Api.post(`${PlanUrl}/orderexecutenew/list`, params);
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<Form ref="form" :model="entity" :rules="rules" :label-width="90"> <Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row> <Row>
<Col :span="12"> <Col :span="12">
<FormItem :label="l('title')" prop="title" style="width:95%"> <FormItem :label="l('title')" prop="title" style="width: 95%">
<Input v-model="entity.title"></Input> <Input v-model="entity.title"></Input>
</FormItem> </FormItem>
</Col> </Col>
...@@ -22,7 +22,13 @@ ...@@ -22,7 +22,13 @@
</Col> </Col>
<Col span="24"> <Col span="24">
<FormItem :label="l('content')" prop="content "> <FormItem :label="l('content')" prop="content ">
<Input v-model="entity.content" type="textarea" :rows="5"></Input> <i-quill
v-model="entity.content"
:height="300"
border
v-paste="handleImg"
/>
<!-- <Input v-model="entity.content" type="textarea" :rows="5"></Input> -->
</FormItem> </FormItem>
</Col> </Col>
</Row> </Row>
...@@ -34,8 +40,12 @@ ...@@ -34,8 +40,12 @@
</template> </template>
<script> <script>
import Api from "./api"; import Api from "./api";
import iQuill from "@/components/quill";
export default { export default {
name: "Add", name: "Add",
components: {
iQuill,
},
data() { data() {
return { return {
entity: { entity: {
...@@ -76,6 +86,27 @@ export default { ...@@ -76,6 +86,27 @@ export default {
} }
}, },
methods: { methods: {
handleImg(e) {
console.warn(e);
let file = null;
if (
e.clipboardData &&
e.clipboardData.items[0] &&
e.clipboardData.items[0].type &&
e.clipboardData.items[0].type.indexOf("image") > -1
) {
//这里就是判断是否有粘贴进来的文件且文件为图片格式
file = e.clipboardData.items[0].getAsFile();
let reader = new FileReader();
reader.readAsDataURL(file);
setTimeout(() => {
var img = '<img src="' + reader.result + '" alt=""/>';
this.entity.content += img;
}, 1000);
// new R
}
},
handleSubmit() { handleSubmit() {
this.$refs.form.validate((v) => { this.$refs.form.validate((v) => {
if (v) { if (v) {
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<Form ref="form" :model="entity" :rules="rules" :label-width="90"> <Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row> <Row>
<Col :span="12"> <Col :span="12">
<FormItem :label="l('title')" prop="title" style="width:95%"> <FormItem :label="l('title')" prop="title" style="width: 95%">
<Input v-model="entity.title"></Input> <Input v-model="entity.title"></Input>
</FormItem> </FormItem>
</Col> </Col>
...@@ -22,7 +22,13 @@ ...@@ -22,7 +22,13 @@
</Col> </Col>
<Col span="24"> <Col span="24">
<FormItem :label="l('content')" prop="content "> <FormItem :label="l('content')" prop="content ">
<Input v-model="entity.content" type="textarea" :rows="5"></Input> <i-quill
v-model="entity.content"
:height="300"
border
v-paste="handleImg"
/>
<!-- <Input v-model="entity.content" type="textarea" :rows="5"></Input> -->
</FormItem> </FormItem>
</Col> </Col>
</Row> </Row>
...@@ -34,8 +40,12 @@ ...@@ -34,8 +40,12 @@
</template> </template>
<script> <script>
import Api from "./api"; import Api from "./api";
import iQuill from "@/components/quill";
export default { export default {
name: "Edit", name: "Edit",
components: {
iQuill,
},
data() { data() {
return { return {
entity: {}, entity: {},
...@@ -90,6 +100,27 @@ export default { ...@@ -90,6 +100,27 @@ export default {
} }
}); });
}, },
handleImg(e) {
console.warn(e);
let file = null;
if (
e.clipboardData &&
e.clipboardData.items[0] &&
e.clipboardData.items[0].type &&
e.clipboardData.items[0].type.indexOf("image") > -1
) {
//这里就是判断是否有粘贴进来的文件且文件为图片格式
file = e.clipboardData.items[0].getAsFile();
let reader = new FileReader();
reader.readAsDataURL(file);
setTimeout(() => {
var img = '<img src="' + reader.result + '" alt=""/>';
this.entity.content += img;
}, 1000);
// new R
}
},
handleClose() { handleClose() {
this.$emit("on-close"); this.$emit("on-close");
}, },
......
...@@ -13,7 +13,10 @@ ...@@ -13,7 +13,10 @@
<template slot="easySearch"> <template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline> <Form ref="formInline" :model="easySearch" inline>
<FormItem prop="keys"> <FormItem prop="keys">
<Input placeholder="请输入关键字名称" v-model="easySearch.keys.value" /> <Input
placeholder="请输入关键字名称"
v-model="easySearch.keys.value"
/>
</FormItem> </FormItem>
<FormItem> <FormItem>
<Button type="primary" @click="search">查询</Button> <Button type="primary" @click="search">查询</Button>
...@@ -23,20 +26,20 @@ ...@@ -23,20 +26,20 @@
<!-- <template slot="buttons"> <!-- <template slot="buttons">
<Button type="primary" @click="add">新增</Button> <Button type="primary" @click="add">新增</Button>
</template>--> </template>-->
<template slot="card" slot-scope="{row}"> <template slot="card" slot-scope="{ row }">
<div class="card_body"> <div class="card_body">
<Row class="title_i"> <Row class="title_i">
<Col :span="21">工艺名称:{{row.title}}</Col> <Col :span="21">工艺名称:{{ row.title }}</Col>
<Col :span="3" class="btn_click"> <Col :span="3" class="btn_click">
<!-- <a @click="edit(row.id)"> <!-- <a @click="edit(row.id)">
<Icon type="ios-create" @click="edit(row.id)" /> <Icon type="ios-create" @click="edit(row.id)" />
</a>--> </a>-->
<!-- <a @click="view(row.id)"> <a @click="view(row.id)">
<Icon type="ios-paper" /> <Icon type="ios-paper" />
</a> </a>
<a @click="remove(row.id)"> <!-- <a @click="remove(row.id)">
<Icon type="ios-trash" /> <Icon type="ios-trash" />
</a>--> </a> -->
</Col> </Col>
</Row> </Row>
<div class="down_text"> <div class="down_text">
...@@ -48,12 +51,16 @@ ...@@ -48,12 +51,16 @@
</div> </div>
</Col> </Col>
<Col span="18"> <Col span="18">
<p>创建时间:{{row.creationTime}}</p> <p>创建时间:{{ row.creationTime }}</p>
<p>创建人:{{row.creator}}</p> <p>创建人:{{ row.creator }}</p>
<p>内容:{{row.content}}</p> <p>内容:{{ row.content }}</p>
<p> <p>
状态: 状态:
<state code="processCase.status" :value="row.status+''" type="text" /> <state
code="processCase.status"
:value="row.status + ''"
type="text"
/>
</p> </p>
</Col> </Col>
</Row> </Row>
...@@ -78,12 +85,12 @@ ...@@ -78,12 +85,12 @@
</div>--> </div>-->
</template> </template>
</DataGrid> </DataGrid>
<!-- <Modal v-model="modal" :title="title" width="800" footer-hide :mask-closable="false"> <Modal v-model="modal" :title="title" width="800" footer-hide :mask-closable="false">
<component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" /> <component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" />
</Modal> </Modal>
<Modal v-model="deletelModal" title="删除" @on-ok="removeOk" @on-cancel="cancel" :mask-closable="false"> <!-- <Modal v-model="deletelModal" title="删除" @on-ok="removeOk" @on-cancel="cancel" :mask-closable="false">
<p>确定删除?</p> <p>确定删除?</p>
</Modal>--> </Modal> -->
</div> </div>
</template> </template>
<script> <script>
......
...@@ -89,11 +89,12 @@ ...@@ -89,11 +89,12 @@
} }
.img_box { .img_box {
text-align: center; text-align: center;
margin: auto;
line-height: 350px; line-height: 350px;
font-size: 32px; font-size: 32px;
width: 750px; width: 750px;
height: 350px; height: 350px;
background: #ddd; // background: #ddd;
margin: 10px 0 0 170px; margin: 10px 0 0 170px;
} }
} }
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -540,7 +540,7 @@ export default { ...@@ -540,7 +540,7 @@ export default {
}, },
//新增保存或修改保存 //新增保存或修改保存
save() { save() {
this.cur.groupId = this.eid; this.cur.projectId = this.eid;
if (this.cur.userId === undefined) { if (this.cur.userId === undefined) {
this.$Message.error("请选择人员"); this.$Message.error("请选择人员");
return; return;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<Icon type="ios-arrow-forward" size="24" /> <Icon type="ios-arrow-forward" size="24" />
</a> </a>
</div> </div>
<Content class="content" :class="!showMenu?'con_bord':''" > <Content class="content" :class="!showMenu?'con_bord':''">
<DataGrid :columns="columns" ref="grid" :action="action" :conditions="easySearch" :lazy="true"> <DataGrid :columns="columns" ref="grid" :action="action" :conditions="easySearch" :lazy="true">
<template slot="easySearch"> <template slot="easySearch">
<Form ref="formInline" inline> <Form ref="formInline" inline>
...@@ -175,6 +175,8 @@ export default { ...@@ -175,6 +175,8 @@ export default {
return h('DateRange', { return h('DateRange', {
props: { props: {
value: params.row, value: params.row,
start: 'plansToStartDate',
end: 'plansToEndTime',
} }
}) })
} }
......
This diff is collapsed.
<template> <template>
<div class="pdf-detail"> <div class="pdf-detail">
<div class="pdf-out"> <div class="pdf-out">
<Button type="primary" @click="$u.outPdf('.cerioficate-pdf-detail','合格证')">导出</Button> <Button
type="primary"
@click="$u.outPdf('.cerioficate-pdf-detail', '合格证')"
>导出</Button
>
</div> </div>
<div class="cerioficate-pdf-detail"> <div class="cerioficate-pdf-detail">
<!-- <div class="pdf-img"> <!-- <div class="pdf-img">
<img src="@/assets/images/log_pdf.png" alt="图片未加载" /> <img src="@/assets/images/log_pdf.png" alt="图片未加载" />
</div> --> </div> -->
<div class="pdf-title">产品合格证</div> <div class="pdf-title">产品合格证</div>
<div class="bian-hao">产品合格证编号:{{results.serialNumber}}</div> <div class="bian-hao">产品合格证编号:{{ results.serialNumber }}</div>
<div class="body-d body-table"> <div class="body-d body-table">
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">用户单位</Col> <Col :span="4" class="col-border">用户单位</Col>
<Col :span="20" class="col-border">{{results.userUnit}}</Col> <Col :span="20" class="col-border">{{ results.userUnit }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">任务依据</Col> <Col :span="4" class="col-border">任务依据</Col>
<Col :span="20" class="col-border">{{results.taskBased}}</Col> <Col :span="20" class="col-border">{{ results.taskBased }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品名称</Col> <Col :span="4" class="col-border">产品名称</Col>
<Col :span="8" class="col-border">{{results.productName}}</Col> <Col :span="8" class="col-border">{{ results.productName }}</Col>
<Col :span="4" class="col-border">产品状态</Col> <!-- <Col :span="4" class="col-border">产品状态</Col>
<Col :span="8" class="col-border">{{results.productStatus}}</Col> <Col :span="8" class="col-border">
<state code="plan.order.status" :value="results.productStatus"
/></Col> -->
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品编号</Col> <Col :span="4" class="col-border">产品编号</Col>
<Col :span="8" class="col-border">{{results.productSerialNumber}}</Col> <Col :span="8" class="col-border">{{
results.productSerialNumber
}}</Col>
<Col :span="4" class="col-border">原材料批号</Col> <Col :span="4" class="col-border">原材料批号</Col>
<Col :span="8" class="col-border">{{results.materialSerialNumber}}</Col> <Col :span="8" class="col-border">{{
results.materialSerialNumber
}}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">原材料编号</Col> <Col :span="4" class="col-border">原材料编号</Col>
<Col :span="8" class="col-border">{{results.materialCode}}</Col> <Col :span="8" class="col-border">{{ results.materialCode }}</Col>
<Col :span="4" class="col-border">产品代号(图号)</Col> <Col :span="4" class="col-border">产品代号(图号)</Col>
<Col :span="8" class="col-border">{{results.productCode}}</Col> <Col :span="8" class="col-border">{{ results.productCode }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">原材料合格证编号</Col> <Col :span="4" class="col-border">原材料合格证编号</Col>
<Col :span="8" class="col-border">{{results.materialCertificationNumber}}</Col> <Col :span="8" class="col-border">{{
results.materialCertificationNumber
}}</Col>
<Col :span="4" class="col-border">数量</Col> <Col :span="4" class="col-border">数量</Col>
<Col :span="8" class="col-border">{{results.productQuantity}}</Col> <Col :span="8" class="col-border">{{ results.productQuantity }}</Col>
</Row> </Row>
<!-- <Row class="row-border right-border"> <!-- <Row class="row-border right-border">
<Col :span="4" class="col-border">增材制造批次号</Col> <Col :span="4" class="col-border">增材制造批次号</Col>
...@@ -57,66 +69,82 @@ ...@@ -57,66 +69,82 @@
<Col :span="5" class="col-border">结论</Col> <Col :span="5" class="col-border">结论</Col>
<Col :span="5" class="col-border">备注</Col> <Col :span="5" class="col-border">备注</Col>
</Row> </Row>
<Row class="row-border right-border" v-for="(item,index) in results.items" :key="index"> <Row
<Col :span="1" class="col-border">{{index+1}}</Col> class="row-border right-border"
<Col :span="5" class="col-border">{{item.name}}</Col> v-for="(item, index) in results.items"
<Col :span="5" class="col-border">{{item.require}}</Col> :key="index"
<Col :span="3" class="col-border">{{item.result}}</Col> >
<Col :span="5" class="col-border">{{item.conclusion}}</Col> <Col :span="1" class="col-border">{{ index + 1 }}</Col>
<Col :span="5" class="col-border">{{item.remark}}</Col> <Col :span="5" class="col-border">{{ item.name }}</Col>
<Col :span="5" class="col-border">{{ item.require }}</Col>
<Col :span="3" class="col-border">{{ item.result }}</Col>
<Col :span="5" class="col-border">{{ item.conclusion }}</Col>
<Col :span="5" class="col-border">{{ item.remark }}</Col>
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">结论</Col> <Col :span="4" class="col-border">结论</Col>
<Col :span="20" class="col-border">{{results.conclusion}}</Col> <Col :span="20" class="col-border">{{ results.conclusion }}</Col>
</Row> </Row>
<Row class="row-border right-border bottom-border"> <Row class="row-border right-border bottom-border">
<Col :span="4" class="col-border">检验员 / 时间</Col> <Col :span="4" class="col-border">检验员 / 时间</Col>
<Col :span="8" class="col-border">{{results.examUser}} {{results.examDate}}</Col> <Col :span="8" class="col-border">
<User :value="parseInt(results.examUser)" />&nbsp;
{{ results.examDate }}</Col
>
<Col :span="4" class="col-border">批准人 / 时间</Col> <Col :span="4" class="col-border">批准人 / 时间</Col>
<Col :span="8" class="col-border">{{results.approveUser}} {{results.approveDate}}</Col> <Col :span="8" class="col-border"
><User :value="parseInt(results.approveUser)" />&nbsp;
{{ results.approveDate }}</Col
>
</Row> </Row>
</div> </div>
<div style="margin-top:20px;">本合格证无检验专用章无效 (版本:MB.FFGGHJKLL)</div> <div style="margin-top: 20px">
<Row style="margin-top:5px;"> 本合格证无检验专用章无效 (版本:MB.FFGGHJKLL)
</div>
<Row style="margin-top: 5px">
<Col :span="10">地址:</Col> <Col :span="10">地址:</Col>
<Col :span="8" >电话:</Col> <Col :span="8">电话:</Col>
<Col :span="6" >邮编:</Col> <Col :span="6">邮编:</Col>
</Row> </Row>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import Api from '../../certificate/api' import Api from "../../certificate/api";
export default { export default {
name: '', name: "",
props: { props: {
eid: Number eid: Number,
}, },
data() { data() {
return { return {
results: [] results: [],
} };
},
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
}, },
created() { created() {
// this.loadss() // this.loadss()
}, },
methods: { methods: {
load(v) { load(v) {
Api.getCertificate({ id: v }).then((r) => { Api.getCertificate({ id: v }).then((r) => {
this.results = r.result this.results = r.result;
console.log(r.result) console.log(r.result);
}) });
} },
}, },
watch: { watch: {
eid(v) { eid(v) {
if (v != null) { if (v != null) {
this.load(v) this.load(v);
} }
} },
} },
} };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
......
...@@ -14,8 +14,10 @@ ...@@ -14,8 +14,10 @@
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品名称</Col> <Col :span="4" class="col-border">产品名称</Col>
<Col :span="8" class="col-border">{{ results.productName }}</Col> <Col :span="8" class="col-border">{{ results.productName }}</Col>
<Col :span="4" class="col-border">产品状态</Col> <!-- <Col :span="4" class="col-border">产品状态</Col>
<Col :span="8" class="col-border">{{ results.productStatus }}</Col> <Col :span="8" class="col-border">
<state code="plan.order.status" :value="results.productStatus"
/></Col> -->
</Row> </Row>
<Row class="row-border right-border"> <Row class="row-border right-border">
<Col :span="4" class="col-border">产品编号</Col> <Col :span="4" class="col-border">产品编号</Col>
...@@ -75,11 +77,13 @@ ...@@ -75,11 +77,13 @@
<Row class="row-border right-border bottom-border"> <Row class="row-border right-border bottom-border">
<Col :span="4" class="col-border">检验员 / 时间</Col> <Col :span="4" class="col-border">检验员 / 时间</Col>
<Col :span="8" class="col-border" <Col :span="8" class="col-border"
>{{ results.examUser }} {{ results.examDate }}</Col ><User :value="parseInt(results.examUser)" />&nbsp;
{{ results.examDate }}</Col
> >
<Col :span="4" class="col-border">批准人 / 时间</Col> <Col :span="4" class="col-border">批准人 / 时间</Col>
<Col :span="8" class="col-border" <Col :span="8" class="col-border"
>{{ results.approveUser }} {{ results.approveDate }}</Col ><User :value="parseInt(results.approveUser)" />&nbsp;
{{ results.approveDate }}</Col
> >
</Row> </Row>
</div> </div>
...@@ -105,6 +109,10 @@ export default { ...@@ -105,6 +109,10 @@ export default {
data() { data() {
return {}; return {};
}, },
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
methods: { methods: {
l(key) { l(key) {
key = "waitOpened" + "." + key; key = "waitOpened" + "." + key;
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
/> />
</FormItem> </FormItem>
</Col> </Col>
<Col :span="6"> <!-- <Col :span="6">
<FormItem :label="l('productStatus')" prop="productStatus"> <FormItem :label="l('productStatus')" prop="productStatus">
<Dictionary <Dictionary
disabled disabled
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
:key="entity.productStatus" :key="entity.productStatus"
></Dictionary> ></Dictionary>
</FormItem> </FormItem>
</Col> </Col> -->
<Col :span="6"> <Col :span="6">
<FormItem :label="l('materialCode')" prop="materialCode"> <FormItem :label="l('materialCode')" prop="materialCode">
<Input v-model="entity.materialCode"></Input> <Input v-model="entity.materialCode"></Input>
...@@ -154,7 +154,7 @@ ...@@ -154,7 +154,7 @@
</Col> </Col>
<Col :span="6"> <Col :span="6">
<FormItem :label="l('examUser')" prop="examUser"> <FormItem :label="l('examUser')" prop="examUser">
<UserSelect ref="examUser" v-model="entity.examUser" /> <UserSelect ref="examUser" v-model="entity.examUser" :roleTitle='roleTitle'/>
</FormItem> </FormItem>
</Col> </Col>
<!-- <Col :span="6"> <!-- <Col :span="6">
...@@ -196,6 +196,7 @@ export default { ...@@ -196,6 +196,7 @@ export default {
data() { data() {
return { return {
isId: "", isId: "",
roleTitle:"检验",
examineModal: false, examineModal: false,
submit: true, submit: true,
isDisabled: false, isDisabled: false,
...@@ -213,6 +214,7 @@ export default { ...@@ -213,6 +214,7 @@ export default {
id: 0, id: 0,
status: 0, status: 0,
items: [], items: [],
userUnit:''
}, },
rules: { rules: {
// userUnit: [{ required: true, message: "必填", trigger: "change" }], // userUnit: [{ required: true, message: "必填", trigger: "change" }],
......
...@@ -94,14 +94,14 @@ export default { ...@@ -94,14 +94,14 @@ export default {
easy: true, easy: true,
high: true high: true
}, },
{ // {
key: "status", // key: "status",
title: this.l("status"), // title: this.l("status"),
align: "left", // align: "left",
easy: true, // easy: true,
high: true, // high: true,
code: "plan.order.status" // code: "plan.order.status"
}, // },
{ {
title: "操作", title: "操作",
key: "action", key: "action",
......
import Api from '@/plugins/request' import Api from '@/plugins/request'
export default { export default {
index:`${resourceUrl}/materialpowder/itempaged`, index:`${material}/material/paged`,
paged(params){ paged(params){
return Api.post(`${resourceUrl}/materialpowder/itempaged`,params); return Api.post(`${material}/material/paged`,params);
}, },
get(params){ get(params){
return Api.get(`${resourceUrl}/materialpowder/get`,params); return Api.get(`${material}/materialpowder/get`,params);
}, },
create(params){ create(params){
return Api.post(`${resourceUrl}/materialpowder/create`,params); return Api.post(`${material}/materialpowder/create`,params);
}, },
update(params){ update(params){
return Api.post(`${resourceUrl}/materialpowder/update`,params); return Api.post(`${material}/materialpowder/update`,params);
}, },
//删除: //删除:
delete(params) { delete(params) {
return Api.delete(`${resourceUrl}/materialpowder/delete`,{params:params}); return Api.delete(`${material}/materialpowder/delete`,{params:params});
}, },
} }
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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