Exemplo n.º 1
0
 /// <summary> 14.三包服务单状态查询-CRM
 /// </summary>
 /// <param name="billNum">CRM服务单号</param>
 /// <returns>-1为失败,0未成功</returns>
 public static bool LoadOrderStatus(string billNum)
 {
     //如果没有接入码或者sap代码,则不调用接口
     if (string.IsNullOrEmpty(GlobalStaticObj_YT.ClientID) ||
         string.IsNullOrEmpty(GlobalStaticObj_YT.SAPCode))
     {
         return true;
     }
     Utility.Log.Log.writeLineToLog("【三包服务单状态查询】" + billNum, "接口");
     //billNum = "BD00000167";
     ServicePointManager.ServerCertificateValidationCallback = WebServUtil.ValidateServerCertificate;
     QueryOrderStatus.clientInfo clientInfo = new QueryOrderStatus.clientInfo();
     clientInfo.clientID = GlobalStaticObj_YT.ClientID;
     clientInfo.serviceID = "serviceOrderStatusQuery";
     QueryOrderStatus.serviceOrderStatusQueryService serv = new QueryOrderStatus.serviceOrderStatusQueryService();
     billNum = Secret.Encrypt3DES_UTF8(billNum, GlobalStaticObj_YT.KeySecurity_YT);//加密字段
     string stationCode = Secret.Encrypt3DES_UTF8(GlobalStaticObj_YT.SAPCode, GlobalStaticObj_YT.KeySecurity_YT);
     string dateStr = Secret.Encrypt3DES_UTF8(GlobalStaticObj_Server.Instance.CurrentDateTime.ToString("yyyy-MM-dd HH:mm:ss"), GlobalStaticObj_YT.KeySecurity_YT);
     string requestType = Secret.Encrypt3DES_UTF8("QUERY", GlobalStaticObj_YT.KeySecurity_YT);
     clientInfo = WebServUtil.EncModel<QueryOrderStatus.clientInfo>(clientInfo);
     QueryOrderStatus.Result result = serv.serviceOrderStatusQuery(stationCode, dateStr, requestType, billNum, clientInfo);
     string state = Secret.Decrypt3DES_UTF8(result.state, GlobalStaticObj_YT.KeySecurity_YT);
     if (state == "F")
     {
         string errMsg = Secret.Decrypt3DES_UTF8(result.errorMsg, GlobalStaticObj_YT.KeySecurity_YT);
         Utility.Log.Log.writeLineToLog("【三包服务单状态查询】" + errMsg, "接口");
         return false;
     }
     result = WebServUtil.DesModel(result);//解密
     string res = Newtonsoft.Json.JsonConvert.SerializeObject(result);
     if (string.IsNullOrEmpty(result.crm_service_bill_num))
     {
         return true;
     }
     #region 添加三包服务单审核记录
     Utility.Log.Log.writeLineToLog("【三包服务单状态查询】返回数据\r\n" + res, "接口");
     string tg_id = DBHelper.GetSingleValue("根据CRM服务单号获取三包服务单ID", GlobalStaticObj_Server.DbPrefix + GlobalStaticObj_Server.Instance.MainAccCode, string.Format("select tg_id from tb_maintain_three_guaranty where service_no_yt='{0}'", result.crm_service_bill_num));
     List<SysSQLString> listSql = new List<SysSQLString>();
     SysSQLString sqlApprove = new SysSQLString();
     sqlApprove.cmdType = CommandType.Text;
     sqlApprove.Param = new Dictionary<string, string>();
     sqlApprove.Param.Add("approve_id", Guid.NewGuid().ToString());
     string review_status = WebServUtil.GetLocalDicID("review_status_name", result.review_status_name);
     sqlApprove.Param.Add("approve_state", review_status);
     sqlApprove.Param.Add("approve_name", result.review_name);
     sqlApprove.Param.Add("approve_time", result.review_date.Length == 0 ? null : Common.LocalDateTimeToUtcLong(DateTime.Parse(result.review_date)).ToString());
     sqlApprove.Param.Add("approve_idea", result.review_suggestion);
     sqlApprove.Param.Add("tg_id", tg_id);
     sqlApprove.sqlString = @"insert into tb_maintain_three_material_approve (approve_id,approve_state,approve_name,approve_time,approve_idea,tg_id)
                     values (@approve_id,@approve_state,@approve_name,@approve_time,@approve_idea,@tg_id)";
     listSql.Add(sqlApprove);
     if (result.review_status_name == "100000002")//如果是驳回,三包服务单修改为“审核未通过”
     {
         SysSQLString sqlStatus = new SysSQLString();
         sqlStatus.cmdType = CommandType.Text;
         sqlStatus.Param = new Dictionary<string, string>();
         sqlStatus.Param.Add("info_status", "4CE4693D-D8E9-8847-54FA-8B6C1318545C");
         sqlStatus.Param.Add("tg_id", tg_id);
         sqlStatus.sqlString = "update tb_maintain_three_guaranty set info_status=@info_status where tg_id=@tg_id";
         listSql.Add(sqlStatus);
     }
     SysSQLString sqlYTApprove = new SysSQLString();
     sqlYTApprove.cmdType = CommandType.Text;
     sqlYTApprove.Param = new Dictionary<string, string>();
     sqlYTApprove.sqlString = "update tb_maintain_three_guaranty set approve_status_yt=@approve_status_yt where tg_id=@tg_id";
     sqlYTApprove.Param.Add("approve_status_yt", WebServUtil.GetLocalDicID("service_status", result.service_status));
     sqlYTApprove.Param.Add("tg_id", tg_id);
     listSql.Add(sqlYTApprove);
     bool flag = false;
     try
     {
         flag = DBHelper.BatchExeSQLStrMultiByTransNoLogNoBackup("宇通:三包服务单审核", GlobalStaticObj_Server.Instance.MainAccCode, listSql);
         //if (DBHelper.Submit_AddOrEdit("宇通:三包服务单审核", GlobalStaticObj_Server.DbPrefix+GlobalStaticObj_Server.Instance.MainAccCode, "tb_maintain_three_material_approve", null, null, dic))
         //{
         //    flag = true;
         //}
     }
     catch (Exception ex)
     {
         flag = false;
     }
     #endregion
     return flag;
 }
Exemplo n.º 2
0
 /// <summary>三包服务单状态查询
 /// </summary>
 /// <param name="billNum">CRM服务单号</param>
 /// <returns>单据状态编码</returns>
 public static string SearchOrderStatus(string billNum)
 {
     //如果没有接入码或者sap代码,则不调用接口
     if (string.IsNullOrEmpty(GlobalStaticObj_YT.ClientID) ||
         string.IsNullOrEmpty(GlobalStaticObj_YT.SAPCode))
     {
         return string.Empty;
     }
     Utility.Log.Log.writeLineToLog("【三包服务单状态查询】" + billNum, "接口");
     //billNum = "BD00000167";
     ServicePointManager.ServerCertificateValidationCallback = WebServUtil.ValidateServerCertificate;
     QueryOrderStatus.clientInfo clientInfo = new QueryOrderStatus.clientInfo();
     clientInfo.clientID = GlobalStaticObj_YT.ClientID;
     clientInfo.serviceID = "serviceOrderStatusQuery";
     QueryOrderStatus.serviceOrderStatusQueryService serv = new QueryOrderStatus.serviceOrderStatusQueryService();
     billNum = Secret.Encrypt3DES_UTF8(billNum, GlobalStaticObj_YT.KeySecurity_YT);//加密字段
     string stationCode = Secret.Encrypt3DES_UTF8(GlobalStaticObj_YT.SAPCode, GlobalStaticObj_YT.KeySecurity_YT);
     string dateStr = Secret.Encrypt3DES_UTF8(GlobalStaticObj_Server.Instance.CurrentDateTime.ToString("yyyy-MM-dd HH:mm:ss"), GlobalStaticObj_YT.KeySecurity_YT);
     string requestType = Secret.Encrypt3DES_UTF8("QUERY", GlobalStaticObj_YT.KeySecurity_YT);
     clientInfo = WebServUtil.EncModel<QueryOrderStatus.clientInfo>(clientInfo);
     QueryOrderStatus.Result result = serv.serviceOrderStatusQuery(stationCode, dateStr, requestType, billNum, clientInfo);
     string state = Secret.Decrypt3DES_UTF8(result.state, GlobalStaticObj_YT.KeySecurity_YT);
     if (state == "F")
     {
         string errMsg = Secret.Decrypt3DES_UTF8(result.errorMsg, GlobalStaticObj_YT.KeySecurity_YT);
         Utility.Log.Log.writeLineToLog("【三包服务单状态查询】" + errMsg, "接口");
         return string.Empty;
     }
     if (string.IsNullOrEmpty(result.service_status))
     {
         return string.Empty;
     }
     return Secret.Decrypt3DES_UTF8(result.service_status, GlobalStaticObj_YT.KeySecurity_YT);
 }