新页面

master
sunzehua 1 year ago
parent 5a41bb62f6
commit fb6ae794b8

@ -980,3 +980,19 @@ export function QuervBookingOrderList (parameter) {
data: parameter
})
}
export function GetRuleOpinionLog (parameter) {
return axios({
url: '/BookingValueAdded/GetRuleOpinionLog',
method: 'post',
data: parameter
})
}
export function SubmitRule0pinion (parameter) {
return axios({
url: '/BookingValueAdded/SubmitRuleOpinion',
method: 'post',
data: parameter
})
}

@ -12,7 +12,7 @@
<div class="title">
<span class="left"></span>
<span class="right"></span>
<span class="tip">已显示数据列<b>拖动</b>调整显示顺序 <template v-if="maxNum != 0">, 30</template></span>
<span class="tip">已显示数据列<b>拖动</b>调整显示顺序</span>
</div>
<div class="label-box">
<draggable v-model="fromLabel" animation="300" @start="onStart" @end="emitFromChange">

@ -9,7 +9,7 @@
<i class="iconfont icon-xiazaishibai Warning" v-else-if="rule.errorType === 'Warning'"></i>
<i class="iconfont icon-shibai Error" v-else-if="rule.errorType === 'Error'"></i>
<span>{{ rule.resultName }}</span>
<i @click="handleOpenRule(rule)" class="icon-shujushangchuan-shixin iconfont rule-icon"></i>
<i @click="handleOpenRule(rule)" class="icon-shujushangchuan-shixin iconfont rule-icon"></i>
</div>
</div>
<div class="tip" v-else-if="excuteRulesType === 'success'">
@ -49,7 +49,7 @@
</span>
</div>
<div class="content">
<a-spin :spinning="btnLoading" >
<a-spin :spinning="btnLoading">
<div class="DataTime">
<div>
<span>
@ -330,41 +330,47 @@
:maskClosable="false"
cancelText="取消"
okText="提交"
@ok="handleModelSubmit"
@cancel="handleModelCancel">
<a-form :form="ruleForm" :label-col="{ span: 5 }" :wrapper-col="{ span: 12 }" @submit="handleModelSubmit">
<a-form-item label="提示信息">
脚尖提醒脚尖提醒脚尖提醒脚尖提醒脚尖提醒
</a-form-item>
<a-form-item label="意见类型">
<a-select
v-decorator="[
'gender',
{ rules: [{ required: true, message: '请选择意见类型!' }] },
]"
placeholder="请选择意见类型"
style="width: 200px;margin-right: 10px;"
>
<a-select-option value="male">
male
</a-select-option>
<a-select-option value="female">
female
</a-select-option>
</a-select>
<span>当前状态:新增</span>
</a-form-item>
<a-form-item label="意见内容">
<a-textarea
v-decorator="['note', { rules: [{ required: true, message: '请输入意见内容' }] }]"
/>
</a-form-item>
<a-form-item label="意见日志">
<div>2023-04-01 10:05:00</div>
<div>2023-04-01 10:05:00</div>
<div>2023-04-01 10:05:00</div>
</a-form-item>
</a-form>
@ok="handleSubimtRole"
@cancel="handleCancel">
<a-spin :spinning="spinningRule">
<a-form :form="ruleForm" :label-col="{ span: 5 }" :wrapper-col="{ span: 19 }" @submit="handleSubimtRole">
<a-form-item label="规则代码">
{{ roleData.ruleName }}
</a-form-item>
<a-form-item label="规则提示">
{{ roleData.ruleNotice }}
</a-form-item>
<a-form-item label="意见类型">
<a-select
v-decorator="[
'opinionType',
{ rules: [{ required: true, message: '请选择意见类型!' }] },
]"
placeholder="请选择意见类型"
style="width: 200px;margin-right: 10px;">
<a-select-option value="MODIFY">
修改
</a-select-option>
<a-select-option value="ADD">
新增
</a-select-option>
<a-select-option value="DELETE">
删除
</a-select-option>
</a-select>
<span>当前状态:{{ ruleLog.length>0?ruleLog[0].statusName:'' }}</span>
</a-form-item>
<a-form-item label="意见内容">
<a-textarea v-decorator="['opinionContent', { rules: [{ required: true, message: '' }] }]" />
</a-form-item>
<a-form-item label="意见日志">
<div style="display: flex;justify-content: space-between;" v-for="(item,index) in ruleLog" :key="index">
<span > {{ item.genDate }}</span>
{{ item.statusName }}修改意见
</div>
</a-form-item>
</a-form>
</a-spin>>
</a-modal>
</div>
</template>
@ -378,7 +384,9 @@ import {
SaveServiceItem,
BookingOrderGetGoodsStatusList,
BookingOrderSaveGoodsStatus,
refreshSailingDate
refreshSailingDate,
GetRuleOpinionLog,
SubmitRule0pinion
} from '@/api/modular/main/BookingLedger'
export default {
@ -408,6 +416,8 @@ export default {
delayTime: 500,
roleFlag: false,
spinning: false,
ruleLog: [],
spinningRule: false,
StatusVisibleFlag: true,
id: this.id,
ruleForm: this.$form.createForm(this),
@ -434,6 +444,7 @@ export default {
GoodsStatusVisible: false,
GoodsStatusEditData: {},
StatusVisibleForm: this.$form.createForm(this),
roleData: {},
labelCol: {
xs: { span: 24 },
sm: { span: 8 }
@ -499,8 +510,31 @@ export default {
}
},
methods: {
handleOpenRule() {
handleCancel() {
this.roleFlag = false
},
handleOpenRule(rule) {
rule.ruleNotice = rule.resultName
this.roleFlag = true
this.roleData = rule
this.spinningRule = true
this.ruleLog = []
this.ruleForm.resetFields()
const data = {
'ruleName': this.roleData.ruleName,
'ruleNotice': this.roleData.ruleNotice
}
GetRuleOpinionLog(data).then(res => {
if (res.data.succ) {
this.spinningRule = false
if (res.data.rows) {
this.ruleLog = res.data.rows
}
} else {
this.$message.error(res.data.msg)
this.spinningRule = false
}
})
},
handleRefsh() {
this.btnLoading = true
@ -514,6 +548,30 @@ export default {
}
})
},
handleSubimtRole(e) {
e.preventDefault();
this.ruleForm.validateFields((err, values) => {
if (!err) {
this.roleFlag = true
const data = {
'ruleName': this.roleData.ruleName,
'ruleNotice': this.roleData.ruleNotice,
'opinionType': values.opinionType,
'opinionContent': values.opinionContent
}
SubmitRule0pinion(data).then(res => {
if (res.data.succ) {
this.$message.success('提交成功')
this.roleFlag = false
this.roleFlag = false
} else {
this.$message.error(res.data.msg)
this.roleFlag = false
}
})
}
});
},
handleTime(time) {
let Rdata = '-'
if (time && time.split(':').length == 3) {
@ -524,7 +582,7 @@ export default {
init() {
this.bookingAttachType = this.$options.filters['dictData']('booking_attach_type')
this.bookingServiceItem = this.$options.filters['dictData']('booking_service_item')
BookingOrderGetGoodsStatusList({ bookingId: this.id }).then(res => {
BookingOrderGetGoodsStatusList({ bookingId: this.id }).then(res => {
this.booGoodsStatusItem = res.data
if (this.$route.query.isCopy) {
this.booGoodsStatusItem.forEach(item => {
@ -944,13 +1002,15 @@ export default {
.active1 {
border: 1px solid #13c2c2 !important;
}
.rule-icon{
.rule-icon {
color: dodgerblue;
margin-left: 10px;
cursor: pointer;
position: relative;
z-index: 99;
}
.btn-refsh {
border: none;
font-size: 14px;

@ -114,11 +114,11 @@
ref="goodsTable"
:details="editDetails"
:rules="tableRules"
:inSave="inSave"
isParent="child"
pType="secOrder"
isParent="parent"
@changeDetail="changeDetailFun"
></goodsTable>
@changeTotal="changeTotalFun"
@changeCtnInfo="changeCtnInfoFun">
</goodsTable>
</div>
</div>
<div id="tab-content2" class="tab-content" v-show="mainOrderActiveKey === '2'">
@ -476,6 +476,21 @@ export default {
}, 2000)
}
},
changeTotalFun(data) {
const { type, val } = data
if (type === 'totalKgs') {
this.editDetails.kgs = val || this.editDetails.kgs
} else if (type === 'totalPkgs') {
this.editDetails.pkgs = val || this.editDetails.pkgs
} else if (type === 'totalCbm') {
this.editDetails.cbm = val || this.editDetails.cbm
}
},
changeCtnInfoFun({ type, val }) {
if (type === 'kindpkgs') {
this.editDetails.kindpkgs = val
}
},
checkFromInit() {
Object.keys(this.basicRules).map((item, index) => {
@ -578,7 +593,7 @@ export default {
var o2keys = Object.keys(object2)
if (o2keys.length !== o1keys.length) return false
for (let i = 0; i <= o1keys.length - 1; i++) {
let key = o1keys[i]
const key = o1keys[i]
if (!o2keys.includes(key)) return false
if (object2[key] !== object1[key]) return false
}

@ -487,7 +487,7 @@
:formAllData="formMoreTableData"
:sortLabelList="sortLabelList"
:firstSort="{ 'label': tableOrderLabel, 'type': tableOrderType }"
:maxNum="30"
:maxNum="999"
type="table"
@ok="submitTableForm"
@sortList="submitSort"

@ -411,7 +411,7 @@
ref="setTableForm"
:formData="formTableData"
:formAllData="formMoreTableData"
:maxNum="30"
:maxNum="999"
type="table"
@ok="submitTableForm"
v-if="formMoreTableData"

Loading…
Cancel
Save