yangys
2024-03-29 153cc3fd4ef015a8b1390b2eef3d102c5859a5e7
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package com.qianwen.smartman.modules.dnc.service.impl;
 
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.qianwen.core.cache.utils.CacheUtil;
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.common.cache.ParamCache;
import com.qianwen.smartman.common.constant.ExtCacheConstant;
import com.qianwen.smartman.common.constant.FmsConstant;
import com.qianwen.smartman.modules.dnc.convert.DncDirectorySettingsConvert;
import com.qianwen.smartman.modules.dnc.dto.ArtBagFileNameProcessRule;
import com.qianwen.smartman.modules.dnc.dto.DirectoryFileNameProcessRule;
import com.qianwen.smartman.modules.dnc.entity.DncDirectorySettings;
import com.qianwen.smartman.modules.dnc.enums.DncFileNameProcessRuleEnum;
import com.qianwen.smartman.modules.dnc.service.IDncDirectorySettingsService;
import com.qianwen.smartman.modules.dnc.vo.DncDirectorySettingsEditVO;
import com.qianwen.smartman.modules.dnc.vo.DncDirectorySettingsVO;
import com.qianwen.smartman.modules.fms.dto.SwitchDTO;
import com.qianwen.smartman.modules.system.entity.Param;
import com.qianwen.smartman.modules.system.service.IParamService;
 
@Service
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/dnc/service/impl/DncDirectorySettingsServiceImpl.class */
public class DncDirectorySettingsServiceImpl implements IDncDirectorySettingsService {
    private final IParamService iParamService;
 
 
    public DncDirectorySettingsServiceImpl(final IParamService iParamService) {
        this.iParamService = iParamService;
    }
 
    @Override // org.springblade.modules.dnc.service.IDncDirectorySettingsService
    public SwitchDTO fileStartStatus() {
        Param fmsParam = (Param) this.iParamService.getOne( Wrappers.<Param>lambdaQuery().eq(Param::getParamKey, FmsConstant.FILE_PARAM_KEY));
        if (fmsParam != null) {
            SwitchDTO switchDTO = new SwitchDTO();
            switchDTO.setParamValue(fmsParam.getParamValue());
            return switchDTO;
        }
        return null;
    }
 
    @Override // org.springblade.modules.dnc.service.IDncDirectorySettingsService
    public void switchFileSettingState(SwitchDTO switchDTO) {
        Param fmsParam = this.iParamService.getOne(Wrappers.<Param>lambdaQuery().eq(Param::getParamKey, FmsConstant.FILE_PARAM_KEY));
        
        if (Func.isNotEmpty(fmsParam)) {
            fmsParam.setParamValue(switchDTO.getParamValue());
            CacheUtil.evict("blade:param", "param:value:", FmsConstant.FILE_PARAM_KEY, ExtCacheConstant.TENANT_MODE);
            this.iParamService.updateById(fmsParam);
        }
    }
 
    @Override // org.springblade.modules.dnc.service.IDncDirectorySettingsService
    public DncDirectorySettingsVO fileSettingDetail() {
        Param param = this.iParamService.getOne(Wrappers.<Param>lambdaQuery().eq(Param::getParamKey, FmsConstant.DNC_EXTRA_SETTING));
        /*
        Param param = (Param) this.iParamService.getOne((Wrapper) Wrappers.lambdaQuery().eq((v0) -> {
            return v0.getParamKey();
        }, FmsConstant.DNC_EXTRA_SETTING));*/
        if (Func.isNotEmpty(param)) {
            String remark = param.getRemark();
            DncDirectorySettingsVO dncDirectorySettingsVO = new DncDirectorySettingsVO();
            if (Func.isNotBlank(remark)) {
                DncDirectorySettings dncDirectorySettings = (DncDirectorySettings) JSONObject.parseObject(param.getRemark(), DncDirectorySettings.class);
                dncDirectorySettingsVO.setSpliceSymbol(dncDirectorySettings.getSpliceSymbol()).setSplicingMethod(dncDirectorySettings.getSplicingMethod()).setSourceOfSplicing(dncDirectorySettings.getSourceOfSplicing()).setBagSplicingContent(dncDirectorySettings.getBagSplicingContent()).setDirSplicingContent(dncDirectorySettings.getDirSplicingContent());
                return dncDirectorySettingsVO;
            }
            return null;
        }
        return null;
    }
 
    @Override // org.springblade.modules.dnc.service.IDncDirectorySettingsService
    @Transactional(rollbackFor = {Exception.class})
    public DncDirectorySettingsVO updateFileSettingData(DncDirectorySettingsEditVO editVO) {
        String value;
        DncDirectorySettings dncDirectorySettings = new DncDirectorySettings();
        dncDirectorySettings.setSplicingMethod(editVO.getSplicingMethod()).setSourceOfSplicing(editVO.getSourceOfSplicing()).setBagSplicingContent(editVO.getBagSplicingContent()).setDirSplicingContent(editVO.getDirSplicingContent()).setSpliceSymbol(editVO.getSpliceSymbol());
        Param param = this.iParamService.getOne(Wrappers.<Param>lambdaQuery().eq(Param::getParamKey, FmsConstant.DNC_EXTRA_SETTING));
        /*
        Param param = (Param) this.iParamService.getOne((Wrapper) Wrappers.lambdaQuery().eq((v0) -> {
            return v0.getParamKey();
        }, FmsConstant.DNC_EXTRA_SETTING));*/
        if (Func.isNotEmpty(param)) {
            String replaceRules = ParamCache.getValue(FmsConstant.DNC_FILE_FILTER);
            if (DncFileNameProcessRuleEnum.ARTBAG.getValue().equals(editVO.getSourceOfSplicing())) {
                ArtBagFileNameProcessRule dncFileNameProcessRule = new ArtBagFileNameProcessRule();
                dncFileNameProcessRule.setConnectors(editVO.getSpliceSymbol());
                dncFileNameProcessRule.setExtraSource(DncFileNameProcessRuleEnum.ARTBAG.getValue());
                dncFileNameProcessRule.setHandleRegexp(replaceRules);
                dncFileNameProcessRule.setSuffix((editVO.getSplicingMethod().intValue() == 2 ? Boolean.TRUE : Boolean.FALSE).booleanValue());
                dncFileNameProcessRule.setSelectProperty(editVO.getBagSplicingContent().intValue() == 1 ? 1 : 2);
                value = JSONObject.toJSONString(dncFileNameProcessRule);
            } else {
                DirectoryFileNameProcessRule directoryFileNameProcessRule = new DirectoryFileNameProcessRule();
                directoryFileNameProcessRule.setConnectors(editVO.getSpliceSymbol());
                directoryFileNameProcessRule.setExtraSource(DncFileNameProcessRuleEnum.DIRTECTORY.getValue());
                directoryFileNameProcessRule.setHandleRegexp(replaceRules);
                directoryFileNameProcessRule.setSuffix((editVO.getSplicingMethod().intValue() == 2 ? Boolean.TRUE : Boolean.FALSE).booleanValue());
                directoryFileNameProcessRule.setSelectLevel(editVO.getDirSplicingContent().intValue());
                value = JSONObject.toJSONString(directoryFileNameProcessRule);
            }
            String data = JSONObject.toJSONString(dncDirectorySettings);
            param.setParamValue(value);
            param.setRemark(data);
            CacheUtil.evict("blade:param", "param:value:", FmsConstant.DNC_EXTRA_SETTING, ExtCacheConstant.TENANT_MODE);
            this.iParamService.updateById(param);
        }
        return DncDirectorySettingsConvert.INSTANCE.convert(dncDirectorySettings);
    }
}