Commit ed1b43bc authored by renjintao's avatar renjintao

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

parents 901606f3 dacc7af0
<template>
<ul class="actions">
<li class="item" v-for="(li, i) in items" @click="detail(li)">
<div class="actions">
<div
:class="li.confirm ? 'confirm' : 'item'"
v-for="(li, i) in items"
@click="detail(li)"
>
<span v-if="mode == 'text'" class="text" v-text="li.label"></span>
<Tooltip v-if="mode == 'icon'" :content="li.label"
><Icon :type="li.icon"
......@@ -9,8 +13,8 @@
<Icon type="li.icon" />
<span class="text" v-text="li.label"></span>
</div>
</li>
</ul>
</div>
</div>
</template>
<script>
......@@ -29,9 +33,14 @@ export default {
return [
{ label: "复制", icon: "md-copy", vclick: "" },
{ label: "新增", icon: "md-add", vclick: "" },
{ label: "删除", icon: "md-trash", vclick: "" },
{ label: "删除", icon: "md-trash", vclick: "", confirm: true },
{ label: "移动", icon: "md-move", vclick: "" },
{ label: "派发", icon: "ios-alarm", vclick: "" },
{
label: "派发",
icon: "ios-alarm",
vclick: "",
confirm: "确认要进行派发吗?",
},
];
},
},
......@@ -77,17 +86,32 @@ export default {
</script>
<style lang="less">
@size:20px;//按钮大小
@distince:5px;//按钮间距
@color:black;//主色
@color-hover:#106ffe;//主悬浮色
@color-confirm:red;// 二次确认色
.actions {
ul {
li {
float: left;
display: inline-block;
.item,
.confirm {
display: inline-block;
list-style: none;
width: 20px;
height: 20px;
width: @size;
height: @size;
text-align: center;
margin-left: 5px;
color: red;
margin-left:@distince;
cursor: pointer;
border: 1px dotted @color;
line-height: @size;
}
.item:hover {
border: 1px solid @color-hover;
color: @color-hover;
}
.confirm:hover {
border: 1px solid @color-confirm;
color: @color-confirm;
}
}
</style>
\ No newline at end of file
......@@ -21,7 +21,7 @@
</Form>
<Row>
<Col span="24" style="text-align:right;height:60px;line-height:60px">
<Button type="primary" @click="handleSubmit">确定</Button>
<Button type="primary" @click="handleSubmit" v-noClick>确定</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</Col>
</Row>
......
......@@ -138,7 +138,7 @@
</Col>
</Row>
<FormItem class="click-btn">
<Button type="primary" @click="handleSubmit">确定</Button>
<Button type="primary" @click="handleSubmit" v-noClick>确定</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
......
......@@ -21,7 +21,7 @@
</Form>
<Row>
<Col span="24" style="text-align:right;height:60px;line-height:60px">
<Button type="primary" @click="handleSubmit">确定</Button>
<Button type="primary" @click="handleSubmit" v-noClick>确定</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</Col>
</Row>
......
......@@ -138,7 +138,7 @@
</Col>
</Row>
<FormItem class="click-btn">
<Button type="primary" @click="handleSubmit">确定</Button>
<Button type="primary" @click="handleSubmit" v-noClick>确定</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
......
<template>
<div>
<div class="back-href">
<a @click="viewClose">
<Icon type="ios-undo-outline" size="24" />返回计划管理
</a>
</div>
<div class="scheduling">
<div class="aps-l">
<Row class="row-p">
......@@ -96,11 +102,12 @@
</FormItem>
<FormItem>
<Button style="margin-left: 8px" @click="closeOk">取消</Button>
<Button type="primary" @click="lowerHair">下发</Button>
<Button type="primary" @click="lowerHair" v-noClick>下发</Button>
</FormItem>
</Form>
</div>
</div>
</div>
</template>
<script>
import Api from "./api";
......@@ -126,7 +133,7 @@ export default {
showSet: false,
// userName: ""
},
user:'',
user: "",
showSet: false,
// listGroup: [
// {
......@@ -169,6 +176,9 @@ export default {
this.orderlist(0);
},
methods: {
viewClose() {
this.$router.push("/aps/plan");
},
// 过滤条件
changeStatus(name) {
this.status = name;
......@@ -338,6 +348,9 @@ export default {
</script>
<style lang="less" scoped>
@import "../../../assets/css/custom.less";
.back-href {
height: 35px;
}
.addclass {
border-color: rgba(38, 128, 235, 0.2) !important;
.title-i {
......
......@@ -254,7 +254,7 @@
</Row>
<FormItem>
<Button style="margin-right: 8px" @click="cancle">取消</Button>
<Button type="primary" @click="sendSheBei">派工</Button>
<Button type="primary" @click="sendSheBei" v-noClick>派工</Button>
</FormItem>
</Form>
</Drawer>
......
......@@ -42,7 +42,6 @@ export default {
name: "addAccessory",
data() {
return {
disabled: false,
deletelModal: false,
curId: 0,
editIndex: -1,
......
......@@ -43,7 +43,7 @@ export default {
name: "detailAccessory",
data() {
return {
disabled: false,
deletelModal: false,
statuList: this.$store.getters.dictionaryByKey("accessory.status") || [],
statuList1: this.$store.getters.dictionaryByKey("outstore.status") || [],
......
......@@ -2,99 +2,104 @@
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col span="12">
<FormItem :label="l('DistributeMainRouting')" prop="DistributeMainRouting">
<UserSelect ref="userSelected" v-model="entity.DistributeMainRouting" />
<FormItem
:label="l('DistributeMainRouting')"
prop="DistributeMainRouting"
>
<UserSelect
ref="userSelected"
v-model="entity.DistributeMainRouting"
/>
</FormItem>
</Col>
<Col span="12">
<FormItem label="完成时间" style="width:100%" prop="MainRoutingFinishDate">
<FormItem
label="完成时间"
style="width: 100%"
prop="MainRoutingFinishDate"
>
<DatePicker
v-model="entity.MainRoutingFinishDate"
type="datetime"
placeholder="请选择日期"
style="width:240px"
style="width: 240px"
@on-change="getTimeMainRFD"
></DatePicker>
</FormItem>
</Col>
</Row>
<Row >
&nbsp;
</Row>
<Row >
&nbsp;
</Row>
<Row> &nbsp; </Row>
<Row> &nbsp; </Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button type="primary" @click="handleSubmit" v-noClick>保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
import Api from "./api";
export default {
name: 'Dispatch',
name: "Dispatch",
props: {
ids: Array
ids: Array,
},
data() {
return {
disabled: false,
entity: {
DistributeMainRouting: null,
MainRoutingFinishDate: ''
MainRoutingFinishDate: "",
},
rules: {
DistributeMainRouting: [
{
required: true,
message: '请选择人员',
trigger: 'change',
type: 'number'
}
message: "请选择人员",
trigger: "change",
type: "number",
},
],
MainRoutingFinishDate: [
{
required: true,
message: '请选择时间',
trigger: 'change'
}
]
}
}
message: "请选择时间",
trigger: "change",
},
],
},
};
},
methods: {
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.entity.ids = this.ids
this.entity.ids = this.ids;
Api.routingdistribute(this.entity)
.then((r) => {
if (r.success) {
this.$Message.success('工艺派发成功')
this.$emit('on-ok')
this.$Message.success("工艺派发成功");
this.$emit("on-ok");
} else {
this.$Message.error('工艺派发失败')
this.$Message.error("工艺派发失败");
}
this.$emit('on-ok')
this.$emit("on-ok");
})
.catch((err) => {
this.$Message.error('工艺派发失败')
})
this.$Message.error("工艺派发失败");
});
}
})
});
},
handleClose() {
this.$emit('on-close')
this.$emit("on-close");
},
l(key) {
key = 'mes_order' + '.' + key
return this.$t(key)
key = "mes_order" + "." + key;
return this.$t(key);
},
getTimeMainRFD(value) {
this.entity.MainRoutingFinishDate = value
}
this.entity.MainRoutingFinishDate = value;
},
},
watch: {}
}
watch: {},
};
</script>
<template>
<div>
<div class="back-href">
<a @click="viewClose">
<Icon type="ios-undo-outline" size="24" />返回计划管理
</a>
</div>
<div class="scheduling">
<div class="aps-l">
<Row class="row-p">
......@@ -156,6 +163,7 @@
></Slider>
</Modal>
</div>
</div>
</template>
<script>
import Set from "./set";
......@@ -197,6 +205,9 @@ export default {
this.orderlist(0);
},
methods: {
viewClose() {
this.$router.push("/aps/plan");
},
// 排产池过滤条件
changeStatus(a) {
this.status = a;
......
......@@ -75,7 +75,7 @@
</Row>
<Row>
<FormItem label=" ">
<Button type="primary" @click="pwdOk">保存</Button>
<Button type="primary" @click="pwdOk" v-noClick>保存</Button>
</FormItem>
</Row>
</Form>
......
......@@ -40,7 +40,7 @@
<Col span="12">
<FormItem label="分解数量" style="width:100%" prop="splitQuantity">
<InputNumber :min="0" v-model="orderForm.splitQuantity" style="width:180px"></InputNumber>
<Button type="primary" @click="addSplitOrder">确定</Button>
<Button type="primary" @click="addSplitOrder" v-noClick>确定</Button>
</FormItem>
</Col>
</Row>
......
......@@ -38,7 +38,7 @@
<Col span="15">&nbsp;</Col>
<Col span="9">
<Button @click="handleClose" class="mr20">取消</Button>
<Button type="primary" @click="suerUp()">保存</Button>
<Button type="primary" @click="suerUp()" v-noClick>保存</Button>
</Col>
</Row>
</Form>
......
......@@ -68,7 +68,7 @@
<Col span="16">&nbsp;</Col>
<Col span="8">
<Button @click="cancel" class="ml20">取消</Button>
<Button type="primary" @click="setNumOk">设置</Button>
<Button type="primary" @click="setNumOk" v-noClick>设置</Button>
</Col>
</Row>
</Form>
......
......@@ -35,7 +35,7 @@
</template>
<template slot-scope="{ row, index }" slot="action">
<div v-if="editIndex === index">
<Button @click="handleSave(index)">保存</Button>
<Button @click="handleSave(index)" v-noClick>保存</Button>
<Button @click="editIndex = -1">取消</Button>
</div>
<div v-else>
......@@ -67,7 +67,7 @@
</template>
<template slot-scope="{ row, index }" slot="action">
<div v-if="editIndex02 === index">
<Button @click="handleSave02(index)">保存</Button>
<Button @click="handleSave02(index)" v-noClick>保存</Button>
<Button @click="editIndex02 = -1">取消</Button>
</div>
<div v-else>
......@@ -99,7 +99,7 @@
</template>
<template slot-scope="{ row, index }" slot="action">
<div v-if="editIndex03 === index">
<Button @click="handleSave03(index)">保存</Button>
<Button @click="handleSave03(index)" v-noClick>保存</Button>
<Button @click="handlecancel(row, index)">取消</Button>
</div>
<div v-else>
......
......@@ -75,7 +75,7 @@
</template>
<template slot-scope="{ row, index }" slot="action">
<div v-if="editIndex02 === index">
<Button @click="handleSave02(index)">保存</Button>
<Button @click="handleSave02(index)" v-noClick>保存</Button>
<Button @click="editIndex02 = -1">取消</Button>
</div>
<div v-else>
......
......@@ -194,7 +194,7 @@
</div>
<div slot="footer">
<Button type="text" size="large" @click="saveCancelModel">取消</Button>
<Button type="primary" size="large" @click="modalOk">保存</Button>
<Button type="primary" size="large" @click="modalOk" v-noClick>保存</Button>
<Checkbox v-show="submitShow" v-model="checked" class="ml10" label="送审">送审</Checkbox>
</div>
<changeSendReview ref="changeSendReview" ></changeSendReview>
......
......@@ -260,7 +260,7 @@
<template v-if="createtype==1">
<Button type="text" size="large" @click="saveCancelModel">取消</Button>
<Checkbox v-model="issendAudit" label="送审">送审</Checkbox>
<Button type="primary" size="large" @click="modalOk">保存</Button>
<Button type="primary" size="large" @click="modalOk" v-noClick>保存</Button>
<Button type="primary" size="large" @click="nextStepandSave">下一步</Button>
</template>
<template v-else-if="createtype==2">
......
......@@ -101,9 +101,7 @@
></Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled"
>保存</Button
>
<Button type="primary" @click="handleSubmit" v-noClick>保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
......@@ -114,7 +112,6 @@ export default {
name: "Add",
data() {
return {
disabled: false,
entity: {
// creationTime: null,
// creatorUserId: null,
......@@ -152,10 +149,8 @@ export default {
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true;
Api.create(this.entity)
.then((r) => {
this.disabled = false;
if (r.success) {
this.$Message.success("保存成功");
this.$emit("on-ok");
......@@ -164,7 +159,6 @@ export default {
}
})
.catch((err) => {
this.disabled = false;
this.$Message.error("保存失败");
console.warn(err);
});
......
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col :span="12"><FormItem :label="l('creationTime')" prop="creationTime"> <DatePicker type="date" v-model="entity.creationTime"></DatePicker>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('creatorUserId')" prop="creatorUserId"> <InputNumber v-model="entity.creatorUserId"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('lastModificationTime')" prop="lastModificationTime"> <DatePicker type="date" v-model="entity.lastModificationTime"></DatePicker>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId"> <InputNumber v-model="entity.lastModifierUserId"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('isDeleted')" prop="isDeleted"> <InputNumber v-model="entity.isDeleted"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('deletionTime')" prop="deletionTime"> <DatePicker type="date" v-model="entity.deletionTime"></DatePicker>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('deleterUserId')" prop="deleterUserId"> <InputNumber v-model="entity.deleterUserId"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('projectId')" prop="projectId"> <InputNumber v-model="entity.projectId"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('upId')" prop="upId"> <InputNumber v-model="entity.upId"></InputNumber>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('title')" prop="title"> <Input v-model="entity.title"> </Input>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('status')" prop="status"> <Dictionary code="mes.project_plan.Status" v-model="entity.status"></Dictionary>
</FormItem></Col>
<Col :span="24"><FormItem :label="l('note')" prop="note"> <Input v-model="entity.note" type="textarea" :rows="5"></Input>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('startDate')" prop="startDate"> <DatePicker type="date" v-model="entity.startDate"></DatePicker>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('endDate')" prop="endDate"> <DatePicker type="date" v-model="entity.endDate"></DatePicker>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('type')" prop="type"> <Dictionary code="mes.project_plan.Type" v-model="entity.type"></Dictionary>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('attachment')" prop="attachment"> <Input v-model="entity.attachment"> </Input>
</FormItem></Col>
<Col :span="12"><FormItem :label="l('executor')" prop="executor"> <Input v-model="entity.executor"> </Input>
</FormItem></Col>
<Col :span="12"
><FormItem :label="l('creationTime')" prop="creationTime">
<DatePicker
type="date"
v-model="entity.creationTime"
></DatePicker> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('creatorUserId')" prop="creatorUserId">
<InputNumber v-model="entity.creatorUserId"></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem
:label="l('lastModificationTime')"
prop="lastModificationTime"
>
<DatePicker
type="date"
v-model="entity.lastModificationTime"
></DatePicker> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('lastModifierUserId')" prop="lastModifierUserId">
<InputNumber
v-model="entity.lastModifierUserId"
></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('isDeleted')" prop="isDeleted">
<InputNumber v-model="entity.isDeleted"></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('deletionTime')" prop="deletionTime">
<DatePicker
type="date"
v-model="entity.deletionTime"
></DatePicker> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('deleterUserId')" prop="deleterUserId">
<InputNumber v-model="entity.deleterUserId"></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('projectId')" prop="projectId">
<InputNumber v-model="entity.projectId"></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('upId')" prop="upId">
<InputNumber v-model="entity.upId"></InputNumber> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('title')" prop="title">
<Input v-model="entity.title"> </Input> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('status')" prop="status">
<Dictionary
code="mes.project_plan.Status"
v-model="entity.status"
></Dictionary> </FormItem
></Col>
<Col :span="24"
><FormItem :label="l('note')" prop="note">
<Input
v-model="entity.note"
type="textarea"
:rows="5"
></Input> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('startDate')" prop="startDate">
<DatePicker
type="date"
v-model="entity.startDate"
></DatePicker> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('endDate')" prop="endDate">
<DatePicker
type="date"
v-model="entity.endDate"
></DatePicker> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('type')" prop="type">
<Dictionary
code="mes.project_plan.Type"
v-model="entity.type"
></Dictionary> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('attachment')" prop="attachment">
<Input v-model="entity.attachment"> </Input> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('executor')" prop="executor">
<Input v-model="entity.executor"> </Input> </FormItem
></Col>
</Row>
<FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled">保存</Button>
<Button type="primary" @click="handleSubmit" v-noClick>保存</Button>
<Button @click="handleClose" class="ml20">取消</Button>
</FormItem>
</Form>
</template>
<script>
import Api from './api'
export default {
name: 'Edit',
import Api from "./api";
export default {
name: "Edit",
data() {
return {
disabled: false,
entity: {
},
entity: {},
rules: {
name: [{ required: true, message: '必填', trigger: 'blur' }]
}
}
name: [{ required: true, message: "必填", trigger: "blur" }],
},
};
},
props: {
eid: Number
eid: Number,
},
mounted() {
if (this.eid > 0) {
......@@ -66,44 +128,43 @@
},
methods: {
load(v) {
Api.get({ id: v }).then(r => {
Api.get({ id: v }).then((r) => {
this.entity = r.result;
})
});
},
handleSubmit() {
this.$refs.form.validate((v) => {
if (v) {
this.disabled = true;
Api.update(this.entity).then((r) => {
this.disabled = false;
Api.update(this.entity)
.then((r) => {
if (r.success) {
this.$Message.success('保存成功')
this.$emit('on-ok')
this.$Message.success("保存成功");
this.$emit("on-ok");
} else {
this.$Message.error('保存失败')
this.$Message.error("保存失败");
}
}).catch(err => {
this.disabled = false;
this.$Message.error('保存失败')
console.warn(err)
})
.catch((err) => {
this.$Message.error("保存失败");
console.warn(err);
});
}
})
});
},
handleClose() {
this.$emit('on-close')
this.$emit("on-close");
},
l(key) {
key = "project_plan" + "." + key;
return this.$t(key)
}
return this.$t(key);
},
},
watch: {
eid(v) {
if (v != 0) {
this.load(v);
}
}
}
}
},
},
};
</script>
\ No newline at end of file
......@@ -79,18 +79,19 @@ export default {
key: "action",
width: 150,
align: "center",
// render:(h,params)=>{
// return h("Actions"
// ,{
// attrs:{
// row:params,
// },
// on:{
// 'on-click':()=>this.rowclick
// }
// }
// )
// }
render:(h,params)=>{
return h("Actions"
,{
attrs:{
row:params,
},
on:{
'on-click':this.rowclick
}
}
)
}
// render: (h, params) => {
// return h("div", { class: "action" }, [
// h(
......
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col span="8">
<Col span="8" class="projct-img">
<FormItem :label="l('picture')" prop="picture">
<inputFile
class="tphoto"
......@@ -137,7 +137,7 @@ export default {
name: "Add",
data() {
return {
disabled: false,
imgName: "",
avatorPath: "",
entity: {
......@@ -196,7 +196,7 @@ export default {
}
Api.create(this.entity)
.then((r) => {
this.disabled = false;
if (r.success) {
this.$Message.success("保存成功");
this.$emit("on-ok");
......@@ -205,7 +205,7 @@ export default {
}
})
.catch((err) => {
this.disabled = false;
this.$Message.error("保存失败");
console.warn(err);
});
......@@ -246,3 +246,18 @@ export default {
},
};
</script>
<style lang="less">
.projct-img {
.img-touxiang {
width: 300px;
height: 300px;
margin: 0px 10px 15px 20px;
overflow: hidden;
border-radius: 5px;
.img1 {
width: 100%;
height: 100%;
}
}
}
</style>
\ No newline at end of file
......@@ -33,8 +33,12 @@
<Filed :span="12" :name="l('type')">
<state code="project.main.type" :value="entity.type" />
</Filed>
<Filed :span="12" :name="l('picture')">{{ entity.picture }}</Filed>
<Filed :span="12" :name="l('attachment')">{{ entity.attachment }}</Filed>
<Filed :span="12" :name="l('picture')"
><a @click="imgClick(entity.picture)">查看图片</a></Filed
>
<Filed :span="12" :name="l('attachment')">
<files ref="refFile" :parms="parms" fileFormat :showList="false" />
</Filed>
<Filed :span="24" :name="l('note')">{{ entity.note }}</Filed>
</Row>
</div>
......@@ -50,6 +54,12 @@ export default {
name: [{ required: true, message: "必填", trigger: "blur" }],
code: [{ required: true, message: "必填", trigger: "blur" }],
},
parms: {
app: "material",
eid: null,
name: "",
field: "",
},
};
},
props: ["eid"],
......@@ -57,11 +67,17 @@ export default {
this.load(this.eid);
},
methods: {
imgClick(img) {
window.open(fileUrlDown + img, "_blank");
},
load(v) {
Api.get({ id: v }).then((r) => {
this.entity = r.result;
this.entity.type = r.result.type+'';
this.entity.state = r.result.state+'';
this.entity.type = r.result.type + "";
this.entity.state = r.result.state + "";
this.parms.eid = r.result.attachment;
this.$emit("on-load");
});
},
......
<template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row>
<Col span="8">
<Col span="8" class="projct-img">
<FormItem :label="l('picture')" prop="picture">
<inputFile
class="tphoto"
......@@ -174,3 +174,6 @@ export default {
},
};
</script>
<style lang="less">
</style>
\ No newline at end of file
......@@ -7,6 +7,7 @@
:conditions="easySearch"
:type="typeInfo"
:span="6"
:format="formatFun"
><template slot="easySearch"
><Form ref="formInline" :model="easySearch" inline
><FormItem prop="keys"
......@@ -34,11 +35,16 @@
></Button>
</template>
<template slot="card" slot-scope="{ row }">
<div class="body-card">
<Card
class="body-card"
:style="row._checked ? 'border:1px solid #2680eb;' : ''"
>
<Row class="title-i">
<Col :span="10" class="title-l">
<Checkbox v-model="row._checked"></Checkbox>
<Ellipsis :text="row.title" :length="18" tooltip />
</Col>
<Col :span="10" class="btn-click">
<!-- <Ellipsis :text="row.code" :length="18" tooltip/> -->
</Col>
......@@ -104,10 +110,10 @@
</div>
</Col>
</Row>
</div>
</Card>
</template>
</DataGrid>
<Modal v-model="modal" :title="title" width="1200" footer-hide>
<Modal v-model="modal" :title="title" width="1200" footer-hide :mask-closable="false">
<component :is="detail" :eid="curId" @on-close="cancel" @on-ok="ok" />
</Modal>
</div>
......@@ -131,6 +137,7 @@ export default {
easySearch: {
keys: { op: "title", value: null },
},
// single: false,
modal: false,
title: "新增",
detail: null,
......@@ -338,10 +345,17 @@ export default {
await store.dispatch("loadDictionary"); // 加载数据字典
},
methods: {
//格式化原始数据
formatFun(data) {
data.map((e) => {
return (e._checked = false);
});
return data;
},
tdStyle(val) {
//动态根据状态值加载状态值对应的颜色
let temDic = this.$store.getters.dictionaryByKey("taskList.status");
let temColor = "#666";
//动态根据状态值加载状态值对应的颜色 #19c919
let temDic = this.$store.getters.dictionaryByKey("project.main.state");
let temColor = "#19c919";
temDic.forEach((data) => {
if (Number(data.code) == val) {
temColor = data.color;
......@@ -425,21 +439,25 @@ export default {
</script>
<style lang="less">
.project {
.ivu-card-body {
padding: 0 !important;
}
.body-card {
border: 1px solid rgba(38, 128, 235, 1);
// border: 1px solid rgba(38, 128, 235, 1);
margin: 5px 0;
border-radius: 4px;
height: 280px;
// height: 280px;
.title-i {
border-bottom: 1px solid #2680eb;
// border-bottom: 1px solid #2680eb;
// padding: 0 10px;
height: 35px;
line-height: 35px;
background: rgba(38, 128, 235, 0.2);
color: #2680eb;
.title-l {
padding-left: 10px;
.title-l {
display: -webkit-inline-box;
}
.btn-click {
text-align: right;
......@@ -477,22 +495,18 @@ export default {
}
.row-down {
padding: 14px;
// height: 110px;
.img-i {
height: 170px;
width: 170px;
// img {
// width: 90px;
// height: 90px;
// }
}
.c {
padding-left: 14px;
height: 170px;
div {
height: 30px;
height: 33px;
line-height: 33px;
}
}
.shuo-ming {
......@@ -501,8 +515,8 @@ export default {
}
}
.bottom-b {
line-height: 40px;
padding-left: 14px;
// line-height: 40px;
padding: 0 0 6px 14px;
.a-icon {
text-align: right;
}
......
......@@ -23,7 +23,10 @@
</FormItem>
</Col>
<Col :span="6">
<FormItem :label="l('productSerialNumber')" prop="productSerialNumber">
<FormItem
:label="l('productSerialNumber')"
prop="productSerialNumber"
>
<ProductNumberSelect
v-model="entity.productSerialNumber"
:eid="eid"
......@@ -43,50 +46,92 @@
</FormItem>
</Col>
<Col :span="6">
<FormItem :label="l('materialSerialNumber')" prop="materialSerialNumber">
<FormItem
:label="l('materialSerialNumber')"
prop="materialSerialNumber"
>
<Input v-model="entity.materialSerialNumber"></Input>
</FormItem>
</Col>
<Col :span="6">
<FormItem :label="l('materialCertificationNumber')" prop="materialCertificationNumber">
<FormItem
:label="l('materialCertificationNumber')"
prop="materialCertificationNumber"
>
<Input v-model="entity.materialCertificationNumber"></Input>
</FormItem>
</Col>
<Col :span="6">
<FormItem :label="l('productQuantity')" prop="productQuantity">
<Input v-model="entity.productQuantity" :disabled="isDisabled"></Input>
<Input
v-model="entity.productQuantity"
:disabled="isDisabled"
></Input>
</FormItem>
</Col>
<Col :span="24" style="margin:20px 0;">
<div style="margin-left:10px;font-weight:bold">检验内容</div>
<Col :span="24" style="margin: 20px 0">
<div style="margin-left: 10px; font-weight: bold">检验内容</div>
<div class="jy-boder"></div>
</Col>
<Col :span="24" style="padding:20px 0 0px 10px;margin-bottom:10px;" class="table-solt">
<Table border :columns="columns" :data="checkList" class="tableCommon">
<Col
:span="24"
style="padding: 20px 0 0px 10px; margin-bottom: 10px"
class="table-solt"
>
<Table
border
:columns="columns"
:data="checkList"
class="tableCommon"
>
<template slot-scope="{ row, index }" slot="name">
<Input v-model="row.name" placeholder="请输入" @on-blur="setRow(row,index)" />
<Input
v-model="row.name"
placeholder="请输入"
@on-blur="setRow(row, index)"
/>
</template>
<template slot-scope="{ row, index }" slot="require">
<Input v-model="row.require" placeholder="请输入" @on-blur="setRow(row,index)" />
<Input
v-model="row.require"
placeholder="请输入"
@on-blur="setRow(row, index)"
/>
</template>
<template slot-scope="{ row, index }" slot="result">
<Input v-model="row.result" placeholder="请输入" @on-blur="setRow(row,index)" />
<Input
v-model="row.result"
placeholder="请输入"
@on-blur="setRow(row, index)"
/>
</template>
<template slot-scope="{ row, index }" slot="pash">
<inputFile v-model="row.file" :files="true" :parms="getParams(row.fileId)" />
<inputFile
v-model="row.file"
:files="true"
:parms="getParams(row.fileId)"
/>
</template>
<template slot-scope="{ row, index }" slot="conclusion" class="dd">
<Dictionary code="qms.certificate.conclusion" v-model="row.conclusion" type="select"></Dictionary>
<Dictionary
code="qms.certificate.conclusion"
v-model="row.conclusion"
type="select"
></Dictionary>
</template>
<template slot-scope="{ row, index }" slot="remark">
<Input v-model="row.remark" placeholder="请输入" @on-blur="setRow(row,index)" />
<Input
v-model="row.remark"
placeholder="请输入"
@on-blur="setRow(row, index)"
/>
</template>
<template slot-scope="{ row, index }" slot="action">
<a @click="remove(index)" style="color:#FF7A8B">删除</a>
<a @click="remove(index)" style="color: #ff7a8b">删除</a>
</template>
</Table>
</Col>
<Col :span="24" style="margin-bottom:20px;">
<Col :span="24" style="margin-bottom: 20px">
<Button type="primary" long @click="addNew" class="mt10">添加</Button>
</Col>
<Col :span="6">
......@@ -117,7 +162,13 @@
<Checkbox v-model="submit" class="ml20">是否送审</Checkbox>
</FormItem>
</Form>
<Modal v-model="examineModal" title="合格证送审" footer-hide fullscreen :mask-closable="false">
<Modal
v-model="examineModal"
title="合格证送审"
footer-hide
fullscreen
:mask-closable="false"
>
<Examine :isId="isId" ref="examine"></Examine>
</Modal>
</div>
......@@ -213,14 +264,15 @@ export default {
created() {
this.addNew();
this.isDisabled = true;
this.load(this.eid);
},
methods: {
load(v) {
Api.getCertificate({ id: v }).then((r) => {
this.entity = r.result;
let productSerialNumber = [];
productSerialNumber = r.result.productSerialNumber.split(",");
r.result.productSerialNumber = productSerialNumber;
this.entity = r.result;
this.entity.productSerialNumber = productSerialNumber.map(Number);
this.checkList = r.result.items;
console.log(this.entity);
});
......@@ -234,7 +286,8 @@ export default {
},
handleSubmit() {
this.entity.items = this.checkList;
this.entity.items.forEach((c) => {
this.entity.items.forEach((c, index) => {
c.index = index;
return delete c.id;
});
this.$refs.form.validate((v) => {
......
......@@ -211,7 +211,7 @@ export default {
disabled: false,
entity: {
id: 0,
status: "",
status: 0,
items: [],
},
rules: {
......@@ -225,6 +225,7 @@ export default {
columns: [
{
title: "序号",
// key: "index",
type: "index",
width: 80,
align: "center",
......@@ -308,7 +309,8 @@ export default {
let item = [];
item = this.checkList;
if (item) {
item.forEach((c) => {
item.forEach((c, index) => {
c.index = index;
return delete c.id;
});
}
......
<template>
<Layout class="full">
<Layout class="full">
<Sider hide-trigger v-if="showMenu" class="menu_side" width="300">
<StoreTree @on-hide="onHide" @on-select="productSearch" />
</Sider>
......@@ -10,12 +10,27 @@
</a>
</div>
<Content class="content" :class="!showMenu?'con_bord':''">
<DataGrid :columns="columns" ref="grid" :action="action" :conditions="easySearch" :batch="true" :format="checkData" @all-change="allchange" @on-selection-change="onSelect" exportTitle="制造资源">
<Content class="content" :class="!showMenu ? 'con_bord' : ''">
<DataGrid
:columns="columns"
ref="grid"
:action="action"
:conditions="easySearch"
:batch="true"
:format="checkData"
@all-change="allchange"
@on-selection-change="onSelect"
exportTitle="制造资源"
>
<template slot="easySearch">
<Form ref="formInline" :model="easySearch" inline>
<FormItem prop="keys">
<Input clearable placeholder="请输入资源名称/资源编码/编码" v-model.trim="easySearch.keys.value" v-width="260" />
<Input
clearable
placeholder="请输入资源名称/资源编码/编码"
v-model.trim="easySearch.keys.value"
v-width="260"
/>
</FormItem>
<FormItem>
<Button type="primary" @click="search">查询</Button>
......@@ -28,21 +43,55 @@
<template slot="buttons">
<Button type="primary" @click="add">入库</Button>
<!-- <Button type="primary" @click="returnModel=true">归还</Button> -->
<Badge :count="this.$store.state.count" overflow-count="99" style="margin-right:5px;" :offset='postion'>
<Badge
:count="this.$store.state.count"
overflow-count="99"
style="margin-right: 5px"
:offset="postion"
>
<Button icon="md-cart" @click="showCart">借出车</Button>
</Badge>
<Button @click="openModalIm">导入</Button>
</template>
<template slot="batch">
<Button type="primary" class="mr10 ml10" @click="addCart">加入借出车</Button>
<Button type="primary" class="mr10 ml10" @click="addCart"
>加入借出车</Button
>
</template>
</DataGrid>
<Modal v-model="modal" :title="title" width="1200" footer-hide :fullscreen="fscreeen">
<component :is="detail" :eid="curId" :rootName="rootName" :storeTitle="storeTitle" :materialType="materialType" :codeRuleType="codeRuleType" :storeId="storeId" :mcode="mCode" :cartList="this.$u.clone(this.$store.state.cart)" @on-close="cancel" @on-ok="ok" @substr="substr" />
<Modal
v-model="modal"
:title="title"
width="1200"
footer-hide
:fullscreen="fscreeen"
>
<component
:is="detail"
:eid="curId"
:rootName="rootName"
:storeTitle="storeTitle"
:materialType="materialType"
:codeRuleType="codeRuleType"
:storeId="storeId"
:mcode="mCode"
:cartList="this.$u.clone(this.$store.state.cart)"
@on-close="cancel"
@on-ok="ok"
@substr="substr"
/>
</Modal>
<ImportExcel ref="importExcel" @on-get-data="getData" modalTitle="制造资源" :columns="columns" :open="ModalIm" @on-cancel="ModalImCancel" @on-ok="ok" />
<ImportExcel
ref="importExcel"
@on-get-data="getData"
modalTitle="制造资源"
:columns="columns"
:open="ModalIm"
@on-cancel="ModalImCancel"
@on-ok="ok"
/>
</Content>
</Layout>
</Layout>
</template>
<script>
......@@ -79,7 +128,8 @@ export default {
storeTitle: "",
materialType: "",
mCode: "",
columns: [{
columns: [
{
key: "selection",
type: "selection",
width: 50,
......@@ -101,8 +151,13 @@ export default {
width: 60,
render: (h, params) => {
return h(
"div", {
"Tooltip",
{
class: "action",
props: {
content: "请加入借出车",
placement: "top",
},
},
[
h(params.row.numberAvailable > 0 ? "op" : "", {
......@@ -257,18 +312,22 @@ export default {
hide: false,
render: (h, params) => {
return h(
"div", {
"div",
{
class: "action",
},
[
h(
"op", {
"op",
{
attrs: {
oprate: "delete",
title: "删除",
},
class: params.row.totalNum === params.row.numberAvailable ?
"remove" : "disable",
class:
params.row.totalNum === params.row.numberAvailable
? "remove"
: "disable",
on: {
click: () => this.remove(params.row),
},
......@@ -276,7 +335,8 @@ export default {
"删除"
),
h(
"op", {
"op",
{
attrs: {
oprate: "detail",
title: "查看日志",
......@@ -317,10 +377,7 @@ export default {
})();
};
},
async fetch({
store,
params
}) {
async fetch({ store, params }) {
await store.dispatch("loadDictionary"); // 加载数据字典
},
computed: {},
......
......@@ -116,12 +116,11 @@ export default {
let obj = this.list[i];
for (let j = 0; j < val.length; j++) {
if (obj.id == val[j]) {
code.push(obj.code);
code.push(obj.name);
type.push(obj.codeRuleType);
}
}
}
this.entity.materialTypeName = code.join(",");
this.entity.codeRuleType = type.join(",");
},
......
......@@ -57,9 +57,7 @@ export default {
materialType: [],
rules: {
name: [{ required: true, message: "必填", trigger: "blur" }],
materialType: [
{ required: true, message: "必填", trigger: "blur", },
],
materialType: [{ required: true, message: "必填", trigger: "blur" }],
},
};
},
......@@ -101,7 +99,7 @@ export default {
let obj = this.list[i];
for (let j = 0; j < val.length; j++) {
if (obj.id == val[j]) {
code.push(obj.code);
code.push(obj.name);
type.push(obj.codeRuleType);
}
}
......
......@@ -94,15 +94,15 @@ export default {
import: true,
},
{
key: "materialType",
title: this.l("materialType"),
align: "center",
easy: true,
high: true,
code: "mes_xingchi_resource.material.materialReType",
width: 100,
},
// {
// key: "materialType",
// title: this.l("materialType"),
// align: "center",
// easy: true,
// high: true,
// code: "mes_xingchi_resource.material.materialReType",
// width: 100,
// },
{
key: "materialNumber",
title: this.l("materialNumber"),
......
......@@ -461,7 +461,7 @@ export default {
}
})
.catch((err) => {
this.disabled = false;
this.$Message.error("保存失败");
console.warn(err);
});
......
......@@ -2,7 +2,7 @@
<fm-making-form ref="makingform" style="height: 880px;" :data="jsonData" generate-json>
<template slot="action">
<!-- 自定义操作区域插槽 -->
<el-button type="text" icon="el-icon-upload">保存</el-button>
<el-button type="text" icon="el-icon-upload" v-noClick>保存</el-button>
</template>
</fm-making-form>
</template>
......
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