96 lines
2.6 KiB
C#
96 lines
2.6 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Linq;
|
|||
|
using System.Runtime.Serialization;
|
|||
|
using System.ServiceModel;
|
|||
|
using System.Text;
|
|||
|
|
|||
|
namespace DNLightSvr
|
|||
|
{
|
|||
|
|
|||
|
// 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的类名“LightService”。
|
|||
|
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
|
|||
|
public class LightService : ILightService
|
|||
|
{
|
|||
|
static log4net.ILog log = log4net.LogManager.GetLogger("light");
|
|||
|
|
|||
|
public delegate bool lightLable(ELabel[] lables);
|
|||
|
public delegate bool clsOrder(ClearOrder clearOrder);
|
|||
|
public clsOrder clearO = null;
|
|||
|
public lightLable lightUp = null;
|
|||
|
public string lightLabels(ELabel[] labels)
|
|||
|
{
|
|||
|
if (lightUp != null)
|
|||
|
{
|
|||
|
if (lightUp(labels))
|
|||
|
{
|
|||
|
|
|||
|
return "success";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
return "failure";
|
|||
|
}
|
|||
|
public string clearOrder(ClearOrder clearOrder)
|
|||
|
{
|
|||
|
if (clearO != null)
|
|||
|
{
|
|||
|
if (clearO(clearOrder))
|
|||
|
{
|
|||
|
return "success";
|
|||
|
}
|
|||
|
}
|
|||
|
return "failure";
|
|||
|
}
|
|||
|
public string testPost(ELabel label)
|
|||
|
{
|
|||
|
string json = getJson(label);
|
|||
|
// Console.Write("get the lable: " + json );
|
|||
|
|
|||
|
return json;// "succeed";
|
|||
|
}
|
|||
|
public string test()
|
|||
|
{
|
|||
|
Console.Write("get request");
|
|||
|
return "服务响应 success";
|
|||
|
}
|
|||
|
|
|||
|
public string getJson(ELabel label)
|
|||
|
{
|
|||
|
string json = String.Format("\"labelId\":{0},\"address\":{1},\"count\":{2},\"color\":{3},\"port\":{4},\"orderNo\":{5}"
|
|||
|
, label.labelId, label.address, label.count, label.color, label.port, label.orderNo);
|
|||
|
// Console.Write("get the lable: " + json);
|
|||
|
|
|||
|
return "{" + json + "}";
|
|||
|
}
|
|||
|
|
|||
|
static string getMsg(string className, string msg)
|
|||
|
{
|
|||
|
return string.Format("{0} {1}", className, msg);
|
|||
|
}
|
|||
|
|
|||
|
public List<ELabel> getLabels()
|
|||
|
{
|
|||
|
ELabel el = new ELabel();
|
|||
|
|
|||
|
List<ELabel> lst = new List<ELabel>();
|
|||
|
|
|||
|
for (int i = 0; i < 10; i++)
|
|||
|
{
|
|||
|
el = new ELabel();
|
|||
|
el.address = 20+i;
|
|||
|
el.color = 2;
|
|||
|
el.count = 100+i;
|
|||
|
el.labelId = i + 1;
|
|||
|
el.orderNo = i + 1;
|
|||
|
el.port = 12;
|
|||
|
lst.Add(el);
|
|||
|
}
|
|||
|
|
|||
|
return lst;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
}
|