123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192 |
- package com.steerinfo.dil.service.impl;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.steerinfo.dil.mapper.TmstrainLoadingResultMapper;
- import com.steerinfo.dil.mapper.TmstrainMeasureCommissionMapper;
- import com.steerinfo.dil.model.TmstrainLoadingResult;
- import com.steerinfo.dil.model.TmstrainMeasureCommission;
- import com.steerinfo.dil.service.ITmstrainMeasureCommissionService;
- import com.steerinfo.dil.util.DataChange;
- import com.steerinfo.dil.util.HTTPRequestUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.io.IOException;
- import java.math.BigDecimal;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * TmstrainMeasureCommission服务实现:
- * @author generator
- * @version 1.0-SNAPSHORT 2021-12-09 06:52
- * 类描述
- * 修订历史:
- * 日期:2021-12-09
- * 作者:generator
- * 参考:
- * 描述:TmstrainMeasureCommission服务实现
- * @see null
- * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
- */
- @Service(value = "tmstrainMeasureCommissionService")
- public class TmstrainMeasureCommissionServiceImpl implements ITmstrainMeasureCommissionService {
- @Autowired
- private TmstrainMeasureCommissionMapper tmstrainMeasureCommissionMapper;
- @Autowired
- private TmstrainLoadingResultMapper tmstrainLoadingResultMapper;
- /**
- * 批量发送计量委托
- * @return
- */
- public int batchSendMeasureCommission(Map<String, Object> map){
- List<Map<String, Object>> resultIdList = (List<Map<String, Object>>) map.get("resultIdList");
- int count = 0;
- for (Map<String, Object> objectMap : resultIdList) {
- count += addTrainMeasureCommission(objectMap);
- }
- if (resultIdList.size()-count!=0){
- return -1;
- }
- return count;
- }
- /**
- * 添加计量委托并发送计量委托
- * resultId 装车实绩ID
- * @return
- */
- public int addTrainMeasureCommission(Map<String, Object> map){
- //查询计量委托
- Map<String, Object> measureCommission = getTrainMeasureCommission(map);
- measureCommission.put("steelyardNum", "铁专线");
- //车皮号
- measureCommission.put("isRelationEAS", true);
- measureCommission.put("flowTo", "进厂");
- measureCommission.put("isDel", false);
- measureCommission.put("isInsert", true);
- measureCommission.put("IsAssembly", false);
- measureCommission.put("deliveryMethod", "磅重");
- measureCommission.put("packagesNum", 0);
- map.put("materialId", measureCommission.get("materialId"));
- map.put("resultTotalId", measureCommission.get("resultTotalId"));
- measureCommission.remove("resultTotalId");
- //发送计量委托,成功返回1,失败返回0
- int i = sendMesToMeasure(measureCommission);
- if(i == 1){
- //添加计量委托实绩
- addMeasureCommission(map);
- updateTrainLoadResult(map);
- }
- return i;
- }
- /**
- * 修改计量委托
- * @param map
- * @return
- */
- public int updateTrainMeasureCommission(Map<String, Object> map){
- return 0;
- }
- /**
- * 更新火车装车实绩
- * @param map
- * @return
- */
- public void updateTrainLoadResult(Map<String, Object> map){
- TmstrainLoadingResult tmstrainLoadingResult = new TmstrainLoadingResult();
- tmstrainLoadingResult.setResultId(DataChange.dataToBigDecimal(map.get("resultId")));
- tmstrainLoadingResult.setSendRequest(new BigDecimal(2)); //更新委托已发送过
- tmstrainLoadingResultMapper.updateByPrimaryKeySelective(tmstrainLoadingResult);
- }
- /**
- * 查询待计量
- * @param map
- * @return
- */
- @Override
- public List<Map<String, Object>> getLoadResultToSendMC(Map<String, Object> map) {
- return tmstrainMeasureCommissionMapper.getLoadResultToSendMC(map);
- }
- /**
- * 查询已计量
- * @param map
- * @return
- */
- @Override
- public List<Map<String, Object>> getWeightResult(Map<String, Object> map) {
- return tmstrainMeasureCommissionMapper.getWeightResult(map);
- }
- /**
- * 添加火运计量委托
- * resultTotalId 火运总实绩ID
- * materialId 物资ID
- * calculateId 计量衡Id
- * @param map
- * @return
- */
- public int addMeasureCommission(Map<String, Object> map){
- TmstrainMeasureCommission tmstrainMeasureCommission = new TmstrainMeasureCommission();
- tmstrainMeasureCommission.setId(tmstrainMeasureCommissionMapper.selectMaxId());
- tmstrainMeasureCommission.setCalculateId(new BigDecimal(13));
- tmstrainMeasureCommission.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
- tmstrainMeasureCommission.setResultTotalId(DataChange.dataToBigDecimal(map.get("resultTotalId")));
- return tmstrainMeasureCommissionMapper.insertSelective(tmstrainMeasureCommission);
- }
- /**
- * 查询计量委托
- * @param map
- * @return
- */
- @Override
- public Map<String, Object> getTrainMeasureCommission(Map<String, Object> map) {
- return tmstrainMeasureCommissionMapper.getTrainMeasureCommission(map);
- }
- /**
- * 访问计量接口方法
- * @param map
- * @return
- */
- public int sendMesToMeasure(Map<String, Object> map){
- List<Map<String, Object>> sendMap = new ArrayList<>();
- sendMap.add(map);
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("data", sendMap);
- String url = "http://172.16.33.122:44325/api/logistics/TareApplyFor";
- String jsonData = null;
- try {
- jsonData = HTTPRequestUtils.send(url, jsonObject, "utf-8");
- } catch (IOException e) {
- e.printStackTrace();
- }
- if(!"null".equals(jsonData)){
- System.out.println(jsonData);
- HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
- boolean success = (boolean) hashMap.get("success");
- System.out.println(hashMap.get("msg"));
- if(success){
- return 1;
- }
- }
- return 0;
- }
- }
|