| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace Core.StlMes.Client.PlnSaleOrd
- {
- class PlnSaleOrderBase
- {
- /// <summary>
- /// 以“/”分解查询区合同行号,未合同号、合同行号
- /// </summary>
- /// <param name="ordNoSeq"></param>
- /// <param name="ordNo"></param>
- /// <param name="ordSeq"></param>
- public static void parsOrdNoSeq(string ordNoSeq, out string ordNo, out string ordSeq)
- {
- ordNo = "";
- ordSeq = "";
- ordNoSeq = ordNoSeq.Trim();
- if (!ordNoSeq.Equals(""))
- {
- if (ordNoSeq.Contains('/'))
- {
- string[] ord = ordNoSeq.Split('/');
- ordNo = ord[0];
- if (ord.Count() > 1)
- {
- ordSeq = ord[1];
- }
- }
- else
- {
- ordNo = ordNoSeq;
- }
- }
- }
- /// <summary>
- /// 生产分类
- /// </summary>
- /// <param name="endCode">末工序代码</param>
- /// <param name="prdcls">销售分类</param>
- /// <param name="gprocessC">加工二级工序</param>
- /// <returns></returns>
- public static string produceSort(string endCode, string prdcls, string gprocessC, string fprocessC)
- {
- string produceSort = "";
- if (endCode.CompareTo("D") < 0)
- {
- produceSort = "商品坯";
- }
- else if (prdcls.Equals("405004") || prdcls.Equals("接箍短节"))
- {
- produceSort = "接箍短节";
- }
- else if (gprocessC.Equals("B020"))
- {
- produceSort = "加工油套管";
- }
- else if (endCode.Equals("D"))
- {
- produceSort = "热轧成品";
- }
- else if (endCode.Equals("F") && fprocessC.Equals("B024"))
- {
- produceSort = "热轧成品";
- }
- else
- {
- produceSort = "加工光管";
- }
- return produceSort;
- }
- /// <summary>
- /// 判断坯料属性
- /// </summary>
- /// <param name="DinMaterialno">轧管投入物料码</param>
- /// <returns>坯料属性</returns>
- public static string stuffProperty(string DinMaterialno)
- {
- string stuffpro = "";
- if (!DinMaterialno.Equals("") && DinMaterialno.Length > 2)
- {
- switch (DinMaterialno.Substring(0, 2))
- {
- case "PA":
- stuffpro = "连铸坯";
- break;
- case "PB":
- stuffpro = "锻坯";
- break;
- case "PC":
- stuffpro = "轧坯";
- break;
- }
- }
- return stuffpro;
- }
- /// <summary>
- /// 判断管属性
- /// </summary>
- /// <param name="DinMaterialno">成品物料码</param>
- /// <returns>管属性</returns>
- public static string pipeProperty(string materialno)
- {
- string property = "";
- if (materialno != "" && materialno.Length > 2)
- {
- switch (materialno.Substring(0, 2))
- {
- case "AW":
- property = "热轧无缝成品管";
- break;
- case "AR":
- property = "热扩无缝成品管";
- break;
- case "AL":
- property = "冷拔无缝成品管";
- break;
- case "AH":
- property = "焊缝成品管";
- break;
- case "AE":
- property = "接箍/短接/附件";
- break;
- case "AP":
- property = "商品坯";
- break;
- }
- }
- return property;
- }
- /// <summary>
- /// 获取轧管去向
- /// </summary>
- /// <param name="dOutMaterialNo">轧制产出物料编码</param>
- /// <returns></returns>
- public static string getPlnOrdZgAbc(string wholeBacklog, string wholeBacklogDesc)
- {
- string zgAbc = "";//轧管去向1
- if (!wholeBacklog.Equals(""))
- {
- //if (dOutMaterialNo.Contains("AW"))
- //{
- // zgAbc = "A";
- //}
- //else if (dOutMaterialNo.Contains("WX"))
- //{
- // //string dMaterial = dOutMaterialNo.Substring(
- // // dOutMaterialNo.IndexOf(','),
- // // dOutMaterialNo.Length
- // // - dOutMaterialNo.IndexOf(','));
- // if (dOutMaterialNo.ToUpper().Contains("GZ"))
- // {
- // zgAbc = "C";
- // }
- // else
- // {
- // zgAbc = "B";
- // }
- //}
- if (!wholeBacklog.Contains("D"))
- {
- return "";
- }
- // 如果制程 轧管结束,返回A
- if (wholeBacklog.EndsWith("D"))
- {
- return "A";
- }
- else
- {
- // 如果制程二级工序包含仅探伤,并且不包含镦拔扩,加工,返回A
- if (wholeBacklogDesc.Contains("仅探伤") && !wholeBacklog.Contains("E")
- && !wholeBacklog.Contains("G"))
- {
- return "B";
- }
- // 如果制程包含镦拔扩,返回C
- if (wholeBacklog.Contains("E"))
- {
- return "C";
- }
- // 如果制程包含热处理但二级工序不包含仅探伤,则返回 C
- if (wholeBacklog.Contains("F") && !wholeBacklogDesc.Contains("仅探伤"))
- {
- return "C";
- }
- return "B";
- }
- }
- return zgAbc;
- }
- }
- }
|