package com.ld.igds; import com.bstek.bdf2.core.controller.IController; import com.bstek.bdf2.core.orm.jdbc.JdbcDao; import com.ld.igds.common.CoreSerService; import com.ld.igds.sys.service.DicTriggerService; import com.ld.igds.sys.service.SysDeptService; import com.ld.igds.sys.service.SystemService; import com.ld.igds.util.ContextUtil; import com.ld.igds.view.service.BuildingService; import com.ld.igds.view.service.HDepotService; import com.ld.igds.view.service.DeviceSerService; import com.ld.igds.view.service.DeviceService; import com.ld.igds.view.service.SysConfService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Date; import java.util.List; import java.util.Map; /** * 测试Action接口,支持匿名访问 * 方位路径:http://127.0.0.1:8080/igds/create.action?companyId=0000&del=0 */ @Slf4j @Component public class CreateCompanyAction extends JdbcDao implements IController { @Autowired private DicTriggerService dicTriggerService; @Autowired private DeviceSerService deviceSerService; @Autowired private CoreSerService coreSerService; @Autowired private HDepotService depotService; @Autowired private BuildingService buildingService; @Autowired private DeviceService deviceService; @Autowired private SysConfService sysConfService; @Autowired private SysDeptService sysDeptService; @Autowired private SystemService systemService; @Override public String getUrl() { return "/create"; } @Override public void execute(HttpServletRequest request, HttpServletResponse response) { String companyId = request.getParameter("companyId"); String del = request.getParameter("del"); String cache = request.getParameter("cache"); if (null == cache) cache = "0"; if (null == del) del = "0"; try { if (StringUtils.isEmpty(companyId)) { response.getWriter().println( "The 'companyId' parameter not found"); return; } if(companyId.equals("5000")){ response.getWriter().println( "The 'companyId' parameter is not valid"); return; } if (cache.equals("1")) { flushCache(companyId, null); response.getWriter().println("CACHE SUCCESS"); return; } String defaultCompanyId = ContextUtil.getDefaultCompanyId(); if ("0".equals(del)) { int num = check(companyId); if (num > 0) { response.getWriter().println(companyId + " is exist"); return; } doExe(defaultCompanyId, companyId, false, response); response.getWriter().println("CREATE SUCCESS"); } if ("1".equals(del)) { doExe(defaultCompanyId, companyId, true, response); response.getWriter().println("DEL SUCCESS"); } } catch (Exception e) { log.error("处理失败:{}", e.getMessage()); } } private void doExe(String defaultCompanyId, String companyId, boolean isDel, HttpServletResponse response) throws Exception { // 赋值-部门 int num = this.addDept(companyId, isDel); response.getWriter().println("--addDept---" + num); // 赋值-角色 num = this.addRole(companyId, isDel); response.getWriter().println("--addRole---" + num); // 赋值-菜单 num = this.addUrl(defaultCompanyId, companyId, isDel); response.getWriter().println("--addUrl---" + num); // 赋值-用户 num = this.addUser(companyId, isDel); response.getWriter().println("--addUser---" + num); // 赋值-角色成员 num = this.addRoleUser(companyId, isDel); response.getWriter().println("--addRoleUser---" + num); // 赋值-用户所属部门 num = this.addUserDept(companyId, isDel); response.getWriter().println("--addUserDept---" + num); // 赋值-角色和资源 num = this.addRoleResource(defaultCompanyId, companyId, isDel); response.getWriter().println("--addRoleResource---" + num); // 赋值-建筑物 num = this.addBuilding(defaultCompanyId, companyId, isDel); response.getWriter().println("--addBuilding---" + num); // 赋值-仓库 num = this.addDepot(defaultCompanyId, companyId, isDel); response.getWriter().println("--addDepot---" + num); // 赋值-仓库配置 num = this.addDepotConf(defaultCompanyId, companyId, isDel); response.getWriter().println("--addDepotConf---" + num); // 赋值-设备 num = this.addDevice(defaultCompanyId, companyId, isDel); response.getWriter().println("--addDevice---" + num); // 赋值-分机 num = this.addDeviceSer(defaultCompanyId, companyId, isDel); response.getWriter().println("--addDeviceSer---" + num); // 赋值-设备位置 num = this.addLocation(defaultCompanyId, companyId, isDel); response.getWriter().println("--addLocation---" + num); // 赋值-系统配置 num = this.addSysConf(defaultCompanyId, companyId, isDel); response.getWriter().println("--addSysConf---" + num); // 赋值-字典 num = this.addDic(defaultCompanyId, companyId, isDel); response.getWriter().println("--addDic---" + num); // 赋值-粮情 num = this.addGrain(defaultCompanyId, companyId, isDel); response.getWriter().println("--addGrain---" + num); // 赋值-气体 num = this.addGas(defaultCompanyId, companyId, isDel); response.getWriter().println("--addGas---" + num); // 赋值-虫害 num = this.addPest(defaultCompanyId, companyId, isDel); response.getWriter().println("--addPest---" + num); // 赋值-出入库配置 num = this.addInoutConf(defaultCompanyId, companyId, isDel); response.getWriter().println("--addInoutConf---" + num); // 赋值-新增组织 num = this.addCompany(companyId, isDel); response.getWriter().println("--addCompany---" + num); // 赋值-出入库 num = this.addInoutRecord(defaultCompanyId, companyId, isDel); response.getWriter().println("--addInoutRecord---" + num); } private int addGas(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM D_GAS WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_gas(BATCH_ID_,COMPANY_ID_,DEPOT_ID_,PER_CO2_,PER_CO2_MAX_,PER_CO2_MIN_,PER_O2_,PER_O2_MAX_,PER_O2_MIN_,PER_PH3_,PER_PH3_MAX_,PER_PH3_MIN_,RECEIVE_DATE_,CHECK_USER_,PER_N2_,PER_N2_MAX_,PER_N2_MIN_,CHECK_NUM_,GAS_END_,GAS_START_,POINTS_) " + "select BATCH_ID_,?,DEPOT_ID_,PER_CO2_,PER_CO2_MAX_,PER_CO2_MIN_,PER_O2_,PER_O2_MAX_,PER_O2_MIN_,PER_PH3_,PER_PH3_MAX_,PER_PH3_MIN_,RECEIVE_DATE_,CHECK_USER_,PER_N2_,PER_N2_MAX_,PER_N2_MIN_,CHECK_NUM_,GAS_END_,GAS_START_,POINTS_ from d_gas where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addPest(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM D_PEST WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_pest(BATCH_ID_,COMPANY_ID_,DEPOT_ID_,PEST_MAX_,CHECK_USER_,RECEIVE_DATE_,CHECK_NUM_,PEST_END_,PEST_START_) " + "select BATCH_ID_,?,DEPOT_ID_,PEST_MAX_,CHECK_USER_,RECEIVE_DATE_,CHECK_NUM_,PEST_END_,PEST_START_ from d_pest where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addCompany(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM BDF2_COMPANY WHERE ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO BDF2_COMPANY(ID_,NAME_) VALUES(?,?)"; int num = this.getJdbcTemplate() .update(sql, new Object[]{companyId, "新增组织公司"}); log.info("----------------------新增组织完成-{} ", companyId); return num; } private int addRoleUser(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_role_member WHERE role_id_ like ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId + "-role-%"}); } String sql = "INSERT INTO bdf2_role_member(ID_,CREATE_DATE_,GRANTED_,ROLE_ID_,USERNAME_) Values (?,?,?,?,?)"; return this.getJdbcTemplate().update( sql, new Object[]{ContextUtil.getUUID(), new Date(), 1, companyId + "-role-admin", companyId}); } private int addInoutConf(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_inout_conf WHERE COMPANY_ID_ = ?"; this.getJdbcTemplate().update(del, new Object[]{companyId}); del = "DELETE FROM d_inout_sys_conf WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_inout_conf(ID_,COMPANY_ID_,DEPT_ID_,SORT_) values(?,?,?,?)"; this.getJdbcTemplate().update(sql, new Object[]{companyId+"-"+System.currentTimeMillis(),companyId,companyId+"_001",1}); sql = "INSERT INTO d_inout_sys_conf(COMPANY_ID_,NOTICE_TAG_IN_,NOTICE_TAG_OUT_,NOTICE_WX_,PROGRESS_IN_,PROGRESS_OUT_) values(?,?,?,?,?,?)"; return this.getJdbcTemplate().update(sql, new Object[]{companyId,"Y","Y","N","REGISTER-WEIGHT_FULL-CHECK-WEIGHT_EMPTY-CARD_BACK-RECORD","REGISTER-WEIGHT_EMPTY-WEIGHT_FULL-CARD_BACK-RECORD"}); } private int addInoutRecord(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_inout_record WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_inout_record( " + " ID_," + " BIZ_TYPE_," + " BROKEN_," + " CHECK_STATUS_," + " COMPANY_ID_," + " COMPLETE_TIME_," + " COMPLETE_USER_," + " CUSTOMER_ID_," + " CUSTOMER_NAME_," + " DE_BROKEN_," + " DE_HANDLE_," + " DE_IMPURITY_," + " DE_OTHER_," + " DE_PACK_," + " DE_SUM_," + " DE_WET_," + " DEPOT_ID_," + " DEPT_ID_," + " EMPTY_WEIGHT_," + " EMPTY_WEIGHT_TIME_," + " EMPTY_WEIGHT_USER_," + " FOOD_LEVEL_," + " FOOD_LOCATION_," + " FOOD_VARIETY_," + " FOOD_YEAR_," + " FULL_WEIGHT_," + " FULL_WEIGHT_TIME_," + " FULL_WEIGHT_USER_," + " GROSS_WEIGHT_," + " HANDLE_END_," + " HANDLE_START_," + " HANDLE_USER_," + " IMPURITY_," + " INTEL_CARD_," + " NET_WEIGHT_," + " PLATE_NUM_," + " PROGRESS_," + " RECORD_STATUS_," + " REGISTER_TIME_," + " REGISTER_USER_," + " SETTLE_WEIGHT_," + " SUMMARY_," + " TARE_WEIGHT_," + " TRANS_TYPE_," + "TYPE_," + "UNIT_NAME_," + "USER_ADDRESS_," + "USER_BIRTHDAY_," + "USER_CONTACT_," + "USER_ID_," + "USER_NAME_," + "USER_NATION_," + "USER_SEX_," + "WET_," + "CHECK_ID_," + "CHECK_USER_," + "CUR_STORAGE_," + "REMARKS_," + "FOOD_TYPE_) " + "select " + "REPLACE(ID_, ?, ?)," + " BIZ_TYPE_," + " BROKEN_," + " CHECK_STATUS_," + " ?," + " COMPLETE_TIME_," + " COMPLETE_USER_," + " CUSTOMER_ID_," + " CUSTOMER_NAME_," + " DE_BROKEN_," + " DE_HANDLE_," + " DE_IMPURITY_," + " DE_OTHER_," + " DE_PACK_," + " DE_SUM_," + " DE_WET_," + " DEPOT_ID_," + " DEPT_ID_," + " EMPTY_WEIGHT_," + " EMPTY_WEIGHT_TIME_," + " EMPTY_WEIGHT_USER_," + " FOOD_LEVEL_," + " FOOD_LOCATION_," + " FOOD_VARIETY_," + " FOOD_YEAR_," + " FULL_WEIGHT_," + " FULL_WEIGHT_TIME_," + " FULL_WEIGHT_USER_," + " GROSS_WEIGHT_," + " HANDLE_END_," + " HANDLE_START_," + " HANDLE_USER_," + " IMPURITY_," + " INTEL_CARD_," + " NET_WEIGHT_," + " PLATE_NUM_," + " PROGRESS_," + " RECORD_STATUS_," + " REGISTER_TIME_," + " REGISTER_USER_," + " SETTLE_WEIGHT_," + " SUMMARY_," + " TARE_WEIGHT_," + " TRANS_TYPE_," + "TYPE_," + "UNIT_NAME_," + "USER_ADDRESS_," + "USER_BIRTHDAY_," + "USER_CONTACT_," + "USER_ID_," + "USER_NAME_," + "USER_NATION_," + "USER_SEX_," + "WET_," + "CHECK_ID_," + "CHECK_USER_," + "CUR_STORAGE_," + "REMARKS_," + "FOOD_TYPE_ " + "from d_inout_record where COMPANY_ID_=?"; return this.getJdbcTemplate().update( sql, new Object[]{defaultCompanyId, companyId, companyId, defaultCompanyId}); } private int addGrain(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_grain WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_grain(BATCH_ID_,COMPANY_ID_,DEPOT_ID_,TEMP_AVE_,TEMP_MAX_,TEMP_MIN_,HUMIDITY_IN_,HUMIDITY_OUT_,TEMP_IN_,TEMP_OUT_,RECEIVE_DATE_,CHECK_USER_,WEATHER_,CABLE_,CABLE_CIR_,OIL_HEIGHT_,POINTS_) " + "select BATCH_ID_,?,DEPOT_ID_,TEMP_AVE_,TEMP_MAX_,TEMP_MIN_,HUMIDITY_IN_,HUMIDITY_OUT_,TEMP_IN_,TEMP_OUT_,RECEIVE_DATE_,CHECK_USER_,WEATHER_,CABLE_,CABLE_CIR_,OIL_HEIGHT_,POINTS_ from d_grain where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addDic(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_dic_trigger WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_dic_trigger(PARENT_CODE,COMPANY_ID_,CODE_,DISABLED_TAG,NAME_) " + "select PARENT_CODE,?,CODE_,DISABLED_TAG,NAME_ from d_dic_trigger where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addSysConf(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_dic_sys_conf WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_dic_sys_conf(COMPANY_ID_,GRAIN_AUTO_,GRAIN_ERROR_AUTO_,ADDRESS_,EMAIL_,GRAIN_ADD_POINT_,PHONE_,SCREE_NAME_,SUPPORT_,SYS_NAME_,GRAIN_MAX_AUTO_,GRAIN_MORE_TAG_,GRAIN_OFFSET_,INTERVAL_GAS_,INTERVAL_PEST_,INTERVAL_TIME_,NETWORK_TYPE_) " + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; return this.getJdbcTemplate().update( sql, new Object[]{companyId, "N", "N", "未配置", "未配置", "N", "未配置", "智慧粮库管理平台", "风正致远信息技术股份有限公司", "智慧粮库管理平台", "N", "N", 0, 15, 15, 5, "01"}); } private int addLocation(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_dic_location WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_dic_location(ID_,COMPANY_ID_,DEPOT_ID_,BIZ_ID_,BIZ_TAG_,SELF_TAG_,POS_X_,POS_Y_,POS_Z_) " + "select uuid(),?,DEPOT_ID_,REPLACE(BIZ_ID_, ?, ?),BIZ_TAG_,SELF_TAG_,POS_X_,POS_Y_,POS_Z_ from d_dic_location where COMPANY_ID_=?"; return this.getJdbcTemplate().update( sql, new Object[]{companyId, defaultCompanyId, companyId, defaultCompanyId}); } private int addDeviceSer(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_device_ser WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_device_ser(ID_,COMPANY_ID_,NAME_,IP_,PORT_,STATUS_,PROTOCOL_,CONTROL_MODEL_,NETWORK_TYPE_,TYPE_,SN_) " + "select ID_,?,NAME_,IP_,PORT_,STATUS_,PROTOCOL_,CONTROL_MODEL_,NETWORK_TYPE_,TYPE_,SN_ from d_device_ser where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addDevice(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_device WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_device(ID_,COMPANY_ID_,DEPOT_ID_,PASS_CODE_,NAME_,SER_ID_,TYPE_,LOCATION_,STATUS_,LINK_) " + "select REPLACE(ID_, ?, ?),?,DEPOT_ID_,PASS_CODE_,NAME_,SER_ID_,TYPE_,LOCATION_,STATUS_,LINK_ from d_device where COMPANY_ID_=?"; return this.getJdbcTemplate().update( sql, new Object[]{defaultCompanyId, companyId, companyId, defaultCompanyId}); } private int addDepotConf(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_depot_conf WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_depot_conf(DEPOT_ID_,COMPANY_ID_,GRAIN_SER_,CABLE_START_,CABLE_END_,GAS_START_,GAS_END_,PEST_START_,PEST_END_," + "TH_SER_,TH_CONF_,QUANTITY_SER_,CABLE_CIR_,CABLE_RULE_) " + "select DEPOT_ID_,?,GRAIN_SER_,CABLE_START_,CABLE_END_,GAS_START_,GAS_END_,PEST_START_,PEST_END_," + "TH_SER_,TH_CONF_,QUANTITY_SER_,CABLE_CIR_,CABLE_RULE_ from d_depot_conf where COMPANY_ID_=?"; return this.getJdbcTemplate().update(sql, new Object[]{companyId, defaultCompanyId}); } private int addDepot(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_depot WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_depot(ID_,COMPANY_ID_,NAME_,DEPOT_TYPE_,DEPOT_STATUS_,STORE_TYPE_,STORAGE_REAL_,FOOD_LEVEL_,FOOD_TYPE_," + "FOOD_VARIETY_,FOOD_YEAR_,STORE_KEEPER_,STORE_KEEPER_NAME_,DEPT_ID_,BUILDING_ID_) " + "select ID_,?,NAME_,DEPOT_TYPE_,DEPOT_STATUS_,STORE_TYPE_,STORAGE_REAL_,FOOD_LEVEL_,FOOD_TYPE_," + "FOOD_VARIETY_,FOOD_YEAR_,STORE_KEEPER_,STORE_KEEPER_NAME_,?,BUILDING_ID_ from d_depot where COMPANY_ID_=?"; return this.getJdbcTemplate() .update(sql, new Object[]{companyId, companyId + "_001", defaultCompanyId}); } private int addBuilding(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM d_building WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO d_building(ID_,COMPANY_ID_,DEPT_ID_,NAME_) select ID_,?,?,NAME_ from d_building where COMPANY_ID_=?"; return this.getJdbcTemplate() .update(sql, new Object[]{companyId, companyId + "_001", defaultCompanyId}); } private int addRoleResource(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_role_resource WHERE ROLE_ID_ LIKE ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId + "-role-%"}); } String sql = "INSERT INTO bdf2_role_resource(ID_,ROLE_ID_,URL_ID_) " + "select uuid(),?,REPLACE(URL_ID_,?,?) from bdf2_role_resource where ROLE_ID_ = ?"; int num1 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "-role-admin", defaultCompanyId, companyId, defaultCompanyId + "-role-admin"}); int num2 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "-role-test", defaultCompanyId, companyId, defaultCompanyId + "-role-test"}); return num1 + num2; } private int addUserDept(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_user_dept WHERE USERNAME_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO bdf2_user_dept(ID_, DEPT_ID_, USERNAME_) VALUES (?,?,?)"; return this.getJdbcTemplate().update( sql, new Object[]{companyId + "_123", companyId + "_001", companyId}); } private int addUser(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_user WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO bdf2_user(USERNAME_,COMPANY_ID_,ADMINISTRATOR_,CNAME_,ENABLED_,ENAME_,PASSWORD_,SALT_,MALE_) VALUES (?,?,?,?,?,?,?,?,?)"; return this.getJdbcTemplate().update( sql, new Object[]{companyId, companyId, 1, "管理员", 1, "admin", "8d310dbcb7e417dc8e528cb56c13dbe250030e8a", "29", 1}); } private int addUrl(String defaultCompanyId, String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_url WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "insert into bdf2_url(ID_,COMPANY_ID_,FOR_NAVIGATION_,ICON_,NAME_,ORDER_,URL_,TARGET_) " + "select REPLACE(ID_, ?, ?),?,FOR_NAVIGATION_,ICON_,NAME_,ORDER_,URL_,TARGET_ from bdf2_url where parent_id_ IS NULL and company_id_=?"; int num1 = this.getJdbcTemplate().update( sql, new Object[]{defaultCompanyId, companyId, companyId, defaultCompanyId}); sql = "insert into bdf2_url(ID_,COMPANY_ID_,FOR_NAVIGATION_,ICON_,NAME_,ORDER_,PARENT_ID_,URL_,TARGET_) " + "select REPLACE(ID_, ?, ?),?,FOR_NAVIGATION_,ICON_,NAME_,ORDER_,REPLACE(PARENT_ID_, ?, ?),URL_,TARGET_ from bdf2_url where parent_id_ IS NOT NULL and company_id_=?"; int num2 = this.getJdbcTemplate().update( sql, new Object[]{defaultCompanyId, companyId, companyId, defaultCompanyId, companyId, defaultCompanyId}); return num1 + num2; } private int addRole(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_role WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO bdf2_role(ID_, COMPANY_ID_,CREATE_DATE_,ENABLED_, NAME_, TYPE_) VALUES (?,?,?,?,?,?)"; int num1 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "-role-admin", companyId, new Date(), 1, "管理员角色", "normal"}); int num2 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "-role-test", companyId, new Date(), 1, "演示角色", "normal"}); return num1 + num2; } private int addDept(String companyId, boolean isDel) { if (isDel) { String del = "DELETE FROM bdf2_dept WHERE COMPANY_ID_ = ?"; return this.getJdbcTemplate().update(del, new Object[]{companyId}); } String sql = "INSERT INTO bdf2_dept(ID_, COMPANY_ID_,CREATE_DATE_, NAME_, PARENT_ID_) VALUES (?,?,?,?,?)"; int num1 = this.getJdbcTemplate().update( sql, new Object[]{companyId, companyId, new Date(), "粮食收储有限公司", null}); int num2 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "_001", companyId, new Date(), "演示中心粮库", companyId}); int num3 = this.getJdbcTemplate().update( sql, new Object[]{companyId + "_002", companyId, new Date(), "演示地区分库", companyId}); return num1 + num2 + num3; } private int check(String companyId) { String sql = "SELECT COUNT(*) AS num FROM BDF2_COMPANY WHERE ID_ = ?"; List> result = this.getJdbcTemplate().queryForList( sql, new Object[]{companyId}); if (null == result || result.isEmpty()) return 0; Object num = result.get(0).get("num"); if (Integer.valueOf(num + "") > 0) return 1; return 0; } public void flushCache(String companyId, String name) throws Exception { // 设置分机全部掉线 coreSerService.allOffLine(companyId); // 初始化缓存 dicTriggerService.refreshCache(companyId); // 分机 coreSerService.refreshCache(companyId); // 初始化仓库 depotService.flushCache(companyId); // 初始化设备 deviceSerService.refreshCache(companyId); // 系统配置 sysConfService.flushCacheSysConf(companyId); // 需要先刷新仓库缓存后刷新配置 Thread.sleep(500); // 参数配置 depotService.flushConfCache(companyId); // 建筑物 buildingService.refreshCache(companyId); // 分机配置 deviceService.refreshCache(companyId); // 子部门配置 sysDeptService.flushDeptCache(companyId); // 初始化控制柜仓库的虚拟用户 depotService.initUserDeptMap(companyId); // 刷新菜单 systemService.refreshUrlCache(); log.info("* "); log.info("* ========================"); log.info("* "); log.info("* wwww.fzzygf.com"); log.info("* 组织={},初始化缓存完成…………", companyId); log.info("* "); log.info("* ========================"); log.info("* "); } @Override public boolean anonymousAccess() { return false; } @Override public boolean isDisabled() { return false; } }