调令调整修改

master
xy 2 years ago
parent c57b4da371
commit a25ed0b559

@ -32,7 +32,6 @@
top: 50%; top: 50%;
right: 20px; right: 20px;
transform: translateY(-50%); transform: translateY(-50%);
width: 46px;
" "
type="primary" type="primary"
size="small" size="small"
@ -51,14 +50,14 @@
<tbody> <tbody>
<tr> <tr>
<td> <td>
<div> <div style="padding: 0 20px;">
<div v-if="data.receive_time">{{ $moment(data.receive_time).format("YYYY-MM-DD HH:mm") }}</div> <div v-if="data.receive_time">{{ $moment(data.receive_time).format("YYYY-MM-DD HH:mm") }}</div>
<div v-if="data.notice_open_time">{{ $moment(data.notice_open_time).format("YYYY-MM-DD HH:mm") }}</div> <div v-if="data.notice_open_time">{{ $moment(data.notice_open_time).format("YYYY-MM-DD HH:mm") }}</div>
<div v-if="data.open_time">{{ $moment(data.open_time).format("YYYY-MM-DD HH:mm") }}</div> <div v-if="data.open_time">{{ $moment(data.open_time).format("YYYY-MM-DD HH:mm") }}</div>
<div v-if="data.notice_close_time">{{ $moment(data.notice_close_time).format("YYYY-MM-DD HH:mm") }}</div> <div v-if="data.notice_close_time">{{ $moment(data.notice_close_time).format("YYYY-MM-DD HH:mm") }}</div>
<div v-if="data.close_time">{{ $moment(data.close_time).format("YYYY-MM-DD HH:mm") }}</div> <div v-if="data.close_time">{{ $moment(data.close_time).format("YYYY-MM-DD HH:mm") }}</div>
<div v-if="data.id_logs_transfer_id_relation && data.id_logs_transfer_id_relation.length > 0"> <div v-if="data.id_logs_transfer_id_relation && data.id_logs_transfer_id_relation.length > 0">
<p v-for="item in data.id_logs_transfer_id_relation">{{ item.content }}</p> <p v-for="item in data.id_logs_transfer_id_relation" style="text-align: left;margin-top: 10px;">{{ $moment(item.created_at).format("YYYY-MM-DD HH:mm") }}{{ item.content }}</p>
</div> </div>
<!-- <div>--> <!-- <div>-->
<!-- {{--> <!-- {{-->
@ -104,6 +103,9 @@
<p> <p>
执行状态{{ typeMap.get(data.status) }} 执行状态{{ typeMap.get(data.status) }}
</p> </p>
<p>
开启数量{{ data.kaiqishuliang }} / {{ data.equipment_id_equipments_id_relation.bengzhashuliang }}
</p>
<div style="display:flex;"> <div style="display:flex;">
<p>调令反馈</p> <p>调令反馈</p>

@ -29,6 +29,7 @@
<transition-group name="scroll-list" ref="listItems"> <transition-group name="scroll-list" ref="listItems">
<div v-for="(item, index) in scrollList" :key="item.id" ref="listItem" class="list-item" :class="`list-item-${timeStatusFormat(item)}`"> <div v-for="(item, index) in scrollList" :key="item.id" ref="listItem" class="list-item" :class="`list-item-${timeStatusFormat(item)}`">
<div class="list-item__status"> <div class="list-item__status">
<template>
<template v-if="timeStatusFormat(item) === 2"> <template v-if="timeStatusFormat(item) === 2">
<div class="list-item__status-2"></div> <div class="list-item__status-2"></div>
<p>存在运行中指令</p> <p>存在运行中指令</p>
@ -44,9 +45,16 @@
<template v-else> <template v-else>
</template> </template>
</template>
<template v-if="item.id_logs_transfer_id_relation.length > 0">
<span style="color: #d15d52;">调整</span>
</template>
</div> </div>
<div class="list-item__name"> <div class="list-item__name">
{{ item.equipment_id_equipments_id_relation ? item.equipment_id_equipments_id_relation.name : '' }} <p>{{ item.equipment_id_equipments_id_relation ? item.equipment_id_equipments_id_relation.name : '' }}</p>
<div style="display: flex;align-items: center;">
<div class="list-item__number" v-for="(i,index) in Number(item.equipment_id_equipments_id_relation.bengzhashuliang || 0)" :style="index >= item.kaiqishuliang ? 'background: red;' : ''"></div>
</div>
</div> </div>
<div class="list-item__content"> <div class="list-item__content">
<el-tooltip class="item" effect="dark" :content="item.content" placement="top-start"> <el-tooltip class="item" effect="dark" :content="item.content" placement="top-start">
@ -430,6 +438,14 @@ $list-height: calc(#{$container-height} - 5.33rem);
font-size: 1.34rem; font-size: 1.34rem;
flex: 1; flex: 1;
} }
&__number {
width: 0.7rem;
height: 0.7rem;
border-radius: 100%;
background: $primaryColor;
margin-right: 0.3rem;
margin-top: 0.2rem;
}
&__content { &__content {
flex-basis: 14%; flex-basis: 14%;
word-break: keep-all; word-break: keep-all;

@ -29,9 +29,6 @@ export default {
} }
}, },
methods: { methods: {
dataPick (e) {
console.log(e)
},
async getTomorrow (day) { async getTomorrow (day) {
this.tomorrows = ( this.tomorrows = (
await index({ await index({

@ -29,6 +29,7 @@
<transition-group name="list-item" ref="listItems"> <transition-group name="list-item" ref="listItems">
<div v-for="(item, index) in scrollList" :key="item.id" ref="listItem" class="list-item" :class="`list-item-${timeStatusFormat(item)}`"> <div v-for="(item, index) in scrollList" :key="item.id" ref="listItem" class="list-item" :class="`list-item-${timeStatusFormat(item)}`">
<div class="list-item__status"> <div class="list-item__status">
<template>
<template v-if="timeStatusFormat(item) === 2"> <template v-if="timeStatusFormat(item) === 2">
<div class="list-item__status-2"></div> <div class="list-item__status-2"></div>
<p>存在运行中指令</p> <p>存在运行中指令</p>
@ -44,9 +45,16 @@
<template v-else> <template v-else>
</template> </template>
</template>
<template v-if="item.id_logs_transfer_id_relation.length > 0">
<span style="color: #d15d52;">调整</span>
</template>
</div> </div>
<div class="list-item__name"> <div class="list-item__name">
{{ item.equipment_id_equipments_id_relation ? item.equipment_id_equipments_id_relation.name : '' }} <p>{{ item.equipment_id_equipments_id_relation ? item.equipment_id_equipments_id_relation.name : '' }}</p>
<div style="display: flex;align-items: center;">
<div class="list-item__number" v-for="(i,index) in Number(item.equipment_id_equipments_id_relation.bengzhashuliang || 0)" :style="index >= item.kaiqishuliang ? 'background: red;' : ''"></div>
</div>
</div> </div>
<div class="list-item__content"> <div class="list-item__content">
<el-tooltip class="item" effect="dark" :content="item.content" placement="top-start"> <el-tooltip class="item" effect="dark" :content="item.content" placement="top-start">
@ -450,6 +458,14 @@ $list-height: calc(#{$container-height} - 5.33rem);
font-size: 1.34rem; font-size: 1.34rem;
flex: 1; flex: 1;
} }
&__number {
width: 0.7rem;
height: 0.7rem;
border-radius: 100%;
background: $primaryColor;
margin-right: 0.3rem;
margin-top: 0.2rem;
}
&__content { &__content {
flex-basis: 14%; flex-basis: 14%;
word-break: keep-all; word-break: keep-all;

@ -44,6 +44,14 @@
</div> </div>
</div> </div>
</template> </template>
<template #kaiqishuliang>
<div class="xy-table-item">
<div class="xy-table-item-label">调整数量 </div>
<div class="xy-table-item-content">
<el-input-number :min="0" :max="openNumberMax" controls-position="right" style="width: 300px" v-model="form.kaiqishuliang"></el-input-number>
</div>
</div>
</template>
</xy-dialog> </xy-dialog>
</div> </div>
</template> </template>
@ -75,10 +83,12 @@ export default {
isShow: false, isShow: false,
id: "", id: "",
type: "", type: "",
detail: {},
form: { form: {
content: "", content: "",
tiaozhengleixing: "", tiaozhengleixing: "",
kaiqishuliang: 0
}, },
rules: {}, rules: {},
originalData: "", originalData: "",
@ -137,9 +147,17 @@ export default {
const res = await show({ id: this.id, table_name: "transfers" }); const res = await show({ id: this.id, table_name: "transfers" });
this.$integrateData(this.form, res); this.$integrateData(this.form, res);
this.originalData = JSON.stringify(this.form); this.originalData = JSON.stringify(this.form);
this.detail = res;
}, },
submit() { submit() {
const leixingLabel = this.tiaozhengleixings.find(i => i.id === this.form.tiaozhengleixing)?.value
if (leixingLabel === '关闭') {
this.form.kaiqishuliang = Number(this.detail?.kaiqishuliang) - this.form.kaiqishuliang
} else if (leixingLabel === '新开') {
this.form.kaiqishuliang = Number(this.detail?.kaiqishuliang) + this.form.kaiqishuliang
} else {
}
let updateData = JSON.stringify(this.form); let updateData = JSON.stringify(this.form);
if (this.type === "add") { if (this.type === "add") {
if (this.form.hasOwnProperty("id")) { if (this.form.hasOwnProperty("id")) {
@ -164,12 +182,17 @@ export default {
let nowData = JSON.parse(updateData) let nowData = JSON.parse(updateData)
let kv = new Map([ let kv = new Map([
['content','调令内容'], ['content','调令内容'],
['tiaozhengleixing','调整状态'] ['tiaozhengleixing','调整状态'],
['kaiqishuliang','调整数量'],
]) ])
let text = "" let text = ""
for (let key in nowData) { for (let key in nowData) {
if (key === 'kaiqishuliang') {
text += nowData[key] === originalData[key] ? "" : (`${kv.get(key)}】从"${originalData[key] || "0"}"更改为"${nowData[key]}"` || " ")
} else {
text += nowData[key] === originalData[key] ? "" : (`${kv.get(key)}】从"${this.tiaozhengleixings.find(i => i.id === originalData[key])?.value || originalData[key] || " "}"更改为"${this.tiaozhengleixings.find(i => i.id === nowData[key])?.value || nowData[key]}"` || " ") text += nowData[key] === originalData[key] ? "" : (`${kv.get(key)}】从"${this.tiaozhengleixings.find(i => i.id === originalData[key])?.value || originalData[key] || " "}"更改为"${this.tiaozhengleixings.find(i => i.id === nowData[key])?.value || nowData[key]}"` || " ")
} }
}
save({ save({
table_name: "logs", table_name: "logs",
transfer_id: this.getId(), transfer_id: this.getId(),
@ -185,6 +208,19 @@ export default {
}); });
}, },
}, },
computed: {
openNumberMax () {
const leixingLabel = this.tiaozhengleixings.find(i => i.id === this.form.tiaozhengleixing)?.value
console.log(leixingLabel)
if (leixingLabel === '关闭') {
return Number(this.detail?.kaiqishuliang) || 0
} else if (leixingLabel === '新开') {
return (Number(this.detail?.equipment_id_equipments_id_relation?.bengzhashuliang) - Number(this.detail?.kaiqishuliang)) || 0
} else {
return Number(this.detail?.equipment_id_equipments_id_relation?.bengzhashuliang) || 0
}
}
},
watch: { watch: {
isShow(val) { isShow(val) {
if (val) { if (val) {

@ -52,18 +52,18 @@
</el-checkbox-group> </el-checkbox-group>
</div> </div>
<div class="select-item"> <!-- <div class="select-item">-->
<div class="select-item__title">选择类别</div> <!-- <div class="select-item__title">选择类别</div>-->
<el-radio-group <!-- <el-radio-group-->
size="small" <!-- size="small"-->
v-model="ability" <!-- v-model="ability"-->
@input="(e) => data.forEach((i) => (i.leibie = e))" <!-- @input="(e) => data.forEach((i) => (i.leibie = e))"-->
> <!-- >-->
<el-radio-button v-for="item in abilities" :label="item.value">{{ <!-- <el-radio-button v-for="item in abilities" :label="item.value">{{-->
item.key <!-- item.key-->
}}</el-radio-button> <!-- }}</el-radio-button>-->
</el-radio-group> <!-- </el-radio-group>-->
</div> <!-- </div>-->
<div class="select-item"> <div class="select-item">
<Button type="primary" style="margin-left: 10px" @click="clear" <Button type="primary" style="margin-left: 10px" @click="clear"

@ -827,12 +827,12 @@ export default {
linkOb.customFn = (row) => { linkOb.customFn = (row) => {
if (i.edit_input === "file") { if (i.edit_input === "file") {
return ( return (
<a <img
download={row[link_with_name]?.original_name} style="height: 40px;"
href={row[link_with_name]?.url} alt={row[link_with_name]?.original_name}
src={row[link_with_name]?.url}
> >
{row[link_with_name]?.original_name} </img>
</a>
); );
} else { } else {
return ( return (
@ -852,7 +852,7 @@ export default {
return ( return (
<div style="display: flex;flex-direction: column;"> <div style="display: flex;flex-direction: column;">
{row[link_with_name]?.map((o) => ( {row[link_with_name]?.map((o) => (
<a>{o?.original_name || o?.name}</a> <img alt={o.original_name} src={o?.url}></img>
))} ))}
</div> </div>
); );

Loading…
Cancel
Save