Elements-SY

modify

......@@ -5,7 +5,7 @@ export const formConfig = [
name: "purposeOfFlightNo",
prop: "purposeOfFlightNo",
placeholder: "请输入航班号",
span: 5,
span: 4,
trigger: "blur",
labelWidth: "55px",
disable: false,
......@@ -17,7 +17,7 @@ export const formConfig = [
prop: "flightDate",
placeholder: "请选择航班日期",
format: "yyyy-MM-dd",
colWidth: "23%",
colWidth: "18%",
inputWidth: "100%",
disable: false,
hidden: false,
......@@ -28,7 +28,7 @@ export const formConfig = [
name: "flightRouteListStr",
prop: "flightRouteListStr",
placeholder: "",
span: 5,
span: 6,
labelWidth: "40px",
trigger: "blur", // 事件名
disable: false,
......
......@@ -281,6 +281,7 @@ export default {
// 保存
saveSubmit(item, index) {
item.flightRoute = item.route || item.flightRoute;
item.ruleDate = item.ruleDate || this.queryForm.flightDate
let parmas = JSON.parse(JSON.stringify(item));
this.returnString(parmas, "cargoType");
this.returnString(parmas, "typeOfGoods");
......@@ -332,7 +333,7 @@ export default {
];
let validate = keys.some((key) => parmas[key]);
if (validate) {
// this.loading = true;
this.loading = true;
if(parmas.flightRoute == null)return
updateOrAddFlight(parmas)
.then((res) => {
......
......@@ -1269,19 +1269,6 @@ export default {
}
});
},
compareArrays(arr1, arr2) {
for (let i = 0; i < arr1.length; i++) {
if (!arr2.includes(arr1[i])) {
return true;
}
}
for (let i = 0; i < arr2.length; i++) {
if (!arr1.includes(arr2[i])) {
return true;
}
}
return false;
},
/*
查看航班维度
不仅分为航班种类又分当前航班航线是不是ET86,
......@@ -1335,11 +1322,7 @@ export default {
routeInfo.isEtesRoute = whiteEt86.length;
}
}else{
// console.log(row)
// console.log(row.route.split(";"))
// console.log(et86RouteList)
// routeInfo.isEtesRoute = this.compareArrays(et86RouteList, row.route.split(";"));
// console.log(routeInfo.isEtesRoute)
routeInfo.isEtesRoute = row.route.split(";").every((item) => et86RouteList.includes(item));
}
} else {
this.msgError("暂无当前航班航线");
......
......@@ -63,8 +63,6 @@
<el-input-number
v-model="scope.row.calculateDay"
:disabled="scope.row.edit"
:min="-7"
:max="7"
:precision="0"
v-input-filter
clearable
......
......@@ -33,14 +33,15 @@ export default {
this.msgError("请输入有效数字");
target.value = "";
} else {
// 非数字时
if (Number(target.value) < -7) {
this.msgError("加减天数最小不能大于7天");
target.value = "";
} else if (Number(target.value) > 7) {
this.msgError("加减天数最大不能大于7天");
target.value = "";
} else if (/[\.]/.test(Number(target.value))) {
// // 非数字时
// if (Number(target.value) < -7) {
// this.msgError("加减天数最小不能大于7天");
// target.value = "";
// } else if (Number(target.value) > 7) {
// this.msgError("加减天数最大不能大于7天");
// target.value = "";
// }
if (/[\.]/.test(Number(target.value))) {
// 浮点数时
this.msgError("加减天数只能为整数");
target.value = "";
......@@ -112,68 +113,62 @@ export default {
},
// Ursa校验
validateUrsa(ursaMark, ursa) {
// 分隔字符串并且转数组&去除数组空字符串
let ursaList = ursa.split(";").filter((str) => str !== "");
// 是否有重复的
let repeat = new Set(ursaList).size !== ursaList.length;
let inUrsa = ursaList.every((item) => /^[a-zA-Z][0-9]*_$/.test(item));
// 校验开头以字母开头下划线结尾的/^[a-zA-Z]*;$/ 和 校验开头以字母开头的/^[a-zA-Z]*;$/
let inUrsa = ursaList.every((item) =>
ursaMark
? /^[a-zA-Z][0-9]*_$/.test(item)
: /^[a-zA-Z][0-9]*$/.test(item)
);
const ursaInfo = {
ursaMark: ursaMark, // ursa包含/不包含
ursa: ursaList,
repeat: repeat,
inUrsa: inUrsa,
ursaMark: ursaMark, // Boolean ursa包含/不包含
ursa: ursaList, // ursa
repeat: repeat, // Boolean 是否有重复的
inUrsa: inUrsa, // Boolean ursa校验
};
},
// 包含
includeUrsa() {
// 分隔字符串并且转数组&去除数组空字符串
let inUrsa = this.queryForm.includeUrsa
.split(";")
.filter((str) => str !== "");
let repeat = new Set(inUrsa).size !== inUrsa.length;
if (repeat) {
// ursa包含
if (ursaMark && ursaInfo.repeat) {
this.ursaError = "填写的Ursa已重复";
this.validateForm = false;
} else {
this.ursaError = "";
this.validateForm = true;
}
// 校验开头以字母开头下划线结尾的/^[a-zA-Z]*;$/
let _inUrsa = inUrsa.every((item) => /^[a-zA-Z][0-9]*_$/.test(item));
if (!_inUrsa) {
if (ursaMark && !ursaInfo.inUrsa) {
this.ursaError = "Ursa包含之间用分号分隔,例:P2_;P3_;P_";
this.validateForm = false;
}
if (!repeat && _inUrsa) {
if (ursaMark && !ursaInfo.repeat && ursaInfo.inUrsa) {
this.ursaError = "";
this.validateForm = true;
}
console.log("包含:", this.validateForm);
},
// 不包含
notIncludeUrsa() {
// 分隔字符串并且转数组&去除数组空字符串
let inUrsa = this.queryForm.notIncludeUrsa
.split(";")
.filter((str) => str !== "");
let repeat = new Set(inUrsa).size !== inUrsa.length;
if (repeat) {
// ursa不包含;
if (!ursaMark && ursaInfo.repeat) {
this.notUrsaError = "填写的Ursa已重复";
this.validateForm = false;
} else {
this.notUrsaError = "";
this.validateForm = true;
}
// 校验开头以字母开头的/^[a-zA-Z]*;$/
let _inUrsa = inUrsa.every((item) => /^[a-zA-Z][0-9]*$/.test(item));
if (!_inUrsa) {
if (!ursaMark && !ursaInfo.inUrsa) {
this.notUrsaError = "Ursa不包含之间用分号分隔,例:P2;P3;P";
this.validateForm = false;
}
if (!repeat && _inUrsa) {
if (!ursaMark && !ursaInfo.repeat && ursaInfo.inUrsa) {
this.notUrsaError = "";
}
// 两则都为空时则校验通过
if (
(this.ursaError && this.notUrsaError) ||
this.ursaError ||
this.notUrsaError
) {
this.validateForm = false;
} else {
this.validateForm = true;
}
console.log("不包含:", this.validateForm);
},
// 包含
includeUrsa() {
let { includeUrsa } = this.queryForm;
this.validateUrsa(true, includeUrsa);
},
// 不包含
notIncludeUrsa() {
let { notIncludeUrsa } = this.queryForm;
this.validateUrsa(false, notIncludeUrsa);
},
},
};
......