Browse Source

架空导线数据阶段提交

user5 3 years ago
parent
commit
0237105fe6

+ 26 - 0
src/main/java/com/jeeplus/modules/sg/raiseCapitalDesign/entity/DisposeData.java

@@ -0,0 +1,26 @@
+package com.jeeplus.modules.sg.raiseCapitalDesign.entity;
+
+/**
+ * @author: 徐滕
+ * @create: 2021-08-10 16:52
+ **/
+public class DisposeData {
+    private String id;
+    private String number;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getNumber() {
+        return number;
+    }
+
+    public void setNumber(String number) {
+        this.number = number;
+    }
+}

+ 10 - 1
src/main/java/com/jeeplus/modules/sg/raiseCapitalDesign/entity/VoltageData.java

@@ -3,10 +3,11 @@ package com.jeeplus.modules.sg.raiseCapitalDesign.entity;
 import java.util.List;
 
 /**
- * @author: 大猫
+ * @author: 徐滕
  * @create: 2021-08-10 16:00
  **/
 public class VoltageData {
+    private String uuid;
     private List<VoltageInfo> highVoltageList;
     private List<VoltageInfo> lowVoltageList;
 
@@ -25,4 +26,12 @@ public class VoltageData {
     public void setLowVoltageList(List<VoltageInfo> lowVoltageList) {
         this.lowVoltageList = lowVoltageList;
     }
+
+    public String getUuid() {
+        return uuid;
+    }
+
+    public void setUuid(String uuid) {
+        this.uuid = uuid;
+    }
 }

+ 10 - 1
src/main/java/com/jeeplus/modules/sg/raiseCapitalDesign/entity/VoltageInfo.java

@@ -7,7 +7,8 @@ import com.jeeplus.core.persistence.DataEntity;
  * @author: 徐滕
  * @create: 2021-08-10 10:56
  **/
-public class VoltageInfo extends DataEntity<VoltageInfo> {
+public class VoltageInfo{
+    private String id;       //id
     private String conductorType;       //导线型号
     private String singleCircuitPath;   //单回路路径
     private String doubleCircuitPath;   //双回路路径
@@ -16,6 +17,14 @@ public class VoltageInfo extends DataEntity<VoltageInfo> {
     private String voltageType;         //类型
     private String voltageName;         //名称
 
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
     public String getConductorType() {
         return conductorType;
     }

+ 52 - 1
src/main/java/com/jeeplus/modules/sg/raiseCapitalDesign/service/RaiseCapitalDesignService.java

@@ -6,6 +6,7 @@ package com.jeeplus.modules.sg.raiseCapitalDesign.service;
 import com.alibaba.fastjson.JSON;
 import com.google.common.collect.Lists;
 import com.jeeplus.common.config.Global;
+import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.service.CrudService;
 import com.jeeplus.modules.sg.financial.erpcredit.util.SerializeUtil;
@@ -17,6 +18,7 @@ import com.jeeplus.modules.sg.raiseCapital.entity.RaiseCapital;
 import com.jeeplus.modules.sg.raiseCapital.mapper.RaiseCapitalMapper;
 import com.jeeplus.modules.sg.raiseCapital.utils.RaiseExportUtil;
 import com.jeeplus.modules.sg.raiseCapital.utils.RaiseTemplate;
+import com.jeeplus.modules.sg.raiseCapitalDesign.entity.DisposeData;
 import com.jeeplus.modules.sg.raiseCapitalDesign.entity.VoltageData;
 import com.jeeplus.modules.sg.raiseCapitalDesign.entity.VoltageInfo;
 import com.jeeplus.modules.sg.raiseCapitalDesign.mapper.RaiseCapitalDesignMapper;
@@ -247,6 +249,27 @@ public class RaiseCapitalDesignService extends CrudService<RaiseCapitalDesignMap
 	}
 
 	/**
+	 * 遍历查询结构 大类 中类 小类
+	 * 去除重复,记录大类
+	 * 根据大类查询它的中类放入list并记录
+	 */
+	public List<DisposeData> getDisposeFormData(String uuid) {
+		//创建通道,查询redis中数据
+		List<DisposeData> voltageDisposeDataList = Lists.newArrayList();
+		CacheChannel channel = J2Cache.getChannel();
+		RedisClient client = ((RedisCacheProvider)channel.getL2Provider()).getRedisClient();
+		BinaryJedisCommands binaryJedisCommands = client.get();
+		byte[] voltageDisposeBytes = binaryJedisCommands.get((uuid+"voltageDisposeData").getBytes());
+		String voltageDisposeItem = null;
+		if(null != voltageDisposeBytes){
+			voltageDisposeItem = new String(voltageDisposeBytes);
+			if(StringUtils.isNotBlank(voltageDisposeItem))
+				voltageDisposeDataList = JSON.parseArray(voltageDisposeItem,DisposeData.class);
+		}
+		return voltageDisposeDataList;
+	}
+
+	/**
 	 * 将页面数据保存到redis中
 	 * @param uuid
 	 * @param item
@@ -272,7 +295,9 @@ public class RaiseCapitalDesignService extends CrudService<RaiseCapitalDesignMap
 		byte[] bytes = binaryJedisCommands.get(uuidKey.getBytes());
 		//判定是否存在这些数据的备份,有则进行处理并返回
 		if(null != bytes){
-			list = JSON.parseArray(new String(bytes),VoltageInfo.class);
+			String item = new String(bytes);
+			if(StringUtils.isNotBlank(item))
+				list = JSON.parseArray(new String(bytes),VoltageInfo.class);
 		}else{
 			PickIng entity = new PickIng();
 			entity.setVersion(MyActiviUtils.findDic().getValue());
@@ -311,6 +336,32 @@ public class RaiseCapitalDesignService extends CrudService<RaiseCapitalDesignMap
 	 */
 	@Transactional(readOnly = false)
 	public void saveVlatage(VoltageData voltageData) {
+		List<DisposeData> dataList = Lists.newArrayList();
+		List<VoltageInfo> highVoltageList = voltageData.getHighVoltageList();
+		List<VoltageInfo> lowVoltageList = voltageData.getLowVoltageList();
+		DisposeData data = null;
+		for (VoltageInfo highVoltage: highVoltageList) {
+			data = new DisposeData();
+			data.setId(highVoltage.getId());
+			data.setNumber(highVoltage.getSingleLong());
+			dataList.add(data);
+		}
+		for (VoltageInfo lowVoltage: lowVoltageList) {
+			data = new DisposeData();
+			data.setId(lowVoltage.getId());
+			data.setNumber(lowVoltage.getSingleLong());
+			dataList.add(data);
+		}
+		String voltageDisposeDataJson = JSON.toJSONString(dataList);
+		String highVoltageJson = JSON.toJSONString(highVoltageList);
+		String lowVoltageJson = JSON.toJSONString(lowVoltageList);
+
+		CacheChannel channel = J2Cache.getChannel();
+		RedisClient client = ((RedisCacheProvider)channel.getL2Provider()).getRedisClient();
+		BinaryJedisCommands binaryJedisCommands = client.get();
+		binaryJedisCommands.set((voltageData.getUuid()+"voltageDisposeData").getBytes(),voltageDisposeDataJson.getBytes());
+		binaryJedisCommands.set((voltageData.getUuid()+"highVoltage").getBytes(),highVoltageJson.getBytes());
+		binaryJedisCommands.set((voltageData.getUuid()+"lowVoltage").getBytes(),lowVoltageJson.getBytes());
 
 	}
 }

+ 44 - 4
src/main/java/com/jeeplus/modules/sg/raiseCapitalDesign/web/RaiseCapitalDesignController.java

@@ -21,6 +21,8 @@ import com.jeeplus.modules.sg.picking.activiti.service.PickIngService;
 import com.jeeplus.modules.sg.picking.activiti.service.ShowListService;
 import com.jeeplus.modules.sg.raiseCapital.entity.RaiseCapital;
 import com.jeeplus.modules.sg.raiseCapital.service.RaiseCapitalService;
+import com.jeeplus.modules.sg.raiseCapitalDesign.entity.DisposeData;
+import com.jeeplus.modules.sg.raiseCapitalDesign.entity.VoltageData;
 import com.jeeplus.modules.sg.raiseCapitalDesign.entity.VoltageInfo;
 import com.jeeplus.modules.sg.raiseCapitalDesign.service.RaiseCapitalDesignService;
 import com.jeeplus.modules.sys.utils.UserUtils;
@@ -89,6 +91,17 @@ public class RaiseCapitalDesignController extends BaseController {
 		return "modules/sg/raiseCapitalDesign/raiseCapitalDesign";
 	}
 
+	@RequestMapping(value = "disposeFormDataOnList")
+	@ResponseBody
+	public Map disposeFormDataOnList(String uuid) {
+		Map<String,Object> map = new HashMap<>();
+		//将新增页数据保存到redis中(item)
+		List<DisposeData> voltageDisposeDataList = raiseCapitalDesignService.getDisposeFormData(uuid);
+		map.put("data",voltageDisposeDataList);
+		map.put("success",true);
+		return map;
+	}
+
 		/**
 	 * 提资表单列表数据
 	 */
@@ -111,19 +124,46 @@ public class RaiseCapitalDesignController extends BaseController {
 	}
 
 	/**
-	 * 查看,增加,编辑提资表单表单页面
+	 * 跳转架空导线处理页面
 	 */
 	//@RequiresPermissions(value={"test:raiseCapitalDesign:view","test:raiseCapitalDesign:add","test:raiseCapitalDesign:edit"},logical=Logical.OR)
 	@RequestMapping(value = "aerialConductorForm")
-	public String aerialConductorForm(String uuid, Model model) {
-		List<VoltageInfo> highVoltageList = raiseCapitalDesignService.getAerialConductor(uuid + "aerialConductor","highVoltage");
-		List<VoltageInfo> lowVoltageList = raiseCapitalDesignService.getAerialConductor(uuid + "aerialConductor","lowVoltage");
+	public String aerialConductorForm(String uuid,String item, Model model) {
+		//将新增页数据保存到redis中(item)
+		//raiseCapitalDesignService.disposeFormData(uuid,item);
+		List<VoltageInfo> highVoltageList = raiseCapitalDesignService.getAerialConductor(uuid + "highVoltage","highVoltage");
+		List<VoltageInfo> lowVoltageList = raiseCapitalDesignService.getAerialConductor(uuid + "lowVoltage","lowVoltage");
 		model.addAttribute("highVoltageList", highVoltageList);
 		model.addAttribute("lowVoltageList", lowVoltageList);
+		model.addAttribute("uuid", uuid);
 		return "modules/sg/raiseCapitalDesign/aerialConductorForm";
 	}
 
 	/**
+	 * 架空导线计算处理
+	 */
+	@ResponseBody
+	//@RequiresPermissions(value={"test:raiseCapitalDesign:add","test:raiseCapitalDesign:edit"},logical=Logical.OR)
+	@RequestMapping(value = "saveVlatage")
+	public AjaxJson saveVlatage(VoltageData voltageData, Model model) throws Exception{
+		AjaxJson j = new AjaxJson();
+		/**
+		 * 后台hibernate-validation插件校验
+		 */
+		String errMsg = beanValidator(voltageData);
+		if (StringUtils.isNotBlank(errMsg)){
+			j.setSuccess(false);
+			j.setMsg(errMsg);
+			return j;
+		}
+		//新增或编辑表单保存
+		raiseCapitalDesignService.saveVlatage(voltageData);//处理
+		j.setSuccess(true);
+		j.setMsg("处理完成");
+		return j;
+	}
+
+	/**
 	 * 保存提资表单
 	 */
 	@ResponseBody

+ 40 - 29
src/main/webapp/webpage/modules/sg/raiseCapitalDesign/aerialConductorForm.jsp

@@ -10,18 +10,6 @@
 	        $('#inDate').datetimepicker({
 				 format: "YYYY-MM-DD HH:mm:ss"
 		    });
-
-			$(".list-tabs li").click(function(){
-				$(".list-tabs li").each(function(){
-					$(this).removeAttr("class","active");
-					var id='#'+$(this).find("span").html();
-					$(id).attr("class","hide");
-				})
-				$(this).attr("class","active");
-				var id='#'+$(this).find("span").html();
-				$(id).removeAttr("class","hide");
-
-			})
 		});
 
 		function save() {
@@ -29,14 +17,15 @@
             if(!isValidate){
                 return false;
 			}else{
+            	var uuid = $("#uuid").val();
                 jp.loading();
-                jp.post("${ctx}/filing/basicInformation/save",$('#inputForm').serialize(),function(data){
+                jp.post("${ctx}/raiseCapitalDesign/saveVlatage",$('#inputForm').serialize(),function(data){
                     if(data.success){
                         jp.getParent().refresh();
                         var dialogIndex = parent.layer.getFrameIndex(window.name); // 获取窗口索引
                         parent.layer.close(dialogIndex);
                         jp.success(data.msg)
-
+						jp.getParent().refreshCharts(uuid);
                     }else{
                         jp.error(data.msg);
                     }
@@ -80,17 +69,33 @@
 				$(obj).parent().parent().removeClass("error");
 			}
 		}
+
+		function highVoltageCalculate(obj,prefix) {
+			var tr=$(obj).parent().parent();
+			var singleCircuitPath =document.getElementById(prefix+"_singleCircuitPath").value;//单回路路径
+			var doubleCircuitPath =document.getElementById(prefix+"_doubleCircuitPath").value;//双回路路径
+			//var coefficient = document.getElementById(prefix+"_coefficient").value;//系数
+			var singleCoefficient = 3.3;
+			var doubleCoefficient = 6.6;
+			if (singleCircuitPath=='' || singleCircuitPath==undefined){
+				singleCircuitPath=0;
+			}if (doubleCircuitPath=='' || doubleCircuitPath==undefined){
+				doubleCircuitPath=0;
+			}
+			var total=parseFloat(singleCircuitPath)*parseFloat(singleCoefficient)+parseFloat(doubleCircuitPath)*parseFloat(doubleCoefficient);
+			document.getElementById(prefix+"_singleLong").value=total.toFixed(2);
+		}
 	</script>
 </head>
 <body class="bg-white">
 <div>
 	<ul class="nav nav-tabs list-tabs">
-		<li class="active" role="presentation" id="click1"><a id="dq" href="javascript:void(0)"><span class="hide">highVoltage</span>10kV部分</a></li>
-		<li role="presentation" id="click2" ><a id="qd" href="javascript:void(0)"><span class="hide">lowVoltage</span>0.4kV部分</a></li>
+		<li class="active" role="presentation" id="click1"><a id="dq" href="javascript:void(0)">10kV部分</a></li>
 	</ul>
 </div>
 		<form:form id="inputForm" modelAttribute="voltageData" action="${ctx}/filing/basicInformation/save" method="post" class="form-horizontal">
-			<div class="tabs-container" id="highVoltage">
+			<input type="hidden" id="uuid" name="uuid" value="${uuid}">
+			<div class="tabs-container">
 				<div class="tab-content">
 					<div id="tab-1" class="tab-pane fade in  active">
 				<table class="table table-striped table-bordered table-condensed">
@@ -114,17 +119,17 @@
 						</td>
 
 						<td  class="max-width-250">
-						<input type='text'  name="highVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control"  value="{{row.voltageName}}"/>
+						<input type='text' id="highVoltageList[{{idx}}]_voltageName"  name="highVoltageList[{{idx}}].voltageName" readonly= "true" class="form-control"  value="{{row.voltageName}}"/>
 						</td>
 
 						<td  class="max-width-250">
-							<input type='text'  name="highVoltageList[{{idx}}].singleCircuitPath" class="form-control"  value="{{row.singleCircuitPath}}"/>
+							<input type='text' id="highVoltageList[{{idx}}]_singleCircuitPath" name="highVoltageList[{{idx}}].singleCircuitPath" placeholder="请输入数字"  onkeyup="this.value=this.value.replace(/^(\d*\.?\d{0,2}).*/,'$1')" maxlength="10" class="form-control number"  value="{{row.singleCircuitPath}}" onchange="highVoltageCalculate(this,'highVoltageList[{{idx}}]')"/>
 						</td>
 						<td class="max-width-250">
-							<input type='text'  name="highVoltageList[{{idx}}].doubleCircuitPath" class="form-control"  value="{{row.doubleCircuitPath}}"/>
+							<input type='text' id="highVoltageList[{{idx}}]_doubleCircuitPath" name="highVoltageList[{{idx}}].doubleCircuitPath" placeholder="请输入数字"  onkeyup="this.value=this.value.replace(/^(\d*\.?\d{0,2}).*/,'$1')" maxlength="10" class="form-control number"  value="{{row.doubleCircuitPath}}" onchange="highVoltageCalculate(this,'highVoltageList[{{idx}}]')"/>
 						</td>
 						<td class="max-width-250">
-							<input type='text'  name="highVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control"  value="{{row.singleLong}}"/>
+							<input type='text' id="highVoltageList[{{idx}}]_singleLong" name="highVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control number"  value="{{row.singleLong}}"/>
 						</td>
 					</tr>//-->
 				</script>
@@ -143,7 +148,13 @@
 			</div>
 		</div>
 
-			<div class="tabs-container hide" id="lowVoltage">
+			<div>
+				<ul class="nav nav-tabs list-tabs">
+					<li class="active" role="presentation" id="click2" ><a id="qd" href="javascript:void(0)">0.4kV部分</a></li>
+				</ul>
+			</div>
+
+			<div class="tabs-container">
 				<div class="tab-content">
 					<div id="tab-2" class="tab-pane fade in  active">
 						<table class="table table-striped table-bordered table-condensed">
@@ -167,28 +178,28 @@
 					</td>
 
 					<td  class="max-width-250">
-					<input type='text'  name="lowVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control"  value="{{row.voltageName}}"/>
+					<input type='text' id="highVoltageList[{{idx}}]_voltageName" name="lowVoltageList[{{idx}}].voltageName"  readonly= "true" class="form-control"  value="{{row.voltageName}}"/>
 					</td>
 
 					<td  class="max-width-250">
-						<input type='text'  name="lowVoltageList[{{idx}}].singleCircuitPath" class="form-control"  value="{{row.singleCircuitPath}}"/>
+						<input type='text' id="highVoltageList[{{idx}}]_singleCircuitPath" name="lowVoltageList[{{idx}}].singleCircuitPath" placeholder="请输入数字"  onkeyup="this.value=this.value.replace(/^(\d*\.?\d{0,2}).*/,'$1')" maxlength="10" class="form-control number"  value="{{row.singleCircuitPath}}" onchange="lowVoltageCalculate(this,'lowVoltageList[{{idx}}]')"/>
 					</td>
 					<td class="max-width-250">
-						<input type='text'  name="lowVoltageList[{{idx}}].doubleCircuitPath" class="form-control"  value="{{row.doubleCircuitPath}}"/>
+						<input type='text' id="highVoltageList[{{idx}}]_doubleCircuitPath" name="lowVoltageList[{{idx}}].doubleCircuitPath" placeholder="请输入数字"  onkeyup="this.value=this.value.replace(/^(\d*\.?\d{0,2}).*/,'$1')" maxlength="10" class="form-control number"  value="{{row.doubleCircuitPath}}" onchange="lowVoltageCalculate(this,'lowVoltageList[{{idx}}]')"/>
 					</td>
 					<td class="max-width-250">
-						<input type='text'  name="lowVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control"  value="{{row.singleLong}}"/>
+						<input type='text' id="highVoltageList[{{idx}}]_singleLong" name="lowVoltageList[{{idx}}].singleLong" readonly= "true" class="form-control number"  value="{{row.singleLong}}"/>
 					</td>
 				</tr>//-->
 						</script>
 						<script type="text/javascript">
-							var basicInformationRowIdx = 0, lowVoltageTpl = $("#lowVoltageTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
+							var lowVoltageRowIdx = 0, lowVoltageTpl = $("#lowVoltageTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
 							$(document).ready(function() {
 								var data = ${fns:toJson(lowVoltageList)};
 								for (var i=0; i<data.length; i++){
 									console.log(data[i])
-									addRow('#lowVoltageList', basicInformationRowIdx, lowVoltageTpl, data[i]);
-									basicInformationRowIdx = basicInformationRowIdx + 1;
+									addRow('#lowVoltageList', lowVoltageRowIdx, lowVoltageTpl, data[i]);
+									lowVoltageRowIdx = lowVoltageRowIdx + 1;
 								}
 							});
 						</script>

+ 38 - 2
src/main/webapp/webpage/modules/sg/raiseCapitalDesign/raiseCapitalDesign.js

@@ -1,5 +1,23 @@
 <%@ page contentType="text/html;charset=UTF-8" %>
 <script>
+
+	/*4.1、4.3数据回填方法*/
+	function refreshCharts(uuid){
+		jp.post("${ctx}/raiseCapitalDesign/disposeFormDataOnList",
+			{
+				"uuid":uuid
+			},
+			function (data) {
+				if(data.success){
+					console.log(data.data)
+					for (var i = 0; i < data.data.length; i++) {
+						console.log(data.data[i].id)
+						console.log(data.data[i].number)
+						$("#"+data.data[i].id).val(data.data[i].number)
+					}
+				}
+			})
+	}
 $(document).ready(function() {
 	window.operateEvents = {
 		'change input': function (e, value, row, index) {
@@ -342,7 +360,6 @@ $(document).ready(function() {
 		} else if (item == null || item == "") {
 			jp.error("请填写模块表");
 		} else {
-			alert(111111);
 			jp.post("${ctx}/raiseCapitalDesign/exportCache",
 			{
 			    "item":item,
@@ -402,6 +419,16 @@ function refresh() {
             }
     });
 }
+//刷新列表
+function dataTableRefresh() {
+    let projectName = $("#projectName").val();
+    $('#dataTable').bootstrapTable('refresh',{
+        query:
+            {
+                projectName: projectName
+            }
+    });
+}
 
 function getIdSelections() {
     return $.map($("#informationTable").bootstrapTable('getSelections'), function (row) {
@@ -420,9 +447,18 @@ function deleteAll(){
 }
 
 function aerialConductor(){
+	var item = "";
+	$('input[name="need"]').each(function(){
+		var val = $(this).val();
+		if (val!=null&&val!=""&&val>0) {
+			item += $(this).attr("id")+":"+val+";"
+			console.log(item+"\t");
+		}
+	})
 	var pickUuid = $("#pickUuid").val();
 	console.log(pickUuid);
-	jp.openSaveDialog('新增领料信息', "${ctx}/raiseCapitalDesign/aerialConductorForm?uuid="+pickUuid, '800px', '500px');
+	jp.openSaveDialog('新增领料信息', "${ctx}/raiseCapitalDesign/aerialConductorForm?uuid="+pickUuid+"&item="+item, '800px', '500px');
+
 }
 
 function add(){