From 982937e0f439f6422a9912da604def3f10b41bb9 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期一, 02 九月 2024 10:36:40 +0800 Subject: [PATCH] 2024-09-02 朱宝民 字典及字典项放到配置文件中,自动导入数据库 --- pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 107 insertions(+), 8 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java index de5a9ce..eaf3213 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java @@ -5,16 +5,12 @@ 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.daoPr.PrWaterPriceMapper; import com.dy.pipIrrGlobal.daoRm.RmIrrigateProfileMapper; import com.dy.pipIrrGlobal.daoSe.SePaymentMethodMapper; 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.pojoPr.PrWaterPrice; import com.dy.pipIrrGlobal.pojoRm.RmIrrigateProfile; import com.dy.pipIrrGlobal.pojoSe.SePaymentMethod; @@ -46,6 +42,8 @@ private SeWaterTypeMapper waterTypeDao ; private RmIrrigateProfileMapper rmIrrigateProfileDao; private PrWaterPriceMapper prWaterPriceDao; + private BaDictMapper baDictDao; + private BaDictItemMapper baDictItemDao; @Autowired public void setResourceLoader(ResourceLoader resourceLoader){ @@ -85,6 +83,16 @@ @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; } /** @@ -186,11 +194,11 @@ 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 ; } @@ -198,9 +206,43 @@ } } if(!this.existWaterTypes()){ + if(configXml.existElement(doc, "config.orgs.org" + num + ".waterTypes")){ + for(int i = 1 ; i < 10000; i++){ + if(configXml.existElement(doc, "config.orgs.org" + num + ".waterTypes.item" + i)){ + String typeName = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".waterTypes.item" + i,"typeName", null, false, null) ; + this.saveWaterType(orgTag, typeName); + }else{ + break ; + } + } + } + } + if(!this.existWaterPrice()){ if(configXml.existElement(doc, "config.orgs.org" + num + ".waterPrice")){ String price = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".waterPrice","price", null, false, null) ; 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 ; + } + } + } } } } @@ -271,6 +313,15 @@ */ 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) ; } @@ -389,6 +440,7 @@ po.setUnit(Byte.valueOf(unit)); po.setSort(Integer.parseInt(sort)); po.setType(Byte.valueOf(type)); + po.setDeleted(0L); this.rmIrrigateProfileDao.insert(po); } } @@ -403,7 +455,54 @@ 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); } } -- Gitblit v1.8.0