package com.dsh.guns.modular.system.controller.specialTrain; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.dsh.course.entity.BaseBean; import com.dsh.course.entity.OpenCity; import com.dsh.course.mapper.CityMapper; import com.dsh.course.mapper.OpenCityMapper; import com.dsh.guns.config.UserExt; import com.dsh.guns.core.base.controller.BaseController; import com.dsh.guns.core.common.constant.factory.PageFactory; import com.dsh.guns.core.util.SinataUtil; import com.dsh.guns.core.util.ToolUtil; import com.dsh.guns.modular.system.model.TOpenCity; import com.dsh.guns.modular.system.model.TServerCarmodel; import com.dsh.guns.modular.system.model.TSystemPrice; import com.dsh.guns.modular.system.model.TSystemPriceService; import com.dsh.guns.modular.system.service.*; import net.sf.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.Map; /** * 专车价格设置控制器 * * @author fengshuonan * @Date 2020-08-29 10:50:13 */ @Controller @RequestMapping("/tSystemPrice") public class TSystemPriceController extends BaseController { private String PREFIX = "/system/tSystemPrice/"; @Autowired private ITSystemPriceService tSystemPriceService; @Autowired private ITServerCarmodelService tServerCarmodelService; @Autowired private ITSystemPriceServiceService itSystemPriceServiceService; @Autowired private IUserService userService; @Resource private CityMapper cityMapper; @Resource private OpenCityMapper openCityMapper; @Autowired private ITOpenCityService openCityService; /** * 跳转到专车价格设置首页 */ @RequestMapping("/special") public String index(Model model) { model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tSystemPrice.html"; } @RequestMapping("/check") public String index1(Model model) { model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tSystemPriceCheck.html"; } /** * 跳转到小件物流价格设置首页 */ @RequestMapping("/small") public String small(Model model) { //跨城小件物流 List openCities = openCityService.getBaseMapper().selectList(new QueryWrapper().ne("flag", 3)); model.addAttribute("openCity",openCities); model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "small.html"; } @RequestMapping(value = "/change") @ResponseBody public Object change(Integer code) { List openCities = openCityMapper.selectListCity1(UserExt.getLanguage(),code); return openCities; } /** * 跳转到添加专车价格设置 */ @RequestMapping("/tSystemPrice_add") public String tSystemPriceAdd(Model model) { //查询所有专车车型 List tSystemPrices = tSystemPriceService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).eq("companyId", 11).ne("state", 3)); List modelList = tServerCarmodelService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).eq("state", 1)); Integer language = UserExt.getLanguage(); if(language==2){ for (TServerCarmodel tServerCarmodel : modelList) { tServerCarmodel.setName(tServerCarmodel.getEname()); } } if(language==3){ for (TServerCarmodel tServerCarmodel : modelList) { tServerCarmodel.setName(tServerCarmodel.getYname()); } } List serverCarmodels = new ArrayList<>(); for (TServerCarmodel tsc : modelList) { boolean b = true; for (TSystemPrice tsp : tSystemPrices) { if (tsc.getId() == tsp.getServerCarModelId()) { b = false; break; } } if (b) { serverCarmodels.add(tsc); } } List openCities = openCityService.getBaseMapper().selectList(new QueryWrapper().ne("flag", 3)); model.addAttribute("openCity",openCities); model.addAttribute("modelList", serverCarmodels); model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tSystemPrice_add.html"; } /** * 跳转到修改专车价格设置 */ @RequestMapping("/tSystemPrice_update/{tSystemPriceId}") public String tSystemPriceUpdate(@PathVariable String tSystemPriceId, Model model) { TSystemPrice sys = tSystemPriceService.getById(tSystemPriceId); List service = tSystemPriceService.getBaseMapper().selectList(new LambdaQueryWrapper() .eq(TSystemPrice::getCompanyId,sys.getCompanyId()).eq(TSystemPrice::getUserType,sys.getUserType()) .eq(TSystemPrice::getOpenCityId,sys.getOpenCityId()).eq(TSystemPrice::getServerCarModelId,sys.getServerCarModelId()) .eq(TSystemPrice::getOrderType,sys.getOrderType())); for (TSystemPrice s : service) { if(s.getType()==1){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json1", json); }else if(s.getType()==2){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json2", json); }else if(s.getType()==3){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json3", json); }else if(s.getType()==4){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json4", json); }else if(s.getType()==5){ JSONArray objects = JSON.parseArray(s.getContent()); objects.getJSONObject(0).put("num10",1); model.addAttribute("json5a", objects); }else if(s.getType()==6){ JSONArray objects = JSON.parseArray(s.getContent()); objects.getJSONObject(0).put("num10",1); model.addAttribute("json6a", objects); }else if(s.getType()==7){ JSONArray objects = JSON.parseArray(s.getContent()); objects.getJSONObject(0).put("num10",1); model.addAttribute("json7a", objects); } } model.addAttribute("item", sys); model.addAttribute("carType", sys.getServerCarModelId()); //查询所有专车车型 List tSystemPrices = tSystemPriceService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).ne("state", 3)); List modelList = tServerCarmodelService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).eq("state", 1)); List serverCarmodels = new ArrayList<>(); Integer language = UserExt.getLanguage(); for (TServerCarmodel tsc : modelList) { if(language==2){ tsc.setName(tsc.getEname()); } if(language==3){ tsc.setName(tsc.getYname()); } boolean b = true; for (TSystemPrice tsp : tSystemPrices) { if (tsc.getId() == tsp.getServerCarModelId() && !tsc.getId().equals(tSystemPriceId)) { b = false; break; } } if (b) { serverCarmodels.add(tsc); } } List openCities = openCityService.getBaseMapper().selectList(new QueryWrapper().ne("flag", 3)); model.addAttribute("openCity",openCities); model.addAttribute("modelList", modelList); model.addAttribute("language", UserExt.getLanguage()); return PREFIX + "tSystemPrice_edit.html"; } @RequestMapping("/tSystemPrice_update1/{tSystemPriceId}") public String tSystemPriceUpdate1(@PathVariable String tSystemPriceId, Model model) { List two = tSystemPriceService.getService(tSystemPriceId); if(two.get(0).getOrderType()==4) { if (SinataUtil.isNotEmpty(two)) { JSONObject json1 = JSONObject.fromObject(two.get(0).getContent()); model.addAttribute("json1", json1); JSONObject json2 = JSONObject.fromObject(two.get(1).getContent()); model.addAttribute("json2", json2); JSONArray json3 = JSON.parseArray(two.get(2).getContent()); model.addAttribute("json3a", json3); } Integer language = UserExt.getLanguage(); TOpenCity openCity = openCityService.getBaseMapper().selectById(two.get(0).getOpenCityId()); if(language==1){ openCity.setCityName(openCity.getChineseName()); }else if(language==2){ openCity.setCityName(openCity.getEnglishName()); }else { openCity.setCityName(openCity.getIndonesianName()); } model.addAttribute("city", openCity); model.addAttribute("code", tSystemPriceId); model.addAttribute("item", cityMapper.selectList(null)); model.addAttribute("sub", 1); model.addAttribute("userType", two.get(0).getUserType()); model.addAttribute("language", language); return PREFIX + "small_edit.html"; }else if(two.get(0).getOrderType()==1){ for (TSystemPriceService s : two) { if(s.getType()==1){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json1", json); }else if(s.getType()==2){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json2", json); }else if(s.getType()==3){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json3", json); }else if(s.getType()==4){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json4", json); }else if(s.getType()==5){ JSONArray objects = JSON.parseArray(s.getContent()); objects.getJSONObject(0).put("num10",1); Object o = objects.get(0); System.out.println(o ); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json5a", objects); }else if(s.getType()==6){ JSONArray objects = JSON.parseArray(s.getContent()); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json6a", objects); }else if(s.getType()==7){ JSONArray objects = JSON.parseArray(s.getContent()); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json7a", objects); } } Integer language = UserExt.getLanguage(); model.addAttribute("item", two.get(0)); TOpenCity openCity = openCityService.getBaseMapper().selectById(two.get(0).getOpenCityId()); if(language==1){ openCity.setCityName(openCity.getChineseName()); }else if(language==2){ openCity.setCityName(openCity.getEnglishName()); }else { openCity.setCityName(openCity.getIndonesianName()); } model.addAttribute("city", openCity); List openCities = openCityService.getBaseMapper().selectList(new QueryWrapper().ne("flag", 3)); model.addAttribute("openCity",openCities); model.addAttribute("code", tSystemPriceId); model.addAttribute("userType", two.get(0).getUserType()); model.addAttribute("sub", 1); List modelList = tServerCarmodelService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).eq("state", 1).eq("id",two.get(0).getServerCarModelId())); for (TServerCarmodel tServerCarmodel : modelList) { if(language==2){ tServerCarmodel.setName(tServerCarmodel.getEname()); } if(language==3){ tServerCarmodel.setName(tServerCarmodel.getYname()); } } model.addAttribute("modelList", modelList); model.addAttribute("language", language); return PREFIX + "tSystemPriceService_edit.html"; } return null; } @RequestMapping("/tSystemPrice_update2/{tSystemPriceId}") public String tSystemPriceUpdate2(@PathVariable String tSystemPriceId, Model model) { List two = tSystemPriceService.getService(tSystemPriceId); if(two.get(0).getOrderType()==4) { if (SinataUtil.isNotEmpty(two)) { JSONObject json1 = JSONObject.fromObject(two.get(0).getContent()); model.addAttribute("json1", json1); JSONObject json2 = JSONObject.fromObject(two.get(1).getContent()); model.addAttribute("json2", json2); JSONArray json3 = JSON.parseArray(two.get(2).getContent()); model.addAttribute("json3a", json3); } Integer cityId = two.get(0).getOpenCityId(); OpenCity openCity = openCityMapper.selectList(new LambdaQueryWrapper().eq(OpenCity::getId,cityId).ne(BaseBean::getFlag,3)).get(0); Integer language = UserExt.getLanguage(); if(language==1){ openCity.setCityName(openCity.getChineseName()); }else if(language==2){ openCity.setCityName(openCity.getEnglishName()); }else { openCity.setCityName(openCity.getIndonesianName()); } model.addAttribute("city", openCity); model.addAttribute("code", tSystemPriceId); model.addAttribute("item", cityMapper.selectList(null)); model.addAttribute("sub", 2); model.addAttribute("userType", two.get(0).getUserType()); model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "small_edit.html"; }else if(two.get(0).getOrderType()==1){ for (TSystemPriceService s : two) { if(s.getType()==1){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json1", json); }else if(s.getType()==2){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json2", json); }else if(s.getType()==3){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json3", json); }else if(s.getType()==4){ JSONObject json = JSONObject.fromObject(s.getContent()); model.addAttribute("json4", json); }else if(s.getType()==5){ JSONArray objects = JSON.parseArray(s.getContent()); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json5a", objects); }else if(s.getType()==6){ JSONArray objects = JSON.parseArray(s.getContent()); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json6a", objects); }else if(s.getType()==7){ JSONArray objects = JSON.parseArray(s.getContent()); // JSONObject json = JSONObject.fromObject(objects); model.addAttribute("json7a", objects); } } model.addAttribute("item", two.get(0)); Integer cityId = two.get(0).getOpenCityId(); OpenCity openCity = openCityMapper.selectList(new LambdaQueryWrapper().eq(OpenCity::getId,cityId).ne(BaseBean::getFlag,3)).get(0); Integer language = UserExt.getLanguage(); if(language==1){ openCity.setCityName(openCity.getChineseName()); }else if(language==2){ openCity.setCityName(openCity.getEnglishName()); }else { openCity.setCityName(openCity.getIndonesianName()); } model.addAttribute("code", tSystemPriceId); model.addAttribute("userType", two.get(0).getUserType()); model.addAttribute("sub", 2); model.addAttribute("city", openCity); List modelList = tServerCarmodelService.getBaseMapper().selectList(new QueryWrapper().eq("type", 1).eq("state", 1).eq("id",two.get(0).getServerCarModelId())); for (TServerCarmodel tServerCarmodel : modelList) { if(language==2){ tServerCarmodel.setName(tServerCarmodel.getEname()); } if(language==3){ tServerCarmodel.setName(tServerCarmodel.getYname()); } } model.addAttribute("modelList", modelList); model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tSystemPriceService_edit.html"; } return null; } /** * 获取专车价格设置列表 */ @RequestMapping(value = "/listSpecial") @ResponseBody public Object list(String name, Integer state) { Page> page = new PageFactory>().defaultPage(); List> specialPriceList = tSystemPriceService.getSpecialPriceList(page, UserExt.getUser().getObjectId(), name, state); Integer language = UserExt.getLanguage(); for (Map map : specialPriceList) { if(null == map.get("openCityId")){ continue; } Integer openCityId = Integer.valueOf(map.get("openCityId").toString()); TOpenCity openCity = openCityService.getBaseMapper().selectById(openCityId); if(null != openCity){ map.put("city", language == 1 ? openCity.getChineseName() : language == 2 ? openCity.getEnglishName() : openCity.getIndonesianName()); } } page.setRecords(specialPriceList); return super.packForBT(page); } @RequestMapping(value = "/listService") @ResponseBody public Object listService(String time, String company, String phone, String account, Integer state) { Page> page = new PageFactory>().defaultPage(); page.setRecords(tSystemPriceService.getServicePriceList(page,time, company, phone, account, state)); return super.packForBT(page); } /** * 新增专车价格设置 */ @RequestMapping(value = "/add") @ResponseBody public Object add(Integer openCityId,Integer serverCarModelId,Integer type,String json1,String json2,String json3,String json4,String json5,String json6,String json7) { String randomNumber = ToolUtil.getRandomNumber(11); Integer userId=UserExt.getUser().getId(); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json1,1,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json2,2,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json3,3,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json4,4,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json5,5,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json6,6,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json7,7,randomNumber,userId); return SUCCESS_TIP; } /** * 修改专车价格设置 */ @RequestMapping(value = "/update") @ResponseBody public Object update(Integer openCityId,Integer oldServer ,Integer serverCarModelId,Integer oldType,Integer oldOpenCityId, Integer type,String json1,String json2,String json3,String json4,String json5,String json6,String json7) { tSystemPriceService.remove(new LambdaQueryWrapper().eq(TSystemPrice::getOpenCityId,oldOpenCityId).eq(TSystemPrice::getUserType,oldType).eq(TSystemPrice::getOrderType,1).eq(TSystemPrice::getCompanyId,1).eq(TSystemPrice::getServerCarModelId,oldServer)); String randomNumber = ToolUtil.getRandomNumber(11); Integer userId=1; if(type==null){ type=oldType; } tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json1,1,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json2,2,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json3,3,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json4,4,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json5,5,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json6,6,randomNumber,userId); tSystemPriceService.saveMotoService(openCityId,serverCarModelId,type,json7,7,randomNumber,userId); return SUCCESS_TIP; } /** * 修改状态 */ @RequestMapping(value = "/opt") @ResponseBody public Object opt(Integer optType, Integer tSystemPriceId) { // List service = itSystemPriceServiceService.getBaseMapper().selectList(new LambdaQueryWrapper() // .eq(TSystemPriceService::getCompanyId,byId.getCompanyId()).eq(TSystemPriceService::getUserType,byId.getUserType()) // .eq(TSystemPriceService::getCityId,byId.getCityId()).eq(TSystemPriceService::getServerCarModelId,byId.getServerCarModelId()) // .eq(TSystemPriceService::getOrderType,byId.getOrderType())); TSystemPrice systemPrice = new TSystemPrice(); if (1 == optType) { //冻结 systemPrice.setState(2); } else if (2 == optType) { //解冻 systemPrice.setState(1); } else if (3 == optType) { //删除 systemPrice.setState(3); } TSystemPrice byId = tSystemPriceService.getById(tSystemPriceId); tSystemPriceService.update(systemPrice, new QueryWrapper() .eq("companyId",byId.getCompanyId()).eq("userType",byId.getUserType()) .eq("cityId",byId.getCityId()).eq("serverCarModelId",byId.getServerCarModelId()) .eq("orderType",byId.getOrderType())); return SUCCESS_TIP; } @RequestMapping(value = "/opt1") @ResponseBody public Object opt1(String tSystemPriceId) { tSystemPriceService.updateState(tSystemPriceId); return SUCCESS_TIP; } /** * 小件物流价格设置 */ @RequestMapping(value = "/smallSubmit") @ResponseBody public Object smallSubmit(Integer type, Integer tcId, String json2,String json1,Integer openCityId) { Object num1 = JSON.parseObject(json2).get("num1"); Object num2 = JSON.parseObject(json2).get("num2"); Object num3 = JSON.parseObject(json2).get("num3"); Object num4 = JSON.parseObject(json2).get("num4"); // Object num5 = JSON.parseObject(json2).get("num5"); // Object num6 = JSON.parseObject(json2).get("num6"); // Object num7 = JSON.parseObject(json2).get("num7"); // Object num8 = JSON.parseObject(json2).get("num8"); // Object num9 = JSON.parseObject(json2).get("num9"); // Object num10 = JSON.parseObject(json2).get("num10"); // Object num11 = JSON.parseObject(json2).get("num11"); String a ="{\"num1\":\""+num1+"\",\"num2\":\""+num2+"\",\"num3\":\""+num3+"\"}"; String randomNumber = ToolUtil.getRandomNumber(11); tSystemPriceService.saveService(type, openCityId,1, a,randomNumber,1,"123"); String b ="{\"num1\":\""+num4+"\"}"; tSystemPriceService.saveService(type, openCityId,2, b,randomNumber,1,"123"); tSystemPriceService.saveService(type, openCityId,7, json1,randomNumber,1,"123"); return SUCCESS_TIP; } @RequestMapping(value = "/smallCheckSubmit") @ResponseBody public Object smallCheckSubmit(String id, Integer check) { tSystemPriceService.updateCheck(id,check); return SUCCESS_TIP; } }