From 98df1b76326afb757e05861ab958d1454d08874d Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 21 四月 2025 11:20:36 +0800 Subject: [PATCH] 注释完善 --- pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java | 258 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 247 insertions(+), 11 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 08dd62f..6a4d699 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,19 +5,22 @@ 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 lombok.extern.slf4j.Slf4j; import org.jdom2.Document; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.event.ApplicationReadyEvent; @@ -32,6 +35,7 @@ * Spring瀹瑰櫒骞舵病鏈夊垱寤哄畬锛岃�屾湰绫讳腑鐢ㄤ簡Spring瀹瑰櫒涓殑Bean锛屽嵆distriDao, userDao銆� * 鎵�浠ラ噰鐢ㄤ簡Spring浜嬩欢鐩戝惉鍣ㄦ潵瀹炵幇 */ +@Slf4j @Component public class InitListener implements ApplicationListener<ApplicationReadyEvent> { @@ -43,6 +47,11 @@ private BaSettingsMapper settingsDao ; 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){ @@ -79,6 +88,31 @@ this.rmIrrigateProfileDao = rmIrrigateProfileDao; } + @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; + } + /** * SpringBoot瀹瑰櫒宸茬粡鍑嗗濂戒簡 * @param event 浜嬩欢 @@ -105,17 +139,22 @@ Document doc = configXml.createDom(this.resourceLoader, "init-config.xml") ; this.doInit(configXml, doc); } catch (Exception e) { - System.out.println("绯荤粺鍚姩鏃讹紝鍒濆鍖栭厤缃嚭閿� !"); - System.out.println(e.getMessage()); + log.error("绯荤粺鍚姩鏃讹紝鍒濆鍖栭厤缃嚭閿� !"); + log.error(e.getMessage()); e.printStackTrace(); } } private void doInit(ConfigXml4Springboot configXml, Document doc) throws Exception{ + //Check if configXml and doc are not null if(configXml != null && doc != null){ + //Loop through 10000 orgs for(int num = 1; num <= 10000; num++){ + //Check if the org exists if(configXml.existElement(doc, "config.orgs.org" + num)){ + //Get the tag and enable value of the org String orgTag = configXml.getSetAttrTxt(doc, "config.orgs.org" + num,"tag", null, false, null) ; Boolean enable = configXml.getSetAttrBoolean(doc, "config.orgs.org" + num, "enable", null, null); + //If the org is enabled if(enable != null && enable.booleanValue()){ //璁剧疆鏁版嵁婧� DataSourceContext.set(orgTag); @@ -178,17 +217,86 @@ 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++){ + 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 ; + } + } + } + } + } + + 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 ; @@ -238,7 +346,7 @@ * @return 瀛樺湪鍚� */ private boolean existWaterTypes(){ - Long total = this.waterTypeDao.selectCount(null) ; + Long total = this.prWaterPriceDao.selectCount(null) ; return (total != null && total > 0) ; } @@ -249,6 +357,42 @@ private boolean existIrrigateProfile(){ Long total = this.rmIrrigateProfileDao.selectCount(null) ; return (total != null && total > 0) ; + } + + /** + * 鏁版嵁搴撲腑鏄惁瀛樺湪铏氭嫙甯哥敤鍏呭�奸噾棰濋厤缃� + * @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); } /** @@ -366,8 +510,100 @@ 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); + + } + } + + /** + * 淇濆瓨姘翠环 + * @param price + */ + private void saveWaterPrice(String orgTag, String price) { + if(price != null && !price.trim().equals("")) { + PrWaterPrice po = new PrWaterPrice(); + 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); + } + } + } -- Gitblit v1.8.0