| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- using com.hnshituo.core.webapp.vo;
- using Common;
- using Newtonsoft.Json;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Web.Script.Serialization;
- using System.Windows.Forms;
- namespace CarMeterSystem
- {
- public class JGLimsInterface
- {
- private Log lg = Log.GetInstance(); //写日志
- /// <summary>
- /// 计量车辆采样及提醒
- /// </summary>
- /// <param name="trackScale"></param>
- public void imsCarLims(PreTrackScale trackScale) {
- string limsResult = "";
- try
- {
- PreTrackScale scale = new PreTrackScale();
- limsResult = SendPostToLims(scale).Replace("msg", "data");
- JavaScriptSerializer js = new JavaScriptSerializer(); //实例化一个能够序列化数据的类
- if (limsResult.Contains("-1,"))
- {
- RESTfulResult<string> list = js.Deserialize<RESTfulResult<string>>(limsResult); //将json数据转化为对象类型并赋值给list
- if (list != null)
- {
- PbCache.ResultMessage += "检化验接口异常,请点【语音求助】联系计量员处理!" + list.Data;
- lg.WriteLog(24, "检化验接口异常:" + limsResult);
- }
- }
- else
- {
- RESTfulResult<JGLimsMsg> list = js.Deserialize<RESTfulResult<JGLimsMsg>>(limsResult); //将json数据转化为对象类型并赋值给list
- if (list != null)
- {
- if (list.Status.ToString().Equals("1"))
- {
- RESTfulResult<JGLimsMsg> listMsg = js.Deserialize<RESTfulResult<JGLimsMsg>>(limsResult);
- if (listMsg.Data.place!=null && listMsg.Data.place!=null)
- {
- PbCache.ResultMessage += "车辆需要采样,卸货点为:" + listMsg.Data.placecode;
- lg.WriteLog(24, "车辆需要采样,卸货点为:" + listMsg.Data.placecode + limsResult);
- }
- else
- {
- PbCache.ResultMessage += "车辆不需要采样";
- lg.WriteLog(24, "车辆不需要采样,卸货点为:" + listMsg.Data.placecode + limsResult);
- }
- }
- }
- }
- }
- catch (Exception)
- {
- PbCache.ResultMessage += "检化验接口异常,请点【语音求助】联系计量员处理!";
- }
- }
- /// <summary>
- /// 向检化验接口传参
- /// </summary>
- /// <param name="trackScale"></param>
- /// <returns></returns>
- public string SendPostToLims(PreTrackScale trackScale)
- {
- int iCarOrder = carOrder(trackScale);
- HttpHelper http = new HttpHelper();
- var item = new HttpItem()
- {
- URL = "http://192.168.127.1/external/login",
- Method = "POST",
- ContentType = "application/json",
- PostEncoding = Encoding.UTF8,
- };
- item.Header.Add("Accept-Encoding", "gzip, deflate");
- item.Header.Add("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6");
- dynamic backObj = new
- {
- user = "admin",
- password = "xxzxjg009118"
- };
- var pr = JsonConvert.SerializeObject(backObj);
- item.Postdata = pr;
- var result = http.GetHtml(item);
- string html = result.Html;
- item = new HttpItem()
- {
- URL = "http://192.168.127.1/external/mes/getisspot",
- Method = "POST",
- ContentType = "application/json",
- PostEncoding = Encoding.UTF8,
- };
- item.Header.Add("Authorization", $"Bearer {html}");
- item.Header.Add("Accept-Encoding", "gzip, deflate");
- item.Header.Add("Accept-Language", "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6");
- dynamic Obj = new
- {
- HODEDOCKSEQ = trackScale.holddockSeq,//"h201908230003", //压港序号=卸货计划号(MES)
- ORDER = iCarOrder + "", //同一压港序号下的第几车
- CONTRACTNO = trackScale.contractNo , //合同号
- CAR_NO = trackScale.carNo , //车号
- SHIP_NO = trackScale.shipNo , //船号
- MAT_NAME = trackScale.matterName ,//物料名
- MAT_CODE = trackScale.matterNo ,//物料编号
- SDR_NAME = trackScale.forwardingUnitName ,//发货单位名称
- SDR_CODE = trackScale.forwardingUnitNo ,//发货单位编号
- REC_NAME = trackScale.receivingUintName ,//收货单位名称
- REC_CODE = trackScale.receivingUintNo ,//收货单位编码
- SCALE_NAME = PbCache.sportInfo.baseSpotName,//汽车衡名称
- SCALE_CODE = PbCache.sportInfo.baseSpotNo,//汽车衡编码
- };
- var cc = JsonConvert.SerializeObject(Obj);
- item.Postdata = cc;
- result = http.GetHtml(item);
- html = result.Html; //
- return html;
- }
- /// <summary>
- /// 查询当前是第几车
- /// </summary>
- /// <returns></returns>
- public int carOrder(PreTrackScale trackScale)
- {
- int i = 1;
- return i;
- }
- }
- }
|