using MadRunFabric.Common;
using MongoDB.Bson.Serialization.Attributes;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;
namespace MadRunFabric.Model
{
///
/// 配送工单 - 省三院
///
[BsonIgnoreExtraElements]
public class Distri_Workorder : IBaseModel
{
///
/// 自增id
///
[Key]
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string id { get; set; }
///
/// 工单分类(1随机工单,2计划分送工单)
///
public int wosorts { get; set; } = 1;
///
/// 渠道来源 1表示PC 2表示安卓 3表示IOS 4表示微信
///
public int channel { get; set; } = 1;
///
/// 紧急程度 - 1一般 2紧急
///
public int emergencyid { get; set; }
///
/// 计划Id
///
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string planid { get; set; }
///
/// 计划任务Id
///
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string plantaskid { get; set; }
///
/// 项目名称id
///
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string projectid { get; set; }
///
/// 工单编号 -------------------------------------------
///
public string wocode { get; set; } = "";
///
/// 配送工单状态:0创建工单,1转派或者抢单(待取货),2已取货(配送中),3货物异常(异常),4已完结/待评价,5已取消,6挂起,7取货异常退单 ,9已评价
///
public int wostate { get; set; } = 0;
///
/// 电梯岗 - 工单状态(0创建工单,1已接单(待取货),2已取货(待配送)) -------------------------------------------
///
public int wostate_elevator { get; set; } = 0;
///
/// 电梯岗 - 接单人 1个人
///
public string touser_elevator { get; set; }
///
/// 备注内容 - 备用
///
public string detail { get; set; } = "";
/////
///// 当前记录的状态 0进行中,1已结束
/////
//public int itemstate { get; set; } = 0;
///
/// 配送物品 -------------------------------------------
///
public List goodslist { get; set; } = new List();
///
/// 收件(地址,科室,联系) ------------------------------------------- 把收/发地址信息保存起来,保证地址的独立性
///
public List receiverlist { get; set; } = new List();
///
/// 发货(地址,科室,联系)
///
public List deliverylist { get; set; } = new List();
///
/// 发货人
///
public string deliveryname { get; set; } = "";
///
/// 发货电话
///
public string deliverytel { get; set; } = "";
///
/// 转派人/抢单人 -------------------------------------------
///
public List touser { get; set; } = new List();
///
/// 类型(1派单2抢单3强制分配)
///
public int totype { get; set; } = 0;
///
/// 接单时间 - 配送岗
///
public DateTime assigtime { get; set; }
///
/// 接单时间 - 电梯岗
///
public DateTime assigtime_elevator { get; set; }
///
/// 挂起时间
///
public DateTime hanguptime { get; set; }
///
/// 取消时间
///
public DateTime canceltime { get; set; }
//
/// 星级 服务满意度打分☆☆☆☆☆ 注:其中默认都是5星,最低只能打1星,每一星对应20分,合计100分
///
public int starnum { get; set; } = 0;
///
/// 评价时间
///
public DateTime evaluatetime { get; set; }
///
/// 处理人
///
public List dealby { get; set; } = new List();
///
/// 处理时间
///
public DateTime dealtime { get; set; }
///
/// 是否最后一步 0否 1是
///
public int islast { get; set; } = 0;
///
/// 是否违规 0否 1是
///
public int isoffence { get; set; } = 0;
///
/// 收货人签字 - 随记工单 -------------------------------------------
///
public List signbypic { get; set; } = new List();
///
/// 收货人拍照 - 分送工单
///
public List planwopic { get; set; } = new List();
///
/// 是否异常(0否1是) - 主管异常
///
public int isexceptions { get; set; }
/////
///// 是否送达(0否1是) - 异常上报 完结
/////
//public int sended { get; set; }
/////
///// 异常说明
/////
//public string exceptions { get; set; }
///
/// 添加人工号 -------------------------------------------
///
public string createtby { get; set; }
///
/// 添加人姓名
///
public string createname { get; set; }
///
/// 添加时间
///
public DateTime createtime { get; set; } = DateTime.Now;
///
/// 是否删除(0正常 1删除)
///
public int isdelete { get; set; }
///
/// 删除人
///
public string deleteby { get; set; }
///
/// 删除时间
///
public DateTime deletetime { get; set; }
///
/// 应用分类(0pc 1android 2ios)
///
public int apptype { get; set; } = 0;
}
#region 字段 model
///
/// 配送物品
///
public class DistributionGoodsList
{
///
/// 物品id
///
public string goodsid { get; set; }
///
/// 物品名称
///
public string goodsname { get; set; }
///
/// 紧急程度 - 1一般 2紧急
///
public int typeid { get; set; }
///
/// 是否提醒 - 提醒(关联工单,即将提醒内填写的内容展示在该物品下单成功后的物品种类后面)
///
public bool isremind { get; set; }
///
/// 提醒备注
///
public string remark { get; set; }
///
/// 数量
///
public int num { get; set; }
}
///
/// 收/发地址
///
public class DistributionDddressModel
{
///
/// 楼宇名称id ---------------------------------------------关联科室
///
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string buildingid { get; set; }
///
/// 楼宇
///
public string building_name { get; set; }
///
/// 层数id
///
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string floorid { get; set; }
///
/// 层数
///
public string floor_name { get; set; }
///
/// 科室(例如:内科|消化科[一级|二级|三级]) - 原因:科室可能是一级二级三级...不确定,所以用"|"隔开
///
public string department_name { get; set; }
/////
///// 姓名
/////
//public string fullname { get; set; }
/////
///// 电话
/////
//public string mobile { get; set; }
}
#endregion
///
/// 配送工单状态:0创建工单,1转派或者抢单(待取货),2已取货(配送中),3货物异常(异常),4已完结/待评价,5已取消,6挂起,7取货异常退单 ,9已评价
///
public enum EnumDistributionState
{
create = 0, //0创建工单
assign = 1, //1转派或者抢单(待取货)
delivery = 2, //2已取货
exceptions = 3, //3货物异常(异常)
finish = 4, //4已完结/待评价
canceled = 5, //5已取消
//hangup = 6, //6挂起//
backed = 7, //7取货异常退单
evaluated = 9 //9已评价
}
///
/// 电梯岗 - 工单状态(0创建工单,1已接单(待取货),2已取货(待配送))
///
public enum EnumDistributionState_elevator
{
create = 0, //0创建工单
accept = 1, //1已接单(待取货)
delivery = 2 //2已取货(待配送)
}
///
/// 类型(1派单 2抢单)
///
public enum EnumDistributionTotype
{
create = 0, //0创建
send = 1, //1派单
robbery = 2, //2抢单
assign = 3 //3强制分配
}
///
/// 工单分类(1随机工单,2计划分送工单)
///
public enum EnumDistributionWoSorts
{
random = 1, //1随机工单
plan = 2, //2分送工单
plantask = 3 //2计划工单
}
}