/// <summary> /// 获取下一个编号 /// </summary> /// <param name="prefix">前缀</param> /// <param name="dateStr">日期限定符,不需要传空字符串</param> /// <param name="digitByte">数字位数</param> /// <returns></returns> public virtual string GetNextNo(string prefix, string dateStr, int digitByte = 3) { string result = prefix; var maxRecord = db.SystemNo.Where(sn => sn.bill_type == prefix && sn.date_string == dateStr); if (maxRecord.Count() == 0) { SystemNo sysNo = new SystemNo() { bill_type = prefix, date_string = dateStr, max_num = 1 }; db.SystemNo.InsertOnSubmit(sysNo); result += dateStr + string.Format("{0:D" + digitByte + "}", 1); } else { var firstRecord = maxRecord.First(); firstRecord.max_num = firstRecord.max_num + 1; result += dateStr + string.Format("{0:D" + digitByte + "}", firstRecord.max_num); } db.SubmitChanges(); return(result); }
private string GetNextSysNo() { string billType = "EQ"; string result = billType; string dateStr = DateTime.Now.ToString("yyMMdd"); var maxRecord = db.SystemNo.Where(sn => sn.bill_type == billType && sn.date_string == dateStr).FirstOrDefault(); if (maxRecord == null) { SystemNo sysNo = new SystemNo() { bill_type = billType, date_string = dateStr, max_num = 1 }; db.SystemNo.InsertOnSubmit(sysNo); result += dateStr + "01"; } else { maxRecord.max_num = maxRecord.max_num + 1; result += dateStr + string.Format("{0:00}", maxRecord.max_num); } db.SubmitChanges(); return(result); }
// -------------------------- 虚方法 -------------------------- // /// <summary> /// 取得下一个流水号 /// </summary> /// <param name="billType"></param> /// <returns></returns> public virtual string GetNextSysNo(string billType) { string result = billType; string dateStr = DateTime.Now.ToString("yyMMdd"); var maxRecord = db.SystemNo.Where(sn => sn.bill_type == billType && sn.date_string == dateStr); if (maxRecord.Count() == 0) { SystemNo sysNo = new SystemNo() { bill_type = billType, date_string = dateStr, max_num = 1 }; db.SystemNo.InsertOnSubmit(sysNo); result += dateStr + "001"; } else { var firstRecord = maxRecord.First(); firstRecord.max_num = firstRecord.max_num + 1; result += dateStr + string.Format("{0:000}", firstRecord.max_num); } db.SubmitChanges(); return(result + "E"); }