using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace DeiNiu.Utils { public struct WmsConstants { public static bool IS_INITIALED = false; public static string SQL_CONN_WMS = ""; public static string SQL_CONN_PLATFORM = ""; public static string SQL_CONN_WMS_ERP = ""; // public static int CURRENT_USER_ID; //public static string CURRENT_USER_TOKEN; public static string CURRENT_USER_ORGID = "LDJNBYXGS"; public static string CURRENT_USER_NAME = "系统"; public static string CURRENT_USER_ORG = "贵客集团";//todo public static string CURRENT_WAREHOUSE_ADDRESS = ""; public static string CURRENT_WAREHOUSE_OUT_DOCNO = "1234"; //随货通行单文件编号 public static string CURRENT_WAREHOUSE_OUT_PHONE = "12345"; //随货通行单文件编号 public static decimal BULK_MAX_RATE = 1m; //零货默认比例 public static decimal BATCH1_MAX_RATE = 1m; public static decimal BATCH2_MAX_RATE = 4m; public static decimal BATCH3_MAX_RATE = 20m; public static int PAGER_SIZE = 100; public static bool LOG_SQL_ON = false; public static bool IS_MENU_EXPANDED = false; public static int DUE_DAYS_AUTO_PICK = 3; //out 订单duedate 几日内的自动处理,进行分拣 /// /// auto sync orders when form is load /// public static bool AUTO_SYNC_SALE_ORDER = false; /// /// auto new wave when form is load /// public static bool AUTO_NEW_WAVE = false; /// /// auto get pick orders 4 validation /// public static bool AUTO_PICK_BULK_VALIDATION_ORDER = false; /// /// auto get batch pick orders /// public static bool AUTO_PICK_BATCH_PICK_ORDER = false; public static bool AUTO_APPROVE_SALE_ORDER = false; public static bool FENDIAN_IN_ONE_PICK_ORDER = false; public static string LOC_NAME_FORMAT = "{0}.{1:D2}.{2:D2}.{3}{4}"; /// /// 拣货单明细最大个数 /// public static int MAX_PICK_DETAIL_CNT_IN_PICKORDER = 500; /// /// 零库单笔捡货最大数量,电子标签最大显示9999 /// public static int MAX_PICK_CNT_BULK = 9999; /// /// 分配拣货任务时,最大货位数 /// public static int MAX_PICK_LOT_CNT = 100; public static int MAX_PICK_PERCENT = 30; ///可获取最大现有任务的百分比 /// /// 分配拣货任务时,最大箱数 /// public static int MAX_PICK_BOX_CNT = 500; public static int MAX_TASKS_OWN = 3; /// /// 统计波次用时,作为取订单间隔的参考 /// public static int WAVE_CNT = 0; public static int WAVE_TOTAL_SECONDS = 0; public static DateTime WAVE_LAST_TIME; public static string WAVE_LAST_ORDER = "";//last wave order for count time public static string WAVE_CURRENT_ORDER = ""; public static int WAVE_SECONDS; //average seconds per wave public static int MAX_LABEL_DATA_IN_A_WAVE = 40; //一个标签一个波次只能存储40条数据 public static int MAX_CONTROL_DATA_IN_A_WAVE = 1200; //一个控制器最大存储1200条 public static DateTime WAVE_LAST_FREE_TIME; /// /// x分钟后强制开始新波次,有可能会有再次发送亮灯数据时,实际已经捡货完毕并拍灭,又重新亮灯造成多捡的可能。 /// public static int MAX_SECONDS_BETWEEN_WAVES = 1 * 60 * 1000;// 20 * 60000; public static int WAVE_ORDERS_CNT = 6;//wave每个最大订单数 ,不适用于电子标签波次,灯光颜色决定最大波次订单数量 // public static int WAVE_TASK_MAX_CNT = 100; public static bool DPS_TASK_GENERATION = false; //亮灯拣选是否生成拆零的任务数据到任务大厅 //入库规则 /// /// 按入库预约到货数量自动收货,等待验收入库 /// public static bool IN_STOCK_PREIN_AUTO_RECEIVE=true; /// /// 按店分货直通类验收,完验时自动验收未手动干预部分 /// public static bool IN_STOCK_ZHITONG_PREDONE_AUTO_VALIDATION = true; /// /// 是否打印通知单号码 /// public static bool IS_PRINT_PRENO = false; /// /// 检查日期 /// public static bool IN_STOCK_CHECK_DATE = true; /// /// 入库是否优先检查并补充零库 /// public static bool IN_STOCK_CHECK_BULK_FIRST = false; /// /// 入库时,无大整货位,入小整,整库无货位入零库 /// public static bool IN_STOCK_NO_BATCH_LOCATION_IN_BULK = true; /// /// 入库时,优先补大货位 /// public static bool IN_STOCK_BIG_LOCATION_FIRST = true; public static bool IN_STOCK_OVER_RECEIVE = true; /// /// 入库时,同一验收批次数量可以入不同货区 /// public static bool IN_STOCK_DIFF_PARTS = true; /// /// 商品入库默认从设定货区分配货位 /// public static int IN_STOCK_DEFAULT_WAREHOUSE = 0; /// /// 入库上架需要扫描条码 /// 扫描确认后库存增加 /// public static bool IN_STOCK_PDA_SCAN = true; /// /// 入库不良品是否计入采购明细的validCont /// public static bool IN_STOCK_BAD_COUNTIN_VALID = false; /// /// ABC 上架策略 /// public static bool IN_STOCK_ABC = true; /// /// 是否启用入库验收模块 /// public static bool IN_STOCK_RECEIVE_VALID = true; public static decimal IN_STOCK_LEFT_VALID_FACTOR = 0.3m; public static int IN_STOCK_LEFT_VALID_DAYS = 180; // public static int PREPICKING_ORDERS_CNT = 0; public static string PRINTER_NAME_CODE = "ZDesigner GT800 (EPL)"; public static string PRINTER_NAME_A4 = "HP LaserJet Professional P1106"; public static string PRINTER_NAME_PIN = "HP LaserJet Professional P1106"; public static string LIGHT_COM_1 = "com1"; //public static char[] SPLIT = { '*', '%', '&' }; public static string SPLIT = "|*|"; /// /// light up success or not /// public static Dictionary WAVE_CURRENT_LIGHTS_STATUS = new Dictionary(); /// /// pick status,lights turnned off or not /// public static Dictionary WAVE_CURRENT_PICK_STATUS = new Dictionary(); public static string[] SPECIAL_AUTHS; public static string SPECIAL_AUTHS_SUPER = "超级权限"; public static string SPECIAL_AUTHS_DIC_DELETE = "删除字典"; public static string SPECIAL_AUTHS_DIC_UPDATE = "修改字典"; public static string SPECIAL_AUTHS_IN_BATCH_IN = "批量入库"; public static string SPECIAL_AUTHS_DOUBLE_CHECK = "特殊检验"; public static string SPECIAL_VALID_NEAR_EXPIRED = "临期入库"; public static string SPECIAL_VALID_REASSIN_TASK_BY_ID = "按下架任务编号获取任务"; public static string SPECIAL_AUTHS_PICK_COUNT_MODIFY= "修改拣货任务数量"; public static string SPECIAL_ALL_PARTION_TASKS = "跨区任务可见"; public static string SPECIAL_ALL_CHANGE_DESK_COLOR = "分播台颜色设置"; public static string SPECIAL_OVER_RECEIVE = "超量收货"; public static string WCF_UN_AUTH_MESSAGE = "未授权的访问,请登录后再试"; public static string GOODS_VALID_DATE_FORMAT = "yyyyMMdd"; public static string CURRENT_SEEDS_NO, CURRENT_SEEDS_GOODSID, CURRENT_SEEDS_GOOD_BATCH; public static int CURRENT_SEEDS_GOOD_SKUID; public static int CURRENT_SEEDS_LABLE_ID; public static Dictionary SEEDS_CURRENT_PICK_STATUS = new Dictionary(); /// /// 播种订单商品类型阀值 /// 订单商品类型数量小于该值时,适用播种 /// public static int OUT_MAX_SEEDS_GOODSTYPE_CNT = 50; /// /// 播种订单商品零捡总数阀 /// 订单零捡商品总数小于该值时,适用播种 /// public static int OUT_MAX_SEEDS_BULK_CNT_SUM = 10; public static int OUT_MAX_SEEDS_WAIT_MINUES = 10; public static int SEEDS_LABLEID_MARK_VALUE = 99999; //适合播种的标记 //每次处理待拣货订单数量 public static int OUT_PROCESS_ORDERS_CNT = 100; public static int OUT_PROCESS_STOCK_DAYS = 2; //处理分拣单库存定位的最大天数,几天内的进行处理,超过期限的不予处理 public static int SEEDS_WEIGHT_OUT_RATE = 20; //称重类型的先总拣后分播时,总拣数量需大于总需求的比例,防止不够分; 总拣分播剩余部分将自动归还库存。 public static decimal OVER_WEIGHT_PERCENT_ALLOW = 20; // 称重商品允许超收超拣百分比 public static int OUT_MIN_DAYS_VALIDTION_LEFT = 30; public static int OUT_STOCK_PROCESS_MAX_TIME_MINUTE =5; /// /// 开启零货播种拣选 /// public static bool OUT_BULK_SEEDS_PICK_ON = true; public static bool OUT_BATCH_PICK_PRINT_CODE_EACH_BOX = true; public static bool OUT_REGIST_BOX_AFTER_PICKED = true; public static bool OUT_SPEAK_WAVE = true; public static bool OUT_BULK_DESK_CONTROLL = true; //PDA can only get batch tasks public static bool OUT_TASK_ASSIGN_BATCH_ONLY = true; /// /// 出库PDA扫描、电子标签确认后(波次强制结束后)扣库存 /// public static bool OUT_STOCK_DEDUCT = true; /// ///零库出货PAD捡货 /// public static bool OUT_STOCK_BULK_PDA_SCAN = false; public static bool OUT_STOCK_BATCH_FIFO = true; public static bool OUT_LIGHT_ENABLE = true; public static bool VALIDATION_SEEDS_PACK_DESK_SPLIT = false; //是否独立启用打包台 public static int VALIDATION_KEEP_DAYS = 2; public static string ORDER_PRI_PICK = "PK"; public static string ORDER_PRI_PICK_SELF = "ITK"; public static string ORDER_PRI_RPO = "RP"; public static string ORDER_PRI_WAVE = "WV"; public static string ORDER_PRI_TRAN = "TR"; public static string ORDER_PRI_SEEDS = "SD"; public static string ORDER_PRI_PANDIAN = "PN"; public static string ORDER_PRI_INORDER = "PE"; public static string ORDER_PRI_WAVEJOB = "JOB"; public static string ORDER_DPS_WAVE = "DPS"; public static string ORDER_PRI_OBSOLETE = "OBS"; public static string ORDER_PRI_TRANSFER_INSIDE = "TRI"; public static string ORDER_PRI_TRANSFER_OUTSIDE = "TRO"; public static string ORDER_PRI_RETURN_VENDER = "RTV"; public static string ORDER_PRI_PICK_OUT_INVOICE = "PKI"; public static string ORDER_PRI_STK_IN = "STI"; public static string ORDER_PRI_STK_DOWN = "XJ"; public static decimal GOODS_IN_VALID_SEEDS_BOXS_STEP = 50; public static decimal GOODS_IN_VALID_SEEDS_BOXS_STEP_MIN = 3; public static decimal GOODS_IN_VALID_SEEDS_BOXS_STEP_FACTOR = 1; public static int DAYS_QUERY_BEFORE = 1; public static int DAYS_QUERY_AFTER = 3; public static Dictionary USER_CURRENT_DBID = new Dictionary(); public static Dictionary DBID_CONN_STR = new Dictionary(); public const string SKU_RESEVRED_PRDDATE_ATTNAME = "生产日期"; public const string SKU_RESEVRED_EXPIREDATE_ATTNAME = "到期日期"; public const string SKU_RESEVRED_BATCH_ATTNAME = "厂家批次"; public const string SKU_RESEVRED_ENTI_ATTNAME = "货主"; public const string SKU_RESEVRED_GOODSID_ATTNAME = "商品ID"; //分区亮灯 //每个分区一次最大订单数量 public static int PART_ORDER_SIZE = 2; //每个分区一次最大分拣笔数 public static int PART_REC_SIZE = 200; // public static int PART_FINISH_LABLE_ID_PLUS = 0; public static int[] PART_FINISH_LABLE_IDS; public static Dictionary partStatus = new Dictionary();//完成器是否点亮 /// /// 播种拣选,分区任务波次亮灯,最大同时亮灯的复核台数量 /// 每个复核台的任务对应特定颜色的灯 /// 比如总共有10个复核台,每次亮3个复核台的任务,则同时最大拣选3个复核台的任务,用红、绿、蓝三色表示亮灯颜色,注意灯色的映射管理,实际亮灯颜色和真实的分播台编号不同 /// 使用完成器依次分批呼叫下面的任务 /// /// public static int SEEDS_PART_LIGHT_DESK_CNT = 3; public static bool SEEDS_PARTION_DESK_COLOR_MAP = true; /// /// 灯色的映射管理 /// [partionid, [oColor,newColor]] /// // public static Dictionary> partColorPairs = new Dictionary>(); /// /// 区域亮灯信息,周转箱注册信息准备 /// [partionid, [newColor,dspOrder]] /// // public static Dictionary> currentWavePart = new Dictionary>(); public static string LIGHT_SVR_ADDRESS = ""; public static string PRINT_SVR_ADDRESS = ""; /// /// 集中配送订单出库集单截止时间 /// public static string STOCKOUT_JIDAN_DUE_TIME_HOUR = "17"; public static int JOB_BASIC_INFO_SYNC_INTERVAL = 10; //每十分钟同步更新基础资料 public static int JOB_OUT_REQUEST_INTERVAL = 10; //每十分钟同步更新基础资料 public static int JOB_TEST_REQUEST_INTERVAL = 10; //每十分钟同步更新基础资料 public static int JOB_OUT_REQUEST_NO_STOCK_CHECK_INTERVAL = 60; //每3小时查验缺货订单库存是否已经满足 public static int JOB_NOTICE_ERP = 60; //每3小时查验缺货订单库存是否已经满足 public static bool ERP_NOTICE_STOCK_IN = false; //是否通知ERP入库信息 public static bool ERP_NOTICE_STOCK_OUT = false; //是否通知ERP出库信息 //文件服务地址 public static string FILE_SVR_PRINT = ""; public static string FILE_SVR_PIC = ""; //seeds double check public static int CHECKED_BY_2_ID; //多联打印机纸张参数 public static decimal PRINTER_CODE_WIDTH = 5.5m; public static decimal PRINTER_CODE_HEIGHT = 4; public static string PRINTER_PIN_PAGE_FORMAT="EMF"; public static decimal PRINTER_PIN_PAGE_WIDTH=21; public static decimal PRINTER_PIN_PAGE_HEIGHT = 29.7m; public static decimal PRINTER_PIN_PAGE_MARGIN_TOP=1; public static decimal PRINTER_PIN_PAGE_MARGIN_LEFT=2; public static decimal PRINTER_PIN_PAGE_MARGIN_RIGHT=1; public static decimal PRINTER_PIN_PAGE_MARGIN_BOTTOM=1; public static bool PDA_LOC_GOODTYPE_VALIDATION=true; public static bool NO_FREE_LOCATION_USE_TMP=true; public static string TMP_BULK_LOCATION="11.01.01.11"; public static string TMP_BATCH_LOCATION = "11.01.01.11"; public static string TMP_LACK_DEBIT_LOCATION = "缺货虚拟货位";//拣货时系统库存不足,但未进系统的待入货物从此周转,借用 public static bool BOX_BULK_IN_SINGLE_LOC=true; //拆箱入零库,一箱上单个货位,减少分拆上货花费成本。 public static bool VALID_LOC_CAPICITY = false;//是否验证货位库容 public static List EXCEPTION_IGNORE_LST=new List(); public static bool OUT_STOCK_LACK_HOLD_ORDER = true;//有缺货则整单不出,原始订单不生成拣货单 public static bool OUT_STOCK_LACK_VALIDATION = false;//是否检测原始订单是否有缺货; 如果不检测,则原始订单全部生成拣货单,缺货问题在拣货环节进行处理 public static bool OUT_REQUEST_MERGE = true; public static bool OUT_REQUEST_PROCESS_STOCK = true; public static bool OUT_VALIDATION_ONE_ENTER = true; public static bool OUT_STOCK_LACK_VIR_OUT = true;//有缺货从虚拟库出,虚拟库存出拣货任务 public static bool OUT_STOCK_LACK_VIR_OUT_AUTO = true;//有缺货从虚拟库借库存,从实体货位出拣货任务,系统管理虚拟库存,自动借// TODO:判断有没有相关在途订单及在途数量 public static bool OUT_STOCK_LACK_VIR_IN_AUTO = false; //来货是否自动还 借出的货,适用每个货单供应商供货情况 public static bool OUT_STOCK_BULK_LACK_OUT = true;//分拣单某明细中的零货,(零库)分拣库位货数量不足,其它正常库存的货品可继续分拣, 一次分拣完成并打包的分拣单不适用 public static bool OUT_STOCK_BULK_LACK_OUT_SEEDS = true;//取总分拣单某明细中的零货,(零库)分拣库位货数量不足,其它正常库存的货品可继续分拣 public static bool OUT_STOCK_WHEN_NO_MORE_REQUEST; //仅当没有新订单时,统一进行分组处理、库存处理 public static bool OUT_ZHITONG_FROM_STORE = true; //直通商品 可以从库存出库 public static string ERP_API_ORDER_NOTICE = "http://47.103.159.209:20999/lsyapi/notice?orderNo={0}&orderType={1}"; public static string ERP_API_KEY="ApiToken:7c6fa52f4da9bb859c2d44b9b40ee929"; public static bool TEST_CREATE_PURCH_IN; public static bool TEST_VALIDIN; public static bool TEST_VALID_IN_ZHITONG_TAKEALL;//先收后分 public static bool TEST_VALID_IN_ZHITONG_TO_OUTDETAIL;//边收边分 public static bool TEST_ONSHELF; public static bool TEST_CREATE_SALES_OUT; public static bool TEST_PICK_OUT; public static bool TEST_PICK_OUT_SEEDS; public static bool TEST_PLATE_OUT; public static bool TEST_PLATE_OUT_CUSTOMER; public static bool TEST_PLATE_OUT_LINE; public static bool TEST_PLATE_OUT_VC; public static bool TEST_PLATE_OUT_LOAD_TRUCK; public static bool TEST_PLATE_OUT_START_TRAN; public static bool TEST_PANDIAN_PROCESS; public static int TEST_VALID_IN_ORDER_CNT = 50; public static int TEST_VALID_IN_ITEM_CNT=500; public static int TEST_PICK_OUT_ITEM_CNT = 500; public static int MAX_JOBS_IN_A_WAVE = 100; //生成出货波次任务时,单个波次包含的最大任务数 public static string PDA_MENU_UTILS= "库管工具"; public static string PDA_MENU_STK_OUT= "入库收货"; public static string PDA_MENU_STK_IN= "出库拣货"; public static string PDA_MENU_PLATE= "集货管理"; public static int ERP_TRANS_DATA_AT_CLOCK; public static int ERP_TRANS_DATA_SLEEP_MINUES; public static bool SEEDS_PICK_ALL=true; public static List GOODS_WEIGHT_UNITS =new List(); public static string PLATE_TMP_PREFIX="L"; public static string PLATE_BOX_PREFIX="X"; public static string PLATE_CUST_PREFIX="G"; public static string PLATE_LINE_PREFIX="M"; public static string PLATE_TRUCK_PREFIX="C"; public static bool SEEDS_OUT_NOT_WITH_WEIGHT = true; //称重出库的不进行总拣 public static bool JIHUO_CHECK_PRE_STATE=true; //集货时是不是检查前置集货是否完成 public static bool PANDIAN_WEIGHT_SUM = true; //盘点时,称重sku 可多次称重,结果累加,skuId 需一致 public static bool PANDIAN_SHOW_CNT = true; //盘点时,是否显显示原始数量 public static bool IS_PLATE_IN_LINE; //是否启用线路码头集货,否则客户容器直接装车 public static bool IS_CHECK_LINE_ON_LOAD;//是否装车时限制同线路客户 public static bool UP_DOWN_SELF_RECS=false; //是否只能上架自己下架的货品 public static bool AUTO_LOAD_TRUCK = true; //客户订单的容器自动装车 public static int STOCK_HIS_KEEP_DAYS = 31; public static bool OUT_SEEDS_CAN_OVER_REQ; //集货播种时,可否比原来的需求多发 public static bool OUT_SEEDS_PICK_TASK_AUTO_ASSIGN =true; //只许抢集中拣货的任务,其他按单发 public static bool OUT_TASK_ASSIGN_ZHAIGUO_TYPE = false; //按单摘果分拣的任务是否可以自动获取 public static int SEEDS_START_HOUR=14; public static int SEEDS_END_HOUR=14; public static int SEEDS_END_MINUTES=35; public static int SEEDS_START_MINUTES=20; public static int SEEDS_TASK_FETCH_START_HOUR = 14; public static int SEEDS_TASK_FETCH_END_HOUR = 14; public static int SEEDS_TASK_FETCH_START_MINUTES = 20; public static int SEEDS_TASK_FETCH_END_MINUTES = 35; public static string CURRENT_PANDIAN_ORDER=""; public static bool ERP_NOTICE_STOCK_OUT_DOING; } }