屠宰场客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.0 KiB

using BO.Utils;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WeighAndGrading
{
public static class GradeContext
{
private static string loginConfigPath = Application.StartupPath + "\\GradeConfig.xml";
private static GradeConfig _config;
public static GradeConfig Config
{
get
{
if (_config == null)
_config = CreateConfig();
return _config;
}
}
static GradeConfig CreateConfig()
{
var config = new GradeConfig();
if (!File.Exists(loginConfigPath))
{
XmlUtil.SerializerObjToFile(config, loginConfigPath);
}
else
config = XmlUtil.DeserializeFromFile<GradeConfig>(loginConfigPath);
return config;
}
public static void Save()
{
if (string.IsNullOrEmpty(_config.WeightSet))
throw new Exception("请选择称型号");
if (string.IsNullOrEmpty(_config.ComSet))
throw new Exception("请选择Com口");
if (_config.RateSet == null)
throw new Exception("请选择波特率");
if (_config.BitSet == null)
throw new Exception("请选择数据位");
if (string.IsNullOrEmpty(_config.Format))
throw new Exception("请填写显示格式");
try
{
string.Format("{0:" + _config.Format + "}", 1);
}
catch (Exception ex)
{
throw new Exception("显示格式填写错误\n" + ex.Message);
}
XmlUtil.SerializerObjToFile(_config, loginConfigPath);
}
}
public class GradeConfig
{
public string WeightSet { get; set; }
public string ComSet { get; set; }
public int? RateSet { get; set; }
public int? BitSet { get; set; }
public string Format { get; set; }
public decimal? Discont { get; set; }
public int WeightType { get; set; }
public decimal MinWeight { get; set; }
public decimal MaxWeight { get; set; }
}
}