main
黄海 9 months ago
parent 31312efd50
commit fa1e18e1e1

@ -840,12 +840,40 @@ public class BaseController extends Controller {
/**
*
*
* @param dataset_id id
*/
@Before(GET.class)
@IsLoginInterface({})
public void getDataSetTable(int dataset_id) {
List<Record> list= model.getDataSetTable(dataset_id);
List<Record> list = model.getDataSetTableContent(dataset_id);
renderJson(CommonUtil.renderJsonForLayUI(list));
}
/**
*
*
* @param dataset_id id
* @param data
*/
@Before(POST.class)
@IsLoginInterface({})
public void saveDataSetTable(int dataset_id, String data) {
//登录的人员
//int identity_id = Integer.parseInt(CookieUtil.getValue(getRequest(), "identity_id"));
String person_id = CookieUtil.getValue(getRequest(), "person_id");
//如果是市/州,名称
//如果是县区,名称
String xmqh = model.getPersonInfo(person_id).getStr("person_name").replace("管理员", "");
JSONArray jsonArray = JSONArray.fromObject(data);
for (Object o : jsonArray) {
net.sf.json.JSONObject jo = (net.sf.json.JSONObject) o;
if (jo.containsKey("行政区划") && !jo.getString("行政区划").equals(xmqh)) {
renderJson(CommonUtil.returnMessageJson(false, "数据集数据与当前登录人员所属行政区划不一致,请重新选择数据集!"));
return;
}
}
model.saveDataSetTable(dataset_id, xmqh, jsonArray);
renderJson(CommonUtil.returnMessageJson(true, "保存成功"));
}
}

@ -1,5 +1,6 @@
package com.dsideal.base.Base.Model;
import com.dsideal.base.Util.CommonUtil;
import com.jfinal.kit.Kv;
import com.jfinal.kit.StrKit;
import com.jfinal.plugin.activerecord.Db;
@ -1001,11 +1002,46 @@ public class BaseModel {
* @param dataset_id id
* @return
*/
public List<Record> getDataSetTable(int dataset_id) {
String sql = "select * from t_dp_dataset where id=?";
Record record = Db.findFirst(sql, dataset_id);
public List<Record> getDataSetTableContent(int dataset_id) {
Record record = getTableName(dataset_id);
if (record == null) return null;
sql = "select * from dataease.`" + record.getStr("table_name") + "`";
String sql = "select * from dataease.`" + record.getStr("table_name") + "`";
return Db.find(sql);
}
/**
* id
*
* @param dataset_id id
* @return
*/
public Record getTableName(int dataset_id) {
String sql = "select * from t_dp_dataset where id=?";
return Db.findFirst(sql, dataset_id);
}
/**
*
*
* @param dataset_id id
* @param ja json
*/
public void saveDataSetTable(int dataset_id, String xmqh, JSONArray ja) {
String tableName = getTableName(dataset_id).getStr("table_name");
String sql = "delete from dataease.`" + tableName + "` where `行政区划`=?";
Db.update(sql, xmqh);
List<Record> list = new ArrayList<>();
for (int i = 0; i < ja.size(); i++) {
JSONObject jsonObject = ja.getJSONObject(i);
//遍历jo的每一个属性
// 或者使用keySet和for-each循环遍历
Record record = new Record();
for (Object key : jsonObject.keySet()) {
Object value = jsonObject.get(key);
record.set(key.toString(), value);
list.add(record);
}
}
Db.use("dataease").batchSave("`" + tableName + "`", list, 100);
}
}

@ -114,9 +114,15 @@ public class BaseApplication extends JFinalConfig {
HikariCpPlugin plugin = new HikariCpPlugin(PropKit.get("mysql.jdbcUrl"), PropKit.get("mysql.user"),
PropKit.get("mysql.password").trim(), PropKit.get("mysql.driverClassName"));
me.add(plugin);
HikariCpPlugin dataEasePlugin = new HikariCpPlugin(PropKit.get("mysql.jdbcUrl").replace("ds_db", "dataease"), PropKit.get("mysql.user"),
PropKit.get("mysql.password").trim(), PropKit.get("mysql.driverClassName"));
me.add(dataEasePlugin);
// 配置ActiveRecord插件
ActiveRecordPlugin arp = new ActiveRecordPlugin(plugin);
arp.setDialect(new MysqlDialect());
ActiveRecordPlugin dataEaseArp = new ActiveRecordPlugin("dataease", dataEasePlugin);
dataEaseArp.setDialect(new MysqlDialect());
//遍历sql目录下所有的sql文件
File sqlDir;
String basePath = PathKit.getRootClassPath();
@ -126,10 +132,12 @@ public class BaseApplication extends JFinalConfig {
//只加载.sql文件
if (sqlFile.getName().indexOf(".sql") > 0) {
arp.addSqlTemplate("/Sql/" + sqlFile.getName());
dataEaseArp.addSqlTemplate("/Sql/" + sqlFile.getName());
}
}
//加载
me.add(arp);
me.add(dataEaseArp);
// 用于缓存模块的redis服务
RedisPlugin redis = new RedisPlugin("Redis", PropKit.get("redis.ip"), PropKit.getInt("redis.port"), 10 * 1000, PropKit.get("redis.password"));
//启动redis组件

Loading…
Cancel
Save