From 29fc332aa64432e4780fd2bcfb2baa93426ae910 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 11 八月 2025 19:37:39 +0800
Subject: [PATCH] 修改bug

---
 ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSystemPriceController.java |  394 ++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 271 insertions(+), 123 deletions(-)

diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSystemPriceController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSystemPriceController.java
index b5d9323..53eebf1 100644
--- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSystemPriceController.java
+++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TSystemPriceController.java
@@ -1,35 +1,38 @@
 package com.stylefeng.guns.modular.system.controller.specialTrain;
 
+import cn.hutool.core.codec.Base64;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.stylefeng.guns.core.base.controller.BaseController;
 import com.stylefeng.guns.core.base.tips.ErrorTip;
 import com.stylefeng.guns.core.beetl.ShiroExtUtil;
 import com.stylefeng.guns.core.common.constant.factory.PageFactory;
-import com.stylefeng.guns.core.shiro.ShiroKit;
+import com.stylefeng.guns.core.log.LogObjectHolder;
 import com.stylefeng.guns.core.util.SinataUtil;
+import com.stylefeng.guns.core.util.ToolUtil;
+import com.stylefeng.guns.modular.system.model.SystemPriceCity;
+import com.stylefeng.guns.modular.system.model.TRegion;
 import com.stylefeng.guns.modular.system.model.TServerCarmodel;
-import com.stylefeng.guns.modular.system.model.User;
-import com.stylefeng.guns.modular.system.service.ITServerCarmodelService;
-import com.stylefeng.guns.modular.system.service.IUserService;
+import com.stylefeng.guns.modular.system.model.TSystemPrice;
+import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.PushMinistryOfTransportUtil;
 import com.stylefeng.guns.modular.system.util.ResultUtil;
 import net.sf.json.JSONObject;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.beans.factory.annotation.Autowired;
-import com.stylefeng.guns.core.log.LogObjectHolder;
-import org.springframework.web.bind.annotation.RequestParam;
-import com.stylefeng.guns.modular.system.model.TSystemPrice;
-import com.stylefeng.guns.modular.system.service.ITSystemPriceService;
+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;
+import java.util.Optional;
 import java.util.stream.Collectors;
 
 /**
@@ -46,27 +49,90 @@
 
     @Autowired
     private ITSystemPriceService tSystemPriceService;
-
+    
     @Autowired
     private ITServerCarmodelService tServerCarmodelService;
-
+    
     @Autowired
     private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
-
+    
     @Autowired
-    private IUserService userService;
-
+    private ITRegionService tRegionService;
+    @Autowired
+    private ShiroExtUtil shiroExtUtil;
+    
     @Value("${pushMinistryOfTransport}")
     private boolean pushMinistryOfTransport;
-
-
-
-
+    
+    @Autowired
+    private ISystemPriceCityService systemPriceCityService;
+    
+    
+    /**
+     * 跳转到列表页
+     * @return
+     */
+    @RequestMapping("/showSystemPriceCity")
+    public String showSystemPriceCity(){
+        return PREFIX + "systemPriceCity.html";
+    }
+    
+    /**
+     * 跳转到添加价格
+     * @return
+     */
+    @RequestMapping("/systemPriceCity_add")
+    public String systemPriceCity_add(Model model){
+        List<TServerCarmodel> tServerCarmodels = tServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 1).eq("state", 1));
+        model.addAttribute("serverCarModelList", tServerCarmodels);
+        List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0));
+        model.addAttribute("provinceList",provinceList);
+        return PREFIX + "systemPriceCity_add.html";
+    }
+    
+    /**
+     * 跳转到修改价格城市
+     * @return
+     */
+    @RequestMapping("/systemPriceCity_update")
+    public String systemPriceCity_update(Integer id, Model model){
+        SystemPriceCity systemPriceCity = systemPriceCityService.selectById(id);
+        model.addAttribute("item", systemPriceCity);
+        //省
+        List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0));
+        model.addAttribute("provinceList",provinceList);
+        //市
+        TRegion code = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("code", systemPriceCity.getAreaCode()));
+        List<TRegion> cityList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", code.getId()));
+        model.addAttribute("cityList",cityList);
+        //区
+        model.addAttribute("areaList", null);
+        if(ToolUtil.isNotEmpty(systemPriceCity.getProvinceCode())){
+            code = tRegionService.selectOne(new EntityWrapper<TRegion>().eq("code", systemPriceCity.getCityCode()));
+            List<TRegion> areaList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", code.getId()));
+            model.addAttribute("areaList",areaList);
+        }
+        List<TServerCarmodel> tServerCarmodels = tServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 1).eq("state", 1));
+        List<TSystemPrice> tSystemPrices = tSystemPriceService.selectList(new EntityWrapper<TSystemPrice>().eq("systemPriceCityId", id).eq("state", 1).eq("type", 1));
+        tServerCarmodels.forEach(s->{
+            Optional<TSystemPrice> first = tSystemPrices.stream().filter(p -> p.getServerCarModelId().equals(s.getId())).findFirst();
+            if(first.isPresent()){
+                TSystemPrice tSystemPrice = first.get();
+                s.setObject(Base64.encode(JSON.toJSONString(tSystemPrice)));
+            }
+        });
+        model.addAttribute("serverCarModelList", tServerCarmodels);
+        TSystemPrice systemPrice = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("systemPriceCityId", id).eq("state", 1).eq("type", 2));
+        model.addAttribute("zcPrice", Base64.encode(systemPrice.getContent()));
+        return PREFIX + "systemPriceCity_edit.html";
+    }
+    
+    
     /**
      * 跳转到快车价格设置首页
      */
     @RequestMapping("/special")
-    public String index() {
+    public String index(Integer id) {
         return PREFIX + "tSystemPrice.html";
     }
 
@@ -76,13 +142,13 @@
     @RequestMapping("/small")
     public String small(Model model) {
         //跨城小件物流
-        TSystemPrice one = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 5).eq("companyId", ShiroExtUtil.getUser().getObjectId()).eq("state", 1));
+        TSystemPrice one = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 5).eq("companyId", shiroExtUtil.getUser().getObjectId()).eq("state", 1));
         if (SinataUtil.isNotEmpty(one)){
             JSONObject json1 = JSONObject.fromObject(one.getContent());
             model.addAttribute("json1",json1);
         }
         //同城小件物流
-        TSystemPrice two = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 4).eq("companyId", ShiroExtUtil.getUser().getObjectId()).eq("state", 1));
+        TSystemPrice two = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 4).eq("companyId", shiroExtUtil.getUser().getObjectId()).eq("state", 1));
         if (SinataUtil.isNotEmpty(two)){
             JSONObject json2 = JSONObject.fromObject(two.getContent());
             model.addAttribute("json2",json2);
@@ -93,38 +159,51 @@
 
 
      @RequestMapping("/taxi")
-    public String taxi(Model model) {
-         Integer id = ShiroExtUtil.getUser().getId();
-         TSystemPrice one = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 2).eq("companyId", id));
-         if (SinataUtil.isNotEmpty(one)){
-             JSONObject json1 = JSONObject.fromObject(one.getContent());
-             model.addAttribute("json",json1);
+    public String taxi(String price, Model model) {
+         if(ToolUtil.isNotEmpty(price)){
+             price = Base64.decodeStr(price);
+             JSONObject json1 = JSONObject.fromObject(price);
+             model.addAttribute("json", json1);
          }
-        return PREFIX + "taxiSet.html";
-    }
+         return PREFIX + "taxiSet.html";
+     }
     /**
      * 跳转到添加快车价格设置
      */
     @RequestMapping("/tSystemPrice_add")
-    public String tSystemPriceAdd(Model model) {
-        //查询所有快车车型
-        List<TSystemPrice> tSystemPrices = tSystemPriceService.selectList(new EntityWrapper<TSystemPrice>().eq("type", 1).eq("companyId", ShiroExtUtil.getUser().getObjectId()).ne("state", 3));
-        List<TServerCarmodel> modelList = tServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 1).eq("state", 1));
-        List<TServerCarmodel> 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);
-            }
+    public String tSystemPriceAdd(Integer id, String price, Model model) {
+        model.addAttribute("item", null);
+        model.addAttribute("content", null);
+        model.addAttribute("contentPutOne", null);
+        model.addAttribute("contentNotOne", null);
+        model.addAttribute("contentPutTwo", null);
+        model.addAttribute("contentNotTwo", null);
+        model.addAttribute("contentPutThree", null);
+        model.addAttribute("contentNotThree", null);
+        model.addAttribute("contentExclusive", null);
+        model.addAttribute("contentPrice", null);
+        if(ToolUtil.isNotEmpty(price)){
+            String s = Base64.decodeStr(price);
+            TSystemPrice tSystemPrice = JSON.parseObject(s, TSystemPrice.class);
+            model.addAttribute("item",tSystemPrice);
+            LogObjectHolder.me().set(tSystemPrice);
+    
+            JSONObject json = JSONObject.fromObject(tSystemPrice.getContent());
+            model.addAttribute("content",json);
+    
+            model.addAttribute("contentPutOne", JSONObject.fromObject(tSystemPrice.getContentPutOne()));
+            model.addAttribute("contentNotOne", JSONObject.fromObject(tSystemPrice.getContentNotOne()));
+            model.addAttribute("contentPutTwo", JSONObject.fromObject(tSystemPrice.getContentPutTwo()));
+            model.addAttribute("contentNotTwo", JSONObject.fromObject(tSystemPrice.getContentNotTwo()));
+            model.addAttribute("contentPutThree", JSONObject.fromObject(tSystemPrice.getContentPutThree()));
+            model.addAttribute("contentNotThree", JSONObject.fromObject(tSystemPrice.getContentNotThree()));
+            model.addAttribute("contentExclusive", JSONObject.fromObject(tSystemPrice.getContentExclusive()));
+            model.addAttribute("contentPrice", JSONObject.fromObject(tSystemPrice.getContentPrice()));
         }
-        model.addAttribute("modelList",serverCarmodels);
-        return PREFIX + "tSystemPrice_add.html";
+        
+        TServerCarmodel tServerCarmodel = tServerCarmodelService.selectById(id);
+        model.addAttribute("modelList", tServerCarmodel);
+        return PREFIX + "tSystemPrice_edit.html";
     }
 
     /**
@@ -138,22 +217,22 @@
 
         JSONObject json = JSONObject.fromObject(tSystemPrice.getContent());
         model.addAttribute("content",json);
-
-        model.addAttribute("contentPutOne",JSONObject.fromObject(tSystemPrice.getContentPutOne()));
-        model.addAttribute("contentNotOne",JSONObject.fromObject(tSystemPrice.getContentNotOne()));
-        model.addAttribute("contentPutTwo",JSONObject.fromObject(tSystemPrice.getContentPutTwo()));
-        model.addAttribute("contentNotTwo",JSONObject.fromObject(tSystemPrice.getContentNotTwo()));
-        model.addAttribute("contentPutThree",JSONObject.fromObject(tSystemPrice.getContentPutThree()));
-        model.addAttribute("contentNotThree",JSONObject.fromObject(tSystemPrice.getContentNotThree()));
-        model.addAttribute("contentExclusive",JSONObject.fromObject(tSystemPrice.getContentExclusive()));
-        model.addAttribute("contentPrice",JSONObject.fromObject(tSystemPrice.getContentPrice()));
-
+    
+        model.addAttribute("contentPutOne", JSONObject.fromObject(tSystemPrice.getContentPutOne()));
+        model.addAttribute("contentNotOne", JSONObject.fromObject(tSystemPrice.getContentNotOne()));
+        model.addAttribute("contentPutTwo", JSONObject.fromObject(tSystemPrice.getContentPutTwo()));
+        model.addAttribute("contentNotTwo", JSONObject.fromObject(tSystemPrice.getContentNotTwo()));
+        model.addAttribute("contentPutThree", JSONObject.fromObject(tSystemPrice.getContentPutThree()));
+        model.addAttribute("contentNotThree", JSONObject.fromObject(tSystemPrice.getContentNotThree()));
+        model.addAttribute("contentExclusive", JSONObject.fromObject(tSystemPrice.getContentExclusive()));
+        model.addAttribute("contentPrice", JSONObject.fromObject(tSystemPrice.getContentPrice()));
+    
         //查询所有快车车型
-        List<TSystemPrice> tSystemPrices = tSystemPriceService.selectList(new EntityWrapper<TSystemPrice>().eq("type", 1).eq("companyId", ShiroExtUtil.getUser().getObjectId()).ne("state", 3));
+        List<TSystemPrice> tSystemPrices = tSystemPriceService.selectList(new EntityWrapper<TSystemPrice>().eq("type", 1).eq("companyId", shiroExtUtil.getUser().getObjectId()).ne("state", 3));
         List<TServerCarmodel> modelList = tServerCarmodelService.selectList(new EntityWrapper<TServerCarmodel>().eq("type", 1).eq("state", 1)
                 .notIn("id", tSystemPrices.stream().map(TSystemPrice::getServerCarModelId).collect(Collectors.toList())));
         List<TServerCarmodel> serverCarmodels = new ArrayList<>();
-
+    
         modelList.add(tServerCarmodelService.selectById(tSystemPrice.getServerCarModelId()));
 //            boolean b = true;
 //            for(TSystemPrice tsp : tSystemPrices){
@@ -169,7 +248,25 @@
 
         return PREFIX + "tSystemPrice_edit.html";
     }
-
+    
+    
+    /**
+     * 获取价格列表设置
+     * @param name
+     * @param time
+     * @return
+     */
+    @RequestMapping(value = "/queryList")
+    @ResponseBody
+    public Object queryList(String condition, String insertTime){
+        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
+        page.setRecords(systemPriceCityService.queryList(page, condition, insertTime));
+        return super.packForBT(page);
+        
+    }
+    
+    
+    
     /**
      * 获取快车价格设置列表
      */
@@ -177,7 +274,7 @@
     @ResponseBody
     public Object list(String name,Integer state) {
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        page.setRecords(tSystemPriceService.getSpecialPriceList(page, ShiroExtUtil.getUser().getObjectId(), name, state));
+        page.setRecords(tSystemPriceService.getSpecialPriceList(page, shiroExtUtil.getUser().getObjectId(), name, state));
         return super.packForBT(page);
     }
 
@@ -186,44 +283,72 @@
      */
     @RequestMapping(value = "/add")
     @ResponseBody
-    public Object add(TSystemPrice tSystemPrice) {
-        //判断当前公司是否添加过该快车车型价格配置
-        int count = tSystemPriceService.selectCount(new EntityWrapper<TSystemPrice>()
-                .eq("type", 1)
-                .eq("serverCarModelId", tSystemPrice.getServerCarModelId())
-                .eq("companyId", ShiroExtUtil.getUser().getObjectId())
-                .last(" and not FIND_IN_SET(state,'3')"));
-        if (count > 0){
-            TServerCarmodel one = tServerCarmodelService.selectById(tSystemPrice.getServerCarModelId());
-            return new ErrorTip(500, "【"+one.getName()+"】已存在,请重新选择");
+    public Object add(SystemPriceCity systemPriceCity, String zcPrice, String czcPrice) {
+        if(ToolUtil.isNotEmpty(systemPriceCity.getProvinceCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getProvinceCode());
+            systemPriceCity.setProvinceCode(tRegion.getCode());
         }
-        tSystemPrice.setCompanyId(ShiroExtUtil.getUser().getObjectId());
-        tSystemPrice.setType(1);
+        if(ToolUtil.isNotEmpty(systemPriceCity.getCityCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getCityCode());
+            systemPriceCity.setCityCode(tRegion.getCode());
+        }
+        if(ToolUtil.isNotEmpty(systemPriceCity.getAreaCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getAreaCode());
+            systemPriceCity.setAreaCode(tRegion.getCode());
+        }
+        
+        
+        SystemPriceCity one = null;
+        if(null != systemPriceCity.getProvinceCode()){
+            one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                    .eq("cityCode", systemPriceCity.getCityCode()).eq("provinceCode", systemPriceCity.getProvinceCode()).ne("flag", 3));
+        }
+        if(null == one){
+            one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                    .eq("cityCode", systemPriceCity.getCityCode()).ne("flag", 3));
+            if(null == one){
+                one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                        .ne("flag", 3));
+                if(null != one){
+                    return new ErrorTip(500, "不能重复添加城市");
+                }
+            }else{
+                return new ErrorTip(500, "不能重复添加城市");
+            }
+        }else{
+            return new ErrorTip(500, "不能重复添加城市");
+        }
+        systemPriceCityService.insert(systemPriceCity);
+        //解析专车的价格配置
+        JSONArray jsonArray = JSON.parseArray(zcPrice);
+        for (int i = 0; i < jsonArray.size(); i++) {
+            TSystemPrice tSystemPrice = jsonArray.getObject(i, TSystemPrice.class);
+            tSystemPrice.setSystemPriceCityId(systemPriceCity.getId());
+            tSystemPrice.setType(1);
+            tSystemPrice.setState(1);
+            tSystemPriceService.insert(tSystemPrice);
+        }
+        //解析出出租车价格设置
+        TSystemPrice tSystemPrice = new TSystemPrice();
+        tSystemPrice.setContent(czcPrice);
+        tSystemPrice.setSystemPriceCityId(systemPriceCity.getId());
+        tSystemPrice.setType(2);
         tSystemPrice.setState(1);
         tSystemPriceService.insert(tSystemPrice);
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                if(pushMinistryOfTransport){//上传数据
-                    pushMinistryOfTransportUtil.baseInfoCompanyFare(tSystemPrice.getId());
-                }
-            }
-        }).start();
         return SUCCESS_TIP;
     }
 
     @RequestMapping(value = "/taxiSet")
     @ResponseBody
     public Object taxiSet(String content) {
-        Integer id = ShiroExtUtil.getUser().getId();
+        Integer id = shiroExtUtil.getUser().getId();
         TSystemPrice tSystemPrice1 = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 2).eq("companyId", id));
-        if (tSystemPrice1==null) {
+        if (tSystemPrice1 == null) {
             TSystemPrice tSystemPrice = new TSystemPrice();
             tSystemPrice.setContent(content);
             tSystemPrice.setType(2);
-            tSystemPrice.setCompanyId(id);
             tSystemPriceService.insert(tSystemPrice);
-        }else {
+        } else {
             tSystemPrice1.setContent(content);
             tSystemPriceService.updateById(tSystemPrice1);
         }
@@ -236,29 +361,60 @@
      */
     @RequestMapping(value = "/update")
     @ResponseBody
-    public Object update(TSystemPrice tSystemPrice) {
-        TSystemPrice obj = tSystemPriceService.selectById(tSystemPrice.getId());
-        if (obj.getServerCarModelId() != tSystemPrice.getServerCarModelId()){
-            //判断当前公司是否添加过该快车车型价格配置
-            int count = tSystemPriceService.selectCount(new EntityWrapper<TSystemPrice>()
-                    .eq("type", 1)
-                    .eq("serverCarModelId", tSystemPrice.getServerCarModelId())
-                    .eq("companyId", ShiroExtUtil.getUser().getObjectId())
-                    .last(" and not FIND_IN_SET(state,'3')"));
-            if (count > 0){
-                TServerCarmodel one = tServerCarmodelService.selectById(tSystemPrice.getServerCarModelId());
-                return new ErrorTip(500, "【"+one.getName()+"】已存在,请重新选择");
-            }
+    public Object update(SystemPriceCity systemPriceCity, String zcPrice, String czcPrice) {
+        if(ToolUtil.isNotEmpty(systemPriceCity.getProvinceCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getProvinceCode());
+            systemPriceCity.setProvinceCode(tRegion.getCode());
         }
-        tSystemPriceService.updateById(tSystemPrice);
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                if(pushMinistryOfTransport) {//上传数据
-                    pushMinistryOfTransportUtil.baseInfoCompanyFare(tSystemPrice.getId());
+        if(ToolUtil.isNotEmpty(systemPriceCity.getCityCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getCityCode());
+            systemPriceCity.setCityCode(tRegion.getCode());
+        }
+        if(ToolUtil.isNotEmpty(systemPriceCity.getAreaCode())){
+            TRegion tRegion = tRegionService.selectById(systemPriceCity.getAreaCode());
+            systemPriceCity.setAreaCode(tRegion.getCode());
+        }
+    
+    
+        SystemPriceCity one = null;
+        if(null != systemPriceCity.getProvinceCode()){
+            one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                    .eq("cityCode", systemPriceCity.getCityCode()).eq("provinceCode", systemPriceCity.getProvinceCode()).ne("flag", 3));
+        }
+        if(null == one){
+            one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                    .eq("cityCode", systemPriceCity.getCityCode()).ne("flag", 3));
+            if(null == one){
+                one = systemPriceCityService.selectOne(new EntityWrapper<SystemPriceCity>().eq("areaCode", systemPriceCity.getAreaCode())
+                        .ne("flag", 3));
+                if(null != one && !systemPriceCity.getId().equals(one.getId())){
+                    return new ErrorTip(500, "不能重复添加城市");
                 }
+            }else if(!systemPriceCity.getId().equals(one.getId())){
+                return new ErrorTip(500, "不能重复添加城市");
             }
-        }).start();
+        }else if(!systemPriceCity.getId().equals(one.getId())){
+            return new ErrorTip(500, "不能重复添加城市");
+        }
+        systemPriceCityService.updateById(systemPriceCity);
+        //删除历史数据
+        tSystemPriceService.delete(new EntityWrapper<TSystemPrice>().eq("systemPriceCityId", systemPriceCity.getId()));
+        //解析专车的价格配置
+        JSONArray jsonArray = JSON.parseArray(zcPrice);
+        for (int i = 0; i < jsonArray.size(); i++) {
+            TSystemPrice tSystemPrice = jsonArray.getObject(i, TSystemPrice.class);
+            tSystemPrice.setSystemPriceCityId(systemPriceCity.getId());
+            tSystemPrice.setType(1);
+            tSystemPrice.setState(1);
+            tSystemPriceService.insert(tSystemPrice);
+        }
+        //解析出出租车价格设置
+        TSystemPrice tSystemPrice = new TSystemPrice();
+        tSystemPrice.setContent(czcPrice);
+        tSystemPrice.setSystemPriceCityId(systemPriceCity.getId());
+        tSystemPrice.setType(2);
+        tSystemPrice.setState(1);
+        tSystemPriceService.insert(tSystemPrice);
         return SUCCESS_TIP;
     }
 
@@ -267,16 +423,10 @@
      */
     @RequestMapping(value = "/opt")
     @ResponseBody
-    public Object opt(Integer optType,Integer tSystemPriceId) {
-        TSystemPrice systemPrice = new TSystemPrice();
-        if (1 == optType){  //冻结
-            systemPrice.setState(2);
-        }else if (2 == optType){  //解冻
-            systemPrice.setState(1);
-        }else if (3 == optType){  //删除
-            systemPrice.setState(3);
-        }
-        tSystemPriceService.update(systemPrice,new EntityWrapper<TSystemPrice>().eq("id",tSystemPriceId));
+    public Object opt(Integer id) {
+        SystemPriceCity systemPriceCity = systemPriceCityService.selectById(id);
+        systemPriceCity.setFlag(3);
+        systemPriceCityService.updateById(systemPriceCity);
         return SUCCESS_TIP;
     }
 
@@ -287,28 +437,26 @@
     @ResponseBody
     public Object smallSubmit(String json1,String json2) {
         //跨城小件物流
-        TSystemPrice one = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 5).eq("companyId", ShiroExtUtil.getUser().getObjectId()));
+        TSystemPrice one = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 5).eq("companyId", shiroExtUtil.getUser().getObjectId()));
         if (SinataUtil.isNotEmpty(one)){
             one.setContent(json1);
             tSystemPriceService.updateById(one);
-        }else{
+        }else {
             one = new TSystemPrice();
             one.setState(1);
             one.setType(5);
-            one.setCompanyId(ShiroExtUtil.getUser().getObjectId());
             one.setContent(json1);
             tSystemPriceService.insert(one);
         }
         //同城小件物流
-        TSystemPrice two = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 4).eq("companyId", ShiroExtUtil.getUser().getObjectId()));
+        TSystemPrice two = tSystemPriceService.selectOne(new EntityWrapper<TSystemPrice>().eq("type", 4).eq("companyId", shiroExtUtil.getUser().getObjectId()));
         if (SinataUtil.isNotEmpty(two)){
             two.setContent(json2);
             tSystemPriceService.updateById(two);
-        }else{
+        }else {
             two = new TSystemPrice();
             two.setState(1);
             two.setType(4);
-            two.setCompanyId(ShiroExtUtil.getUser().getObjectId());
             two.setContent(json2);
             tSystemPriceService.insert(two);
         }

--
Gitblit v1.7.1