yangys
2024-05-07 9b677ea5c6978788d135fc15da3d78c5a93789c2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.qianwen.smartman.modules.dnc.template.impl;
 
import java.util.HashMap;
import java.util.Map;
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.modules.dnc.context.DncFileNameProcessRuleContext;
import com.qianwen.smartman.modules.dnc.dto.DirectoryFileNameProcessRule;
import com.qianwen.smartman.modules.dnc.enums.DncFileNameProcessRuleEnum;
import com.qianwen.smartman.modules.dnc.template.DncFileNameProcess;
 
public class DirectoryFileNameProcess extends DncFileNameProcess<DirectoryFileNameProcessRule> {
    /* JADX INFO: Access modifiers changed from: protected */
    @Override
    public String selectExtraInfo(DncFileNameProcessRuleContext context, DirectoryFileNameProcessRule template) {
        String extraInfo = "";
        String directoryPath = context.getDirectoryPath();
        Integer extraSource = template.getExtraSource();
        if (DncFileNameProcessRuleEnum.DIRTECTORY.getValue().equals(extraSource)) {
            int selectLevel = template.getSelectLevel();
            if (selectLevel == -1) {
                extraInfo = directoryPath.substring(directoryPath.lastIndexOf("/") + 1);
            } else {
                Map<Integer, String> map = getDirectoryName(selectLevel, directoryPath);
                if (!map.isEmpty()) {
                    String name = map.get(Integer.valueOf(selectLevel));
                    if (Func.isBlank(name)) {
                        extraInfo = "";
                    } else {
                        extraInfo = map.get(Integer.valueOf(selectLevel));
                    }
                } else {
                    extraInfo = "";
                }
            }
        }
        return extraInfo;
    }
 
    private Map<Integer, String> getDirectoryName(int level, String directoryPath) {
        Map<Integer, String> map = new HashMap<>(8);
        String[] split = directoryPath.split("/");
        for (int i = 1; i < split.length; i++) {
            map.put(Integer.valueOf(i), split[i]);
        }
        return map;
    }
}