liurunyu
2024-06-28 6a6d287641a28ad19dfa1c319fe7a9191ef9ad52
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/util/InitListener.java
@@ -7,9 +7,13 @@
import com.dy.common.util.MD5;
import com.dy.common.webListener.ConfigListener;
import com.dy.pipIrrGlobal.daoBa.BaDistrictMapper;
import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper;
import com.dy.pipIrrGlobal.daoBa.BaUserMapper;
import com.dy.pipIrrGlobal.daoSe.SePaymentMethodMapper;
import com.dy.pipIrrGlobal.pojoBa.BaDistrict;
import com.dy.pipIrrGlobal.pojoBa.BaSettings;
import com.dy.pipIrrGlobal.pojoBa.BaUser;
import com.dy.pipIrrGlobal.pojoSe.SePaymentMethod;
import com.dy.pipIrrGlobal.util.DistrictLevel;
import org.jdom2.Document;
import org.springframework.beans.factory.annotation.Autowired;
@@ -31,6 +35,8 @@
    private BaDistrictMapper distriDao ;
    private BaUserMapper userDao ;
    private SePaymentMethodMapper paymentMethodDao ;
    private BaSettingsMapper settingsDao ;
    @Autowired
    public void setDistriDao(BaDistrictMapper distriDao){
@@ -40,6 +46,16 @@
    @Autowired
    public void setUserDao(BaUserMapper userDao){
        this.userDao = userDao ;
    }
    @Autowired
    public void setPaymentDao(SePaymentMethodMapper paymentMethodDao){
        this.paymentMethodDao = paymentMethodDao ;
    }
    @Autowired
    public void setSettingsDao(BaSettingsMapper settingsDao){
        this.settingsDao = settingsDao ;
    }
@@ -92,7 +108,7 @@
                                distriName = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".districts.province.city","name", null, false, null) ;
                                distriNum = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".districts.province.city","num", null, false, null) ;
                                distriLevel = configXml.getSetAttrPlusInt(doc, "config.orgs.org" + num + ".districts.province.city","level", null, 1, 99,null) ;
                                supperId = this.saveDistrict(null, distriName, distriNum, distriLevel);
                                supperId = this.saveDistrict(supperId, distriName, distriNum, distriLevel);
                                if(supperId != null && configXml.existElement(doc, "config.orgs.org" + num + ".districts.province.city.country")) {
                                    distriName = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".districts.province.city.country", "name", null, false, null);
                                    distriNum = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".districts.province.city.country", "num", null, false, null);
@@ -109,6 +125,32 @@
                            String password = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".user","password", null, false, null) ;
                            Integer supperAdmin = configXml.getSetAttrPlusInt(doc, "config.orgs.org" + num + ".user","supperAdmin", null, 0, 1,null) ;
                            this.saveUser(orgTag, name, phone, password, supperAdmin);
                        }
                    }
                    if(!this.existPayments()){
                        if(configXml.existElement(doc, "config.orgs.org" + num + ".payments")){
                            for(int i = 1 ; i < 10000; i++){
                                if(configXml.existElement(doc, "config.orgs.org" + num + ".payments.item" + i)){
                                    String name = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".payments.item" + i,"name", null, false, null) ;
                                    this.savePayment(orgTag, name);
                                }else{
                                    break ;
                                }
                            }
                        }
                    }
                    if(!this.existSettings()){
                        if(configXml.existElement(doc, "config.orgs.org" + num + ".settings")){
                            for(int i = 1 ; i < 10000; i++){
                                if(configXml.existElement(doc, "config.orgs.org" + num + ".settings.item" + i)){
                                    String item_name = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".settings.item" + i,"item_name", null, false, null) ;
                                    String item_value = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".settings.item" + i,"item_value", null, false, null) ;
                                    String remarks = configXml.getSetAttrTxt(doc, "config.orgs.org" + num + ".settings.item" + i,"remarks", null, false, null) ;
                                    this.saveSettings(orgTag, item_name, item_value, remarks);
                                }else{
                                    break ;
                                }
                            }
                        }
                    }
                }else{
@@ -128,11 +170,29 @@
    }
    /**
     * 数据库中是否存在行政区划数据
     * 数据库中是否存在用户数据
     * @return 存在否
     */
    private boolean existUsers(){
        Long total = this.userDao.selectCount(null) ;
        return (total != null && total > 0) ;
    }
    /**
     * 数据库中是否存在支付方式数据
     * @return 存在否
     */
    private boolean existPayments(){
        Long total = this.paymentMethodDao.selectCount(null) ;
        return (total != null && total > 0) ;
    }
    /**
     * 数据库中是否存在系统配置数据
     * @return 存在否
     */
    private boolean existSettings(){
        Long total = this.settingsDao.selectCount(null) ;
        return (total != null && total > 0) ;
    }
@@ -185,5 +245,37 @@
            this.userDao.putin(po) ;
        }
    }
    /**
     * 保存支付方式
     * @param orgTag 机构标签
     * @param name 名称
     */
    private void savePayment(String orgTag, String name) throws Exception{
        if(name != null && !name.trim().equals("")){
            SePaymentMethod po = new SePaymentMethod() ;
            po.setName(name);
            po.setDeleted(Deleted.NO.code);
            this.paymentMethodDao.insert(po) ;
        }
    }
    /**
     * 保存系统配置
     * @param item_name 配置项
     * @param item_value 配置项值
     * @param remarks 备注信息
     * @throws Exception
     */
    private void saveSettings(String orgTag,String item_name, String item_value,String remarks) throws Exception{
        if((item_name != null && !item_name.trim().equals("")) &&
                (item_value != null && !item_value.trim().equals("")) &&
                (remarks != null && !remarks.trim().equals(""))){
            BaSettings po = new BaSettings() ;
            po.setItemName(item_name);
            po.setItemValue(item_value);
            po.setRemarks(remarks);
            this.settingsDao.insert(po) ;
        }
    }
}