ldj/WcfService1/IMobile.cs

510 lines
17 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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; }
}
}