Explorar el Código

出入库状态更新功能完善

fanxw hace 4 años
padre
commit
9ba3d0565d

+ 1 - 28
pom.xml

@@ -23,35 +23,8 @@
23 23
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24 24
 		<java.version>1.8</java.version>
25 25
 		<spring-cloud.version>Finchley.M8</spring-cloud.version>
26
-		
27
-		<!-- swagger2markup添加 -->
28
-<!-- 		<swagger2markup.version>1.2.0</swagger2markup.version> -->
29
-<!--         <asciidoctor.input.directory>${project.basedir}/src/docs/asciidoc</asciidoctor.input.directory> -->
30
-<!--         <swagger.output.dir>${project.build.directory}/swagger</swagger.output.dir> -->
31
-<!--         <swagger.snippetOutput.dir>${project.build.directory}/asciidoc/snippets</swagger.snippetOutput.dir> -->
32
-<!--         <generated.asciidoc.directory>${project.build.directory}/asciidoc/generated</generated.asciidoc.directory> -->
33
-<!--         <asciidoctor.html.output.directory>${project.build.directory}/asciidoc/html</asciidoctor.html.output.directory> -->
34
-<!--         <asciidoctor.pdf.output.directory>${project.build.directory}/asciidoc/pdf</asciidoctor.pdf.output.directory> -->
35
-<!--         <swagger.input>${swagger.output.dir}/swagger.json</swagger.input> -->
36
-<!--         <jackson.version>2.9.6</jackson.version> -->
37
-	</properties>
38 26
 
39
-	<!-- swagger2markup添加 -->
40
-<!-- 	<pluginRepositories> -->
41
-<!--         <pluginRepository> -->
42
-<!--             <id>jcenter-snapshots</id> -->
43
-<!--             <name>jcenter</name> -->
44
-<!--             <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url> -->
45
-<!--         </pluginRepository> -->
46
-<!--         <pluginRepository> -->
47
-<!--             <id>jcenter-releases</id> -->
48
-<!--             <name>jcenter</name> -->
49
-<!--             <url>http://jcenter.bintray.com</url> -->
50
-<!--             <snapshots> -->
51
-<!--                 <enabled>false</enabled> -->
52
-<!--             </snapshots> -->
53
-<!--         </pluginRepository> -->
54
-<!--     </pluginRepositories> -->
27
+	</properties>
55 28
 
56 29
 	<dependencies>
57 30
 		<dependency>

+ 27 - 0
src/main/java/com/chinaitop/depot/basic/controller/BasicStorehouseController.java

@@ -10,6 +10,8 @@ import java.util.UUID;
10 10
 import javax.annotation.Resource;
11 11
 import javax.servlet.http.HttpServletRequest;
12 12
 
13
+import org.slf4j.Logger;
14
+import org.slf4j.LoggerFactory;
13 15
 import org.springframework.beans.factory.annotation.Value;
14 16
 import org.springframework.http.MediaType;
15 17
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -54,6 +56,7 @@ import io.swagger.annotations.ApiOperation;
54 56
 @Api(value= "BasicStorehouseController", description = "仓房管理控制类")
55 57
 public class BasicStorehouseController {
56 58
 
59
+	final static Logger logger = LoggerFactory.getLogger(BasicStorehouse.class);
57 60
 	@Resource
58 61
 	private BasicStorehouseService basicStorehouseService;
59 62
 	@Resource
@@ -572,4 +575,28 @@ public class BasicStorehouseController {
572 575
         map.put("StorehouseName", StorehouseName);
573 576
         return map;
574 577
     }
578
+
579
+    @RequestMapping(value="/getSptStorehouseHttpService", method = RequestMethod.POST)
580
+	@ApiOperation(value="接收市局企业端传过来的仓房数据")
581
+	@ApiImplicitParams({
582
+		@ApiImplicitParam(name = "json_str", value = "单位数据json格式字符串", paramType = "form")
583
+	})
584
+	public Map<String, Object> getSptStorehouseHttpService(String json_str, HttpServletRequest request) {
585
+
586
+		logger.info("时间:"+ParameterUtil.getSysDateTime()+",企业端传过来的仓房数据是:"+json_str);
587
+
588
+		Map<String, Object> modelMap = new HashMap<>();
589
+
590
+		try {
591
+			basicStorehouseService.getSptStorehouse(json_str);
592
+			modelMap.put("status", "0");
593
+			modelMap.put("msg", "传输成功");
594
+		} catch (Exception e) {
595
+			modelMap.put("status", "1");
596
+			modelMap.put("msg", "库级解析或保存失败!");
597
+			e.printStackTrace();
598
+		}
599
+
600
+		return modelMap;
601
+	}
575 602
 }

+ 30 - 0
src/main/java/com/chinaitop/depot/basic/controller/BasicTankController.java

@@ -10,6 +10,8 @@ import javax.annotation.Resource;
10 10
 import javax.servlet.http.HttpServletRequest;
11 11
 
12 12
 import org.apache.commons.lang.ObjectUtils;
13
+import org.slf4j.Logger;
14
+import org.slf4j.LoggerFactory;
13 15
 import org.springframework.beans.factory.annotation.Value;
14 16
 import org.springframework.http.MediaType;
15 17
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -23,6 +25,8 @@ import com.chinaitop.depot.basic.model.BasicTankExample;
23 25
 import com.chinaitop.depot.basic.service.BasicTankService;
24 26
 import com.chinaitop.depot.common.service.ImportServiceImpl;
25 27
 import com.chinaitop.utils.BasicTankDataSynchronization;
28
+import com.chinaitop.utils.ParameterUtil;
29
+import com.fasterxml.jackson.databind.ObjectMapper;
26 30
 import com.github.pagehelper.PageHelper;
27 31
 import com.github.pagehelper.PageInfo;
28 32
 
@@ -43,6 +47,8 @@ import io.swagger.annotations.ApiOperation;
43 47
 @Api(value= "BasicTankController", description = "油罐管理控制类")
44 48
 public class BasicTankController {
45 49
 
50
+	final static Logger logger = LoggerFactory.getLogger(BasicTank.class);
51
+
46 52
     @Resource
47 53
     private BasicTankService basicTankService;
48 54
 
@@ -272,4 +278,28 @@ public class BasicTankController {
272 278
   			}
273 279
   		}
274 280
   	}
281
+
282
+  	@RequestMapping(value="/getSptTankHttpService", method = RequestMethod.POST)
283
+	@ApiOperation(value="接收市局企业端传过来的油罐数据")
284
+	@ApiImplicitParams({
285
+		@ApiImplicitParam(name = "json_str", value = "单位数据json格式字符串", paramType = "form")
286
+	})
287
+	public Map<String, Object> getSptTankHttpService(String json_str, HttpServletRequest request) {
288
+
289
+		logger.info("时间:"+ParameterUtil.getSysDateTime()+",企业端传过来的油罐数据是:"+json_str);
290
+
291
+		Map<String, Object> modelMap = new HashMap<>();
292
+
293
+		try {
294
+			basicTankService.getSptTank(json_str);
295
+			modelMap.put("status", "0");
296
+			modelMap.put("msg", "传输成功");
297
+		} catch (Exception e) {
298
+			modelMap.put("status", "1");
299
+			modelMap.put("msg", "库级解析或保存失败!");
300
+			e.printStackTrace();
301
+		}
302
+
303
+		return modelMap;
304
+	}
275 305
 }

+ 46 - 14
src/main/java/com/chinaitop/depot/basic/controller/BasicWarehouseController.java

@@ -21,11 +21,13 @@ import org.springframework.web.bind.annotation.RestController;
21 21
 import com.alibaba.fastjson.JSONArray;
22 22
 import com.alibaba.fastjson.JSONObject;
23 23
 import com.chinaitop.depot.basic.model.BasicStorehouse;
24
+import com.chinaitop.depot.basic.model.BasicTank;
24 25
 import com.chinaitop.depot.basic.model.BasicWarehouse;
25 26
 import com.chinaitop.depot.basic.model.BasicWarehouseExample;
26 27
 import com.chinaitop.depot.basic.model.BasicWarehouseExample.Criteria;
27 28
 import com.chinaitop.depot.basic.model.BasicWarehouseVO;
28 29
 import com.chinaitop.depot.basic.service.BasicStorehouseService;
30
+import com.chinaitop.depot.basic.service.BasicTankService;
29 31
 import com.chinaitop.depot.basic.service.BasicWarehouseService;
30 32
 import com.chinaitop.depot.basic.service.impl.BasicStorehouseServiceImpl;
31 33
 import com.chinaitop.depot.basic.service.impl.BasicWarehouseServiceImpl;
@@ -59,17 +61,10 @@ public class BasicWarehouseController {
59 61
 	
60 62
 	@Resource
61 63
 	private BasicStorehouseService basicStorehouseService;
62
-	/**
63
-	 * 按条件查询 货位 信息
64
-	 * 
65
-	 * @param pageNum 页数
66
-	 * @param pageSize 每页显示的条数
67
-	 * @param storehouseId 仓房号
68
-	 * @param warehouseName 货位名
69
-	 * @param graindepotId 单位ID
70
-	 * @param libraryType 粮库类型
71
-	 * @return
72
-	 */
64
+
65
+	@Resource
66
+	private BasicTankService basicTankService;
67
+
73 68
 	@RequestMapping(value="/getList", method = RequestMethod.GET)
74 69
 	@ApiOperation(value="查询 货位 信息列表", notes = "查询 货位 信息列表,支持分页")
75 70
 	@ApiImplicitParams({
@@ -395,8 +390,13 @@ public class BasicWarehouseController {
395 390
 		Map<String, Object> param = null;
396 391
 
397 392
 		String date = ParameterUtil.getSysDateTime();
398
-		logger.info("时间:"+date+",出入库状态回写接口,封仓调用,接收参数是:"+wareJson);
393
+		logger.info("时间:"+date+",出入库状态回写接口,封仓和成品粮出入库调用,接收参数是:"+wareJson);
399 394
 
395
+		/**
396
+		 * 逻辑说明:本接口只有库级平台粮情专卡提交和成品粮出入库的分仓保管账菜单录入数据提交时调用
397
+		 * 1、粮情专卡提交调用时:只有一个状态,那就是3(封仓状态),处理时直接修改成3
398
+		 * 2、成品粮分仓保管账菜单入库数据提交时调用:直接修改为入库状态2,或者出库状态4
399
+		 */
400 400
 		try {
401 401
 			if (null != wareJson) {
402 402
 				/* 将获取到的json串转换成json数组 */
@@ -418,20 +418,52 @@ public class BasicWarehouseController {
418 418
 					String orgId = ObjectUtils.toString(json_object.get("orgId"), "");
419 419
 					//货位状态值1空仓,2入库中,3封仓,4出库中,9其它
420 420
 					String status = ObjectUtils.toString(json_object.get("crk_status"), "");
421
+					//业务类型:2代表油罐,1代表仓房
422
+					String ywlx = ObjectUtils.toString(json_object.get("ywlx"), "");
421 423
 
422 424
 					//修改数据
423 425
 					param = new HashMap<String, Object>();
424 426
 					param.put("wareId", Integer.parseInt(wareId));
425 427
 					param.put("orgId", Integer.parseInt(orgId));
426 428
 					param.put("status", status);
427
-					basicWarehouseService.updateWareStatus(param);
429
+					if ("2".equals(ywlx)) {
430
+						BasicTank bank = new BasicTank();
431
+						bank.setId(wareId);
432
+						bank.setCrkStatus(status);
433
+						basicTankService.updateTankCrkStatus(bank);
434
+					} else if ("1".equals(ywlx)) {
435
+						basicWarehouseService.updateWareStatus(param);
436
+					}
428 437
 					logger.info("时间:"+date+",出入库状态回写接口,封仓调用,调用成功!");
429 438
 				}
430 439
 			}
431
-		} catch (NumberFormatException e) {
440
+		} catch (Exception e) {
432 441
 			logger.info("时间:"+date+",出入库状态回写接口,封仓调用,调用失败!");
433 442
 			e.printStackTrace();
434 443
 		}
435 444
 	}
436 445
 
446
+	@RequestMapping(value="/getSptWarehouseHttpService", method = RequestMethod.POST)
447
+	@ApiOperation(value="接收市局企业端传过来的货位数据")
448
+	@ApiImplicitParams({
449
+		@ApiImplicitParam(name = "json_str", value = "单位数据json格式字符串", paramType = "form")
450
+	})
451
+	public Map<String, Object> getSptWarehouseHttpService(String json_str, HttpServletRequest request) {
452
+
453
+		logger.info("时间:"+ParameterUtil.getSysDateTime()+",企业端传过来的货位数据是:"+json_str);
454
+
455
+		Map<String, Object> modelMap = new HashMap<>();
456
+
457
+		try {
458
+			basicWarehouseService.getSptWarehouse(json_str);
459
+			modelMap.put("status", "0");
460
+			modelMap.put("msg", "传输成功");
461
+		} catch (Exception e) {
462
+			modelMap.put("status", "1");
463
+			modelMap.put("msg", "库级解析或保存失败!");
464
+			e.printStackTrace();
465
+		}
466
+
467
+		return modelMap;
468
+	}
437 469
 }

+ 5 - 0
src/main/java/com/chinaitop/depot/basic/mapper/BasicWarehouseMapper.java

@@ -46,4 +46,9 @@ public interface BasicWarehouseMapper {
46 46
 	 * @return
47 47
 	 */
48 48
 	List<Map<String, Object>> queryFenCangData(Map<String, Object> param);
49
+
50
+	/**
51
+	 * 修改原粮粮情卡归档状态
52
+	 */
53
+	void updateLqkGd(Map<String, Object> param);
49 54
 }

+ 15 - 0
src/main/java/com/chinaitop/depot/basic/mapper/BasicWarehouseMapper.xml

@@ -607,4 +607,19 @@
607 607
 	</if>
608 608
 	)  datalist order by accept_date desc
609 609
   </select>
610
+  <!-- 修改原粮的粮情卡为归档状态 -->
611
+  <select id="updateLqkGd" parameterType="java.util.Map">
612
+    update storage_grain_card 
613
+    set sfgd='0',gdsj=sysdate 
614
+    where 1=1 and sfgd='1'
615
+    <if test="storehouseId != null">
616
+	and storehouse_id=#{storehouseId}
617
+	</if>
618
+	<if test="wareId != null">
619
+	and warehouse_id=#{wareId}
620
+	</if>
621
+	<if test="orgId != null">
622
+	and org_id=#{orgId}
623
+	</if>
624
+  </select>
610 625
 </mapper>

+ 6 - 0
src/main/java/com/chinaitop/depot/basic/service/BasicStorehouseService.java

@@ -120,4 +120,10 @@ public interface BasicStorehouseService {
120 120
 
121 121
 	//更新单位表中仓房数和货位数
122 122
 	public void editOrgChNum(Integer orgId) throws Exception;
123
+
124
+	/**
125
+	 * 接收市局企业端传过来的仓房数据
126
+	 * @param json_str 仓房数据json字符串
127
+	 */
128
+	public void getSptStorehouse(String json_str) throws Exception;
123 129
 }

+ 13 - 0
src/main/java/com/chinaitop/depot/basic/service/BasicTankService.java

@@ -45,4 +45,17 @@ public interface BasicTankService {
45 45
 	 * @throws Exception
46 46
 	 */
47 47
 	Map<String, Object> updateOrSave(HttpServletRequest request, String tankJson, Integer orgId) throws Exception;
48
+
49
+	/**
50
+	 * 接收市局企业端传过来的油罐数据
51
+	 * @param json_str 油罐数据json字符串
52
+	 * @throws Exception
53
+	 */
54
+	void getSptTank(String json_str) throws Exception;
55
+
56
+	/**
57
+	 * 修改油罐的出入库状态
58
+	 * @param tankJson
59
+	 */
60
+	void updateTankCrkStatus(BasicTank basicTank) throws Exception;
48 61
 }

+ 7 - 0
src/main/java/com/chinaitop/depot/basic/service/BasicWarehouseService.java

@@ -75,4 +75,11 @@ public interface BasicWarehouseService {
75 75
 	 */
76 76
 	void saveOrUpdate(BasicStorehouse basicStorehouse, String warehouseJson) throws Exception;
77 77
 
78
+	/**
79
+	 * 接收市局企业端传过来的货位数据
80
+	 * @param json_str 货位数据json字符串
81
+	 * @throws Exception
82
+	 */
83
+	void getSptWarehouse(String json_str) throws Exception;
84
+
78 85
 }

+ 6 - 0
src/main/java/com/chinaitop/depot/basic/service/impl/BasicStorehouseServiceImpl.java

@@ -713,4 +713,10 @@ public class BasicStorehouseServiceImpl implements BasicStorehouseService {
713 713
 		basic.editOrgCfAndHwNum(map);
714 714
 	}
715 715
 
716
+	@Override
717
+	public void getSptStorehouse(String json_str) throws Exception {
718
+		JSONObject house_json = JSONObject.parseObject(json_str);
719
+		String orgId = ObjectUtils.toString(house_json.get("org_Id"), "");
720
+	}
721
+
716 722
 }

+ 12 - 0
src/main/java/com/chinaitop/depot/basic/service/impl/BasicTankServiceImpl.java

@@ -434,4 +434,16 @@ public class BasicTankServiceImpl implements BasicTankService {
434 434
 
435 435
         return modelMap;
436 436
 	}
437
+
438
+	@Override
439
+	public void getSptTank(String json_str) throws Exception {
440
+		JSONObject tank_json = JSONObject.parseObject(json_str);
441
+		String orgId = ObjectUtils.toString(tank_json.get("org_Id"), "");
442
+	}
443
+
444
+	@Override
445
+	public void updateTankCrkStatus(BasicTank basicTank) throws Exception {
446
+
447
+        basicTankMapper.updateByPrimaryKeySelective(basicTank);
448
+	}
437 449
 }

+ 8 - 0
src/main/java/com/chinaitop/depot/basic/service/impl/BasicWarehouseServiceImpl.java

@@ -7,8 +7,10 @@ import java.util.Map;
7 7
 
8 8
 import javax.annotation.Resource;
9 9
 
10
+import org.apache.commons.lang.ObjectUtils;
10 11
 import org.springframework.stereotype.Service;
11 12
 
13
+import com.alibaba.fastjson.JSONObject;
12 14
 import com.chinaitop.depot.basic.mapper.BasicWarehouseMapper;
13 15
 import com.chinaitop.depot.basic.model.BasicStorehouse;
14 16
 import com.chinaitop.depot.basic.model.BasicWarehouse;
@@ -163,4 +165,10 @@ public class BasicWarehouseServiceImpl implements BasicWarehouseService {
163 165
 		}
164 166
 	}
165 167
 
168
+	@Override
169
+	public void getSptWarehouse(String json_str) throws Exception {
170
+		JSONObject ware_json = JSONObject.parseObject(json_str);
171
+		String orgId = ObjectUtils.toString(ware_json.get("org_Id"), "");
172
+	}
173
+
166 174
 }

+ 13 - 0
src/main/java/com/chinaitop/depot/unissoft/webservice/BasicWarehouseWebServiceImpl.java

@@ -125,6 +125,13 @@ public class BasicWarehouseWebServiceImpl implements BasicWarehouseWebService {
125 125
 							tankHw.setCrkStatus(status);
126 126
 							tankHw.setZhgxsj(new Date());
127 127
 							tankHwMapper.updateByPrimaryKeySelective(tankHw);
128
+							//如果是出库,则把对应的粮情卡设置为归档
129
+							if ("4".equals(status)) {
130
+								Map<String, Object> lqkmap = new HashMap<String, Object>();
131
+								lqkmap.put("storehouseId", wareId);
132
+								lqkmap.put("orgId", orgId);
133
+								warehouseMapper.updateLqkGd(lqkmap);
134
+							}
128 135
 						}
129 136
 					} else {//粮食仓房下的货位
130 137
 						//查询当前货位状态
@@ -149,6 +156,12 @@ public class BasicWarehouseWebServiceImpl implements BasicWarehouseWebService {
149 156
 						} else {
150 157
 							//回写状态
151 158
 							warehouseMapper.updateWareStatus(param);
159
+							if ("4".equals(status)) {
160
+								Map<String, Object> lqkmap = new HashMap<String, Object>();
161
+								lqkmap.put("wareId", wareId);
162
+								lqkmap.put("orgId", orgId);
163
+								warehouseMapper.updateLqkGd(lqkmap);
164
+							}
152 165
 						}
153 166
 					}
154 167