You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

204 lines
4.9 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using FreeSql.DatabaseModel;using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Threading.Tasks;
using Newtonsoft.Json;
using FreeSql.DataAnnotations;
using Common.Extensions;
namespace Common.DJYModel
{
/// <summary>
///
/// </summary>
[JsonObject(MemberSerialization.OptIn), Table(Name = "Cust_Fee", DisableSyncStructure = true)]
public partial class CustFee : ICloneable
{
[JsonProperty, Column(DbType = "varchar(50)", IsPrimary = true, IsNullable = false)]
public string GID { get; set; } = Guid.NewGuid().ToString().ToUpper();
[JsonProperty, Column(DbType = "varchar(5000)")]
public string BEIZHU { get; set; }
[JsonProperty, Column(DbType = "varchar(5000)")]
public string BEIZHU2 { get; set; }
/// <summary>
/// 一般是业务Gid
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string BSNO { get; set; }
/// <summary>
///业务订单编号
/// </summary>
[JsonProperty, Column(DbType = "varchar(30)")]
public string MBLNO { get; set; }
[JsonProperty, Column(DbType = "varchar(20)")]
public string BSSTATUS { get; set; }
/// <summary>
/// 业务类型 见<see cref="Common.Const.BusinessType"/>
/// </summary>
[JsonProperty]
public int? BSTYPE { get; set; }
[JsonProperty, Column(DbType = "varchar(50)")]
public string CANGKU { get; set; }
[JsonProperty, Column(DbType = "varchar(30)")]
public string CARRIER { get; set; }
[JsonProperty, Column(DbType = "numeric(18,4)")]
public decimal? CBM { get; set; }
/// <summary>
/// 录入人公司ID
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string COMID { get; set; }
/// <summary>
/// 录入人公司
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string COMNAME { get; set; }
[JsonProperty, Column(InsertValueSql = "getdate()")]
public DateTime? CREATETIME { get; set; }
[JsonProperty, Column(DbType = "varchar(2000)")]
public string DESCRIPTION { get; set; }
[JsonProperty, Column(DbType = "varchar(100)")]
public string DESTINATION { get; set; }
[JsonProperty]
public DateTime? ETD { get; set; }
[JsonProperty, Column(DbType = "varchar(30)")]
public string FORWARDER { get; set; }
[JsonProperty, Column(DbType = "varchar(30)")]
public string HBLNO { get; set; }
[JsonProperty, Column(DbType = "numeric(18,4)")]
public decimal? KGS { get; set; }
[JsonProperty, Column(DbType = "varchar(20)")]
public string KINDPKGS { get; set; }
/// <summary>
/// 录入人
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string LURUREN { get; set; }
/// <summary>
/// 录入人ID
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string LURURENID { get; set; }
[JsonProperty, Column(DbType = "varchar(600)")]
public string MARKS { get; set; }
[JsonProperty, Column(DbType = "numeric(18,4)")]
public decimal? PKGS { get; set; }
[JsonProperty, Column(DbType = "varchar(100)")]
public string PORTDISCHARGE { get; set; }
[JsonProperty, Column(DbType = "decimal(19,2)")]
public decimal? PRICE { get; set; }
/// <summary>
/// 发送公司
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string SENDCOM { get; set; }
[JsonProperty]
public DateTime? SENDTIME { get; set; }
/// <summary>
/// 0新增发送或原始重发 1修改发送 5删除发送
/// </summary>
[JsonProperty]
public int? SENDTYPE { get; set; }
/// <summary>
/// 发送人名
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string SENDUSER { get; set; }
/// <summary>
/// 发送人ID
/// </summary>
[JsonProperty, Column(DbType = "varchar(50)")]
public string SENDUSERID { get; set; }
[JsonProperty, Column(DbType = "varchar(60)")]
public string VESSEL { get; set; }
[JsonProperty, Column(DbType = "varchar(30)")]
public string VOYNO { get; set; }
/// <summary>
///箱量 根据 CtnrInfo计算
/// </summary>
public int CtnrCount { get; set; }
/// <summary>
///箱型箱量明细 尺寸*数量 多个逗号间隔
/// </summary>
public string CtnrInfo { get; set; }
/// <summary>
/// 是否可以信用支付 1 可以 0不允许 1的时候钱包金额不足可以负数
/// </summary>
[Column(IsIgnore =true)]
public int IsCredit { get; set; } = 0;
/// <summary>
/// 创建当前对象的浅表副本
/// </summary>
public object Clone()
{
return this.MemberwiseClone();
}
/// <summary>
/// 根据CtnrInfo计算箱量
/// </summary>
/// <returns></returns>
public int GetCtnrcount() {
var val = 0;
if (CtnrInfo.IsNotNull()) {
var list = CtnrInfo.Split(',').ToList();
list.ForEach(item =>
{
var it = item.Split('*');
if (it.Length == 2) {
if (it[1].Isint()) {
val += it[1].ToInt();
}
}
});
}
return val;
}
}
}