510 lines
17 KiB
C#
510 lines
17 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Runtime.Serialization;
|
||
using System.ServiceModel;
|
||
using System.ServiceModel.Web;
|
||
using System.Text;
|
||
using System.Data;
|
||
using DeiNiu.Utils;
|
||
|
||
namespace DeiNiu.Wcf
|
||
{
|
||
/// <summary>
|
||
/// wince 专用
|
||
/// </summary>
|
||
[ServiceContract]
|
||
public interface IMobile
|
||
{
|
||
[OperationContract]
|
||
[WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json,
|
||
UriTemplate = "validuser?userId={userId}&passwd={passwd}")]
|
||
int validUser(string userId, string passwd);
|
||
[OperationContract]
|
||
[WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json,
|
||
UriTemplate = "login?userId={userId}&passwd={passwd}")]
|
||
string login(string account, string passwd);
|
||
|
||
[OperationContract]
|
||
DataTable getDictionary();
|
||
|
||
/// <summary>
|
||
///取移动端权限列表
|
||
/// </summary>
|
||
/// <param name="userId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
List<string> getPortAuths(int userId, string token);
|
||
|
||
/// <summary>
|
||
///取所有线路
|
||
/// </summary>
|
||
/// <param name="custName">可为null,取所有线路</param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
List<string> getLines(string custName);
|
||
|
||
|
||
/// <summary>
|
||
///取所属货区
|
||
/// </summary>
|
||
/// <param name="userId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
List<string> getPartions(int userId);
|
||
|
||
[OperationContract]
|
||
int validRole(string account,string passwd,string role);
|
||
|
||
|
||
//------------------------- stock location begin ------------------------------------------------------------------------------------------
|
||
|
||
/// <summary>
|
||
/// get stock goods info by locid
|
||
/// for wince
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getStockLocation(string locId);
|
||
|
||
[OperationContract]
|
||
DataTable getStockLocationsByBarcode(string barcode);
|
||
|
||
/// <summary>
|
||
/// update stock goods info
|
||
/// on wince stock check
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <param name="goodsId"></param>
|
||
/// <param name="batch"></param>
|
||
/// <param name="count"></param>
|
||
/// <param name="oldCount"></param>
|
||
/// <param name="reason"></param>
|
||
[OperationContract]
|
||
bool updateStockLocation(string locId, string goodsId, int skuId, string batch, decimal count, string reason, int type, int operId, string token);
|
||
|
||
|
||
[OperationContract]
|
||
int initialStockIn(string goodsId,string locId, decimal batchCount, string[] skuKeys, string[] skuValues, int operId, string token);
|
||
|
||
|
||
/// <summary>
|
||
/// clear the location
|
||
/// on wince
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <param name="reason"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool clearLocation(string locId, string reason, int operId, string token);
|
||
|
||
/// <summary>
|
||
/// 更新location status
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <param name="status"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool upLocationStatus(string locId, int status, int operId, string token);
|
||
|
||
/// <summary>
|
||
/// 更新商品库容量
|
||
/// </summary>
|
||
/// <param name="goodsId"></param>
|
||
/// <param name="volType"></param>
|
||
/// <param name="volume"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool updateGoodsLocationVolume(string goodsId, int volType, decimal volume, int operId, string token);
|
||
|
||
/// <summary>
|
||
/// location info
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getLocation(string locId);
|
||
/// <summary>
|
||
/// 扫描货位,得到货架上的商品信息,比较该商品在erp和wms库存
|
||
/// </summary>
|
||
/// <param name="goodsId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getStockCompareErp(string goodsId, string barcode);
|
||
|
||
/// <summary>
|
||
/// 手持上下架
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <param name="goodsId"></param>
|
||
/// <param name="batch"></param>
|
||
/// <param name="count"></param>
|
||
/// <param name="type"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
int upDownStockLocation(string locId, string goodsId, int skuId, string batch, decimal count, int type, int operId, string token, int oldRecId);
|
||
|
||
/// <summary>
|
||
/// 已下架待上架商品
|
||
/// </summary>
|
||
/// <param name="goodsId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getDownStockList4Up(int operId);
|
||
|
||
//绑定id
|
||
[OperationContract]
|
||
int locationEleIdCombine(string locId, int eleId, int operId, string token);
|
||
|
||
|
||
/// <summary>
|
||
/// 补零入库
|
||
/// </summary>
|
||
/// <param name="locId"></param>
|
||
/// <param name="goodsId"></param>
|
||
/// <param name="batch"></param>
|
||
/// <param name="count"></param>
|
||
/// <param name="reason"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
int repItemIn(string locId, string goodsId, int skuId, string batch, decimal count, int portId, int operId, string token);
|
||
|
||
/// <summary>
|
||
/// 货位分配
|
||
/// </summary>
|
||
/// <param name="goodsId"></param>
|
||
/// <param name="batch"></param>
|
||
/// <param name="count"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getLocations(int skuId, string skuCode, string goodsId, string batch, decimal count);
|
||
/// <summary>
|
||
/// 根据商品找库存货位信息
|
||
/// </summary>
|
||
/// <param name="goodsId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getGoodsStockLocations(string barcode);
|
||
|
||
|
||
/// <summary>
|
||
/// get erp storage by barcode
|
||
/// </summary>
|
||
/// <param name="barcode"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getGoodsERPStoreByBarcode(string barcode);
|
||
|
||
/// <summary>
|
||
/// get pandian orders by ownerid and status
|
||
/// </summary>
|
||
/// <param name="ownerId"></param>
|
||
/// <param name="status"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getPandianOrders(int ownerId,int status);
|
||
|
||
[OperationContract]
|
||
DataTable getPandianItem(string orderNo, string locationId);
|
||
|
||
/// <summary>
|
||
/// 盘点采集
|
||
/// </summary>
|
||
/// <param name="orderNo"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool newPandianItem(string orderNo, string locationId, int skuId, string barcode, string prdDate,
|
||
string batch, decimal count, int operId, string token);
|
||
|
||
//-----------------------stock maintain begin --------------------------------------------------------------
|
||
|
||
|
||
|
||
[OperationContract]
|
||
DataSet getData4Maintain(string locationId = "");
|
||
|
||
[OperationContract]
|
||
DataTable getIssueData(int skuId);
|
||
|
||
/// <summary>
|
||
/// new maintain record
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool newMaintain(int stockId,decimal mCount,decimal issueCount, string details, int operId,string token);
|
||
|
||
[OperationContract]
|
||
bool fixIssueData(int skuId, int operId, string token);
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
// -------------------stock In request begin --------------------------------------------------------------------------------------------------
|
||
|
||
|
||
// 根据预到单收货
|
||
|
||
|
||
[OperationContract]
|
||
DataTable getPreInDetail(string preInNo,int operId, string token);
|
||
|
||
// [OperationContract]
|
||
// DataTable getPreInInfo(string preInNo, int operId, string token);
|
||
|
||
[OperationContract]
|
||
bool receiveDetail(string preInNo, string goodsId, decimal arriveNumber, decimal receiveNumber, int inType, string inRemark,
|
||
decimal temperature, bool isCache, int cachePartion, int operId, string token);
|
||
|
||
[OperationContract]
|
||
DataTable getGoodsPackByBarcode(string barcode);
|
||
|
||
[OperationContract]
|
||
DataTable getReceiveDetailByBarcode(string preInOrder, string barcode);
|
||
[OperationContract]
|
||
decimal getValidSeedsCnt(string goodsId, decimal batchCount);
|
||
[OperationContract]
|
||
bool isFlowNoValid(string preInOrder, string flowNo);
|
||
[OperationContract]
|
||
int validIn(string preInNo, string flowNo, string goodsId, decimal batchCount, decimal seedsCount,
|
||
string[] skuKeys, string[] skuValues, bool isPass, bool isIsuLocations, int secondValidUserId, int operId, string token);
|
||
[OperationContract]
|
||
DataTable getPreValidResult(string preInNo, string flowNo, int operId, string token,bool showAllPartions=false);
|
||
[OperationContract]
|
||
DataTable getStockInPortDetail(int portId);
|
||
[OperationContract]
|
||
DataTable getStockInDetails(string flowNo);
|
||
[OperationContract]
|
||
int finishUpShelfItem(string orderNo, int id, decimal count, string locationId,string reason, int operId, string token);
|
||
// -------------------stock OUT request begin --------------------------------------------------------------------------------------------------
|
||
|
||
/// <summary>
|
||
/// 取待复核订单列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getBatchPickOrders4Valid();
|
||
|
||
/// <summary>
|
||
/// 取待复核订单明细
|
||
/// </summary>
|
||
/// <param name="orderNo"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getPickOrderDetails(string orderNo);
|
||
|
||
|
||
/// <summary>
|
||
/// get batch pick detail by port record id
|
||
/// </summary>
|
||
/// <param name="Id"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable getPickDetail(int Id);
|
||
|
||
/// <summary>
|
||
/// 手持捡完一个货位,更新状态
|
||
/// 检测到出库单所有整货都已经分拣完毕后将更新订单明细及订单 batchPickStatus,status
|
||
/// </summary>
|
||
/// <param name="pickOrderNo"></param>
|
||
/// <param name="id"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool finishPickItem(string flowNo,string waveNo, string pickOrderNo, int id, decimal pickCount, int operId, string token);
|
||
|
||
/// <summary>
|
||
/// 手持复核一个货位,更新状态
|
||
/// 检测到出库单所有整货都已经复核完毕后将更新订单明细及订单 batchPickStatus,status
|
||
/// </summary>
|
||
/// <param name="pickOrderNo"></param>
|
||
/// <param name="id"></param>
|
||
/// <param name="operId"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
bool finishBatchValidateItem(string pickOrderNo, int id, int operId, int checkBy2, string token);
|
||
|
||
|
||
[OperationContract]
|
||
int batchPickCount4Valid(string pickOrderNo);
|
||
|
||
/// <summary>
|
||
/// 当天待分拣补货明细
|
||
/// </summary>
|
||
/// <param name="pickOrderNo"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable repTodayDetails4Pick(int userId=0);
|
||
|
||
/// <summary>
|
||
/// 待上架补货任务
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
DataTable repInDetailsByFlowNo(string flowNo,int operId,string token);
|
||
|
||
[OperationContract]
|
||
int regSeedsPlate(string plateId, int partion);
|
||
[OperationContract]
|
||
DataTable getPlatePickList(string plateId, int partion);
|
||
|
||
//获取出库下架任务
|
||
|
||
[OperationContract]
|
||
DataTable getTaskAssigned(int operId, int partion , int lineId , bool batchOnly ,int orderType);
|
||
[OperationContract]
|
||
DataTable taskAssign(int partion, int lineId, bool batchOnly, int orderType, int operId, string token);
|
||
|
||
[OperationContract]
|
||
int taskResign(int partion, int lineId, bool batchOnly, int orderType, int operId, string token);
|
||
|
||
|
||
// ------------------TMS begin --------------------------------------------------------------------------------------------------
|
||
|
||
|
||
/// <summary>
|
||
/// 有打包零货待装车的运输单
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
|
||
[OperationContract]
|
||
DataTable getTransRequestsWithBulks();
|
||
|
||
|
||
|
||
/// <summary>
|
||
/// 待装车的运输单打包零货列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
|
||
[OperationContract]
|
||
DataTable getTransRequestsBulks(string transNo);
|
||
|
||
|
||
|
||
|
||
/// <summary>
|
||
///从零库集货区取走零货打包
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
|
||
[OperationContract]
|
||
bool pickBulks(string tranNo, int stockId,int operId, string token);
|
||
|
||
|
||
/// <summary>
|
||
/// 待装车的运输单打包零货列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
|
||
[OperationContract]
|
||
DataTable getTransRequestsByStatus(int status);
|
||
|
||
/// <summary>
|
||
/// 运输单拣货单列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
|
||
[OperationContract]
|
||
DataTable getTransRequestsDetail(string transNo,int status);
|
||
|
||
/// <summary>
|
||
/// 装车
|
||
/// </summary>
|
||
/// <param name="transNo"></param>
|
||
/// <param name="pickOrderNo"></param>
|
||
/// <param name="tranDetailId"></param>
|
||
/// <returns></returns>
|
||
[OperationContract]
|
||
string loadTrucks(string transNo, string pickOrderNo, int tranDetailId, int operId, string token);
|
||
|
||
//-------------------------box reg---------------------------------
|
||
|
||
[OperationContract]
|
||
int regPartBox(int partion, string boxId, int operId, string token);
|
||
[OperationContract]
|
||
DataTable getPartionRequests(int partion, int operId, string token);
|
||
[OperationContract]
|
||
DataTable getLightPartions(int operId, string token);
|
||
|
||
|
||
|
||
//------------------------------------------------task centers-------------------------------------
|
||
|
||
[OperationContract]
|
||
DataTable getTasks(int status,int partion,int emId,int operId, string token);
|
||
[OperationContract]
|
||
DataTable getTaskDetails(string tastNo, int operId, string token);
|
||
[OperationContract]
|
||
DataTable getFlowDetails(string flowNo, int operId, string token);
|
||
[OperationContract]
|
||
DataTable getTaskInfo(string taskNo, int operId, string token);
|
||
|
||
[OperationContract]
|
||
enumFlowTaskResult startTask(string taskNo, int operId, string token);
|
||
|
||
|
||
|
||
//---亮灯
|
||
|
||
[OperationContract]
|
||
string getLightService();
|
||
|
||
|
||
[OperationContract]
|
||
[WebInvoke(
|
||
Method = "GET",
|
||
RequestFormat = WebMessageFormat.Json,
|
||
ResponseFormat = WebMessageFormat.Json,
|
||
UriTemplate = "getLabels"
|
||
)]
|
||
List<ELabel> getLabels();
|
||
|
||
}
|
||
|
||
|
||
[DataContract]
|
||
public class ELabel
|
||
{
|
||
[DataMember]
|
||
public int labelId { get; set; }
|
||
[DataMember]
|
||
public int address { get; set; }
|
||
[DataMember]
|
||
public int count { get; set; }
|
||
[DataMember]
|
||
public int color { get; set; }
|
||
[DataMember]
|
||
public int port { get; set; }
|
||
[DataMember]
|
||
public int orderNo { get; set; }
|
||
|
||
}
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
}
|