/**
* IEC_OrderBasicDAL.cs
*
* 功 能: 订单主表数据访问接口
* 类 名: IEC_OrderBasicDAL
*
* Ver 变更日期 负责人 变更内容
* ───────────────────────────────────
* V0.01 2013-4-23 10:55:24 吴崎均 初版
* V0.02 2013-5-6 9:08 吴崎均 增加分页方法(调用订单专用分页存储)
* V0.03 2013-5-10 16:33 吴崎均 增加方法:发起订单属性改变请求、执行订单属性改变请求
* V0.04 2013-5-11 13:21 吴崎均 增加方法:根据接手人查询属性变更请求集合
* V0.05 2013-5-11 14:13 吴崎均 增加方法:答复订单属性改变请求
* V0.06 2013-5-14 11:38 吴崎均 增加方法:根据卖家编号加载下一订单编号方法
* V0.07 2013-5-15 15:19 吴崎均 增加方法:根据编号获取订单信息
* V0.08 2013-5-17 11:07 吴崎均 增加方法:送货(含送货订单操作)
* V0.09 2013-5-17 14:21 吴崎均 增加方法:根据编号获取货运信息,根据订单编号获取订单操作信息集合
* V0.10 2013-5-20 9:47 吴崎均 增加方法:根据订单编号获取收货地址信息
* V0.11 2013-5-28 13:43 吴崎均 修改批量删除方法定义及实现
* V0.12 2013-5-30 10:28 吴崎均 增加方法:预付款收/付款
* V0.13 2013-5-31 19:01 吴崎均 增加方法:根据订单编号确认收货
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IBaseDAL;
using CY.Infrastructure.Query;
using CY.Model;
namespace CY.IDAL
{
///
/// 订单主表-数据库操作接口
///
public interface IEC_OrderBasicDAL : ICommonDAL, IPaging, IGetAllModel
{
///
/// 分页查询(根据联系人和结束状态)
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPage(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 分页查询(未完工订单)
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPage_weiwangong(Query query, Pagination pagination);
///
/// 分页查询(根据联系人和结束状态)厂商订单,根据区域以及客户、业务经理查询
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPage_Seller(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 生产安排分页查询
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPageAg(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
IEnumerable SelectModelPageSeal(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 作业本送货分页查询
///
///
///
IEnumerable SelectModelPageWorkBook(Infrastructure.Query.Pagination pagination, Guid _MemberID, string txtBeginDate, string txtEndDate, string txtOrderId, string txtSearchyjname, string selCustormerManager, string selBusinessManager, string selOrderStates);
///
/// 受理订单
///
/// 订单编号
/// 受理佣金(受理订单时站方收取的服务费)
///
bool AcceptOrder(int orderId, double commission);
///
/// 受理订单
///
/// 订单编号
/// 操作人
///
bool SuodingOrder(int orderId, string operater);
///
/// 批量受理订单
///
///
///
///
bool AcceptOrderAll(string orderIds, double commission);
///
/// 修改订单状态(非支付状态且不可修改为未受理和已受理)
///
/// 订单操作
///
bool UpdateOrderState(params EC_OrderOperate[] orderOperates);
/////
///// 修改订单状态(非支付状态且不可修改为未受理和已受理)
/////
///// 订单操作
///// 状态编号
/////
//bool UpdateOrderState(EC_OrderOperate orderOperate, int stateId);
///
/// 根据编号批量删除数据
///
/// 当前操作人
/// 编号集合
///
bool DeleteDataByIds(string currentOperator, params int[] ids);
///
/// 根据卖家编号加载下一订单编号方法
///
/// 卖家编号
///
string LoadOrderIdBySellerId(Guid memberId);
///
/// 根据编号获取订单信息
///
/// 订单唯一编号
///
EC_OrderBasic SelectModelById(int orderId);
///
/// 根据订单编号获取订单
///
/// 订单编号
///
IEnumerable GetOrderByIds(string orderIds);
///
/// 发起订单属性改变请求
///
/// 请求
///
int OrderPropertyChangeRequest(EC_OrderDialogue dialogue);
///
/// 执行订单属性改变请求
///
/// 要执行的目标数据
/// 执行者
///
int OrderPropertyChangeExecute(Guid requestId, Guid memberId);
///
/// 根据接手人查询属性变更请求集合
///
/// 接手用户
///
IEnumerable SelectPropertyChangeRequest(Guid memberId);
///
/// 答复订单属性改变请求
///
/// 要答复的目标数据
/// 答复人
/// 是否同意
///
int OrderPropertyChangeReply(Guid requestId, Guid memberId, bool isAllow);
///
/// 送货
///
/// 货运信息
///
bool DeliverPresswork(EC_AwbInfo awbInfo);
///
/// 根据编号获取货运信息
///
/// 订单编号
///
EC_AwbInfo SelectAwbInfoById(int orderId);
///
/// 根据订单编号获取订单操作信息
///
/// 订单编号
///
IEnumerable SelectOrderOperates(int orderId);
///
/// 根据订单编号获取收货地址信息
///
/// 订单编号集合
///
IEnumerable SelectOrderAddress(string orderIds);
///
/// 收款(线下转账、现金)
///
/// 订单编号
/// 操作记录
///
bool ReceiveMoneyToAccount(int orderId, OA_FirmAccountRecord firmAccountRecord);
///
/// 收款(线下转账、现金)
///
/// 订单编号
/// 操作记录
///
bool ReceiveMoneyToQueren(int orderId, OA_FirmAccountRecord firmAccountRecord);
///
/// 收款(外协预付款、客户预付款)
///
/// 卖家
/// 买家
/// 订单编号
/// 金额
/// 操作类型编号(2:预付款,3普通付款)
/// 支付科目(订单付款,外协付款)
/// 操作人
///
bool ReceiveMoney(Guid sellerId, Guid buyerId, int orderId, decimal money, int operatTypeId, string subjectName, string currentOperator);
///
/// 根据订单编号确认收货
///
/// 订单编号
/// 买家编号
///
bool ConfirmAcceptById(int orderId, Guid memberId);
///
/// 根据编号获取订单列表
///
///
///
///
IEnumerable GetEC_OrderBasicListByKeyid(string Keyids, Guid FirmId);
///
/// 订单完工
///
///
///
///
bool CompletedOrderList(List m_EC_OrderOperateList, List m_EC_OrderBasicList);
///
/// 卖家退单操作
///
///
///
///
///
int RetireOrderBySeller(int orderId, decimal retireMony, string operatorName);
///
/// 判断是否已经操作
///
///
///
///
///
bool IsOpearted(int keyid, int orderState, string opType);
///
/// 修改打印状态
///
///
void UpdatePrintState(int orderId);
///
/// 修改金额和单价
///
///
///
///
bool Updatejinedanjia(int orderId,decimal SumPrice, decimal UnitPrice,int num);
///
/// 修改打印状态
///
///
void UpdatePrintfengqianState(int orderId);
void UpdatePrintBiaoqianState(int orderId);
///
/// 查询后道(3)整单(4)
///
///
///
///
///
///
///
///
///
///
///
///
///
///
IEnumerable SelectAferOfOutOrder(Infrastructure.Query.Pagination pagination, Guid MemberId, DateTime? StartCreatTime, DateTime? EndCreatTime, DateTime? StartReturnTime, DateTime? EndReturnTime, string Creater, string OutFirm, string WorkStates, string OutOrderId, int? RelationType, string PayState = null);
///
/// 分页查询外协订单(根据联系人和结束状态)
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPage_Outsource(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 判断某订单是否是另一订单的自动外协订单
///
///
///
bool IsOutOrder(int orderId);
///
/// 自动外协订单
///
///
///
///
///
///
///
///
///
///
bool AutoOutOrder(EC_OrderBasic OLD_orderBasic, EC_OrderBasic orderBasic, EC_AcceptWayByOrder acceptWayByOrder, EC_OrderPrintParameter orderPrintParameter, EC_OrderOperate m_EC_OrderOperate, int? RelationTypeid, double commission, CY.Model.Pay.Pay_Request payRequest);
///
/// 根据订单编号获取自动外协订单
///
/// 订单编号
///
EC_OrderBasic SelectOutOrderById(int orderId);
///
/// 根据自动外协订单编号获取来源订单
///
/// 订单编号
///
EC_OrderBasic SelectFromOutOrderById(int orderId);
///
/// WEB服务自动完成订单
///
void AutoCompleteOrderByWebService();
///
/// 删除外协订单
///
///
///
bool DeleteOutOrder(int OrderId);
///
/// 修改原订单数量
///
///
///
bool UpdateOldOrderSurplusPrintNum(int outOrderId);
///
/// 统计订单金额
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
EC_OrderBasic SumOrderMoney(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 统计订单金额
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
EC_OrderBasic SumOrderMoney_receive(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 根据新增订单操作,并修改订单状态
///
///
///
bool UpdateOrderState(EC_OrderOperate orderOperate);
///
/// 分页查询(根据联系人和结束状态)-订单收款去除已冻结订单
///
/// 分页对象
/// 查询参数
/// 查询结果 传入参数错误时结果为空
IEnumerable SelectModelPage_Financial(Infrastructure.Query.Pagination pagination, Dictionary searchParam);
///
/// 修改打印状态
///
///
void UpdateDeliveryOrderId(int orderId, Guid DeliveryOrderId);
///
/// 根据发货单id查询
///
///
///
///
IEnumerable GetEC_OrderBasicListBydeliverorderId(Guid deliverorderId, Guid FirmId);
}
}