|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | 
|---|
|  |  |  | 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){ | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | public void setRmIrrigateProfileDao(RmIrrigateProfileMapper rmIrrigateProfileDao) { | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | 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 ; | 
|---|
|  |  |  | 
|---|
|  |  |  | * @return 存在否 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private boolean existWaterTypes(){ | 
|---|
|  |  |  | Long total = this.waterTypeDao.selectCount(null) ; | 
|---|
|  |  |  | Long total = this.prWaterPriceDao.selectCount(null) ; | 
|---|
|  |  |  | return (total != null && total > 0) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | 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); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | 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); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|