Commit 5064d0e6 by liangjianmin

fix(apply): update order number field naming and enhance validation logic

- Rename order_no field to order_sn for consistency with API
- Update validation logic to ensure customer name is fetched based on order_sn
- Improve error messages for better user guidance during form submission
- Adjust navigation behavior after successful submission to switch tabs instead of navigating back
parent 0224b381
Showing with 22 additions and 15 deletions
......@@ -6,8 +6,8 @@
<u--input v-model="apply_type_name" disabled disabledColor="#ffffff" placeholder="请选择" border="none" inputAlign="right"></u--input>
<u-icon slot="right" name="arrow-down" color="#c0c4cc"></u-icon>
</u-form-item>
<u-form-item label="订单号" prop="order_no" required borderBottom>
<u--input v-model="form.order_no" placeholder="请输入" border="none" inputAlign="right" @input="handleOrderNoInput"></u--input>
<u-form-item label="订单号" prop="order_sn" required borderBottom>
<u--input v-model="form.order_sn" placeholder="请输入" border="none" inputAlign="right" @input="handleOrderNoInput"></u--input>
</u-form-item>
<u-form-item label="客户名称" prop="customer_name" required>
<view class="row verCenter boxFlex" style="justify-content: flex-end;">
......@@ -62,7 +62,7 @@
return {
form: {
apply_type: '',
order_no: '',
order_sn: '',
customer_name: '',
apply_fee_amount: '',
relief_detail: '',
......@@ -108,14 +108,14 @@
* @return {void}
*/
handleOrderNoInput: debounce(function() {
var orderNo = this.form.order_no.trim();
var orderSn = this.form.order_sn.trim();
if (!orderNo) {
if (!orderSn) {
this.form.customer_name = '';
return;
}
this.request(API.getCustomerName, 'GET', { order_sn: orderNo }).then(res => {
this.request(API.getCustomerName, 'GET', { order_sn: orderSn }).then(res => {
if (res.code === 0) {
this.form.customer_name = res.data;
} else {
......@@ -133,25 +133,25 @@
* @return {boolean} 校验是否通过
*/
validateForm() {
var { apply_type, order_no, customer_name, apply_fee_amount, relief_detail, relief_reason } = this.form;
var { apply_type, order_sn, customer_name, apply_fee_amount, relief_detail, relief_reason } = this.form;
if (!apply_type) {
this.errorMsg = '请选择申请类型';
return false;
}
if (!order_no) {
if (!order_sn) {
this.errorMsg = '请输入订单号';
return false;
}
if (!customer_name) {
this.errorMsg = '请输入有效的订单号以获取客户名称';
if (!apply_fee_amount) {
this.errorMsg = '请输入申请免收金额';
return false;
}
if (!apply_fee_amount) {
this.errorMsg = '请输入申请免收金额';
if (isNaN(apply_fee_amount) || Number(apply_fee_amount) <= 0) {
this.errorMsg = '请输入有效的申请免收金额';
return false;
}
......@@ -164,6 +164,11 @@
this.errorMsg = '请输入免收原因';
return false;
}
if (!customer_name) {
this.errorMsg = '请输入有效的订单号以获取客户名称';
return false;
}
this.errorMsg = '';
return true;
......@@ -186,8 +191,10 @@
});
setTimeout(() => {
uni.navigateBack();
}, 1500);
uni.switchTab({
url: '/pages/approve/index'
});
}, 2000);
} else {
this.errorMsg = res.msg || '提交失败';
}
......
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 sign in to comment