bug整改

This commit is contained in:
=
2025-09-13 17:06:18 +08:00
parent 613eb000f3
commit b21f51bea0
7 changed files with 475 additions and 474 deletions
@@ -356,7 +356,8 @@ public class SysUserController {
if (StrUtil.isBlank(pathname)) {
}
Sys_menu menu = sysMenuService.fetch(Cnd.where(Sys_menu::getHref, "like", pathname + "%"));
// Sys_menu menu = sysMenuService.fetch(Cnd.where(Sys_menu::getHref, "like", pathname + "%"));
Sys_menu menu = sysMenuService.fetch(Cnd.where(Sys_menu::getHref, "=", pathname));
if (menu == null) {
return Result.success();
}
@@ -52,4 +52,8 @@ public class MemberInfoPageForm extends PageForm {
private String memberSearchName;
private String memberSearchKeyWord;
private Integer pageNumber = 1;
private Integer pageSize = 10;
}
@@ -146,13 +146,14 @@ const INFO = {
// 打开
onOpen(row) {
this.row = row
console.log(row.id)
this.info()
this.getDoneTasks()
},
// 获取申请信息
info() {
this.$axios.post("/platform/member/change/view/findMemberChangeRecord", { id: this.row.id }).then((res) => {
this.$axios.post("/platform/member/change/mine/findMemberChangeRecord", { id: this.row.id }).then((res) => {
if (res.code === 0) {
this.viewData = res.data
}
@@ -138,12 +138,16 @@ layout("/layouts/platform.html"){
data() {
return {
pageForm: {
pageNumber: 1,
pageSize: 10,
searchKeyword: "",
unionId: "",
unitId: "",
personTypes: [],
preparedBys: [],
userStates: [],
sexTypes: [],
totalCount: 0,
cnd: ""
},
userId: "",
@@ -28,7 +28,8 @@ layout("/layouts/platform_h5.html"){
required
></van-field>
<van-popup position="bottom" round v-model:show="showReimburseTypePicker">
<van-picker :columns="reimburseTypeColumns" @cancel="showReimburseTypePicker = false" @confirm="onReimburseTypeConfirm" show-toolbar></van-picker>
<van-picker :columns="reimburseTypeColumns" @cancel="showReimburseTypePicker = false"
@confirm="onReimburseTypeConfirm" show-toolbar></van-picker>
</van-popup>
<!-- 支付方式 -->
@@ -44,7 +45,8 @@ layout("/layouts/platform_h5.html"){
required
></van-field>
<van-popup position="bottom" round v-model:show="showPaymentWayPicker">
<van-picker :columns="paymentWayColumns" @cancel="showPaymentWayPicker = false" @confirm="onPaymentWayConfirm" show-toolbar></van-picker>
<van-picker :columns="paymentWayColumns" @cancel="showPaymentWayPicker = false"
@confirm="onPaymentWayConfirm" show-toolbar></van-picker>
</van-popup>
<!-- 报销项目 -->
@@ -60,7 +62,8 @@ layout("/layouts/platform_h5.html"){
required
></van-field>
<van-popup position="bottom" round v-model:show="showReimburseProjectPicker">
<van-picker :columns="reimburseProjectColumns" @cancel="showReimburseProjectPicker = false" @confirm="onReimburseProjectConfirm" show-toolbar></van-picker>
<van-picker :columns="reimburseProjectColumns" @cancel="showReimburseProjectPicker = false"
@confirm="onReimburseProjectConfirm" show-toolbar></van-picker>
</van-popup>
<!-- 报销经费来源 -->
@@ -76,7 +79,8 @@ layout("/layouts/platform_h5.html"){
required
></van-field>
<van-popup position="bottom" round v-model:show="showReimburseFundSourcePicker">
<van-picker :columns="reimburseFundSourceColumns" @cancel="showReimburseFundSourcePicker = false" @confirm="onReimburseFundSourceConfirm" show-toolbar></van-picker>
<van-picker :columns="reimburseFundSourceColumns" @cancel="showReimburseFundSourcePicker = false"
@confirm="onReimburseFundSourceConfirm" show-toolbar></van-picker>
</van-popup>
<!-- 联系方式 -->
@@ -93,7 +97,8 @@ layout("/layouts/platform_h5.html"){
clickable
></van-field>
<van-popup position="bottom" round v-model:show="showClubPicker">
<van-picker :columns="clubColumns" @cancel="showClubPicker = false" @confirm="onClubConfirm" show-toolbar></van-picker>
<van-picker :columns="clubColumns" @cancel="showClubPicker = false" @confirm="onClubConfirm"
show-toolbar></van-picker>
</van-popup>
<!-- 经费余额 -->
@@ -161,7 +166,8 @@ layout("/layouts/platform_h5.html"){
</div>
</van-popup>
<van-field label="联系方式" v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'" v-model="formData.condolenceMobile" placeholder="请输入联系方式"></van-field>
<van-field label="联系方式" v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'"
v-model="formData.condolenceMobile" placeholder="请输入联系方式"></van-field>
<van-field
v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'"
@@ -174,10 +180,12 @@ layout("/layouts/platform_h5.html"){
clickable
></van-field>
<van-popup position="bottom" round v-model:show="showCondolenceTypePicker">
<van-picker :columns="condolenceTypeColumns" @cancel="showCondolenceTypePicker = false" @confirm="onCondolenceTypeConfirm" show-toolbar></van-picker>
<van-picker :columns="condolenceTypeColumns" @cancel="showCondolenceTypePicker = false"
@confirm="onCondolenceTypeConfirm" show-toolbar></van-picker>
</van-popup>
<van-field label="慰问金额" v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'" v-model="formData.money" readonly></van-field>
<van-field label="慰问金额" v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'"
v-model="formData.money" readonly></van-field>
<van-field
label="慰问时间"
v-if="formData.reimburseProject === 'UNION_REIMBURSE_PROJECT_1'"
@@ -202,7 +210,8 @@ layout("/layouts/platform_h5.html"){
</template>
<!-- 活动相关字段 (当报销项目不为慰问时显示) -->
<template v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'">
<van-field label="活动名称" v-model="formData.activityName" placeholder="请输入活动名称"></van-field>
<van-field label="活动名称" v-model="formData.activityName"
placeholder="请输入活动名称"></van-field>
<!-- 活动类型 (当报销项目为活动时显示) -->
<van-field
@@ -215,7 +224,8 @@ layout("/layouts/platform_h5.html"){
clickable
></van-field>
<van-popup position="bottom" round v-model:show="showActivityTypePicker">
<van-picker :columns="activityTypeColumns" @cancel="showActivityTypePicker = false" @confirm="onActivityTypeConfirm" show-toolbar></van-picker>
<van-picker :columns="activityTypeColumns" @cancel="showActivityTypePicker = false"
@confirm="onActivityTypeConfirm" show-toolbar></van-picker>
</van-popup>
<!-- 活动人数 (当报销项目为活动时显示) -->
@@ -227,8 +237,10 @@ layout("/layouts/platform_h5.html"){
type="number"
></van-field>
<van-field label="活动地点" v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'" v-model="formData.activityPlace" placeholder="请输入活动地点"></van-field>
<van-field label="报销金额" v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'" v-model="formData.money" placeholder="请输入报销金额" type="number"></van-field>
<van-field label="活动地点" v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'"
v-model="formData.activityPlace" placeholder="请输入活动地点"></van-field>
<van-field label="报销金额" v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'"
v-model="formData.money" placeholder="请输入报销金额" type="number"></van-field>
<van-field
label="活动时间"
v-if="formData.reimburseProject !== 'UNION_REIMBURSE_PROJECT_1'"
@@ -448,15 +460,6 @@ layout("/layouts/platform_h5.html"){
return;
}
}
// 表单验证
try {
await this.$refs.formRef.validate();
this.$toast.loading({
message: '保存中...',
forbidClick: true,
});
this.$axios.post("/platform/unionReimburse/apply/save", {data: JSON.stringify(this.formData)})
.then((res) => {
this.$toast.clear();
@@ -471,10 +474,6 @@ layout("/layouts/platform_h5.html"){
this.$toast.clear();
this.$toast.fail('网络错误,请稍后重试');
});
} catch (error) {
// 表单验证失败
console.log('表单验证失败', error);
}
},
// 提交
async onSubmit() {
@@ -486,19 +485,6 @@ layout("/layouts/platform_h5.html"){
this.$message.warning("经费余额不足");
return;
}
}
try {
await this.$refs.formRef.validate();
this.$dialog.confirm({
title: '提示',
message: '您确定要提交吗?',
}).then(() => {
this.$toast.loading({
message: '提交中...',
forbidClick: true,
});
this.$axios.post('/platform/unionReimburse/apply/submit', {data: JSON.stringify(this.formData)})
.then(res => {
this.$toast.clear();
@@ -513,12 +499,6 @@ layout("/layouts/platform_h5.html"){
this.$toast.clear();
this.$toast.fail('网络错误,请稍后重试');
});
}).catch(() => {
// 取消提交
});
} catch (error) {
// 表单验证失败
console.log('表单验证失败', error);
}
},
// 再次提交
@@ -532,18 +512,6 @@ layout("/layouts/platform_h5.html"){
return;
}
}
try {
await this.$refs.formRef.validate();
this.$dialog.confirm({
title: '提示',
message: '您确定要提交吗?',
}).then(() => {
this.$toast.loading({
message: '提交中...',
forbidClick: true,
});
this.$axios.post('/platform/unionReimburse/apply/submitAgain', {
data: JSON.stringify(this.formData),
taskId: GetQueryString("taskId")
@@ -561,13 +529,6 @@ layout("/layouts/platform_h5.html"){
this.$toast.clear();
this.$toast.fail('网络错误,请稍后重试');
});
}).catch(() => {
// 取消提交
});
} catch (error) {
// 表单验证失败
console.log('表单验证失败', error);
}
},
onReimburseTypeConfirm(o) {
this.$set(this.formData, "reimburseTypeName", o.text); // 显示名称
@@ -924,17 +885,15 @@ layout("/layouts/platform_h5.html"){
this.$set(this.formData, "unionName", user.union.name)
}
}
},
async created(){
await this.initDictOptions();
await this.init();
this.queryCondolenceType();
this.queryClubs();
}
});
})
</script>
<!--#
}
@@ -113,16 +113,18 @@ layout("/layouts/platform_h5.html"){
<van-field v-model="formData.unitName" label="工作单位" readonly></van-field>
<van-field v-model="formData.unionName" label="所属工会" readonly></van-field>
<van-field label="所属校区" v-model="formData.campus" readonly clickable
@click="showCampusPicker = true" placeholder="请选择所属校区">
</van-field>
<van-popup v-model="showCampusPicker" position="bottom">
<van-picker
show-toolbar
:columns="campusColumns"
@confirm="(v)=>{formData.campus = v;showCampusPicker = false}"
@cancel="showCampusPicker = false"
></van-picker>
<van-field
v-model="formData.campusName"
name="campusName"
label="所属校区"
readonly
placeholder="请选择所属校区"
@click="showCampusPicker = true"
clickable
></van-field>
<van-popup position="bottom" round v-model:show="showCampusPicker">
<van-picker :columns="campusColumns" @cancel="showCampusPicker = false" @confirm="onCampusColumns" show-toolbar></van-picker>
</van-popup>
<van-field
@@ -261,6 +263,7 @@ layout("/layouts/platform_h5.html"){
showAcademicDegreePicker: false,
// 校区
showCampusPicker: false,
campusColumns: [],
// 生日
showDatePicker: false,
}
@@ -278,7 +281,7 @@ layout("/layouts/platform_h5.html"){
this.$axios.post('/platform/member/apply/submit/save', {data: JSON.stringify(this.formData)}).then(res => {
if (res.code === 0) {
this.$toast.success(res.msg)
this.$pjaxReplace('/platform/h5/member/apply/mine')
this.$pjaxReplace('/platform/member/apply/mine/h5')
} else {
this.$toast.fail('操作失败')
console.log(res.msg)
@@ -405,6 +408,21 @@ layout("/layouts/platform_h5.html"){
this.$set(this.formData, "email", email)
this.$set(this.formData, "families", families ? families : [])
this.$set(this.formData, "personalData", personalData)
// 处理校区信息
if (campus) {
this.$set(this.formData, "campus", campus) // 保存校区代码值
// 根据校区代码值查找对应的名称
if (this.campusColumns && this.campusColumns.length > 0) {
const campusItem = this.campusColumns.find(item => item.value === campus)
if (campusItem) {
this.$set(this.formData, "campusName", campusItem.text)
}
}
} else {
this.$set(this.formData, "campus", "")
this.$set(this.formData, "campusName", "")
}
}
},
toChinesNum(num){
@@ -425,6 +443,25 @@ layout("/layouts/platform_h5.html"){
noWan = "0" + noWan;
}
return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);
},
onCampusColumns(o) {
this.$set(this.formData, "campusName", o.text); // 显示名称
this.$set(this.formData, "campus", o.value); // 字典值
this.showCampusPicker = false;
},
async initDictOptions() {
// 初始化校区字典数据
const campusData = await this.$businessTool.getDictOptions('USER_CAMPUS')
this.campusColumns = campusData.map(item => {
return {value: item.code, text: item.name}
})
// 初始化完成后,如果已经有用户数据,更新校区显示名称
if (this.formData.campus && this.campusColumns.length > 0) {
const campusItem = this.campusColumns.find(item => item.value === this.formData.campus)
if (campusItem) {
this.$set(this.formData, "campusName", campusItem.text)
}
}
}
},
computed: {
@@ -452,14 +489,9 @@ layout("/layouts/platform_h5.html"){
}
return []
},
campusColumns(){
if(this.dict && this.dict.type && this.dict.type.USER_CAMPUS){
return this.dict.type.USER_CAMPUS.map(v=>v.value)
}
return []
}
},
created() {
this.initDictOptions();
this.init()
},
})