using Newtonsoft.Json; using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using WIP_common; using WIP_Models; namespace WIP_Print { /// /// 热后出库流转卡打印 /// public class ProcessCardPrint : PrintMgr { public ProcessCardPrint(PrintType printType) : base(printType) { } public override string GetJsonDataAsExcelCellModel(string printJson, string tempFileName) { var json_dataList = base.InitTempleteFileJsonData(tempFileName); ProcessCardInfoPrintView card = JsonConvert.DeserializeObject(printJson); //金相结果(注意:要放到base.Replace(card, json_dataList);代码之前,因为会替换qaStatus) var qaStatus = BusinessCommon.GetQaStatusText(card.qaStatus); json_dataList = json_dataList.Replace("[qaStatus]", EnumberHelper.GetEnumDescription((QAStatus)Enum.Parse(typeof(QAStatus), card.qaStatus.ToString())));//金相结果 json_dataList = json_dataList.Replace("[tester]", WIPCommon.NullToEmpty(card.tester));//金相检测人 //新版本替换(反射) json_dataList = base.Replace(card, json_dataList); json_dataList = json_dataList.Replace("[partNumber]", WIPCommon.NullToEmpty(card.materialCode));//注意:这里显示的partNumber其实是物料编码 [EditBy shaocx,2019-02-18] //流转卡打印一维码 json_dataList = json_dataList.Replace(PrintStruct.BARCODE, WIPCommon.NullToEmpty(card.processCardNumber));//一维码 //替换生产工序 int start = 1; if (card.poductProcessList != null && card.poductProcessList.Count > 0) { for (int i = 0; i < card.poductProcessList.Count; i++) { json_dataList = json_dataList.Replace("[procedureName" + (i + 1).ToString() + "]", card.poductProcessList[i].procedureName); json_dataList = json_dataList.Replace("[procedureDesc" + (i + 1).ToString() + "]", card.poductProcessList[i].procedureDesc); } start = card.poductProcessList.Count + 1; } json_dataList = Clear(start, json_dataList); return json_dataList; } /// /// 清空值 /// /// /// private string Clear(int start, string json_dataList) { for (int i = start; i <= 50; i++) { json_dataList = json_dataList.Replace("[procedureName" + i.ToString() + "]", ""); json_dataList = json_dataList.Replace("[procedureDesc" + i.ToString() + "]", ""); } return json_dataList; } } }