Compare commits
4
Commits
c9fd0efa27
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4a3ef13ac | ||
|
|
3e2059e634 | ||
|
|
e7d7bc53ee | ||
|
|
225ab9e916 |
@@ -52,6 +52,11 @@ public class CondolenceType extends BaseModel implements Serializable {
|
||||
@ColDefine(type = ColType.BOOLEAN)
|
||||
private Boolean need_files;
|
||||
|
||||
@Column
|
||||
@Comment("附件说明,供申请人查看材料要求,最多200字")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 200)
|
||||
private String files_desc;
|
||||
|
||||
@Column
|
||||
@Comment("排序字段")
|
||||
@Prev({
|
||||
|
||||
Binary file not shown.
+122
-23
@@ -1,40 +1,139 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<configuration scan="false" scanPeriod="60000" debug="false">
|
||||
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<layout class="ch.qos.logback.classic.PatternLayout">
|
||||
<pattern>[%-5level] %d{HH:mm:ss.SSS} [%thread] %logger - %msg%n</pattern>
|
||||
</layout>
|
||||
</appender>
|
||||
<!-- 日志存储路径 -->
|
||||
<property name="LOG_HOME" value="./logs"/>
|
||||
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<rollingPolicy class="org.nutz.boot.starter.logback.exts.logfile.LogfileTimeBasedRollingPolicy">
|
||||
<fileNamePattern>/data/budwk5mini/logs/mini-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>15</maxHistory>
|
||||
</rollingPolicy>
|
||||
<!-- 控制台输出 -->
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>[%-5level] %d{HH:mm:ss.SSS} %logger - %msg%n</pattern>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 异步输出 -->
|
||||
<appender name ="ASYNC" class= "ch.qos.logback.classic.AsyncAppender">
|
||||
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
|
||||
<discardingThreshold>0</discardingThreshold>
|
||||
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
|
||||
<queueSize>256</queueSize>
|
||||
<!-- 添加附加的appender,最多只能添加一个 -->
|
||||
<appender-ref ref ="FILE"/>
|
||||
|
||||
<!--
|
||||
#################################################################################
|
||||
# #
|
||||
# 全文输出日志(一个文件存储)start #
|
||||
# #
|
||||
#################################################################################
|
||||
-->
|
||||
|
||||
<!-- 所有级别日志写入同一个文件 -->
|
||||
<appender name="ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${LOG_HOME}/app.log</file>
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/app-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>300</maxHistory>
|
||||
</rollingPolicy>
|
||||
</appender>
|
||||
|
||||
<logger name="java" additivity="false" />
|
||||
<!-- 框架日志级别(按需调整) -->
|
||||
<logger name="org.eclipse.jetty" level="INFO"/>
|
||||
<logger name="org.quartz" level="INFO"/>
|
||||
<logger name="org.nutz" level="DEBUG"/>
|
||||
|
||||
<!-- root logger:DEBUG 级别,输出到控制台和全量文件 -->
|
||||
<root level="DEBUG">
|
||||
<appender-ref ref="STDOUT" />
|
||||
<appender-ref ref="ASYNC" />
|
||||
<appender-ref ref="STDOUT"/>
|
||||
<appender-ref ref="ALL_FILE"/>
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
<!--
|
||||
#################################################################################
|
||||
# #
|
||||
# 全文输出日志(一个文件存储)end #
|
||||
# #
|
||||
#################################################################################
|
||||
-->
|
||||
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
#################################################################################
|
||||
# #
|
||||
# debug、info、error分文件输出 start #
|
||||
# #
|
||||
#################################################################################
|
||||
-->
|
||||
|
||||
<!-- DEBUG级别日志文件配置 -->
|
||||
<!--<appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${LOG_HOME}/debug.log</file>
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>DEBUG</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/debug-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>300</maxHistory>
|
||||
</rollingPolicy>
|
||||
</appender>
|
||||
|
||||
<!– INFO级别日志文件配置 –>
|
||||
<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${LOG_HOME}/info.log</file>
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>INFO</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/info-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>300</maxHistory>
|
||||
</rollingPolicy>
|
||||
</appender>
|
||||
|
||||
<!– ERROR级别日志文件配置 –>
|
||||
<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${LOG_HOME}/error.log</file>
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<level>ERROR</level>
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_HOME}/error-%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<maxHistory>300</maxHistory>
|
||||
</rollingPolicy>
|
||||
</appender>
|
||||
|
||||
<!– 框架日志级别 –>
|
||||
<!– <logger name="java" additivity="false" />–>
|
||||
<logger name="org.eclipse.jetty" level="INFO"/>
|
||||
<logger name="org.quartz" level="INFO"/>
|
||||
<logger name="org.nutz" level="DEBUG"/>
|
||||
|
||||
<!– 日志级别和appender的关联 –>
|
||||
<root level="DEBUG">
|
||||
<appender-ref ref="STDOUT"/>
|
||||
<appender-ref ref="DEBUG_FILE"/>
|
||||
<appender-ref ref="INFO_FILE"/>
|
||||
<appender-ref ref="ERROR_FILE"/>
|
||||
</root>-->
|
||||
|
||||
<!--
|
||||
#################################################################################
|
||||
# #
|
||||
# debug、info、error分文件输出 end #
|
||||
# #
|
||||
#################################################################################
|
||||
-->
|
||||
|
||||
</configuration>
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 706 KiB |
@@ -222,10 +222,10 @@ layout("/mobile/platform.html"){
|
||||
:min-date="new Date('1999-01-01')"
|
||||
:color="themeColor"></van-calendar>
|
||||
|
||||
<van-field v-model="formData.the_hospital" name="the_hospital" name="type"
|
||||
<!-- 所在医院暂不采集,连同字段内的必填校验一起停用。 <van-field v-model="formData.the_hospital" name="the_hospital" name="type"
|
||||
label="所在医院"
|
||||
placeholder="请填写所在医院" required
|
||||
:rules="[{ required:true, message: '请填写所在医院' }]"></van-field>
|
||||
:rules="[{ required:true, message: '请填写所在医院' }]"></van-field> -->
|
||||
</template>
|
||||
|
||||
<!-- <van-field v-model="formData.remark" name="remark" label="申请事由"
|
||||
@@ -309,7 +309,10 @@ layout("/mobile/platform.html"){
|
||||
<div class="mb10">附  件</div>
|
||||
</template>
|
||||
<template #input>
|
||||
<vant-file-upload :files.sync="formData.files"></vant-file-upload>
|
||||
<div style="width: 100%;">
|
||||
<vant-file-upload :files.sync="formData.files"></vant-file-upload>
|
||||
<div v-if="attachmentDescription" style="white-space: pre-wrap; overflow-wrap: anywhere; color: #f56c6c; line-height: 20px; margin-top: 8px;">{{ attachmentDescription }}</div>
|
||||
</div>
|
||||
</template>
|
||||
</van-field>
|
||||
</van-cell-group>
|
||||
@@ -373,6 +376,13 @@ layout("/mobile/platform.html"){
|
||||
money: 0
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
// 按当前类型读取材料说明,无说明时返回空串,避免切换类型后残留旧提示。
|
||||
attachmentDescription() {
|
||||
const selectedType = this.typeColumns.find(item => item.value === this.formData.type)
|
||||
return selectedType ? (selectedType.files_desc || '') : ''
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
"formData.money"(val) {
|
||||
if (val > this.money) {
|
||||
@@ -568,7 +578,7 @@ layout("/mobile/platform.html"){
|
||||
this.formData.apply_time = moment().format('YYYY-MM-DD')
|
||||
const {code, data} = await $.get("/platform/condolence/type/getAll")
|
||||
data.forEach(v => {
|
||||
this.typeColumns.push({value: v.id, text: v.name + "(" + v.money + ")"})
|
||||
this.typeColumns.push({value: v.id, text: v.name + "(" + v.money + ")", files_desc: v.files_desc})
|
||||
})
|
||||
for (let i in condolence.way) {
|
||||
this.wayColumns.push({value: condolence.way[i], text: condolence.way[i]})
|
||||
|
||||
@@ -16,6 +16,12 @@ layout("/mobile/platform.html"){
|
||||
max-height: 300px !important;
|
||||
}
|
||||
|
||||
/* 校园全景图等比例填满轮播区域,靠右保留建筑主体,超宽部分裁剪左侧。 */
|
||||
.my-swipe .home-panorama .van-image__img {
|
||||
object-fit: cover;
|
||||
object-position: right center;
|
||||
}
|
||||
|
||||
.not_open {
|
||||
filter: grayscale(100%);
|
||||
}
|
||||
@@ -84,6 +90,7 @@ layout("/mobile/platform.html"){
|
||||
<van-swipe class="my-swipe" :autoplay="2000" indicator-color="white">
|
||||
<van-swipe-item v-for="item in photoArray">
|
||||
<van-image width="100%" :height="$(document).height() * 0.26"
|
||||
:class="item.cropLeft ? 'home-panorama' : ''"
|
||||
:src="item.src"></van-image>
|
||||
</van-swipe-item>
|
||||
</van-swipe>
|
||||
@@ -119,6 +126,7 @@ layout("/mobile/platform.html"){
|
||||
{src: '/assets/mobile/img/home/home1.png'},
|
||||
{src: '/assets/mobile/img/home/home2.png'},
|
||||
{src: '/assets/mobile/img/home/home3.png'},
|
||||
{src: '/assets/mobile/img/home/home4.png', cropLeft: true},
|
||||
],
|
||||
gridArray: [
|
||||
// {src: '/assets/mobile/img/home/8活动报名.jpg', text: '活动报名', isOpen: true,},
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover"
|
||||
/>
|
||||
<van-number-keyboard safe-area-inset-bottom/>
|
||||
<title></title>
|
||||
<title>广西师范大学智慧工会</title>
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/vant/index.min.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/mobile/css/theme.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/mobile/css/main.css">
|
||||
|
||||
@@ -104,6 +104,11 @@ layout("/layouts/platform.html"){
|
||||
<el-radio v-model="formData.need_files" :label="true" border>是</el-radio>
|
||||
<el-radio v-model="formData.need_files" :label="false" border>否</el-radio>
|
||||
</el-form-item>
|
||||
<!-- 附件说明为选填文本,双端申请页在上传框下方展示,最多200字。 -->
|
||||
<el-form-item label="附件说明" prop="files_desc">
|
||||
<el-input v-model="formData.files_desc" type="textarea" :rows="3"
|
||||
maxlength="200" show-word-limit placeholder="请填写附件材料要求,最多200字"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
@@ -130,6 +135,7 @@ layout("/layouts/platform.html"){
|
||||
searchName: "name",
|
||||
},
|
||||
formRules: {
|
||||
files_desc: [{max: 200, message: '附件说明最多200字', trigger: ['blur', 'change']}],
|
||||
name: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
money: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
way: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
@@ -177,7 +183,7 @@ layout("/layouts/platform.html"){
|
||||
});
|
||||
},
|
||||
openAdd() {
|
||||
this.formData = {need_files: false}
|
||||
this.formData = {need_files: false, files_desc: ''}
|
||||
this.dialogVisible = true
|
||||
if (this.$refs['form']) {
|
||||
this.$refs['form'].resetFields()
|
||||
|
||||
@@ -159,14 +159,14 @@ layout("/layouts/platform.html"){
|
||||
end-placeholder="结束日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<!-- 所在医院暂不采集,保留原表单便于后续恢复。 <el-col :span="12">
|
||||
<el-form-item prop="the_hospital" label="所在医院">
|
||||
<el-input placeholder="请填写所在医院"
|
||||
v-model="formData.the_hospital"
|
||||
maxlength="30"
|
||||
type="text"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
</template>
|
||||
|
||||
|
||||
@@ -348,6 +348,7 @@ layout("/layouts/platform.html"){
|
||||
<el-col :span="24" v-if="needFiles()">
|
||||
<el-form-item prop="files" label="附  件" required>
|
||||
<file-upload :files.sync="formData.files" card></file-upload>
|
||||
<div v-if="attachmentDescription" style="white-space: pre-wrap; overflow-wrap: anywhere; color: #f56c6c; line-height: 20px; margin-top: 8px;">{{ attachmentDescription }}</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@@ -425,7 +426,8 @@ layout("/layouts/platform.html"){
|
||||
dead_time: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
sign: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
hospital_stay: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
the_hospital: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
// 所在医院表单已注释,同步停用必填校验。
|
||||
// the_hospital: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
dead_gx: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
child_sex: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
payee: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
@@ -442,6 +444,13 @@ layout("/layouts/platform.html"){
|
||||
typeOptions: [],
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
// 按当前类型读取材料说明,无说明时返回空串,避免切换类型后残留旧提示。
|
||||
attachmentDescription() {
|
||||
const selectedType = this.typeOptions.find(item => item.id === this.formData.type)
|
||||
return selectedType ? (selectedType.files_desc || '') : ''
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
"formData.money"(val) {
|
||||
if (val > this.money) {
|
||||
|
||||
Reference in New Issue
Block a user