338 lines
13 KiB
Java
338 lines
13 KiB
Java
package com.sipai.controller.bot;
|
||
|
||
import java.util.ArrayList;
|
||
import java.util.HashSet;
|
||
import java.util.Iterator;
|
||
import java.util.List;
|
||
import java.util.Random;
|
||
|
||
import javax.annotation.Resource;
|
||
import javax.servlet.http.HttpServletRequest;
|
||
|
||
import net.sf.json.JSONArray;
|
||
import net.sf.json.JSONObject;
|
||
|
||
import org.apache.batik.ext.awt.geom.Cubic;
|
||
import org.springframework.stereotype.Controller;
|
||
import org.springframework.ui.Model;
|
||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||
import org.springframework.web.bind.annotation.RequestMapping;
|
||
import org.springframework.web.bind.annotation.RequestParam;
|
||
import org.springframework.web.servlet.ModelAndView;
|
||
|
||
import com.sipai.entity.base.CommonFile;
|
||
import com.sipai.entity.bot.Bot;
|
||
import com.sipai.entity.user.Company;
|
||
import com.sipai.entity.user.Unit;
|
||
import com.sipai.entity.user.User;
|
||
import com.sipai.service.base.CommonFileService;
|
||
import com.sipai.service.bot.Botservice;
|
||
import com.sipai.service.company.CompanyService;
|
||
import com.sipai.service.user.UnitService;
|
||
import com.sipai.service.user.UserService;
|
||
import com.sipai.tools.CommString;
|
||
import com.sipai.tools.CommUtil;
|
||
|
||
@Controller
|
||
@RequestMapping("/bot/bot")
|
||
public class BotController {
|
||
@Resource
|
||
private Botservice botservice;
|
||
@Resource
|
||
private UnitService unitService;
|
||
@Resource
|
||
private CommonFileService commonFileService;
|
||
@Resource
|
||
private CompanyService companyService;
|
||
|
||
|
||
@RequestMapping("/botmanage.do")
|
||
public String botmanage(HttpServletRequest request, Model model) {
|
||
return "bot/botManage";
|
||
}
|
||
|
||
@RequestMapping("/showBotEdit.do")
|
||
public String showBotEdit(HttpServletRequest request, Model model,
|
||
@RequestParam String bizid) {
|
||
Bot bot = new Bot();
|
||
List<Bot> botList = this.botservice.selectListByWhere("where bizid='" + bizid + "'");
|
||
if (botList != null && botList.size() > 0) {
|
||
bot.setId(botList.get(0).getId());
|
||
bot.setBizid(bizid);
|
||
bot.setDesignScale(botList.get(0).getDesignScale());
|
||
bot.setEmission(botList.get(0).getEmission());
|
||
bot.setInfluentIndex(botList.get(0).getInfluentIndex());
|
||
bot.setEffluentIndex(botList.get(0).getEffluentIndex());
|
||
bot.setProcess(botList.get(0).getProcess());
|
||
bot.setPrice(botList.get(0).getPrice());
|
||
bot.setCalculation(botList.get(0).getCalculation());
|
||
bot.setSigndate(botList.get(0).getSigndate());
|
||
bot.setFranchisePeriod(botList.get(0).getFranchisePeriod());
|
||
} else {
|
||
bot.setId(CommUtil.getUUID());
|
||
bot.setBizid(bizid);
|
||
}
|
||
model.addAttribute("bot", bot);
|
||
|
||
return "bot/botEdit";
|
||
}
|
||
|
||
|
||
@RequestMapping("/updateBot.do")
|
||
public ModelAndView updateBot(HttpServletRequest request, Model model,
|
||
@ModelAttribute Bot bot) {
|
||
User cu = (User) request.getSession().getAttribute("cu");
|
||
|
||
//判断是否有该记录
|
||
List<Bot> botList = this.botservice.selectListByWhere("where id='" + bot.getId() + "'");
|
||
int result = 0;
|
||
if (botList != null && botList.size() > 0) {
|
||
//更新
|
||
bot.setUpsuser(cu.getId());
|
||
bot.setUpsdt(CommUtil.nowDate());
|
||
result = this.botservice.update(bot);
|
||
} else {
|
||
//新增
|
||
bot.setInsuser(cu.getId());
|
||
bot.setInsdt(CommUtil.nowDate());
|
||
result = this.botservice.save(bot);
|
||
}
|
||
|
||
String resstr = "{\"res\":\"" + result + "\",\"id\":\"" + bot.getId() + "\"}";
|
||
model.addAttribute("result", resstr);
|
||
return new ModelAndView("result");
|
||
}
|
||
|
||
@RequestMapping("/botList.do")
|
||
public String botList(HttpServletRequest request, Model model) {
|
||
|
||
return "bot/showBotList";
|
||
}
|
||
|
||
@RequestMapping("/botListForApp.do")
|
||
public String botListForApp(HttpServletRequest request, Model model) {
|
||
|
||
return "bot/showBotListForApp";
|
||
}
|
||
|
||
@RequestMapping("/getbotList.do")
|
||
public String getbotList(HttpServletRequest request, Model model) {
|
||
String bizidx = request.getParameter("bizid");
|
||
String wherestr = "where 1=1 ";
|
||
if (bizidx != null && !bizidx.isEmpty()) {
|
||
//获取公司下所有子节点
|
||
List<Unit> units = unitService.getUnitChildrenById(bizidx);
|
||
String userids = "";
|
||
for (Unit unit : units) {
|
||
userids += "'" + unit.getId() + "',";
|
||
}
|
||
if (userids != "") {
|
||
userids = userids.substring(0, userids.length() - 1);
|
||
wherestr += "and bizid in (" + userids + ") ";
|
||
}
|
||
}
|
||
|
||
if (request.getParameter("search_name") != null && !request.getParameter("search_name").isEmpty()) {
|
||
wherestr += " and process like '%" + request.getParameter("search_name") + "%'";
|
||
|
||
}
|
||
|
||
List<Bot> botList = this.botservice.selectListByWhere(wherestr);
|
||
List<JSONObject> botJsonList = new ArrayList<JSONObject>();
|
||
List<JSONObject> initialPointJsonListnew1 = new ArrayList<JSONObject>();
|
||
if (botList != null && botList.size() > 0) {
|
||
for (int i = 0; i < botList.size(); i++) {
|
||
JSONObject botJsonObject = JSONObject.fromObject(botList.get(i));
|
||
|
||
Company company = unitService.getCompById(botList.get(i).getBizid());
|
||
//查文件
|
||
List<CommonFile> botfiles = this.commonFileService.selectListByTableAWhere("tb_bot_file", "where masterid='" + botList.get(i).getId() + "'");
|
||
if (botfiles != null && botfiles.size() > 0) {
|
||
botJsonObject.put("filetype", "yes");
|
||
botJsonObject.put("fileid", botfiles.get(0).getId());
|
||
|
||
} else {
|
||
botJsonObject.put("filetype", "no");
|
||
botJsonObject.put("fileid", "");
|
||
}
|
||
if (company != null) {
|
||
botJsonObject.put("bizidpid", company.getPid());
|
||
botJsonObject.put("bizname", company.getName());
|
||
}
|
||
|
||
botJsonList.add(botJsonObject);
|
||
}
|
||
|
||
|
||
//按类分
|
||
HashSet<String> hashSet = new HashSet<>();
|
||
for (JSONObject item : botJsonList) {
|
||
hashSet.add((String) item.get("bizidpid"));
|
||
}
|
||
|
||
Iterator<String> iterator = hashSet.iterator();
|
||
while (iterator.hasNext()) {
|
||
JSONObject jsonObject2 = new JSONObject();
|
||
jsonObject2.put("bizidpid", iterator.next());
|
||
jsonObject2.put("color", getRandColorCode());
|
||
initialPointJsonListnew1.add(jsonObject2);
|
||
}
|
||
|
||
|
||
for (JSONObject jsonObject2 : initialPointJsonListnew1) {
|
||
List<JSONObject> codeslist = new ArrayList<JSONObject>();
|
||
for (JSONObject item : botJsonList) {
|
||
if (jsonObject2.get("bizidpid").equals(item.get("bizidpid"))) {
|
||
codeslist.add(item);
|
||
}
|
||
}
|
||
jsonObject2.put("codes", codeslist);
|
||
}
|
||
// System.out.println("---:"+initialPointJsonListnew1);
|
||
request.setAttribute("botlist", initialPointJsonListnew1);
|
||
}
|
||
|
||
request.setAttribute("result", initialPointJsonListnew1);
|
||
return "result";
|
||
}
|
||
|
||
@RequestMapping("/doBotEdit.do")
|
||
public String doBotEdit(HttpServletRequest request, Model model,
|
||
@RequestParam(value = "id") String id) {
|
||
Bot bot = this.botservice.selectById(id);
|
||
Company company = unitService.getCompById(bot.getBizid());
|
||
request.setAttribute("bizname", company.getName());
|
||
model.addAttribute("bot", bot);
|
||
return "bot/doBotEdit";
|
||
}
|
||
|
||
@RequestMapping("/doBotUpdate.do")
|
||
public String doBotUpdate(HttpServletRequest request, Model model,
|
||
@ModelAttribute("bot") Bot bot) {
|
||
User cu = (User) request.getSession().getAttribute("cu");
|
||
bot.setUpsuser(cu.getId());
|
||
bot.setUpsdt(CommUtil.nowDate());
|
||
int res = this.botservice.update(bot);
|
||
model.addAttribute("result", res);
|
||
return "result";
|
||
}
|
||
|
||
@RequestMapping("/getBotdata.do")
|
||
public String getBotdata(HttpServletRequest request, Model model,
|
||
@RequestParam String unitId) {
|
||
JSONObject botObject = new JSONObject();
|
||
|
||
if (unitId != null && !unitId.equals("")) {
|
||
Company company = this.companyService.selectByPrimaryKey(unitId);
|
||
if (company != null) {
|
||
botObject.put("bizname", company.getName());
|
||
}
|
||
}
|
||
|
||
List<Bot> botList = this.botservice.selectListByWhere("where bizid='" + unitId + "'");
|
||
if (botList != null && botList.size() > 0) {
|
||
botObject.put("designScale", botList.get(0).getDesignScale());
|
||
botObject.put("emission", botList.get(0).getEmission());
|
||
botObject.put("influentIndex", botList.get(0).getInfluentIndex());
|
||
botObject.put("effluentIndex", botList.get(0).getEffluentIndex());
|
||
botObject.put("proess", botList.get(0).getProcess());
|
||
botObject.put("price", botList.get(0).getPrice());
|
||
botObject.put("calculation", botList.get(0).getCalculation());
|
||
botObject.put("signdate", botList.get(0).getSigndate());
|
||
botObject.put("franchisePeriod", botList.get(0).getFranchisePeriod());
|
||
}
|
||
request.setAttribute("result", botObject);
|
||
|
||
return "result";
|
||
}
|
||
|
||
/**
|
||
*
|
||
* * 获取十bai六进制的颜du色zhi代码dao.例如 "#6E36B4" , For HTML ,
|
||
* * @return String
|
||
*
|
||
*/
|
||
public static String getRandColorCode() {
|
||
String r, g, b;
|
||
Random random = new Random();
|
||
r = Integer.toHexString(random.nextInt(256)).toUpperCase();
|
||
g = Integer.toHexString(random.nextInt(256)).toUpperCase();
|
||
b = Integer.toHexString(random.nextInt(256)).toUpperCase();
|
||
|
||
r = r.length() == 1 ? "0" + r : r;
|
||
g = g.length() == 1 ? "0" + g : g;
|
||
b = b.length() == 1 ? "0" + b : b;
|
||
return r + g + b;
|
||
}
|
||
|
||
@RequestMapping("/getBotdataForApp.do")
|
||
public String getBotdataForApp(HttpServletRequest request, Model model,
|
||
@RequestParam String unitId) {
|
||
List<Bot> botList = this.botservice.selectListByWhere("where bizid='" + unitId + "'");
|
||
|
||
JSONObject jsonObject = new JSONObject();
|
||
JSONArray jsonArray = new JSONArray();
|
||
if (botList != null && botList.size() > 0) {
|
||
jsonObject.put("code", 1);
|
||
jsonObject.put("msg", "");
|
||
for (Bot bot : botList) {
|
||
JSONObject jsonObjectD = new JSONObject();
|
||
jsonObjectD.put("id", bot.getId());
|
||
jsonObjectD.put("LGTD", bot.getLgtd());
|
||
if (bot.getType() != null && !bot.getType().equals("")) {
|
||
jsonObjectD.put("type", bot.getType());
|
||
} else {
|
||
jsonObjectD.put("type", "");
|
||
}
|
||
|
||
Company company = companyService.selectByPrimaryKey(bot.getBizid());
|
||
if (company != null) {
|
||
jsonObjectD.put("SHORT_NAME", company.getName());
|
||
jsonObjectD.put("ADDRESS", company.getAddress());
|
||
jsonObjectD.put("sname", company.getSname());
|
||
} else {
|
||
jsonObjectD.put("SHORT_NAME", "");
|
||
jsonObjectD.put("ADDRESS", bot.getAddress());
|
||
jsonObjectD.put("sname", "");
|
||
}
|
||
|
||
jsonObjectD.put("emission", bot.getEmission());
|
||
jsonObjectD.put("LINE_MAP_URL", bot.getLineMapUrl());
|
||
jsonObjectD.put("lgtd", bot.getLgtd());
|
||
jsonObjectD.put("CAPFACT", "");
|
||
jsonObjectD.put("defaultLoad", bot.getDefaultLoad());
|
||
|
||
if (bot.getClickState() != null && !bot.getClickState().equals("")) {
|
||
jsonObjectD.put("CLICK_STATE", bot.getClickState());
|
||
} else {
|
||
jsonObjectD.put("CLICK_STATE", "false");
|
||
}
|
||
|
||
jsonObjectD.put("OUTQ", "");
|
||
jsonObjectD.put("lttd", bot.getLttd());
|
||
jsonObjectD.put("INQ", "");
|
||
jsonObjectD.put("LTTD", bot.getLttd());
|
||
if (bot.getProcess() != null && !bot.getProcess().equals("")) {
|
||
jsonObjectD.put("process", bot.getProcess());
|
||
} else {
|
||
jsonObjectD.put("process", "");
|
||
}
|
||
|
||
jsonObjectD.put("POINT_MAP_URL", bot.getPointMapUrl());
|
||
|
||
jsonObjectD.put("bizid", bot.getBizid());
|
||
jsonObjectD.put("TM", "");
|
||
jsonArray.add(jsonObjectD);
|
||
}
|
||
|
||
} else {
|
||
jsonObject.put("code", 0);
|
||
jsonObject.put("msg", "");
|
||
}
|
||
jsonObject.put("result", jsonArray);
|
||
|
||
request.setAttribute("result", jsonObject);
|
||
return "result";
|
||
}
|
||
}
|