first commit

This commit is contained in:
2026-09-20 15:46:34 +08:00
parent 72fb5eae10
commit e558339dcc
3340 changed files with 671310 additions and 251 deletions
@@ -0,0 +1,162 @@
<template>
<div>
<el-form ref="form" :model="z" :rules="formRules" label-position="right" label-width="120px">
<el-col :span="12">
<el-form-item label="活动名称:" prop="activity_name">
<el-input v-model="z.activity_name" placeholder="请输入活动名称"></el-input>
</el-form-item>
</el-col>
<el-col v-if="z.reimbursementItemId==1" :span="12">
<el-form-item label="活动类型:" prop="activity_type">
<el-select v-model="z.activity_type" placeholder="请选择活动类型" style="width: 100%">
<!-- <el-option label="基层工会活动" value="1" v-if="judgment_unit"></el-option>
<el-option label="校工会活动" value="2" v-if="judgment_union"></el-option>
<el-option label="协会(社团)活动" value="3" v-if="judgment_h02"></el-option>-->
<el-option label="分工会活动" value="1"></el-option>
<el-option label="校工会活动" value="2"></el-option>
<el-option label="协会(社团)活动" value="3"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动人数:" prop="activity_number" v-else-if="z.reimbursementItemId==1">
<el-input v-model="z.activity_number" placeholder="请输入活动人数" type="number"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动地点:" prop="venue">
<el-input v-model="z.venue" placeholder="请输入活动地点" type="text"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="报销金额:" prop="activity_money">
<el-input v-model="z.activity_money" placeholder="输入报销金额"
type="number"></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="12">
<el-form-item prop="activity_card_number" label="报销卡号:">
<el-input v-model="z.activity_card_number" type="number"></el-input>
</el-form-item>
</el-col>-->
<el-col :span="12">
<el-form-item label="活动时间:" prop="activity_time">
<el-date-picker v-model="z.activity_time"
placeholder="活动时间"
style="width: 100%" type="date"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item class="is-required" label="发票张数:" v-else-if="z.reimbursementItemId==1" prop="files_num">
<el-input-number v-model="z.files_num" :controls="false"
:max="1000000000" :min="0" controls-position="right"
placeholder="请填写发票张数"
style="width: 100%"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="报销事由:" prop="cause">
<el-input v-model="z.cause" :autosize="{ minRows: 4, maxRows: 8}" maxlength="500"
placeholder="请填写报销事由" type="textarea"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注:" prop="activity_content">
<el-input v-model="z.activity_content" :autosize="{ minRows: 4, maxRows: 8}" maxlength="500"
placeholder="需要填写: 发票编号、开具方、金额" type="textarea"></el-input>
</el-form-item>
</el-col>
<el-col v-if="!ReimbursementIsSign" :span="24">
<el-form-item label="签&emsp;&emsp;字" prop="sign">
<sign :qz.sync="z.sign" prefix="condolence"></sign>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="" prop="files">
<span style="color: red" v-if="z.reimbursementItemId=='1'">温馨提醒:活动照片、参加人员名单、付款凭证等</span>
<span style="color: red"
v-if="z.reimbursementItemId=='3'">温馨提醒:主要用于专家咨询费、助研费、劳务费等人员经费支付。收到该笔款项后,请个税自行申报</span>
<!-- <file-upload :files.sync="z.files" card></file-upload>-->
</el-form-item>
</el-col>
</el-form>
<div style="float: right;margin: 20px 0">
<el-button type="primary" @click="doAdd()">确 定</el-button>
</div>
</div>
</template>
<script>
module.exports = {
props: {
z: {
type: Object,
default: {},
},
judgment_unit: {type: Boolean, default: false},
judgment_union: {type: Boolean, default: false},
judgment_h02: {type: Boolean, default: false}
},
components: {
'file-upload': httpVueLoader('/components/plugins/FileUpload.vue'),
'sign': httpVueLoader('/components/sign/sign.vue?v=2.0.0')
},
data() {
return {
ReimbursementIsSign: false,
formRules: {
activity_name: [{required: true, message: '必填', trigger: ['blur', 'change']}],
activity_type: [{required: true, message: '必填', trigger: ['blur', 'change']}],
venue: [{required: true, message: '必填', trigger: ['blur', 'change']}],
activity_money: [{required: true, message: '必填', trigger: ['blur', 'change']}],
activity_card_number: [{required: true, message: '必填', trigger: ['blur', 'change']}],
activity_time: [{required: true, message: '必填', trigger: ['blur', 'change']}],
cause: [{required: true, message: '必填', trigger: ['blur', 'change']}],
// files_num: [{required: true, message: '必填', trigger: ['blur', 'change']}],
sign: [{required: true, message: '必填', trigger: ['blur', 'change']}]
},
}
},
methods: {
doAdd() {
this.$refs["form"].validate(async (valid) => {
if (valid) {
if (this.z.files_num === undefined && this.z.reimbursementItemId === 1) {
this.$notify({
title: '警告',
message: "请输入发票张数",
type: 'warning'
});
return
}
const resp = await $.post("/reimbursement/StyleActivity/apply/doAdd", {
data: JSON.stringify(this.z),
sign: this.z.sign
})
window.location.href = "/activity/reimbursement/list"
}
}
)
}
},
async created() {
const aa = await getDictState("ReimbursementIsSign")
this.ReimbursementIsSign = aa.disabled
}
}
</script>