577 lines
17 KiB
C#
577 lines
17 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
//using DeiNiu.wms.Logical;
|
|
using DeiNiu.wms.Data.Model;
|
|
//using WcfClientAuthentication;
|
|
using DeiNiu.Utils;
|
|
using System.Data;
|
|
namespace DeiNiu.wms.win
|
|
{
|
|
class Park
|
|
{
|
|
// public static LEmployee currentUser;
|
|
private static System.Data.DataTable dics,owners;
|
|
public static string svrMgrUrl;
|
|
public static int wareHouseId;
|
|
public static string wareHouse;
|
|
|
|
public static void clear()
|
|
{
|
|
// currentUser = null;
|
|
DeiNiu.Utils.LoginInfo.UserId = -100;
|
|
DeiNiu.Utils.WmsConstants.CURRENT_USER_NAME = "";
|
|
}
|
|
public static ServiceReferenceNodes.NodeClient client
|
|
{
|
|
get
|
|
{
|
|
return
|
|
new ServiceReferenceNodes.NodeClient("BasicHttpBinding_INode",
|
|
string.Format("http://{0}/{1}", Park.svrUrl, "NodeService.svc"));
|
|
}
|
|
}
|
|
public static void init()
|
|
{
|
|
WmsConstants.CURRENT_USER_NAME = LoginInfo.Account;
|
|
// currentUser.Initialize(LoginInfo.UserId);
|
|
// LoginInfo.UserId = currentUser.GetEmployee.ID;
|
|
// LoginInfo.Token = Utils.Util.Encrypt(currentUser.GetEmployee.em_account); ;
|
|
// LoginInfo.UserId = DeiNiu.Utils. LoginInfo.UserId;
|
|
|
|
enumWhType a = new enumWhType();
|
|
|
|
|
|
|
|
//DeiNiu.Utils.WmsConstants.CURRENT_USER_ORG = user.GetEmployee.ge
|
|
}
|
|
internal static System.Data.DataTable getOwners(bool forceRefresh = false)
|
|
{
|
|
if (owners == null || forceRefresh)
|
|
{
|
|
// dics = new Node().Query().Tables[0];
|
|
try
|
|
{
|
|
|
|
{
|
|
owners = client.getOwners();
|
|
client.Close();
|
|
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
LogHelper.WriteLog(typeof(Park), e);
|
|
}
|
|
|
|
}
|
|
return owners == null ? new System.Data.DataTable("owners") : owners;
|
|
|
|
}
|
|
|
|
|
|
internal static System.Data.DataTable getDictionary(bool forceRefresh = false)
|
|
{
|
|
if (dics == null || forceRefresh)
|
|
{
|
|
// dics = new Node().Query().Tables[0];
|
|
try
|
|
{
|
|
|
|
{
|
|
dics = client.Query("", -1, -1).Tables[0]; client.Close();
|
|
dics.PrimaryKey = new DataColumn[] { dics.Columns["id"] };
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
LogHelper.WriteLog(typeof(Park), e);
|
|
throw (e);
|
|
}
|
|
|
|
}
|
|
return dics == null ? new System.Data.DataTable("dic") : dics;
|
|
|
|
}
|
|
|
|
|
|
public static void loadConfig()
|
|
{
|
|
|
|
DataTable dtSetup = null;
|
|
try
|
|
{
|
|
|
|
|
|
dtSetup = client.getNodesByFlag(6001); //出库偏好
|
|
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
switch (n.flag)
|
|
{
|
|
case 1:
|
|
WmsConstants.AUTO_SYNC_SALE_ORDER = n.isOn;
|
|
break;
|
|
case 2:
|
|
WmsConstants.AUTO_NEW_WAVE = n.isOn;
|
|
break;
|
|
case 3:
|
|
WmsConstants.AUTO_PICK_BULK_VALIDATION_ORDER = n.isOn;
|
|
break;
|
|
case 4:
|
|
WmsConstants.AUTO_PICK_BATCH_PICK_ORDER = n.isOn;
|
|
break;
|
|
case 8:
|
|
WmsConstants.OUT_BATCH_PICK_PRINT_CODE_EACH_BOX = n.isOn;
|
|
break;
|
|
case 9:
|
|
WmsConstants.OUT_SPEAK_WAVE = n.isOn;
|
|
break;
|
|
case 10:
|
|
WmsConstants.OUT_REGIST_BOX_AFTER_PICKED = n.isOn;
|
|
break;
|
|
case 14:
|
|
WmsConstants.OUT_LIGHT_ENABLE = n.isOn;
|
|
break;
|
|
case 15:
|
|
WmsConstants.AUTO_APPROVE_SALE_ORDER = n.isOn;
|
|
break;
|
|
case 16:
|
|
WmsConstants.FENDIAN_IN_ONE_PICK_ORDER = n.isOn;
|
|
break;
|
|
case 20:
|
|
WmsConstants.VALIDATION_SEEDS_PACK_DESK_SPLIT = n.isOn;
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
dtSetup = client.getNodesByFlag(1002);//系统设置
|
|
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
switch (n.flag)
|
|
{
|
|
case 1:
|
|
WmsConstants.CURRENT_USER_ORG = n.value;
|
|
break;
|
|
case 2:
|
|
WmsConstants.CURRENT_WAREHOUSE_ADDRESS = n.value;
|
|
break;
|
|
case 3:
|
|
WmsConstants.CURRENT_WAREHOUSE_OUT_DOCNO = n.value;
|
|
break;
|
|
case 4:
|
|
WmsConstants.CURRENT_WAREHOUSE_OUT_PHONE = n.value;
|
|
break;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
dtSetup = client.getNodesByFlag(1005);//系统设置
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
|
|
switch (n.flag)
|
|
{
|
|
case 1:
|
|
try
|
|
{
|
|
WmsConstants.PAGER_SIZE = Convert.ToInt32(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
break;
|
|
|
|
case 2:
|
|
try
|
|
{
|
|
WmsConstants.DAYS_QUERY_BEFORE = Convert.ToInt32(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
break;
|
|
case 3:
|
|
try
|
|
{
|
|
WmsConstants.DAYS_QUERY_AFTER = Convert.ToInt32(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
//亮灯拣货
|
|
|
|
dtSetup = client.getNodesByFlag(1006);//系统设置
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
|
|
switch (n.flag)
|
|
{
|
|
case 1:
|
|
WmsConstants.LIGHT_SVR_ADDRESS = n.value;
|
|
break;
|
|
case 2:
|
|
WmsConstants.PRINT_SVR_ADDRESS = n.value;
|
|
break;
|
|
case 3:
|
|
WmsConstants.ERP_API_ORDER_NOTICE = n.value;
|
|
break;
|
|
|
|
case 4:
|
|
WmsConstants.ERP_API_KEY = n.value;
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
//----文件服务
|
|
|
|
dtSetup = client.getNodesByFlag(1008);//系统设置
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
|
|
switch (n.flag)
|
|
{
|
|
case 1:
|
|
WmsConstants.FILE_SVR_PRINT = n.value;
|
|
break;
|
|
case 2:
|
|
WmsConstants.FILE_SVR_PIC = n.value;
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
//-----------------入库抽检规则
|
|
|
|
|
|
|
|
dtSetup = client.getNodesByFlag(5004);//系统设置
|
|
|
|
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
decimal intValue;
|
|
try
|
|
{
|
|
intValue = Convert.ToDecimal(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 1:
|
|
WmsConstants.GOODS_IN_VALID_SEEDS_BOXS_STEP_MIN = intValue;
|
|
break;
|
|
case 2:
|
|
WmsConstants.GOODS_IN_VALID_SEEDS_BOXS_STEP = intValue;
|
|
break;
|
|
case 3:
|
|
WmsConstants.GOODS_IN_VALID_SEEDS_BOXS_STEP_FACTOR = intValue;
|
|
|
|
break;
|
|
|
|
case 4:
|
|
WmsConstants.IN_STOCK_LEFT_VALID_DAYS =Convert.ToInt32( intValue);
|
|
|
|
break;
|
|
|
|
|
|
case 5:
|
|
WmsConstants.IN_STOCK_DEFAULT_WAREHOUSE = Convert.ToInt32(intValue);
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//-----------------系统参数
|
|
|
|
|
|
dtSetup = client.getNodesByFlag(1005);//系统参数
|
|
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
int intValue;
|
|
try
|
|
{
|
|
intValue = Convert.ToInt32(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 2:
|
|
WmsConstants.DAYS_QUERY_BEFORE = intValue;
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
//--打印机设置
|
|
dtSetup = client.getNodesByFlag(1010);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
decimal intValue;
|
|
try
|
|
{
|
|
intValue = Convert.ToDecimal(n.value);
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 1:
|
|
WmsConstants.PRINTER_PIN_PAGE_WIDTH = intValue;
|
|
break;
|
|
case 2:
|
|
WmsConstants.PRINTER_PIN_PAGE_HEIGHT = intValue;
|
|
break;
|
|
case 3:
|
|
WmsConstants.PRINTER_CODE_WIDTH = intValue;
|
|
break;
|
|
case 4:
|
|
WmsConstants.PRINTER_CODE_HEIGHT = intValue;
|
|
break;
|
|
|
|
case 5:
|
|
WmsConstants.PRINTER_PIN_PAGE_MARGIN_TOP = intValue;
|
|
break;
|
|
|
|
case 6:
|
|
WmsConstants.PRINTER_PIN_PAGE_MARGIN_LEFT = intValue;
|
|
break;
|
|
|
|
case 7:
|
|
WmsConstants.PRINTER_PIN_PAGE_MARGIN_RIGHT = intValue;
|
|
break;
|
|
|
|
case 8:
|
|
WmsConstants.PRINTER_PIN_PAGE_MARGIN_BOTTOM = intValue;
|
|
break;
|
|
}
|
|
|
|
}
|
|
|
|
//系统偏好
|
|
|
|
dtSetup = client.getNodesByFlag(1004);//系统参数
|
|
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
Node n = new Node(dr);
|
|
|
|
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 2:
|
|
WmsConstants.IS_MENU_EXPANDED = n.isOn;
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
dtSetup = client.getNodesByFlag(5001);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
|
|
try
|
|
{
|
|
Node n = new Node(dr);
|
|
switch (n.flag)
|
|
{
|
|
case 19:
|
|
WmsConstants.IS_PRINT_PRENO = n.isOn;
|
|
break;
|
|
|
|
}
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
// dtSetup = new Node().QueryByFlag(5002);//字符类型参数设置
|
|
|
|
dtSetup = client.getNodesByFlag(5002);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
try
|
|
{
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 1:
|
|
WmsConstants.GOODS_VALID_DATE_FORMAT = n.value;
|
|
break;
|
|
|
|
}
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
}
|
|
|
|
dtSetup = client.getNodesByFlag(1040);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
try
|
|
{
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 1:
|
|
WmsConstants.PRINTER_NAME_CODE = n.value;
|
|
break;
|
|
case 3:
|
|
WmsConstants.PRINTER_NAME_A4 = n.value;
|
|
break;
|
|
case 2:
|
|
WmsConstants.PRINTER_NAME_PIN = n.value;
|
|
break;
|
|
|
|
}
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
}
|
|
|
|
dtSetup = client.getNodesByFlag(1050);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
try
|
|
{
|
|
switch (n.flag)
|
|
{
|
|
|
|
case 1:
|
|
WmsConstants.LIGHT_COM_1 = n.value;
|
|
break;
|
|
|
|
case 2:
|
|
WmsConstants.LIGHT_COM_2 = n.value;
|
|
break;
|
|
|
|
|
|
}
|
|
}
|
|
catch
|
|
{
|
|
continue;
|
|
}
|
|
|
|
}
|
|
|
|
WmsConstants.EXCEPTION_IGNORE_LST.Clear(); //静默异常列表
|
|
dtSetup = client.getNodesByFlag(1020);
|
|
foreach (DataRow dr in dtSetup.Rows)
|
|
{
|
|
Node n = new Node(dr);
|
|
WmsConstants.EXCEPTION_IGNORE_LST.Add(n.name);
|
|
|
|
}
|
|
|
|
client.Close();
|
|
|
|
}
|
|
catch
|
|
{
|
|
client.Close();
|
|
// return;
|
|
}
|
|
|
|
loadPrinters();
|
|
}
|
|
public static void loadPrinters()
|
|
{
|
|
string PRINTER_NAME_A4 = getConfigValue("A4Printer");
|
|
string PRINTER_NAME_CODE = getConfigValue("CodePrinter");
|
|
string PRINTER_NAME_PIN = getConfigValue("PinPrinter");
|
|
|
|
WmsConstants.PRINTER_NAME_A4 = String.IsNullOrEmpty(PRINTER_NAME_A4) ? WmsConstants.PRINTER_NAME_A4 : PRINTER_NAME_A4;
|
|
WmsConstants.PRINTER_NAME_CODE = String.IsNullOrEmpty(PRINTER_NAME_CODE) ? WmsConstants.PRINTER_NAME_CODE : PRINTER_NAME_CODE;
|
|
WmsConstants.PRINTER_NAME_PIN = String.IsNullOrEmpty(PRINTER_NAME_PIN) ? WmsConstants.PRINTER_NAME_PIN : PRINTER_NAME_PIN;
|
|
|
|
}
|
|
static string getConfigValue(string key)
|
|
{
|
|
return System.Configuration.ConfigurationManager.AppSettings[key];
|
|
}
|
|
|
|
|
|
public static string svrUrl { get; set; }
|
|
}
|
|
}
|