using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
namespace Core.StlMes.Client.PipeLeaveFactory.YdmObject
{
public class YdmDateFormat
{
//返回每月的第一天和最后一天
public static void ReturnDateFormat(int month, out string firstDay, out string lastDay)
{
int year = DateTime.Now.Year + month / 12;
if (month != 12)
{
month = month % 12;
}
switch (month)
{
case 1:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-31");
break;
case 2:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
if (DateTime.IsLeapYear(DateTime.Now.Year))
lastDay = DateTime.Now.ToString(year + "-0" + month + "-29");
else
lastDay = DateTime.Now.ToString(year + "-0" + month + "-28");
break;
case 3:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString("yyyy-0" + month + "-31");
break;
case 4:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-30");
break;
case 5:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-31");
break;
case 6:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-30");
break;
case 7:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-31");
break;
case 8:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-31");
break;
case 9:
firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-0" + month + "-30");
break;
case 10:
firstDay = DateTime.Now.ToString(year + "-" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-" + month + "-31");
break;
case 11:
firstDay = DateTime.Now.ToString(year + "-" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-" + month + "-30");
break;
default:
firstDay = DateTime.Now.ToString(year + "-" + month + "-01");
lastDay = DateTime.Now.ToString(year + "-" + month + "-31");
break;
}
}
///
/// 单号自增
///
/// 原单号
/// 单号前缀
/// 流水号
/// 返回值
public static string NextNumber(string BaseNumber, string prefix, string digit)
{
string NewNumber = "";//新值
int InNumber = 1;//进位
int PlaceValue;//位值
char[] No = BaseNumber.ToCharArray();
for (int i = BaseNumber.Length - 1; i >= 0; i--)
{
if (No[i] == '9' && InNumber == 1)
{
InNumber = 1;
NewNumber = "0" + NewNumber;
}
else
if (InNumber == 1 && No[i] >= '0' && No[i] < '9')
{
PlaceValue = Int32.Parse(No[i].ToString());
PlaceValue = (InNumber + PlaceValue);
InNumber = 0;
NewNumber = PlaceValue.ToString() + NewNumber;
}
else
{
InNumber = 0;
NewNumber = No[i] + NewNumber;
}
}
if (BaseNumber == NewNumber)
NewNumber = prefix + DateTime.Now.ToString("yyMMdd") + digit;
return NewNumber;
}
}
}