wuzeyu
2024-12-24 13b3aae1ac01fefaeca3db12c50de9f7cb91406e
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java
@@ -5,19 +5,19 @@
import com.dy.common.mybatis.envm.Disabled;
import com.dy.common.util.ConfigXml4Springboot;
import com.dy.common.util.MD5;
import com.dy.pipIrrGlobal.daoBa.BaDistrictMapper;
import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper;
import com.dy.pipIrrGlobal.daoBa.BaUserMapper;
import com.dy.pipIrrGlobal.daoBa.*;
import com.dy.pipIrrGlobal.daoOp.OpeTaskTypeMapper;
import com.dy.pipIrrGlobal.daoPr.PrWaterPriceMapper;
import com.dy.pipIrrGlobal.daoRm.RmIrrigateProfileMapper;
import com.dy.pipIrrGlobal.daoSe.SePaymentMethodMapper;
import com.dy.pipIrrGlobal.daoSe.SeRechargeProfileMapper;
import com.dy.pipIrrGlobal.daoSe.SeWaterTypeMapper;
import com.dy.pipIrrGlobal.pojoBa.BaDistrict;
import com.dy.pipIrrGlobal.pojoBa.BaSettings;
import com.dy.pipIrrGlobal.pojoBa.BaUser;
import com.dy.pipIrrGlobal.pojoBa.*;
import com.dy.pipIrrGlobal.pojoOp.OpeTaskType;
import com.dy.pipIrrGlobal.pojoPr.PrWaterPrice;
import com.dy.pipIrrGlobal.pojoRm.RmIrrigateProfile;
import com.dy.pipIrrGlobal.pojoSe.SePaymentMethod;
import com.dy.pipIrrGlobal.pojoSe.SeRechargeProfile;
import com.dy.pipIrrGlobal.pojoSe.SeWaterType;
import com.dy.pipIrrGlobal.util.DistrictLevel;
import org.jdom2.Document;
@@ -46,6 +46,10 @@
    private SeWaterTypeMapper waterTypeDao ;
    private RmIrrigateProfileMapper rmIrrigateProfileDao;
    private PrWaterPriceMapper prWaterPriceDao;
    private BaDictMapper baDictDao;
    private BaDictItemMapper baDictItemDao;
    private SeRechargeProfileMapper seRechargeProfileDao;
    private OpeTaskTypeMapper taskTypeDao;
    @Autowired
    public void setResourceLoader(ResourceLoader resourceLoader){
@@ -85,6 +89,26 @@
    @Autowired
    public void setWaterPriceDao(PrWaterPriceMapper prWaterPriceDao) {
        this.prWaterPriceDao = prWaterPriceDao;
    }
    @Autowired
    public void setBaDictDao(BaDictMapper baDictDao) {
        this.baDictDao = baDictDao;
    }
    @Autowired
    public void setBaDictItemDao(BaDictItemMapper baDictItemDao) {
        this.baDictItemDao = baDictItemDao;
    }
    @Autowired
    public void setSeRechargeProfileDao(SeRechargeProfileMapper seRechargeProfileDao) {
        this.seRechargeProfileDao = seRechargeProfileDao;
    }
    @Autowired
    public void setOpeTaskTypeDao(OpeTaskTypeMapper taskTypeDao) {
        this.taskTypeDao = taskTypeDao;
    }
    /**
@@ -186,17 +210,32 @@
                            if(configXml.existElement(doc, "config.orgs.org" + num + ".irrigateProfile")){
                                for(int i = 1 ; i < 10000; i++){
                                    if(configXml.existElement(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i)){
                                        String default_value = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i,"default_value", null, false, null) ;
                                        String defaultValue = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i,"defaultValue", null, false, null) ;
                                        String unit = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i,"unit", null, false, null) ;
                                        String sort = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i,"sort", null, false, null) ;
                                        String type = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".irrigateProfile.item" + i,"type", null, false, null) ;
                                        this.saveIrrigateProfile(orgTag, default_value, unit,sort,type);
                                        this.saveIrrigateProfile(orgTag, defaultValue, unit,sort,type);
                                    }else{
                                        break ;
                                    }
                                }
                            }
                        }
                        if(!this.existRechargeProfile()){
                            if(configXml.existElement(doc, "config.orgs.org" + num + ".rechargeProfile")){
                                for(int i = 1 ; i < 10000; i++){
                                    if(configXml.existElement(doc, "config.orgs.org" + num + ".rechargeProfile.item" + i)){
                                        String rechargeAmount = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".rechargeProfile.item" + i,"rechargeAmount", null, false, null) ;
                                        String sort = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".rechargeProfile.item" + i,"sort", null, false, null) ;
                                        this.saveRechargeProfile(orgTag, rechargeAmount, sort);
                                    }else{
                                        break ;
                                    }
                                }
                            }
                        }
                        if(!this.existWaterTypes()){
                            if(configXml.existElement(doc, "config.orgs.org" + num + ".waterTypes")){
                                for(int i = 1 ; i < 10000; i++){
@@ -215,6 +254,42 @@
                                this.saveWaterPrice(orgTag, price);
                            }
                        }
                        if(!this.existDict()){
                            if(configXml.existElement(doc, "config.orgs.org" + num + ".dictionaries.dict")){
                                String code = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict","code", null, false, null) ;
                                String title = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict","title", null, false, null) ;
                                String valueType = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict","valueType", null, false, null) ;
                                this.saveDicts(orgTag, code,title,valueType);
                                if(configXml.existElement(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem")){
                                    for(int i = 1 ; i < 10000; i++){
                                        if(configXml.existElement(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i)){
                                            String dictCode = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i,"dictCode", null, false, null) ;
                                            String value = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i,"value", null, false, null) ;
                                            String name = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i,"name", null, false, null) ;
                                            String status = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i,"status", null, false, null) ;
                                            String sort = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".dictionaries.dict.dictItem.item" + i,"sort", null, false, null) ;
                                            this.saveDictItems(orgTag,dictCode,value,name,status,sort);
                                        }else{
                                            break ;
                                        }
                                    }
                                }
                            }
                        }
                        if(!this.existTaskType()){
                            if(configXml.existElement(doc, "config.orgs.org" + num + ".taskType")){
                                for(int i = 1 ; i < 10000; i++){
                                    if(configXml.existElement(doc, "config.orgs.org" + num + ".taskType.item" + i)){
                                        String taskType = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".taskType.item" + i,"typeName", null, false, null) ;
                                        this.saveTaskType(orgTag, taskType);
                                    }else{
                                        break ;
                                    }
                                }
                            }
                        }
                    }
                }else{
                    break ;
@@ -278,12 +353,39 @@
    }
    /**
     * 数据库中是否存在虚拟常用充值金额配置
     * @return
     */
    private boolean existRechargeProfile() {
        Long total = this.seRechargeProfileDao.selectCount(null);
        return (total != null && total > 0);
    }
    /**
     * 数据库中是否存在水价
     * @return
     */
    private boolean existWaterPrice() {
        Long total = this.prWaterPriceDao.selectCount(null);
        return (total != null && total > 0) ;
    }
    /**
     * 数据库中是否存在字典
     * @return
     */
    private boolean existDict() {
        Long total = this.baDictDao.selectCount(null);
        return (total != null && total > 0) ;
    }
    /**
     * 数据库中是否存在工单任务类型
     * @return
     */
    private boolean existTaskType() {
        Long total = this.taskTypeDao.selectCount(null);
        return (total != null && total > 0);
    }
    /**
@@ -401,7 +503,24 @@
            po.setUnit(Byte.valueOf(unit));
            po.setSort(Integer.parseInt(sort));
            po.setType(Byte.valueOf(type));
            po.setDeleted(0L);
            this.rmIrrigateProfileDao.insert(po);
        }
    }
    /**
     * 保存虚拟卡常用充值金额配置
     * @param orgTag
     * @param recharge_amount
     * @param sort
     */
    private void saveRechargeProfile(String orgTag, String recharge_amount, String sort) {
        if((recharge_amount != null && !recharge_amount.trim().equals("")) && (sort != null && !sort.trim().equals(""))) {
            SeRechargeProfile po = new SeRechargeProfile();
            po.setRechargeAmount(Integer.parseInt(recharge_amount));
            po.setSort(Integer.parseInt(sort));
            this.seRechargeProfileDao.insert(po);
        }
    }
@@ -415,11 +534,69 @@
            po.setPrice(Double.parseDouble(price));
            po.setDeleted((byte)0);
            this.prWaterPriceDao.insert(po);
        }
    }
    /**
     * 保存字典
     * @param orgTag
     * @param code
     * @param title
     * @param valueType
     * @return
     */
    private void saveDicts(String orgTag, String code, String title, String valueType) {
        if((code != null && !code.trim().equals("")) &&
                (title != null && !title.trim().equals("")) &&
                (valueType != null && !valueType.trim().equals(""))) {
            BaDict po = new BaDict();
            po.setCode(code);
            po.setTitle(title);
            po.setValueType(Byte.valueOf(valueType));
            po.setHashCode("c4ca4238a0b923820dcc509a6f75849b");
            po.setDeleted(0L);
            this.baDictDao.insert(po);
        }
    }
    /**
     * 保存字典项
     * @param orgTag
     * @param dictCode
     * @param value
     * @param name
     * @param status
     * @param sort
     */
    private void saveDictItems(String orgTag, String dictCode, String value, String name, String status, String sort) {
        if((dictCode != null && !dictCode.trim().equals("")) &&
                (value != null && !value.trim().equals("")) &&
                (name != null && !name.trim().equals("")) &&
                (status != null && !status.trim().equals("")) &&
                (sort != null && !sort.trim().equals(""))) {
            BaDictItem po = new BaDictItem();
            po.setDictCode(dictCode);
            po.setValue(value);
            po.setName(name);
            po.setStatus(Byte.valueOf(status));
            po.setSort(Integer.parseInt(sort));
            po.setDeleted(0L);
            this.baDictItemDao.insert(po);
        }
    }
    /**
     * 保存工单任务类型
     * @param orgTag
     * @param task_type
     */
    private void saveTaskType(String orgTag, String task_type) {
        if(task_type != null && !task_type.trim().equals("")) {
            OpeTaskType po = new OpeTaskType();
            po.setTaskType(task_type);
            po.setDeleted(0L);
            this.taskTypeDao.insert(po);
        }
    }
}