1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package com . huaheng . framework . config ;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler ;
import com.huaheng.common.utils.security.ShiroUtils ;
import lombok.extern.slf4j.Slf4j ;
import org.apache.ibatis.reflection.MetaObject ;
import org.springframework.stereotype.Component ;
import java.util.Date ;
/**
* Created by Enzo Cotter on 2020 / 7 / 7 .
*/
@Slf4j
@Component
16
public class MyMetaObjectHandler implements MetaObjectHandler {
17
18
19
20
21
22
23
24
25
/**
* 插入元对象字段填充(用于插入时对公共字段的填充)
*
* @param metaObject 元对象
*/
@Override
public void insertFill ( MetaObject metaObject ) {
log . info ( "start insert fill ...." );
this . setFieldValByName ( "created" , new Date (), metaObject );
26
if ( ShiroUtils . getUserName () != null ) {
周鸿
authored
about a year ago
27
28
29
30
31
32
33
// System.out.println(metaObject.getOriginalObject() instanceof TaskHeader);
// if (metaObject.getOriginalObject() instanceof TaskHeader) {
//
// } else {
// this.setFieldValByName("createdBy", ShiroUtils.getUserName(), metaObject);
// }
this . setFieldValByName ( "createdBy" , ShiroUtils . getUserName (), metaObject );
34
this . setFieldValByName ( "lastUpdatedBy" , ShiroUtils . getUserName (), metaObject );
35
} else {
周鸿
authored
about a year ago
36
37
this . setFieldValByName ( "createdBy" , ShiroUtils . getLoginName (), metaObject );
this . setFieldValByName ( "lastUpdatedBy" , ShiroUtils . getLoginName (), metaObject );
38
}
39
this . setFieldValByName ( "lastUpdated" , new Date (), metaObject );
40
41
42
43
44
45
46
47
48
49
}
/**
* 更新元对象字段填充(用于更新时对公共字段的填充)
*
* @param metaObject 元对象
*/
@Override
public void updateFill ( MetaObject metaObject ) {
this . setFieldValByName ( "lastUpdated" , new Date (), metaObject );
50
if ( ShiroUtils . getUserName () != null ) {
51
this . setFieldValByName ( "lastUpdatedBy" , ShiroUtils . getUserName (), metaObject );
52
53
} else {
if ( ShiroUtils . getUserName () != null ) {
54
55
this . setFieldValByName ( "lastUpdatedBy" , ShiroUtils . getLoginName (), metaObject );
}
56
}
57
58
}
}